summaryrefslogtreecommitdiff
path: root/blockly/msg
diff options
context:
space:
mode:
authorDavid Barksdale <amatus@amatus.name>2016-09-10 17:58:46 -0500
committerDavid Barksdale <amatus@amatus.name>2016-09-10 18:32:35 -0500
commit475f9f3ac7688e58505690d420cafe6ae8bb8b5f (patch)
treeb1bf14b10751fe4e9e146ad7244ec86bb123893d /blockly/msg
parent923561056ddb63ce82fd1ec2a5e249bbdae267bf (diff)
Merge blockly sub-tree
Diffstat (limited to 'blockly/msg')
-rw-r--r--blockly/msg/js/ar.js391
-rw-r--r--blockly/msg/js/az.js391
-rw-r--r--blockly/msg/js/ba.js391
-rw-r--r--blockly/msg/js/bcc.js391
-rw-r--r--blockly/msg/js/be-tarask.js391
-rw-r--r--blockly/msg/js/bg.js391
-rw-r--r--blockly/msg/js/bn.js391
-rw-r--r--blockly/msg/js/br.js391
-rw-r--r--blockly/msg/js/ca.js391
-rw-r--r--blockly/msg/js/cs.js391
-rw-r--r--blockly/msg/js/da.js391
-rw-r--r--blockly/msg/js/de.js391
-rw-r--r--blockly/msg/js/diq.js391
-rw-r--r--blockly/msg/js/el.js391
-rw-r--r--blockly/msg/js/en-gb.js391
-rw-r--r--blockly/msg/js/en.js391
-rw-r--r--blockly/msg/js/es.js391
-rw-r--r--blockly/msg/js/et.js391
-rw-r--r--blockly/msg/js/fa.js391
-rw-r--r--blockly/msg/js/fi.js391
-rw-r--r--blockly/msg/js/fr.js391
-rw-r--r--blockly/msg/js/he.js391
-rw-r--r--blockly/msg/js/hi.js391
-rw-r--r--blockly/msg/js/hrx.js391
-rw-r--r--blockly/msg/js/hu.js391
-rw-r--r--blockly/msg/js/ia.js391
-rw-r--r--blockly/msg/js/id.js391
-rw-r--r--blockly/msg/js/is.js391
-rw-r--r--blockly/msg/js/it.js391
-rw-r--r--blockly/msg/js/ja.js391
-rw-r--r--blockly/msg/js/ko.js391
-rw-r--r--blockly/msg/js/lb.js391
-rw-r--r--blockly/msg/js/lki.js391
-rw-r--r--blockly/msg/js/lrc.js391
-rw-r--r--blockly/msg/js/lt.js391
-rw-r--r--blockly/msg/js/mk.js391
-rw-r--r--blockly/msg/js/ms.js391
-rw-r--r--blockly/msg/js/nb.js391
-rw-r--r--blockly/msg/js/nl.js391
-rw-r--r--blockly/msg/js/oc.js391
-rw-r--r--blockly/msg/js/pl.js391
-rw-r--r--blockly/msg/js/pms.js391
-rw-r--r--blockly/msg/js/pt-br.js391
-rw-r--r--blockly/msg/js/pt.js391
-rw-r--r--blockly/msg/js/ro.js391
-rw-r--r--blockly/msg/js/ru.js391
-rw-r--r--blockly/msg/js/sc.js391
-rw-r--r--blockly/msg/js/sd.js391
-rw-r--r--blockly/msg/js/shn.js391
-rw-r--r--blockly/msg/js/sk.js391
-rw-r--r--blockly/msg/js/sl.js391
-rw-r--r--blockly/msg/js/sq.js391
-rw-r--r--blockly/msg/js/sr.js391
-rw-r--r--blockly/msg/js/sv.js391
-rw-r--r--blockly/msg/js/ta.js391
-rw-r--r--blockly/msg/js/tcy.js391
-rw-r--r--blockly/msg/js/th.js391
-rw-r--r--blockly/msg/js/tl.js391
-rw-r--r--blockly/msg/js/tlh.js391
-rw-r--r--blockly/msg/js/tr.js391
-rw-r--r--blockly/msg/js/uk.js391
-rw-r--r--blockly/msg/js/vi.js391
-rw-r--r--blockly/msg/js/zh-hans.js391
-rw-r--r--blockly/msg/js/zh-hant.js391
-rw-r--r--blockly/msg/json/ar.json316
-rw-r--r--blockly/msg/json/az.json296
-rw-r--r--blockly/msg/json/ba.json210
-rw-r--r--blockly/msg/json/bcc.json289
-rw-r--r--blockly/msg/json/be-tarask.json314
-rw-r--r--blockly/msg/json/bg.json312
-rw-r--r--blockly/msg/json/bn.json156
-rw-r--r--blockly/msg/json/br.json315
-rw-r--r--blockly/msg/json/ca.json293
-rw-r--r--blockly/msg/json/cs.json331
-rw-r--r--blockly/msg/json/da.json303
-rw-r--r--blockly/msg/json/de.json350
-rw-r--r--blockly/msg/json/diq.json171
-rw-r--r--blockly/msg/json/el.json336
-rw-r--r--blockly/msg/json/en-gb.json139
-rw-r--r--blockly/msg/json/en.json371
-rw-r--r--blockly/msg/json/es.json321
-rw-r--r--blockly/msg/json/et.json310
-rw-r--r--blockly/msg/json/fa.json309
-rw-r--r--blockly/msg/json/fi.json330
-rw-r--r--blockly/msg/json/fr.json325
-rw-r--r--blockly/msg/json/he.json277
-rw-r--r--blockly/msg/json/hi.json251
-rw-r--r--blockly/msg/json/hrx.json289
-rw-r--r--blockly/msg/json/hu.json327
-rw-r--r--blockly/msg/json/ia.json298
-rw-r--r--blockly/msg/json/id.json335
-rw-r--r--blockly/msg/json/is.json357
-rw-r--r--blockly/msg/json/it.json317
-rw-r--r--blockly/msg/json/ja.json328
-rw-r--r--blockly/msg/json/ko.json376
-rw-r--r--blockly/msg/json/lb.json126
-rw-r--r--blockly/msg/json/lki.json296
-rw-r--r--blockly/msg/json/lrc.json133
-rw-r--r--blockly/msg/json/lt.json257
-rw-r--r--blockly/msg/json/mk.json112
-rw-r--r--blockly/msg/json/ms.json314
-rw-r--r--blockly/msg/json/nb.json324
-rw-r--r--blockly/msg/json/nl.json361
-rw-r--r--blockly/msg/json/oc.json122
-rw-r--r--blockly/msg/json/pl.json345
-rw-r--r--blockly/msg/json/pms.json314
-rw-r--r--blockly/msg/json/pt-br.json327
-rw-r--r--blockly/msg/json/pt.json326
-rw-r--r--blockly/msg/json/qqq.json372
-rw-r--r--blockly/msg/json/ro.json318
-rw-r--r--blockly/msg/json/ru.json320
-rw-r--r--blockly/msg/json/sc.json299
-rw-r--r--blockly/msg/json/sd.json126
-rw-r--r--blockly/msg/json/shn.json108
-rw-r--r--blockly/msg/json/sk.json304
-rw-r--r--blockly/msg/json/sl.json360
-rw-r--r--blockly/msg/json/sq.json305
-rw-r--r--blockly/msg/json/sr.json332
-rw-r--r--blockly/msg/json/sv.json337
-rw-r--r--blockly/msg/json/synonyms.json1
-rw-r--r--blockly/msg/json/ta.json298
-rw-r--r--blockly/msg/json/tcy.json307
-rw-r--r--blockly/msg/json/th.json311
-rw-r--r--blockly/msg/json/tl.json305
-rw-r--r--blockly/msg/json/tlh.json182
-rw-r--r--blockly/msg/json/tr.json351
-rw-r--r--blockly/msg/json/uk.json332
-rw-r--r--blockly/msg/json/vi.json298
-rw-r--r--blockly/msg/json/zh-hans.json336
-rw-r--r--blockly/msg/json/zh-hant.json319
-rw-r--r--blockly/msg/messages.js1113
131 files changed, 44967 insertions, 0 deletions
diff --git a/blockly/msg/js/ar.js b/blockly/msg/js/ar.js
new file mode 100644
index 0000000..5284faf
--- /dev/null
+++ b/blockly/msg/js/ar.js
@@ -0,0 +1,391 @@
+// This file was automatically generated. Do not modify.
+
+'use strict';
+
+goog.provide('Blockly.Msg.ar');
+
+goog.require('Blockly.Msg');
+
+Blockly.Msg.ADD_COMMENT = "اضافة تعليق";
+Blockly.Msg.CHANGE_VALUE_TITLE = "تغيير قيمة:";
+Blockly.Msg.CLEAN_UP = "Clean up Blocks"; // untranslated
+Blockly.Msg.COLLAPSE_ALL = "إخفاء القطع";
+Blockly.Msg.COLLAPSE_BLOCK = "إخفاء القطعة";
+Blockly.Msg.COLOUR_BLEND_COLOUR1 = "اللون 1";
+Blockly.Msg.COLOUR_BLEND_COLOUR2 = "اللون 2";
+Blockly.Msg.COLOUR_BLEND_HELPURL = "http://meyerweb.com/eric/tools/color-blend/";
+Blockly.Msg.COLOUR_BLEND_RATIO = "نسبة";
+Blockly.Msg.COLOUR_BLEND_TITLE = "دمج";
+Blockly.Msg.COLOUR_BLEND_TOOLTIP = "دمج لونين ببعضهما البعض بنسبة (0.0 - 1.0).";
+Blockly.Msg.COLOUR_PICKER_HELPURL = "https://ar.wikipedia.org/wiki/Color";
+Blockly.Msg.COLOUR_PICKER_TOOLTIP = "اختر لون من اللوحة.";
+Blockly.Msg.COLOUR_RANDOM_HELPURL = "http://randomcolour.com"; // untranslated
+Blockly.Msg.COLOUR_RANDOM_TITLE = "لون عشوائي";
+Blockly.Msg.COLOUR_RANDOM_TOOLTIP = "اختر لون بشكل عشوائي.";
+Blockly.Msg.COLOUR_RGB_BLUE = "أزرق";
+Blockly.Msg.COLOUR_RGB_GREEN = "أخضر";
+Blockly.Msg.COLOUR_RGB_HELPURL = "http://www.december.com/html/spec/colorper.html";
+Blockly.Msg.COLOUR_RGB_RED = "أحمر";
+Blockly.Msg.COLOUR_RGB_TITLE = "لون مع";
+Blockly.Msg.COLOUR_RGB_TOOLTIP = "إنشئ لون بالكمية المحددة من الأحمر, الأخضر والأزرق. بحيث يجب تكون كافة القيم بين 0 و 100.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_HELPURL = "https://github.com/google/blockly/wiki/Loops#loop-termination-blocks"; // untranslated
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK = "اخرج من الحلقة";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE = "استمر ابتداءا من التكرار التالي من الحلقة";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK = "اخرج من الحلقة الحالية.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE = "تخط ما تبقى من هذه الحلقة، واستمر ابتداءا من التكرار التالي.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_WARNING = "تحذير: يمكن استخدام هذه القطعة فقط داخل حلقة.";
+Blockly.Msg.CONTROLS_FOREACH_HELPURL = "https://github.com/google/blockly/wiki/Loops#for-each"; // untranslated
+Blockly.Msg.CONTROLS_FOREACH_TITLE = "لكل عنصر %1 في قائمة %2";
+Blockly.Msg.CONTROLS_FOREACH_TOOLTIP = "لكل عنصر في قائمة ما، عين المتغير '%1' لهذا الغنصر، ومن ثم نفذ بعض الأوامر.";
+Blockly.Msg.CONTROLS_FOR_HELPURL = "https://github.com/google/blockly/wiki/Loops#count-with"; // untranslated
+Blockly.Msg.CONTROLS_FOR_TITLE = "عد بـ %1 من %2 إلى %3 بمعدل %4";
+Blockly.Msg.CONTROLS_FOR_TOOLTIP = "اجعل المتغير %1 يأخذ القيم من رقم البداية الى رقم النهاية، قم بالعد داخل المجال المحدد، وطبق أوامر القطع المحددة.";
+Blockly.Msg.CONTROLS_IF_ELSEIF_TOOLTIP = "إضف شرطا إلى القطعة الشرطية \"إذا\".";
+Blockly.Msg.CONTROLS_IF_ELSE_TOOLTIP = "أضف شرط \"نهاية، إجمع\" إلى القطعة الشرطية \"إذا\".";
+Blockly.Msg.CONTROLS_IF_HELPURL = "https://github.com/google/blockly/wiki/IfElse"; // untranslated
+Blockly.Msg.CONTROLS_IF_IF_TOOLTIP = "أضف, إزل, أو أعد ترتيب المقاطع لإعادة تكوين القطعة الشرطية \"إذا\".";
+Blockly.Msg.CONTROLS_IF_MSG_ELSE = "والا";
+Blockly.Msg.CONTROLS_IF_MSG_ELSEIF = "وإﻻ إذا";
+Blockly.Msg.CONTROLS_IF_MSG_IF = "إذا";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_1 = "إذا كانت قيمة ما تساوي صحيح, إذن قم بتنفيذ أمر ما.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_2 = "إذا كانت قيمة ما تساوي \"صحيح\"، إذن قم بتنفيذ أول قطعة من الأوامر. والا ،قم بتنفيذ القطعة الثانية من الأوامر.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_3 = "إذا كانت القيمة الأولى تساوي \"صحيح\", إذن قم بتنفيذ القطعة الأولى من الأوامر. والا, إذا كانت القيمة الثانية تساوي \"صحيح\", قم بتنفيذ القطعة الثانية من الأوامر.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_4 = "إذا كانت القيمة الأولى تساوي \"صحيح\", إذن قم بتنفيذ القطعة الأولى من الأوامر. والا , إذا كانت القيمة الثانية تساوي \"صحيح\", قم بتنفيذ القطعة الثانية من الأوامر. إذا لم تكن هناك أي قيمة تساوي صحيح, قم بتنفيذ آخر قطعة من الأوامر.";
+Blockly.Msg.CONTROLS_REPEAT_HELPURL = "https://en.wikipedia.org/wiki/For_loop";
+Blockly.Msg.CONTROLS_REPEAT_INPUT_DO = "نفّذ";
+Blockly.Msg.CONTROLS_REPEAT_TITLE = "كرر %1 مرات";
+Blockly.Msg.CONTROLS_REPEAT_TOOLTIP = "نفّذ بعض الأوامر عدة مرات.";
+Blockly.Msg.CONTROLS_WHILEUNTIL_HELPURL = "https://github.com/google/blockly/wiki/Loops#repeat"; // untranslated
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "اكرّر حتى";
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "اكرّر طالما";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "بما ان القيمة خاطئة, نفّذ بعض الأوامر.";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "بما ان القيمة صحيحة, نفّذ بعض الأوامر.";
+Blockly.Msg.DELETE_ALL_BLOCKS = "حذف كل مناعات %1؟";
+Blockly.Msg.DELETE_BLOCK = "إحذف القطعة";
+Blockly.Msg.DELETE_VARIABLE = "Delete the '%1' variable"; // untranslated
+Blockly.Msg.DELETE_VARIABLE_CONFIRMATION = "Delete %1 uses of the '%2' variable?"; // untranslated
+Blockly.Msg.DELETE_X_BLOCKS = "إحذف قطع %1";
+Blockly.Msg.DISABLE_BLOCK = "عطّل القطعة";
+Blockly.Msg.DUPLICATE_BLOCK = "ادمج";
+Blockly.Msg.ENABLE_BLOCK = "أعد تفعيل القطعة";
+Blockly.Msg.EXPAND_ALL = "وسٌّع القطع";
+Blockly.Msg.EXPAND_BLOCK = "وسٌّع القطعة";
+Blockly.Msg.EXTERNAL_INPUTS = "ادخال خارجي";
+Blockly.Msg.HELP = "مساعدة";
+Blockly.Msg.INLINE_INPUTS = "ادخال خطي";
+Blockly.Msg.LISTS_CREATE_EMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-empty-list";
+Blockly.Msg.LISTS_CREATE_EMPTY_TITLE = "إنشئ قائمة فارغة";
+Blockly.Msg.LISTS_CREATE_EMPTY_TOOLTIP = "تقوم بإرجاع قائمة، طولها 0, لا تحتوي على أية سجلات البيانات";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TITLE_ADD = "قائمة";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TOOLTIP = "أضف, إزل, أو أعد ترتيب المقاطع لإعادة تكوين القطعة قائمة القطع التالية.";
+Blockly.Msg.LISTS_CREATE_WITH_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
+Blockly.Msg.LISTS_CREATE_WITH_INPUT_WITH = "أتشئ قائمة مع";
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TOOLTIP = "أضف عنصرا إلى القائمة.";
+Blockly.Msg.LISTS_CREATE_WITH_TOOLTIP = "أنشيء قائمة من أي عدد من العناصر.";
+Blockly.Msg.LISTS_GET_INDEX_FIRST = "أول";
+Blockly.Msg.LISTS_GET_INDEX_FROM_END = "# من نهاية";
+Blockly.Msg.LISTS_GET_INDEX_FROM_START = "#";
+Blockly.Msg.LISTS_GET_INDEX_GET = "احصل على";
+Blockly.Msg.LISTS_GET_INDEX_GET_REMOVE = "احصل على و ازل";
+Blockly.Msg.LISTS_GET_INDEX_LAST = "أخير";
+Blockly.Msg.LISTS_GET_INDEX_RANDOM = "عشوائي";
+Blockly.Msg.LISTS_GET_INDEX_REMOVE = "ازل";
+Blockly.Msg.LISTS_GET_INDEX_TAIL = ""; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FIRST = "يرجع العنصر الأول في قائمة ما.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FROM = "يقوم بإرجاع العنصر في الموضع المحدد في قائمة ما.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_LAST = "يرجع العنصر الأخير في قائمة ما.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_RANDOM = "يرجع عنصرا عشوائيا في قائمة.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST = "يزيل ويرجع العنصر الأول في قائمة.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM = "يزيل ويقوم بإرجاع العنصر في الموضع المحدد في قائمة ما.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST = "يزيل ويرجع العنصر الأخير في قائمة ما.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM = "يزيل و يرجع عنصرا عشوائيا في قائمة ما.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST = "يزيل العنصر الأول في قائمة ما.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM = "يزيل العنصر الموجود في الموضع المحدد في قائمة ما.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST = "يزيل العنصر الأخير في قائمة ما.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM = "يزيل عنصرا عشوائيا في قائمة ما.";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_END = "إلى # من نهاية";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_START = "إلى #";
+Blockly.Msg.LISTS_GET_SUBLIST_END_LAST = "إلى الأخير";
+Blockly.Msg.LISTS_GET_SUBLIST_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-a-sublist"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_START_FIRST = "احصل على قائمة فرعية من الأول";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_END = "احصل على قائمة فرعية من # من نهاية";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_START = "احصل على قائمة فرعية من #";
+Blockly.Msg.LISTS_GET_SUBLIST_TAIL = ""; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_TOOLTIP = "يقوم بإنشاء نسخة من الجزء المحدد من قائمة ما.";
+Blockly.Msg.LISTS_INDEX_FROM_END_TOOLTIP = "%1 هو العنصر الأخير.";
+Blockly.Msg.LISTS_INDEX_FROM_START_TOOLTIP = "%1 هو العنصر الأول.";
+Blockly.Msg.LISTS_INDEX_OF_FIRST = "ابحث على على التواجد الأول للعنصر";
+Blockly.Msg.LISTS_INDEX_OF_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-items-from-a-list"; // untranslated
+Blockly.Msg.LISTS_INDEX_OF_LAST = "ابحث على التواجد الأخير للعنصر";
+Blockly.Msg.LISTS_INDEX_OF_TOOLTIP = "تقوم بإرجاع مؤشر التواجد الأول/الأخير في القائمة. تقوم بإرجاع %1 إذا لم يتم العثور على النص.";
+Blockly.Msg.LISTS_INLIST = "في قائمة";
+Blockly.Msg.LISTS_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#is-empty"; // untranslated
+Blockly.Msg.LISTS_ISEMPTY_TITLE = "%1 فارغ";
+Blockly.Msg.LISTS_ISEMPTY_TOOLTIP = "يرجع \"صحيح\" إذا كانت القائمة فارغة.";
+Blockly.Msg.LISTS_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Lists#length-of"; // untranslated
+Blockly.Msg.LISTS_LENGTH_TITLE = "الطول من %1";
+Blockly.Msg.LISTS_LENGTH_TOOLTIP = "تقوم بإرجاع طول قائمة.";
+Blockly.Msg.LISTS_REPEAT_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
+Blockly.Msg.LISTS_REPEAT_TITLE = "إنشئ قائمة مع العنصر %1 %2 مرات";
+Blockly.Msg.LISTS_REPEAT_TOOLTIP = "انشئ قائمة تتألف من القيمة المعطاة متكررة لعدد محدد من المرات.";
+Blockly.Msg.LISTS_SET_INDEX_HELPURL = "https://github.com/google/blockly/wiki/Lists#in-list--set"; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_INPUT_TO = "مثل";
+Blockly.Msg.LISTS_SET_INDEX_INSERT = "أدخل في";
+Blockly.Msg.LISTS_SET_INDEX_SET = "تعيين";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST = "يقوم بإدراج هذا العنصر في بداية قائمة.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FROM = "يقوم بإدخال العنصر في الموضع المحدد في قائمة ما.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_LAST = "ألصق هذا العنصر بنهاية قائمة.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM = "ادخل العنصر عشوائياً في القائمة.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FIRST = "يحدد العنصر الأول في قائمة.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FROM = "يحدد العنصر في الموضع المحدد في قائمة ما.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_LAST = "يحدد العنصر الأخير في قائمة.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_RANDOM = "يحدد عنصرا عشوائيا في قائمة.";
+Blockly.Msg.LISTS_SORT_HELPURL = "https://github.com/google/blockly/wiki/Lists#sorting-a-list"; // untranslated
+Blockly.Msg.LISTS_SORT_ORDER_ASCENDING = "ascending"; // untranslated
+Blockly.Msg.LISTS_SORT_ORDER_DESCENDING = "descending"; // untranslated
+Blockly.Msg.LISTS_SORT_TITLE = "sort %1 %2 %3"; // untranslated
+Blockly.Msg.LISTS_SORT_TOOLTIP = "Sort a copy of a list."; // untranslated
+Blockly.Msg.LISTS_SORT_TYPE_IGNORECASE = "alphabetic, ignore case"; // untranslated
+Blockly.Msg.LISTS_SORT_TYPE_NUMERIC = "numeric"; // untranslated
+Blockly.Msg.LISTS_SORT_TYPE_TEXT = "alphabetic"; // untranslated
+Blockly.Msg.LISTS_SPLIT_HELPURL = "https://github.com/google/blockly/wiki/Lists#splitting-strings-and-joining-lists"; // untranslated
+Blockly.Msg.LISTS_SPLIT_LIST_FROM_TEXT = "إعداد قائمة من النصوص";
+Blockly.Msg.LISTS_SPLIT_TEXT_FROM_LIST = "إعداد نص من القائمة";
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_JOIN = "Join a list of texts into one text, separated by a delimiter."; // untranslated
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_SPLIT = "Split text into a list of texts, breaking at each delimiter."; // untranslated
+Blockly.Msg.LISTS_SPLIT_WITH_DELIMITER = "with delimiter"; // untranslated
+Blockly.Msg.LOGIC_BOOLEAN_FALSE = "خاطئ";
+Blockly.Msg.LOGIC_BOOLEAN_HELPURL = "https://github.com/google/blockly/wiki/Logic#values"; // untranslated
+Blockly.Msg.LOGIC_BOOLEAN_TOOLTIP = "يرجع صحيح أو خاطئ.";
+Blockly.Msg.LOGIC_BOOLEAN_TRUE = "صحيح";
+Blockly.Msg.LOGIC_COMPARE_HELPURL = "https://en.wikipedia.org/wiki/Inequality_(mathematics)";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_EQ = "يرجع صحيح إذا كان كلا المدخلات مساوية بعضها البعض.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GT = "يرجع صحيح إذا كان الإدخال الأول أكبر من الإدخال الثاني.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GTE = "يرجع صحيح إذا كان الإدخال الأول أكبر من أو يساوي الإدخال الثاني.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LT = "يرجع صحيح إذا كان الإدخال الأول أصغر من الإدخال الثاني.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LTE = "يرجع صحيح إذا كان الإدخال الأول أصغر من أو يساوي الإدخال الثاني.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_NEQ = "يرجع صحيح إذا كانت كلا المدخلات غير مساوية لبعضها البعض.";
+Blockly.Msg.LOGIC_NEGATE_HELPURL = "https://github.com/google/blockly/wiki/Logic#not"; // untranslated
+Blockly.Msg.LOGIC_NEGATE_TITLE = "ليس من %1";
+Blockly.Msg.LOGIC_NEGATE_TOOLTIP = "يرجع صحيح إذا كان الإدخال خاطئ . يرجع خاطئ إذا كان الإدخال صحيح.";
+Blockly.Msg.LOGIC_NULL = "ملغى";
+Blockly.Msg.LOGIC_NULL_HELPURL = "https://en.wikipedia.org/wiki/Nullable_type";
+Blockly.Msg.LOGIC_NULL_TOOLTIP = "ترجع ملغى.";
+Blockly.Msg.LOGIC_OPERATION_AND = "و";
+Blockly.Msg.LOGIC_OPERATION_HELPURL = "https://github.com/google/blockly/wiki/Logic#logical-operations"; // untranslated
+Blockly.Msg.LOGIC_OPERATION_OR = "أو";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_AND = "ترجع صحيح إذا كان كلا المٌدخلات صحيح.";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_OR = "ترجع صحيح إذا كان واحد على الأقل من المدخلات صحيح.";
+Blockly.Msg.LOGIC_TERNARY_CONDITION = "اختبار";
+Blockly.Msg.LOGIC_TERNARY_HELPURL = "https://en.wikipedia.org/wiki/%3F:";
+Blockly.Msg.LOGIC_TERNARY_IF_FALSE = "إذا كانت العبارة خاطئة";
+Blockly.Msg.LOGIC_TERNARY_IF_TRUE = "إذا كانت العبارة صحيحة";
+Blockly.Msg.LOGIC_TERNARY_TOOLTIP = "تحقق الشرط في 'الاختبار'. إذا كان الشرط صحيح، يقوم بإرجاع قيمة 'اذا كانت العبارة صحيحة'؛ خلاف ذلك يرجع قيمة 'اذا كانت العبارة خاطئة'.";
+Blockly.Msg.MATH_ADDITION_SYMBOL = "+";
+Blockly.Msg.MATH_ARITHMETIC_HELPURL = "https://en.wikipedia.org/wiki/Arithmetic";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_ADD = "يرجع مجموع الرقمين.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE = "يرجع حاصل قسمة الرقمين.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MINUS = "يرجع الفرق بين الرقمين.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MULTIPLY = "يرجع حاصل ضرب الرقمين.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_POWER = "يرجع الرقم الأول مرفوع إلى تربيع الرقم الثاني.";
+Blockly.Msg.MATH_CHANGE_HELPURL = "https://en.wikipedia.org/wiki/Programming_idiom#Incrementing_a_counter";
+Blockly.Msg.MATH_CHANGE_TITLE = "غير %1 بـ %2";
+Blockly.Msg.MATH_CHANGE_TOOLTIP = "إضف رقم إلى متغير '%1'.";
+Blockly.Msg.MATH_CONSTANT_HELPURL = "https://en.wikipedia.org/wiki/Mathematical_constant";
+Blockly.Msg.MATH_CONSTANT_TOOLTIP = "ير جع واحد من الثوابت الشائعة : π (3.141…), e (2.718…), φ (1.618…), sqrt(2) (1.414…), sqrt(½) (0.707…), or ∞ (infinity).";
+Blockly.Msg.MATH_CONSTRAIN_HELPURL = "https://en.wikipedia.org/wiki/Clamping_%28graphics%29"; // untranslated
+Blockly.Msg.MATH_CONSTRAIN_TITLE = "تقيد %1 منخفض %2 مرتفع %3";
+Blockly.Msg.MATH_CONSTRAIN_TOOLTIP = "تقييد العددليكون بين الحدود المحددة (ضمناً).";
+Blockly.Msg.MATH_DIVISION_SYMBOL = "÷";
+Blockly.Msg.MATH_IS_DIVISIBLE_BY = "قابل للقسمة";
+Blockly.Msg.MATH_IS_EVEN = "هو زوجي";
+Blockly.Msg.MATH_IS_NEGATIVE = "هو سالب";
+Blockly.Msg.MATH_IS_ODD = "هو فرذي";
+Blockly.Msg.MATH_IS_POSITIVE = "هو موجب";
+Blockly.Msg.MATH_IS_PRIME = "هو أولي";
+Blockly.Msg.MATH_IS_TOOLTIP = "تحقق إذا كان عدد ما زوجيا، فرذيا, أوليا، صحيحا،موجبا أو سالبا، أو إذا كان قابلا للقسمة على عدد معين. يرجع صحيح أو خاطئ.";
+Blockly.Msg.MATH_IS_WHOLE = "هو صحيح";
+Blockly.Msg.MATH_MODULO_HELPURL = "https://en.wikipedia.org/wiki/Modulo_operation";
+Blockly.Msg.MATH_MODULO_TITLE = "باقي %1 ÷ %2";
+Blockly.Msg.MATH_MODULO_TOOLTIP = "يرجع الباقي من قسمة الرقمين.";
+Blockly.Msg.MATH_MULTIPLICATION_SYMBOL = "×";
+Blockly.Msg.MATH_NUMBER_HELPURL = "https://en.wikipedia.org/wiki/Number";
+Blockly.Msg.MATH_NUMBER_TOOLTIP = "عدد ما.";
+Blockly.Msg.MATH_ONLIST_HELPURL = ""; // untranslated
+Blockly.Msg.MATH_ONLIST_OPERATOR_AVERAGE = "متوسط القائمة";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MAX = "الحد الأقصى لقائمة";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MEDIAN = "متوسط القائمة";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MIN = "الحد الأدنى من قائمة";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MODE = "منوال القائمة";
+Blockly.Msg.MATH_ONLIST_OPERATOR_RANDOM = "عنصر عشوائي من القائمة";
+Blockly.Msg.MATH_ONLIST_OPERATOR_STD_DEV = "الانحراف المعياري للقائمة";
+Blockly.Msg.MATH_ONLIST_OPERATOR_SUM = "مجموع القائمة";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_AVERAGE = "يرجع المعدل (الوسط الحسابي) للقيم الرقمية في القائمة.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MAX = "يرجع أكبر عدد في القائمة.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MEDIAN = "يرجع وسيط العدد في القائمة.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MIN = "يرجع أصغر رقم في القائمة.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MODE = "يرجع قائمة من العنصر أو العناصر الأكثر شيوعاً في القائمة.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_RANDOM = "يرجع عنصر عشوائي من القائمة.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_STD_DEV = "يرجع الانحراف المعياري للقائمة.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_SUM = "يرجع مجموع كافة الأرقام الموجودة في القائمة.";
+Blockly.Msg.MATH_POWER_SYMBOL = "^";
+Blockly.Msg.MATH_RANDOM_FLOAT_HELPURL = "https://en.wikipedia.org/wiki/Random_number_generation";
+Blockly.Msg.MATH_RANDOM_FLOAT_TITLE_RANDOM = "كسر عشوائي";
+Blockly.Msg.MATH_RANDOM_FLOAT_TOOLTIP = "يرجع جزء عشوائي بين 0.0 (ضمنياً) و 1.0 (خارجيا).";
+Blockly.Msg.MATH_RANDOM_INT_HELPURL = "https://en.wikipedia.org/wiki/Random_number_generation";
+Blockly.Msg.MATH_RANDOM_INT_TITLE = " عدد صحيح عشوائي من %1 إلى %2";
+Blockly.Msg.MATH_RANDOM_INT_TOOLTIP = "يرجع عدد صحيح عشوائي بين حدين محددين, ضمنيا.";
+Blockly.Msg.MATH_ROUND_HELPURL = "https://en.wikipedia.org/wiki/Rounding";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUND = "تقريب";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDDOWN = "تقريب إلى اصغر عدد صحيح";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDUP = "تقريب الى اكبر عدد صحيح";
+Blockly.Msg.MATH_ROUND_TOOLTIP = "تقريب الى اكبر عدد صحيح أو الى اصغر عدد صحيح.";
+Blockly.Msg.MATH_SINGLE_HELPURL = "https://en.wikipedia.org/wiki/Square_root";
+Blockly.Msg.MATH_SINGLE_OP_ABSOLUTE = "مطلق";
+Blockly.Msg.MATH_SINGLE_OP_ROOT = "الجذر التربيعي";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ABS = "يرجع القيمة المطلقة لرقم.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_EXP = "يرجع e الذي هو الاس المرفوع للرقم.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LN = "يرجع اللوغاريتم الطبيعي لرقم.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LOG10 = "يرجع لوغاريتم عدد معين للاساس 10.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_NEG = "يرجع عدد سالب.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_POW10 = "يرجع مضروب الرقم 10 في نفسه .";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ROOT = "يرجع الجذر التربيعي للرقم.";
+Blockly.Msg.MATH_SUBTRACTION_SYMBOL = "-";
+Blockly.Msg.MATH_TRIG_ACOS = "acos";
+Blockly.Msg.MATH_TRIG_ASIN = "asin";
+Blockly.Msg.MATH_TRIG_ATAN = "atan";
+Blockly.Msg.MATH_TRIG_COS = "جيب تمام";
+Blockly.Msg.MATH_TRIG_HELPURL = "https://en.wikipedia.org/wiki/Trigonometric_functions";
+Blockly.Msg.MATH_TRIG_SIN = "جيب";
+Blockly.Msg.MATH_TRIG_TAN = "ظل";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ACOS = "يرجع قوس جيب التمام لرقم.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ASIN = "يرجع قوس الجيب للرقم.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ATAN = "يرجع قوس الظل للرقم.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_COS = "يرجع جيب التمام لدرجة (لا زواية نصف قطرية).";
+Blockly.Msg.MATH_TRIG_TOOLTIP_SIN = "يرجع جيب التمام لدرجة (لا زواية نصف قطرية).";
+Blockly.Msg.MATH_TRIG_TOOLTIP_TAN = "يرجع الظل لدرجة (لا دائرة نصف قطرية).";
+Blockly.Msg.NEW_VARIABLE = "متغير جديد...";
+Blockly.Msg.NEW_VARIABLE_TITLE = "اسم المتغير الجديد:";
+Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; // untranslated
+Blockly.Msg.PROCEDURES_ALLOW_STATEMENTS = "allow statements"; // untranslated
+Blockly.Msg.PROCEDURES_BEFORE_PARAMS = "مع:";
+Blockly.Msg.PROCEDURES_CALLNORETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29";
+Blockly.Msg.PROCEDURES_CALLNORETURN_TOOLTIP = "تشغيل الدالة المعرفة من قبل المستخدم '%1'.";
+Blockly.Msg.PROCEDURES_CALLRETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29";
+Blockly.Msg.PROCEDURES_CALLRETURN_TOOLTIP = "تشغيل الدالة المعرفة من قبل المستخدم %1 واستخدام مخرجاتها.";
+Blockly.Msg.PROCEDURES_CALL_BEFORE_PARAMS = "مع:";
+Blockly.Msg.PROCEDURES_CREATE_DO = "إنشئ '%1'";
+Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT = "Describe this function..."; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_DO = ""; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29";
+Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE = "القيام بشيء ما";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE = "إلى";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TOOLTIP = "انشئ دالة بدون مخرجات .";
+Blockly.Msg.PROCEDURES_DEFRETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29";
+Blockly.Msg.PROCEDURES_DEFRETURN_RETURN = "يرجع";
+Blockly.Msg.PROCEDURES_DEFRETURN_TOOLTIP = "انشئ دالة مع المخرجات.";
+Blockly.Msg.PROCEDURES_DEF_DUPLICATE_WARNING = "تحذير: هذه الدالة تحتوي على معلمات مكررة.";
+Blockly.Msg.PROCEDURES_HIGHLIGHT_DEF = "تسليط الضوء على تعريف الدالة";
+Blockly.Msg.PROCEDURES_IFRETURN_HELPURL = "http://c2.com/cgi/wiki?GuardClause"; // untranslated
+Blockly.Msg.PROCEDURES_IFRETURN_TOOLTIP = "إذا كانت القيمة صحيحة ، اذان قم بارجاع القيمة الثانية.";
+Blockly.Msg.PROCEDURES_IFRETURN_WARNING = "تحذير:هذه القطعة تستخدم فقط داخل تعريف دالة.";
+Blockly.Msg.PROCEDURES_MUTATORARG_TITLE = "اسم الإدخال:";
+Blockly.Msg.PROCEDURES_MUTATORARG_TOOLTIP = "Add an input to the function."; // untranslated
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TITLE = "المدخلات";
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TOOLTIP = "Add, remove, or reorder inputs to this function."; // untranslated
+Blockly.Msg.REDO = "Redo"; // untranslated
+Blockly.Msg.REMOVE_COMMENT = "ازل التعليق";
+Blockly.Msg.RENAME_VARIABLE = "إعادة تسمية المتغير...";
+Blockly.Msg.RENAME_VARIABLE_TITLE = "إعادة تسمية كافة المتغيرات '%1' إلى:";
+Blockly.Msg.TEXT_APPEND_APPENDTEXT = "إلصق نص";
+Blockly.Msg.TEXT_APPEND_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_APPEND_TO = "إلى";
+Blockly.Msg.TEXT_APPEND_TOOLTIP = "إلصق جزءا من النص إلى متغير '%1'.";
+Blockly.Msg.TEXT_CHANGECASE_HELPURL = "https://github.com/google/blockly/wiki/Text#adjusting-text-case"; // untranslated
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_LOWERCASE = "الى حروف صغيرة";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_TITLECASE = "الى حروف العنوان";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_UPPERCASE = "الى حروف كبيرة";
+Blockly.Msg.TEXT_CHANGECASE_TOOLTIP = "يرجع نسخة من النص في حالة مختلفة.";
+Blockly.Msg.TEXT_CHARAT_FIRST = "احصل على الحرف الأول";
+Blockly.Msg.TEXT_CHARAT_FROM_END = "الحصول على الحرف # من نهاية";
+Blockly.Msg.TEXT_CHARAT_FROM_START = "الحصول على الحرف #";
+Blockly.Msg.TEXT_CHARAT_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-text"; // untranslated
+Blockly.Msg.TEXT_CHARAT_INPUT_INTEXT = "في النص";
+Blockly.Msg.TEXT_CHARAT_LAST = "احصل على آخر حرف";
+Blockly.Msg.TEXT_CHARAT_RANDOM = "الحصول على حرف عشوائي";
+Blockly.Msg.TEXT_CHARAT_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_CHARAT_TOOLTIP = "يرجع حرف ما في الموضع المحدد.";
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TOOLTIP = "إضف عنصر إلى النص.";
+Blockly.Msg.TEXT_CREATE_JOIN_TITLE_JOIN = "الانضمام إلى";
+Blockly.Msg.TEXT_CREATE_JOIN_TOOLTIP = "أضف, إحذف, أو أعد ترتيب المقاطع لإعادة تكوين النص من القطع التالية.";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_END = "إلى حرف # من نهاية";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_START = "إلى حرف #";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_LAST = "إلى آخر حرف";
+Blockly.Msg.TEXT_GET_SUBSTRING_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_INPUT_IN_TEXT = "في النص";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FIRST = "الحصول على سلسلة فرعية من الحرف الأول";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_END = "الحصول على سلسلة حروف فرعية من الحرف # من نهاية";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_START = "الحصول على سلسلة حروف فرعية من الحرف #";
+Blockly.Msg.TEXT_GET_SUBSTRING_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_TOOLTIP = "يرجع جزء معين من النص.";
+Blockly.Msg.TEXT_INDEXOF_HELPURL = "https://github.com/google/blockly/wiki/Text#finding-text"; // untranslated
+Blockly.Msg.TEXT_INDEXOF_INPUT_INTEXT = "في النص";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_FIRST = "ابحث عن التواجد الأول للنص";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_LAST = "ابحث عن التواجد الأخير للنص";
+Blockly.Msg.TEXT_INDEXOF_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_INDEXOF_TOOLTIP = "تقوم بإرجاع مؤشر التواجد الأول/الأخير للنص الأول في النص الثاني. تقوم بإرجاع %1 إذا لم يتم العثور على النص.";
+Blockly.Msg.TEXT_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Text#checking-for-empty-text"; // untranslated
+Blockly.Msg.TEXT_ISEMPTY_TITLE = "%1 فارغ";
+Blockly.Msg.TEXT_ISEMPTY_TOOLTIP = "يرجع \"صحيح\" إذا كان النص المقدم فارغ.";
+Blockly.Msg.TEXT_JOIN_HELPURL = "https://github.com/google/blockly/wiki/Text#text-creation"; // untranslated
+Blockly.Msg.TEXT_JOIN_TITLE_CREATEWITH = "انشئ نص مع";
+Blockly.Msg.TEXT_JOIN_TOOLTIP = "أنشئ جزء من النص بالصاق أي عدد من العناصر ببعضها البعض.";
+Blockly.Msg.TEXT_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_LENGTH_TITLE = "طول %1";
+Blockly.Msg.TEXT_LENGTH_TOOLTIP = "تقوم بإرجاع عدد الاحرف (بما في ذلك الفراغات) في النص المقدم.";
+Blockly.Msg.TEXT_PRINT_HELPURL = "https://github.com/google/blockly/wiki/Text#printing-text"; // untranslated
+Blockly.Msg.TEXT_PRINT_TITLE = "اطبع %1";
+Blockly.Msg.TEXT_PRINT_TOOLTIP = "اطبع النص المحدد أو العدد أو قيمة أخرى.";
+Blockly.Msg.TEXT_PROMPT_HELPURL = "https://github.com/google/blockly/wiki/Text#getting-input-from-the-user"; // untranslated
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_NUMBER = "انتظر ادخال المستخذم لرقم ما.";
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_TEXT = "انتظر ادخال المستخدم لنص ما.";
+Blockly.Msg.TEXT_PROMPT_TYPE_NUMBER = "انتظر ادخال المستخدم لرقم ما مع اظهار رسالة";
+Blockly.Msg.TEXT_PROMPT_TYPE_TEXT = "انتظر ادخال المستخدم لنص ما مع اظهار رسالة";
+Blockly.Msg.TEXT_TEXT_HELPURL = "https://en.wikipedia.org/wiki/String_(computer_science)";
+Blockly.Msg.TEXT_TEXT_TOOLTIP = "حرف أو كلمة أو سطر من النص.";
+Blockly.Msg.TEXT_TRIM_HELPURL = "https://github.com/google/blockly/wiki/Text#trimming-removing-spaces"; // untranslated
+Blockly.Msg.TEXT_TRIM_OPERATOR_BOTH = "إزالة الفراغات من كلا الجانبين";
+Blockly.Msg.TEXT_TRIM_OPERATOR_LEFT = "إزالة الفراغات من الجانب الأيسر من";
+Blockly.Msg.TEXT_TRIM_OPERATOR_RIGHT = "إزالة الفراغات من الجانب الأيمن من";
+Blockly.Msg.TEXT_TRIM_TOOLTIP = "يرجع نسخة من النص مع حذف من أحد أو كلا الفراغات من أطرافه.";
+Blockly.Msg.TODAY = "اليوم";
+Blockly.Msg.UNDO = "Undo"; // untranslated
+Blockly.Msg.VARIABLES_DEFAULT_NAME = "البند";
+Blockly.Msg.VARIABLES_GET_CREATE_SET = "انشئ 'التعيين %1'";
+Blockly.Msg.VARIABLES_GET_HELPURL = "https://github.com/google/blockly/wiki/Variables#get"; // untranslated
+Blockly.Msg.VARIABLES_GET_TOOLTIP = "يرجع قيمة هذا المتغير.";
+Blockly.Msg.VARIABLES_SET = "تعيين %1 إلى %2";
+Blockly.Msg.VARIABLES_SET_CREATE_GET = "انشئ 'احصل على %1'";
+Blockly.Msg.VARIABLES_SET_HELPURL = "https://github.com/google/blockly/wiki/Variables#set"; // untranslated
+Blockly.Msg.VARIABLES_SET_TOOLTIP = "تعيين هذا المتغير لتكون مساوية للقيمة المدخلة.";
+Blockly.Msg.VARIABLE_ALREADY_EXISTS = "المتغير '%1' موجود بالفعل";
+Blockly.Msg.PROCEDURES_DEFRETURN_TITLE = Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE;
+Blockly.Msg.CONTROLS_IF_IF_TITLE_IF = Blockly.Msg.CONTROLS_IF_MSG_IF;
+Blockly.Msg.CONTROLS_WHILEUNTIL_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_MSG_THEN = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_ELSE_TITLE_ELSE = Blockly.Msg.CONTROLS_IF_MSG_ELSE;
+Blockly.Msg.PROCEDURES_DEFRETURN_PROCEDURE = Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE;
+Blockly.Msg.LISTS_GET_SUBLIST_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.LISTS_GET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.PROCEDURES_DEFRETURN_DO = Blockly.Msg.PROCEDURES_DEFNORETURN_DO;
+Blockly.Msg.CONTROLS_IF_ELSEIF_TITLE_ELSEIF = Blockly.Msg.CONTROLS_IF_MSG_ELSEIF;
+Blockly.Msg.LISTS_GET_INDEX_HELPURL = Blockly.Msg.LISTS_INDEX_OF_HELPURL;
+Blockly.Msg.CONTROLS_FOREACH_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_SET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TITLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_APPEND_VARIABLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.LISTS_INDEX_OF_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.PROCEDURES_DEFRETURN_COMMENT = Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT; \ No newline at end of file
diff --git a/blockly/msg/js/az.js b/blockly/msg/js/az.js
new file mode 100644
index 0000000..243e7e6
--- /dev/null
+++ b/blockly/msg/js/az.js
@@ -0,0 +1,391 @@
+// This file was automatically generated. Do not modify.
+
+'use strict';
+
+goog.provide('Blockly.Msg.az');
+
+goog.require('Blockly.Msg');
+
+Blockly.Msg.ADD_COMMENT = "Şərh əlavə et";
+Blockly.Msg.CHANGE_VALUE_TITLE = "Qiyməti dəyiş:";
+Blockly.Msg.CLEAN_UP = "Blokları təmizlə";
+Blockly.Msg.COLLAPSE_ALL = "Blokları yığ";
+Blockly.Msg.COLLAPSE_BLOCK = "Bloku yığ";
+Blockly.Msg.COLOUR_BLEND_COLOUR1 = "rəng 1";
+Blockly.Msg.COLOUR_BLEND_COLOUR2 = "rəng 2";
+Blockly.Msg.COLOUR_BLEND_HELPURL = "http://meyerweb.com/eric/tools/color-blend/";
+Blockly.Msg.COLOUR_BLEND_RATIO = "nisbət";
+Blockly.Msg.COLOUR_BLEND_TITLE = "qarışdır";
+Blockly.Msg.COLOUR_BLEND_TOOLTIP = "İki rəngi verilmiş nisbətdə (0,0 - 1,0) qarışdırır.";
+Blockly.Msg.COLOUR_PICKER_HELPURL = "https://az.wikipedia.org/wiki/Rəng";
+Blockly.Msg.COLOUR_PICKER_TOOLTIP = "Palitradan bir rəng seçin.";
+Blockly.Msg.COLOUR_RANDOM_HELPURL = "http://randomcolour.com"; // untranslated
+Blockly.Msg.COLOUR_RANDOM_TITLE = "təsadüfi rəng";
+Blockly.Msg.COLOUR_RANDOM_TOOLTIP = "Təsadüfi bir rəng seçin.";
+Blockly.Msg.COLOUR_RGB_BLUE = "mavi";
+Blockly.Msg.COLOUR_RGB_GREEN = "yaşıl";
+Blockly.Msg.COLOUR_RGB_HELPURL = "http://www.december.com/html/spec/colorper.html";
+Blockly.Msg.COLOUR_RGB_RED = "qırmızı";
+Blockly.Msg.COLOUR_RGB_TITLE = "rənglə";
+Blockly.Msg.COLOUR_RGB_TOOLTIP = "Qırmızı, yaşıl və mavinin göstərilən miqdarı ilə bir rəng düzəlt. Bütün qiymətlər 0 ilə 100 arasında olmalıdır.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_HELPURL = "https://github.com/google/blockly/wiki/Loops#loop-termination-blocks"; // untranslated
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK = "dövrdən çıx";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE = "dövrün növbəti addımından davam et";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK = "Cari dövrdən çıx.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE = "Bu dövrün qalanını ötür və növbəti addımla davam et.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_WARNING = "Xəbərdarlıq: Bu blok ancaq dövr daxilində istifadə oluna bilər.";
+Blockly.Msg.CONTROLS_FOREACH_HELPURL = "https://github.com/google/blockly/wiki/Loops#for-each"; // untranslated
+Blockly.Msg.CONTROLS_FOREACH_TITLE = "hər element üçün %1 siyahıda %2";
+Blockly.Msg.CONTROLS_FOREACH_TOOLTIP = "Siyahıdakı hər element üçün \"%1\" dəyişənini elementə mənimsət və bundan sonra bəzi əmrləri yerinə yetir.";
+Blockly.Msg.CONTROLS_FOR_HELPURL = "https://github.com/google/blockly/wiki/Loops#count-with"; // untranslated
+Blockly.Msg.CONTROLS_FOR_TITLE = "say: %1 %2 ilə başlayıb, %3 qiymətinə kimi %4 qədər dəyiş";
+Blockly.Msg.CONTROLS_FOR_TOOLTIP = "\"%1\" dəyişəni başlanğıc ədəddən son ədədə qədər göstərilən aralıqla qiymətlər aldıqca göstərilən blokları yerinə yetir.";
+Blockly.Msg.CONTROLS_IF_ELSEIF_TOOLTIP = "\"Əgər\" blokuna bir şərt əlavə et.";
+Blockly.Msg.CONTROLS_IF_ELSE_TOOLTIP = "\"Əgər\" blokuna qalan bütün halları əhatə edəb son bir şərt əlavə et.";
+Blockly.Msg.CONTROLS_IF_HELPURL = "https://github.com/google/blockly/wiki/IfElse"; // untranslated
+Blockly.Msg.CONTROLS_IF_IF_TOOLTIP = "Bu \"əgər\" blokunu dəyişdirmək üçün bölümlərin yenisini əlavə et, sil və ya yerini dəyiş.";
+Blockly.Msg.CONTROLS_IF_MSG_ELSE = "əks halda";
+Blockly.Msg.CONTROLS_IF_MSG_ELSEIF = "əks halda əgər";
+Blockly.Msg.CONTROLS_IF_MSG_IF = "əgər";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_1 = "Əgər qiymət doğrudursa, onda bəzi əmrləri yerinə yetir.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_2 = "Əgər qiymət doğrudursa, onda birinci əmrlər blokunu yerinə yetir. Əks halda isə ikinci əmrlər blokunu yerinə yetir.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_3 = "Əgər birinci qiymət doğrudursa, onda birinci əmrlər blokunu yerinə yetir. Əks halda əgər ikinci qiymət doğrudursa, onda ikinci əmrlər blokunu yerinə yetir.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_4 = "Əgər birinci qiymət doğrudursa, onda birinci əmrlər blokunu yerinə yetir. Əks halda əgər ikinci qiymət doğrudursa, onda ikinci əmrlər blokunu yerinə yetir. Əgər qiymətlərdən heç biri doğru deyilsə, onda axırıncı əmrlər blokunu yerinə yetir.";
+Blockly.Msg.CONTROLS_REPEAT_HELPURL = "https://az.wikipedia.org/wiki/For_loop";
+Blockly.Msg.CONTROLS_REPEAT_INPUT_DO = "icra et";
+Blockly.Msg.CONTROLS_REPEAT_TITLE = "%1 dəfə təkrar et";
+Blockly.Msg.CONTROLS_REPEAT_TOOLTIP = "Bəzi əmrləri bir neçə dəfə yerinə yetir.";
+Blockly.Msg.CONTROLS_WHILEUNTIL_HELPURL = "https://github.com/google/blockly/wiki/Loops#repeat"; // untranslated
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "təkrar et, ta ki";
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "təkrar et, hələ ki";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "Hələ ki, qiymət \"yalan\"dır, bəzi əmrləri yerinə yetir.";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "Hələ ki, qiymət \"doğru\"dur, bəzi əmrləri yerinə yetir.";
+Blockly.Msg.DELETE_ALL_BLOCKS = "Bütün %1 blok silinsin?";
+Blockly.Msg.DELETE_BLOCK = "Bloku sil";
+Blockly.Msg.DELETE_VARIABLE = "Delete the '%1' variable"; // untranslated
+Blockly.Msg.DELETE_VARIABLE_CONFIRMATION = "Delete %1 uses of the '%2' variable?"; // untranslated
+Blockly.Msg.DELETE_X_BLOCKS = "%1 bloku sil";
+Blockly.Msg.DISABLE_BLOCK = "Bloku söndür";
+Blockly.Msg.DUPLICATE_BLOCK = "Dublikat";
+Blockly.Msg.ENABLE_BLOCK = "Bloku aktivləşdir";
+Blockly.Msg.EXPAND_ALL = "Blokları aç";
+Blockly.Msg.EXPAND_BLOCK = "Bloku aç";
+Blockly.Msg.EXTERNAL_INPUTS = "Xarici girişlər";
+Blockly.Msg.HELP = "Kömək";
+Blockly.Msg.INLINE_INPUTS = "Sətiriçi girişlər";
+Blockly.Msg.LISTS_CREATE_EMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-empty-list"; // untranslated
+Blockly.Msg.LISTS_CREATE_EMPTY_TITLE = "boş siyahı düzəlt";
+Blockly.Msg.LISTS_CREATE_EMPTY_TOOLTIP = "Heç bir verilən qeyd olunmamış, uzunluğu 0 olan bir siyahı verir";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TITLE_ADD = "siyahı";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TOOLTIP = "Bu siyahı blokunu yenidən konfigurasiya etmək üçün bölmələri əlavə edin, silin və ya yerlərini dəyişin.";
+Blockly.Msg.LISTS_CREATE_WITH_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
+Blockly.Msg.LISTS_CREATE_WITH_INPUT_WITH = "bunlardan siyahı düzəlt";
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TOOLTIP = "Siyahıya element əlavə edin.";
+Blockly.Msg.LISTS_CREATE_WITH_TOOLTIP = "İstənilən ölçülü siyahı yaradın.";
+Blockly.Msg.LISTS_GET_INDEX_FIRST = "birinci";
+Blockly.Msg.LISTS_GET_INDEX_FROM_END = "axırdan # nömrəli";
+Blockly.Msg.LISTS_GET_INDEX_FROM_START = "#";
+Blockly.Msg.LISTS_GET_INDEX_GET = "götür";
+Blockly.Msg.LISTS_GET_INDEX_GET_REMOVE = "götür və sil";
+Blockly.Msg.LISTS_GET_INDEX_LAST = "axırıncı";
+Blockly.Msg.LISTS_GET_INDEX_RANDOM = "təsadüfi";
+Blockly.Msg.LISTS_GET_INDEX_REMOVE = "yığışdır";
+Blockly.Msg.LISTS_GET_INDEX_TAIL = ""; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FIRST = "Siyahının ilk elementini qaytarır.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FROM = "Siyahıdan təyin olunmuş indeksli elementi qaytarır.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_LAST = "Siyahının son elementini qaytarır.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_RANDOM = "Siyahıdan hər hansı təsadüfi elementi qaytarır.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST = "Siyahıdan ilk elementi silir və qaytarır.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM = "Siyahıdan təyin olunmuş indeksli elementi silir və qaytarır.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST = "Siyahıdan son elementi silir və qaytarır.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM = "Siyahıdan təsadufi elementi silir və qaytarır.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST = "Siyahıdan ilk elementi silir.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM = "Siyahıdan təyin olunmuş indeksli elementi silir.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST = "Siyahıdan son elementi silir.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM = "Siyahıdan təsadüfi bir elementi silir.";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_END = "sondan # nömrəliyə";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_START = "# nömrəliyə";
+Blockly.Msg.LISTS_GET_SUBLIST_END_LAST = "Sonuncuya";
+Blockly.Msg.LISTS_GET_SUBLIST_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-a-sublist"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_START_FIRST = "Birincidən alt-siyahını alın";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_END = "# sonuncudan alt-siyahını alın";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_START = "# - dən alt-siyahını alın";
+Blockly.Msg.LISTS_GET_SUBLIST_TAIL = ""; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_TOOLTIP = "Siyahının təyin olunmuş hissəsinin surətini yaradın.";
+Blockly.Msg.LISTS_INDEX_FROM_END_TOOLTIP = "%1 son elementdir.";
+Blockly.Msg.LISTS_INDEX_FROM_START_TOOLTIP = "%1 ilk elementdir.";
+Blockly.Msg.LISTS_INDEX_OF_FIRST = "Element ilə ilk rastlaşma indeksini müəyyən edin";
+Blockly.Msg.LISTS_INDEX_OF_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-items-from-a-list"; // untranslated
+Blockly.Msg.LISTS_INDEX_OF_LAST = "Element ilə son rastlaşma indeksini müəyyən edin";
+Blockly.Msg.LISTS_INDEX_OF_TOOLTIP = "Siyahıda element ilə ilk/son rastlaşma indeksini qaytarır. Əgər tekst siyahıda tapılmazsa, %1 qaytarılır.";
+Blockly.Msg.LISTS_INLIST = "siyahıda";
+Blockly.Msg.LISTS_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#is-empty"; // untranslated
+Blockly.Msg.LISTS_ISEMPTY_TITLE = "%1 boşdur";
+Blockly.Msg.LISTS_ISEMPTY_TOOLTIP = "Siyahı boşdursa \"doğru\" cavabını qaytarır.";
+Blockly.Msg.LISTS_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Lists#length-of"; // untranslated
+Blockly.Msg.LISTS_LENGTH_TITLE = "%1 siyahısının uzunluğu";
+Blockly.Msg.LISTS_LENGTH_TOOLTIP = "Siyahının uzunluğunu verir.";
+Blockly.Msg.LISTS_REPEAT_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
+Blockly.Msg.LISTS_REPEAT_TITLE = "%1 elementinin %2 dəfə təkrarlandığı siyahı düzəlt";
+Blockly.Msg.LISTS_REPEAT_TOOLTIP = "Təyin olunmuş elementin/qiymətin təyin olunmuş sayda təkrarlandığı siyahını yaradır.";
+Blockly.Msg.LISTS_SET_INDEX_HELPURL = "https://github.com/google/blockly/wiki/Lists#in-list--set"; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_INPUT_TO = "Kimi";
+Blockly.Msg.LISTS_SET_INDEX_INSERT = "daxil et";
+Blockly.Msg.LISTS_SET_INDEX_SET = "təyin et";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST = "Elementi siyahının əvvəlinə daxil edir.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FROM = "Elementi siyahıda göstərilən yerə daxil edir.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_LAST = "Elementi siyahının sonuna artırır.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM = "Elementi siyahıda təsadüfi seçilmiş bir yerə atır.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FIRST = "Siyahıda birinci elementi təyin edir.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FROM = "Siyahının göstərilən yerdəki elementini təyin edir.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_LAST = "Siyahının sonuncu elementini təyin edir.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_RANDOM = "Siyahının təsadüfi seçilmiş bir elementini təyin edir.";
+Blockly.Msg.LISTS_SORT_HELPURL = "https://github.com/google/blockly/wiki/Lists#sorting-a-list"; // untranslated
+Blockly.Msg.LISTS_SORT_ORDER_ASCENDING = "ascending"; // untranslated
+Blockly.Msg.LISTS_SORT_ORDER_DESCENDING = "descending"; // untranslated
+Blockly.Msg.LISTS_SORT_TITLE = "sort %1 %2 %3"; // untranslated
+Blockly.Msg.LISTS_SORT_TOOLTIP = "Sort a copy of a list."; // untranslated
+Blockly.Msg.LISTS_SORT_TYPE_IGNORECASE = "alphabetic, ignore case"; // untranslated
+Blockly.Msg.LISTS_SORT_TYPE_NUMERIC = "numeric"; // untranslated
+Blockly.Msg.LISTS_SORT_TYPE_TEXT = "alphabetic"; // untranslated
+Blockly.Msg.LISTS_SPLIT_HELPURL = "https://github.com/google/blockly/wiki/Lists#splitting-strings-and-joining-lists"; // untranslated
+Blockly.Msg.LISTS_SPLIT_LIST_FROM_TEXT = "make list from text"; // untranslated
+Blockly.Msg.LISTS_SPLIT_TEXT_FROM_LIST = "make text from list"; // untranslated
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_JOIN = "Join a list of texts into one text, separated by a delimiter."; // untranslated
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_SPLIT = "Split text into a list of texts, breaking at each delimiter."; // untranslated
+Blockly.Msg.LISTS_SPLIT_WITH_DELIMITER = "with delimiter"; // untranslated
+Blockly.Msg.LOGIC_BOOLEAN_FALSE = "səhf";
+Blockly.Msg.LOGIC_BOOLEAN_HELPURL = "https://github.com/google/blockly/wiki/Logic#values"; // untranslated
+Blockly.Msg.LOGIC_BOOLEAN_TOOLTIP = "\"doğru\" və ya \"səhf\" cavanını qaytarır.";
+Blockly.Msg.LOGIC_BOOLEAN_TRUE = "doğru";
+Blockly.Msg.LOGIC_COMPARE_HELPURL = "https://az.wikipedia.org/wiki/bərabərsizlik_(riyazi)";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_EQ = "Girişlər bir birinə bərabərdirsə \"doğru\" cavabını qaytarır.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GT = "Birinci giriş ikincidən böyükdürsə \"doğru\" cavabını qaytarır.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GTE = "Birinci giriş ikincidən böyük və ya bərarbərdirsə \"doğru\" cavabını qaytarır.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LT = "Birinci giriş ikincidən kiçikdirsə \"doğru\" cavabını qaytarır.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LTE = "Birinci giriş ikincidən kiçik və ya bərarbərdirsə \"doğru\" cavabını qaytarır.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_NEQ = "Girişlər bərabər deyillərsə \"doğru\" cavabını qaytarır.";
+Blockly.Msg.LOGIC_NEGATE_HELPURL = "https://github.com/google/blockly/wiki/Logic#not"; // untranslated
+Blockly.Msg.LOGIC_NEGATE_TITLE = "%1 deyil";
+Blockly.Msg.LOGIC_NEGATE_TOOLTIP = "Giriş \"yalan\"-dursa \"doğru\" cavabını qaytarır. Giriş \"doğru\"-dursa \"səhf\" cavabını qaytarır.";
+Blockly.Msg.LOGIC_NULL = "boş";
+Blockly.Msg.LOGIC_NULL_HELPURL = "https://en.wikipedia.org/wiki/Nullable_type"; // untranslated
+Blockly.Msg.LOGIC_NULL_TOOLTIP = "Boş cavab qaytarır.";
+Blockly.Msg.LOGIC_OPERATION_AND = "və";
+Blockly.Msg.LOGIC_OPERATION_HELPURL = "https://github.com/google/blockly/wiki/Logic#logical-operations"; // untranslated
+Blockly.Msg.LOGIC_OPERATION_OR = "və ya";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_AND = "Hər iki giriş \"doğru\"-dursa \"doğru\" cavabını qaytarır.";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_OR = "Girişlərdən heç olmasa biri \"doğru\"-dursa \"doğru\" cavabını qaytarır.";
+Blockly.Msg.LOGIC_TERNARY_CONDITION = "test";
+Blockly.Msg.LOGIC_TERNARY_HELPURL = "https://en.wikipedia.org/wiki/%3F:"; // untranslated
+Blockly.Msg.LOGIC_TERNARY_IF_FALSE = "əgər səhfdirsə";
+Blockly.Msg.LOGIC_TERNARY_IF_TRUE = "əgər doğrudursa";
+Blockly.Msg.LOGIC_TERNARY_TOOLTIP = "'Yoxla' əmrindəki şərtə nəzər yetirin. Əgər şərt \"doğru\"-dursa \"əgər doğru\", əks halda isə \"əgər yalan\" cavabını qaytarır.";
+Blockly.Msg.MATH_ADDITION_SYMBOL = "+";
+Blockly.Msg.MATH_ARITHMETIC_HELPURL = "https://az.wikipedia.org/wiki/Hesab";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_ADD = "İki ədədin cəmini qaytarır.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE = "İki ədədin nisbətini qaytarır.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MINUS = "İki ədədin fərqini qaytarır.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MULTIPLY = "İki ədədin hasilini verir.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_POWER = "Birinci ədədin ikinci ədəd dərəcəsindən qüvvətini qaytarır.";
+Blockly.Msg.MATH_CHANGE_HELPURL = "https://en.wikipedia.org/wiki/Programming_idiom#Incrementing_a_counter"; // untranslated
+Blockly.Msg.MATH_CHANGE_TITLE = "dəyiş: %1 buna: %2";
+Blockly.Msg.MATH_CHANGE_TOOLTIP = "'%1' dəyişəninin üzərinə bir ədəd artır.";
+Blockly.Msg.MATH_CONSTANT_HELPURL = "https://az.wikipedia.org/wiki/Riyazi_sabitlər";
+Blockly.Msg.MATH_CONSTANT_TOOLTIP = "Ümumi sabitlərdən birini qaytarır π (3.141…), e (2.718…), φ (1.618…), sqrt(2) (1.414…), sqrt(½) (0.707…), və ya ∞ (sonsuzluq).";
+Blockly.Msg.MATH_CONSTRAIN_HELPURL = "https://en.wikipedia.org/wiki/Clamping_%28graphics%29"; // untranslated
+Blockly.Msg.MATH_CONSTRAIN_TITLE = "%1 üçün ən aşağı %2, ən yuxarı %3 olmağı tələb et";
+Blockly.Msg.MATH_CONSTRAIN_TOOLTIP = "Bir ədədin verilmiş iki ədəd arasında olmasını tələb edir (sərhədlər də daxil olmaqla).";
+Blockly.Msg.MATH_DIVISION_SYMBOL = "÷";
+Blockly.Msg.MATH_IS_DIVISIBLE_BY = "bölünür";
+Blockly.Msg.MATH_IS_EVEN = "cütdür";
+Blockly.Msg.MATH_IS_NEGATIVE = "mənfidir";
+Blockly.Msg.MATH_IS_ODD = "təkdir";
+Blockly.Msg.MATH_IS_POSITIVE = "müsətdir";
+Blockly.Msg.MATH_IS_PRIME = "sadədir";
+Blockly.Msg.MATH_IS_TOOLTIP = "Bir ədədin cüt, tək, sadə, tam, müsbət, mənfi olmasını və ya müəyyən bir ədədə bölünməsini yoxlayır. \"Doğru\" və ya \"yalan\" qiymətini qaytarır.";
+Blockly.Msg.MATH_IS_WHOLE = "tamdır";
+Blockly.Msg.MATH_MODULO_HELPURL = "https://en.wikipedia.org/wiki/Modulo_operation"; // untranslated
+Blockly.Msg.MATH_MODULO_TITLE = "%1 ÷ %2 bölməsinin qalığı";
+Blockly.Msg.MATH_MODULO_TOOLTIP = "İki ədədin nisbətindən alınan qalığı qaytarır.";
+Blockly.Msg.MATH_MULTIPLICATION_SYMBOL = "×";
+Blockly.Msg.MATH_NUMBER_HELPURL = "https://az.wikipedia.org/wiki/Ədəd";
+Blockly.Msg.MATH_NUMBER_TOOLTIP = "Ədəd.";
+Blockly.Msg.MATH_ONLIST_HELPURL = ""; // untranslated
+Blockly.Msg.MATH_ONLIST_OPERATOR_AVERAGE = "siyahının ədədi ortası";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MAX = "siyahının maksimumu";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MEDIAN = "siyahının medianı";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MIN = "siyahının minimumu";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MODE = "Siyahı modları( Ən çox rastlaşılan elementləri)";
+Blockly.Msg.MATH_ONLIST_OPERATOR_RANDOM = "siyahıdan təsadüfi seçilmiş bir element";
+Blockly.Msg.MATH_ONLIST_OPERATOR_STD_DEV = "Siyahının standart deviasiyası";
+Blockly.Msg.MATH_ONLIST_OPERATOR_SUM = "Siyahının cəmi";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_AVERAGE = "Siyahıdaki ədədlərin ədədi ortasını qaytarır.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MAX = "Siyahıdaki ən böyük elementi qaytarır.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MEDIAN = "Siyahının median elementini qaytarır.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MIN = "Siyahıdaki ən kiçik ədədi qaytarır.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MODE = "Siyahıdaki ən çox rastlanan element(lər)dən ibarət siyahı qaytarır.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_RANDOM = "Siyahıdan təsadüfi bir element qaytarır.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_STD_DEV = "Siyahının standart deviasiyasını qaytarır.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_SUM = "Siyahıdakı bütün ədədlərin cəmini qaytarır.";
+Blockly.Msg.MATH_POWER_SYMBOL = "^";
+Blockly.Msg.MATH_RANDOM_FLOAT_HELPURL = "https://en.wikipedia.org/wiki/Random_number_generation"; // untranslated
+Blockly.Msg.MATH_RANDOM_FLOAT_TITLE_RANDOM = "təsadüfi kəsr";
+Blockly.Msg.MATH_RANDOM_FLOAT_TOOLTIP = "0.0 (daxil olmaqla) və 1.0 (daxil olmamaqla) ədədlərinin arasından təsadüfi bir kəsr ədəd qaytarır.";
+Blockly.Msg.MATH_RANDOM_INT_HELPURL = "https://en.wikipedia.org/wiki/Random_number_generation"; // untranslated
+Blockly.Msg.MATH_RANDOM_INT_TITLE = "%1 ilə %2 arasından təsadüfi tam ədəd";
+Blockly.Msg.MATH_RANDOM_INT_TOOLTIP = "Verilmiş iki ədəd arasından (ədədrlər də daxil olmaqla) təsadüfi bir tam ədəd qaytarır.";
+Blockly.Msg.MATH_ROUND_HELPURL = "https://en.wikipedia.org/wiki/Rounding"; // untranslated
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUND = "yuvarlaqlaşdır";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDDOWN = "aşağı yuvarlaqlaşdır";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDUP = "yuxarı yuvarlaqlaşdır";
+Blockly.Msg.MATH_ROUND_TOOLTIP = "Ədədi aşağı və ya yuxari yuvarlaqşdır.";
+Blockly.Msg.MATH_SINGLE_HELPURL = "https://az.wikipedia.org/wiki/Kvadrat_kökləri";
+Blockly.Msg.MATH_SINGLE_OP_ABSOLUTE = "modul";
+Blockly.Msg.MATH_SINGLE_OP_ROOT = "kvadrat kök";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ABS = "Ədədin modulunu qaytarır.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_EXP = "e sabitinin verilmiş ədədə qüvvətini qaytarır.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LN = "Ədədin natural loqarifmini tapır.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LOG10 = "Ədədin 10-cu dərəcədən loqarifmini tapır.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_NEG = "Ədədin əksini qaytarır.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_POW10 = "10-un verilmiş ədədə qüvvətini qaytarır.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ROOT = "Ədədin kvadrat kökünü qaytarır.";
+Blockly.Msg.MATH_SUBTRACTION_SYMBOL = "-";
+Blockly.Msg.MATH_TRIG_ACOS = "arccos";
+Blockly.Msg.MATH_TRIG_ASIN = "arcsin";
+Blockly.Msg.MATH_TRIG_ATAN = "arctan";
+Blockly.Msg.MATH_TRIG_COS = "cos";
+Blockly.Msg.MATH_TRIG_HELPURL = "https://az.wikipedia.org/wiki/Triqonometrik_funksiyalar";
+Blockly.Msg.MATH_TRIG_SIN = "sin";
+Blockly.Msg.MATH_TRIG_TAN = "tg";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ACOS = "Ədədin arccosinusunu qaytarır.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ASIN = "Ədədin arcsinusunu qaytarır.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ATAN = "Ədədin arctanqensini qaytarır.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_COS = "Dərəcənin kosinusunu qaytarır (radianın yox).";
+Blockly.Msg.MATH_TRIG_TOOLTIP_SIN = "Dərəcənin sinusunu qaytar (radianın yox).";
+Blockly.Msg.MATH_TRIG_TOOLTIP_TAN = "Dərəcənin tangensini qaytar (radianın yox).";
+Blockly.Msg.NEW_VARIABLE = "Yeni dəyişən...";
+Blockly.Msg.NEW_VARIABLE_TITLE = "Yeni dəyişənin adı:";
+Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; // untranslated
+Blockly.Msg.PROCEDURES_ALLOW_STATEMENTS = "allow statements"; // untranslated
+Blockly.Msg.PROCEDURES_BEFORE_PARAMS = "ilə:";
+Blockly.Msg.PROCEDURES_CALLNORETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_CALLNORETURN_TOOLTIP = "Yaradılmış '%1' funksiyasını çalışdır.";
+Blockly.Msg.PROCEDURES_CALLRETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_CALLRETURN_TOOLTIP = "Yaradılmış '%1' funksiyasını çalışdır və nəticəni istifadə et.";
+Blockly.Msg.PROCEDURES_CALL_BEFORE_PARAMS = "ilə:";
+Blockly.Msg.PROCEDURES_CREATE_DO = "'%1' yarat";
+Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT = "Describe this function..."; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_DO = ""; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE = "hansısa əməliyyat";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE = "icra et:";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TOOLTIP = "Nəticəsi olmayan funksiya yaradır.";
+Blockly.Msg.PROCEDURES_DEFRETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_DEFRETURN_RETURN = "qaytar";
+Blockly.Msg.PROCEDURES_DEFRETURN_TOOLTIP = "Nəticəsi olan funksiya yaradır.";
+Blockly.Msg.PROCEDURES_DEF_DUPLICATE_WARNING = "Xəbərdarlıq: Bu funksiyanın təkrar olunmuş parametrləri var.";
+Blockly.Msg.PROCEDURES_HIGHLIGHT_DEF = "Funksiyanın təyinatını vurğula";
+Blockly.Msg.PROCEDURES_IFRETURN_HELPURL = "http://c2.com/cgi/wiki?GuardClause"; // untranslated
+Blockly.Msg.PROCEDURES_IFRETURN_TOOLTIP = "Əgər bir dəyər \"doğru\"-dursa onda ikinci dəyəri qaytar.";
+Blockly.Msg.PROCEDURES_IFRETURN_WARNING = "Xəbərdarlıq: Bu blok ancaq bir funksiyanın təyinatı daxilində işlədilə bilər.";
+Blockly.Msg.PROCEDURES_MUTATORARG_TITLE = "Giriş adı:";
+Blockly.Msg.PROCEDURES_MUTATORARG_TOOLTIP = "Add an input to the function."; // untranslated
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TITLE = "girişlər";
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TOOLTIP = "Add, remove, or reorder inputs to this function."; // untranslated
+Blockly.Msg.REDO = "Redo"; // untranslated
+Blockly.Msg.REMOVE_COMMENT = "Şərhi sil";
+Blockly.Msg.RENAME_VARIABLE = "Dəyişənin adını dəyiş...";
+Blockly.Msg.RENAME_VARIABLE_TITLE = "Bütün '%1' dəyişənlərinin adını buna dəyiş:";
+Blockly.Msg.TEXT_APPEND_APPENDTEXT = "bu mətni əlavə et:";
+Blockly.Msg.TEXT_APPEND_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_APPEND_TO = "bu mətnin sonuna:";
+Blockly.Msg.TEXT_APPEND_TOOLTIP = "'%1' dəyişəninin sonuna nəsə əlavə et.";
+Blockly.Msg.TEXT_CHANGECASE_HELPURL = "https://github.com/google/blockly/wiki/Text#adjusting-text-case"; // untranslated
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_LOWERCASE = "kiçik hərflərlə";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_TITLECASE = "Baş Hərflərlə";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_UPPERCASE = "BÖYÜK HƏRFLƏRLƏ";
+Blockly.Msg.TEXT_CHANGECASE_TOOLTIP = "Mətndə hərflərin böyük-kiçikliyini dəyiş.";
+Blockly.Msg.TEXT_CHARAT_FIRST = "birinci hərfi götür";
+Blockly.Msg.TEXT_CHARAT_FROM_END = "axırdan bu nömrəli hərfi götür";
+Blockly.Msg.TEXT_CHARAT_FROM_START = "bu nömrəli hərfi götür";
+Blockly.Msg.TEXT_CHARAT_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-text"; // untranslated
+Blockly.Msg.TEXT_CHARAT_INPUT_INTEXT = "növbəti mətndə";
+Blockly.Msg.TEXT_CHARAT_LAST = "axırıncı hərfi götür";
+Blockly.Msg.TEXT_CHARAT_RANDOM = "təsadüfi hərf götür";
+Blockly.Msg.TEXT_CHARAT_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_CHARAT_TOOLTIP = "Göstərilən mövqedəki hərfi qaytarır.";
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TOOLTIP = "Mətnə bir element əlavə et.";
+Blockly.Msg.TEXT_CREATE_JOIN_TITLE_JOIN = "birləşdir";
+Blockly.Msg.TEXT_CREATE_JOIN_TOOLTIP = "Bu mətn blokunu yenidən konfigurasiya etmək üçün bölmələri əlavə edin, silin və ya yerlərini dəyişin.";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_END = "axırdan bu nömrəli hərfə qədər";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_START = "bu nömrəli hərfə qədər";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_LAST = "son hərfə qədər";
+Blockly.Msg.TEXT_GET_SUBSTRING_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_INPUT_IN_TEXT = "mətndə";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FIRST = "Mətnin surətini ilk hərfdən";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_END = "Mətnin surətini sondan bu nömrəli # hərfdən";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_START = "Mətnin surətini bu nömrəli hərfdən";
+Blockly.Msg.TEXT_GET_SUBSTRING_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_TOOLTIP = "Mətnin təyin olunmuş hissəsini qaytarır.";
+Blockly.Msg.TEXT_INDEXOF_HELPURL = "https://github.com/google/blockly/wiki/Text#finding-text"; // untranslated
+Blockly.Msg.TEXT_INDEXOF_INPUT_INTEXT = "mətndə";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_FIRST = "Bu mətn ilə ilk rastlaşmanı tap:";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_LAST = "Bu mətn ilə son rastlaşmanı tap:";
+Blockly.Msg.TEXT_INDEXOF_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_INDEXOF_TOOLTIP = "Birinci mətnin ikinci mətndə ilk/son rastlaşma indeksini qaytarır. Əgər rastlaşma baş verməzsə, %1 qaytarır.";
+Blockly.Msg.TEXT_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Text#checking-for-empty-text"; // untranslated
+Blockly.Msg.TEXT_ISEMPTY_TITLE = "%1 boşdur";
+Blockly.Msg.TEXT_ISEMPTY_TOOLTIP = "Verilmiş mətn boşdursa, doğru qiymətini qaytarır.";
+Blockly.Msg.TEXT_JOIN_HELPURL = "https://github.com/google/blockly/wiki/Text#text-creation"; // untranslated
+Blockly.Msg.TEXT_JOIN_TITLE_CREATEWITH = "Verilmişlərlə mətn yarat";
+Blockly.Msg.TEXT_JOIN_TOOLTIP = "İxtiyari sayda elementlərinin birləşməsi ilə mətn parçası yarat.";
+Blockly.Msg.TEXT_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_LENGTH_TITLE = "%1 - ın uzunluğu";
+Blockly.Msg.TEXT_LENGTH_TOOLTIP = "Verilmiş mətndəki hərflərin(sözlər arası boşluqlar sayılmaqla) sayını qaytarır.";
+Blockly.Msg.TEXT_PRINT_HELPURL = "https://github.com/google/blockly/wiki/Text#printing-text"; // untranslated
+Blockly.Msg.TEXT_PRINT_TITLE = "%1 - i çap elə";
+Blockly.Msg.TEXT_PRINT_TOOLTIP = "Təyin olunmuş mətn, ədəd və ya hər hansı bir başqa elementi çap elə.";
+Blockly.Msg.TEXT_PROMPT_HELPURL = "https://github.com/google/blockly/wiki/Text#getting-input-from-the-user"; // untranslated
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_NUMBER = "İstifadəçiyə ədəd daxil etməsi üçün sorğu/tələb göndərin.";
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_TEXT = "İstifadəçiyə mətn daxil etməsi üçün sorğu/tələb göndərin.";
+Blockly.Msg.TEXT_PROMPT_TYPE_NUMBER = "İstifadəçiyə ədəd daxil etməsi üçün sorğunu/tələbi ismarıc kimi göndərin";
+Blockly.Msg.TEXT_PROMPT_TYPE_TEXT = "İstifadəçiyə mətn daxil etməsi üçün sorğunu/tələbi ismarıc ilə göndərin";
+Blockly.Msg.TEXT_TEXT_HELPURL = "https://en.wikipedia.org/wiki/String_(computer_science)"; // untranslated
+Blockly.Msg.TEXT_TEXT_TOOLTIP = "Mətndəki hərf, söz və ya sətir.";
+Blockly.Msg.TEXT_TRIM_HELPURL = "https://github.com/google/blockly/wiki/Text#trimming-removing-spaces"; // untranslated
+Blockly.Msg.TEXT_TRIM_OPERATOR_BOTH = "Boşluqları hər iki tərəfdən pozun";
+Blockly.Msg.TEXT_TRIM_OPERATOR_LEFT = "Boşluqlari yalnız sol tərəfdən pozun";
+Blockly.Msg.TEXT_TRIM_OPERATOR_RIGHT = "Boşluqları yalnız sağ tərəfdən pozun";
+Blockly.Msg.TEXT_TRIM_TOOLTIP = "Mətnin hər iki və ya yalnız bir tərəfdən olan boşluqları pozulmuş surətini qaytarın.";
+Blockly.Msg.TODAY = "Bugün";
+Blockly.Msg.UNDO = "Undo"; // untranslated
+Blockly.Msg.VARIABLES_DEFAULT_NAME = "element";
+Blockly.Msg.VARIABLES_GET_CREATE_SET = "'%1 - i təyin et' - i yarat";
+Blockly.Msg.VARIABLES_GET_HELPURL = "https://github.com/google/blockly/wiki/Variables#get"; // untranslated
+Blockly.Msg.VARIABLES_GET_TOOLTIP = "Bu dəyişənin qiymətini qaytarır.";
+Blockly.Msg.VARIABLES_SET = "%1 - i bu qiymət ilə təyin et: %2";
+Blockly.Msg.VARIABLES_SET_CREATE_GET = "'%1 - i götür' - ü yarat";
+Blockly.Msg.VARIABLES_SET_HELPURL = "https://github.com/google/blockly/wiki/Variables#set"; // untranslated
+Blockly.Msg.VARIABLES_SET_TOOLTIP = "Bu dəyişəni daxil edilmiş qiymətə bərabər edir.";
+Blockly.Msg.VARIABLE_ALREADY_EXISTS = "A variable named '%1' already exists."; // untranslated
+Blockly.Msg.PROCEDURES_DEFRETURN_TITLE = Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE;
+Blockly.Msg.CONTROLS_IF_IF_TITLE_IF = Blockly.Msg.CONTROLS_IF_MSG_IF;
+Blockly.Msg.CONTROLS_WHILEUNTIL_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_MSG_THEN = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_ELSE_TITLE_ELSE = Blockly.Msg.CONTROLS_IF_MSG_ELSE;
+Blockly.Msg.PROCEDURES_DEFRETURN_PROCEDURE = Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE;
+Blockly.Msg.LISTS_GET_SUBLIST_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.LISTS_GET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.PROCEDURES_DEFRETURN_DO = Blockly.Msg.PROCEDURES_DEFNORETURN_DO;
+Blockly.Msg.CONTROLS_IF_ELSEIF_TITLE_ELSEIF = Blockly.Msg.CONTROLS_IF_MSG_ELSEIF;
+Blockly.Msg.LISTS_GET_INDEX_HELPURL = Blockly.Msg.LISTS_INDEX_OF_HELPURL;
+Blockly.Msg.CONTROLS_FOREACH_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_SET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TITLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_APPEND_VARIABLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.LISTS_INDEX_OF_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.PROCEDURES_DEFRETURN_COMMENT = Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT; \ No newline at end of file
diff --git a/blockly/msg/js/ba.js b/blockly/msg/js/ba.js
new file mode 100644
index 0000000..734e00c
--- /dev/null
+++ b/blockly/msg/js/ba.js
@@ -0,0 +1,391 @@
+// This file was automatically generated. Do not modify.
+
+'use strict';
+
+goog.provide('Blockly.Msg.ba');
+
+goog.require('Blockly.Msg');
+
+Blockly.Msg.ADD_COMMENT = "Фекер өҫтәргә";
+Blockly.Msg.CHANGE_VALUE_TITLE = "Мәғәнәне үҙгәртегеҙ:";
+Blockly.Msg.CLEAN_UP = "Блоктарҙы таҙартырға";
+Blockly.Msg.COLLAPSE_ALL = "Блоктарҙы төрөргә";
+Blockly.Msg.COLLAPSE_BLOCK = "Блокты төрөргә";
+Blockly.Msg.COLOUR_BLEND_COLOUR1 = "1-се төҫ";
+Blockly.Msg.COLOUR_BLEND_COLOUR2 = "2-се төҫ";
+Blockly.Msg.COLOUR_BLEND_HELPURL = "http://meyerweb.com/eric/tools/color-blend/"; // untranslated
+Blockly.Msg.COLOUR_BLEND_RATIO = "1-се төҫтөң өлөшө";
+Blockly.Msg.COLOUR_BLEND_TITLE = "ҡатнаштырырға";
+Blockly.Msg.COLOUR_BLEND_TOOLTIP = "Ике төҫтө бирелгән нисбәттә болғата (0.0 - 1.0).";
+Blockly.Msg.COLOUR_PICKER_HELPURL = "https://en.wikipedia.org/wiki/Төҫ";
+Blockly.Msg.COLOUR_PICKER_TOOLTIP = "Палитранан төҫ һайлағыҙ.";
+Blockly.Msg.COLOUR_RANDOM_HELPURL = "http://randomcolour.com"; // untranslated
+Blockly.Msg.COLOUR_RANDOM_TITLE = "осраҡлы төҫ";
+Blockly.Msg.COLOUR_RANDOM_TOOLTIP = "Төҫтө осраҡлылыҡ буйынса һайлай.";
+Blockly.Msg.COLOUR_RGB_BLUE = "зәңгәр";
+Blockly.Msg.COLOUR_RGB_GREEN = "йәшелдән";
+Blockly.Msg.COLOUR_RGB_HELPURL = "http://www.december.com/html/spec/colorper.html"; // untranslated
+Blockly.Msg.COLOUR_RGB_RED = "ҡыҙылдан";
+Blockly.Msg.COLOUR_RGB_TITLE = "ошонан төҫ";
+Blockly.Msg.COLOUR_RGB_TOOLTIP = "Бирелгән нисбәттәрҙә ҡыҙылдан, йәшелдән һәм зәңгәрҙән төҫ барлыҡҡа килә. Бөтә мәғәнәләр 0 менән 100 араһында булырға тейеш.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_HELPURL = "https://github.com/google/blockly/wiki/Loops#loop-termination-blocks"; // untranslated
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK = "циклдан сығырға";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE = "циклдың киләһе аҙымына күсергә";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK = "Был циклды өҙә.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE = "Циклдың ҡалдығын төшөрөп ҡалдыра һәм киләһе аҙымға күсә.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_WARNING = "Иҫкәртеү: был блок цикл эсендә генә ҡулланыла ала.";
+Blockly.Msg.CONTROLS_FOREACH_HELPURL = "https://github.com/google/blockly/wiki/Loops#for-each"; // untranslated
+Blockly.Msg.CONTROLS_FOREACH_TITLE = "һәр элемент өсөн %1 исемлектә %2";
+Blockly.Msg.CONTROLS_FOREACH_TOOLTIP = "Исемлектәге һәр элемент өсөн үҙгәреүсәнгә элементтың '%1' мәғәнәһен бирә һәм күрһәтелгән командаларҙы үтәй.";
+Blockly.Msg.CONTROLS_FOR_HELPURL = "https://github.com/google/blockly/wiki/Loops#count-with"; // untranslated
+Blockly.Msg.CONTROLS_FOR_TITLE = "count with %1 from %2 to %3 by %4"; // untranslated
+Blockly.Msg.CONTROLS_FOR_TOOLTIP = "Үҙгәреүсәнгә башынан аҙағына тиклем тәғәйен аҙым менән %1 мәғәнәне бирә һәм күрһәтелгән командаларҙы үтәй.";
+Blockly.Msg.CONTROLS_IF_ELSEIF_TOOLTIP = "\"Әгәр\" блогына шарт өҫтәй";
+Blockly.Msg.CONTROLS_IF_ELSE_TOOLTIP = "Бер шарт та дөрөҫ булмаған осраҡҡа йомғаҡлау ярҙамсы блогын өҫтәргә.";
+Blockly.Msg.CONTROLS_IF_HELPURL = "https://github.com/google/blockly/wiki/IfElse"; // untranslated
+Blockly.Msg.CONTROLS_IF_IF_TOOLTIP = "\"Әгәр\" блогын ҡабаттан төҙөү өсөн киҫәктәрҙе өҫтәгеҙ, юйҙырығыҙ, урындарын алмаштырығыҙ.";
+Blockly.Msg.CONTROLS_IF_MSG_ELSE = "юғиһә";
+Blockly.Msg.CONTROLS_IF_MSG_ELSEIF = "юғиһә, әгәр";
+Blockly.Msg.CONTROLS_IF_MSG_IF = "әгәр";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_1 = "Мәғәнә дөрөҫ булғанда, командаларҙы үтәй.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_2 = "Шарт дөрөҫ булғанда, командаларҙың беренсе блогын үтәй. Улай булмаһа, командаларҙың икенсе блогы үтәлә.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_3 = "Беренсе шарт дөрөҫ булһа, командаларҙың беренсе блогын үтәй. Икенсе шарт дөрөҫ булһа, командаларҙың икенсе блогын үтәй.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_4 = "Беренсе шарт дөрөҫ булһа, командаларҙың беренсе блогын үтәй. Әгәр икенсе шарт дөрөҫ булһа, командаларҙың икенсе блогын үтәй. Бер шарт та дөрөҫ булмаһа, команда блоктарының һуңғыһын үтәй.";
+Blockly.Msg.CONTROLS_REPEAT_HELPURL = "https://en.wikipedia.org/wiki/Цикл_(программалау)";
+Blockly.Msg.CONTROLS_REPEAT_INPUT_DO = "үтәргә";
+Blockly.Msg.CONTROLS_REPEAT_TITLE = " %1 тапҡыр ҡабатларға";
+Blockly.Msg.CONTROLS_REPEAT_TOOLTIP = "Командаларҙы бер нисә тапҡыр үтәй.";
+Blockly.Msg.CONTROLS_WHILEUNTIL_HELPURL = "https://github.com/google/blockly/wiki/Loops#repeat"; // untranslated
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "ҡабатларға, әлегә юҡ";
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "ҡабатларға, әлегә";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "Мәғәнә ялған булғанда, командаларҙы ҡабатлай.";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "Мәғәнә дөрөҫ булғанда, командаларҙы ҡабатлай.";
+Blockly.Msg.DELETE_ALL_BLOCKS = "Бөтә %1 блоктарҙы юйырғамы?";
+Blockly.Msg.DELETE_BLOCK = "Блокты юйҙырырға";
+Blockly.Msg.DELETE_VARIABLE = "Delete the '%1' variable"; // untranslated
+Blockly.Msg.DELETE_VARIABLE_CONFIRMATION = "Delete %1 uses of the '%2' variable?"; // untranslated
+Blockly.Msg.DELETE_X_BLOCKS = " %1 блокты юйҙырырға";
+Blockly.Msg.DISABLE_BLOCK = "Блокты һүндерергә";
+Blockly.Msg.DUPLICATE_BLOCK = "Күсереп алырға";
+Blockly.Msg.ENABLE_BLOCK = "Блокты тоҡандырырға";
+Blockly.Msg.EXPAND_ALL = "Блоктарҙы йәйергә";
+Blockly.Msg.EXPAND_BLOCK = "Блокты йәйергә";
+Blockly.Msg.EXTERNAL_INPUTS = "Тышҡы өҫтәлмә";
+Blockly.Msg.HELP = "Ярҙам";
+Blockly.Msg.INLINE_INPUTS = "Эске өҫтәлмә";
+Blockly.Msg.LISTS_CREATE_EMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-empty-list"; // untranslated
+Blockly.Msg.LISTS_CREATE_EMPTY_TITLE = "create empty list"; // untranslated
+Blockly.Msg.LISTS_CREATE_EMPTY_TOOLTIP = "Returns a list, of length 0, containing no data records"; // untranslated
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TITLE_ADD = "исемлек";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TOOLTIP = "Add, remove, or reorder sections to reconfigure this list block."; // untranslated
+Blockly.Msg.LISTS_CREATE_WITH_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
+Blockly.Msg.LISTS_CREATE_WITH_INPUT_WITH = "менән исемлек төҙөргә";
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TOOLTIP = "Add an item to the list."; // untranslated
+Blockly.Msg.LISTS_CREATE_WITH_TOOLTIP = "Create a list with any number of items."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_FIRST = "беренсе";
+Blockly.Msg.LISTS_GET_INDEX_FROM_END = "# аҙағынан";
+Blockly.Msg.LISTS_GET_INDEX_FROM_START = "#"; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_GET = "алырға";
+Blockly.Msg.LISTS_GET_INDEX_GET_REMOVE = "алырға һәм юйырға";
+Blockly.Msg.LISTS_GET_INDEX_LAST = "аҙаҡҡы";
+Blockly.Msg.LISTS_GET_INDEX_RANDOM = "осраҡлы";
+Blockly.Msg.LISTS_GET_INDEX_REMOVE = "юйырға";
+Blockly.Msg.LISTS_GET_INDEX_TAIL = ""; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FIRST = "Returns the first item in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FROM = "Returns the item at the specified position in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_LAST = "Returns the last item in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_RANDOM = "Returns a random item in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST = "Removes and returns the first item in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM = "Removes and returns the item at the specified position in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST = "Removes and returns the last item in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM = "Removes and returns a random item in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST = "Removes the first item in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM = "Removes the item at the specified position in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST = "Removes the last item in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM = "Removes a random item in a list."; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_END = "to # from end"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_START = "to #"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_END_LAST = "to last"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-a-sublist"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_START_FIRST = "get sub-list from first"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_END = "get sub-list from # from end"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_START = "get sub-list from #"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_TAIL = ""; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_TOOLTIP = "Creates a copy of the specified portion of a list."; // untranslated
+Blockly.Msg.LISTS_INDEX_FROM_END_TOOLTIP = "%1 is the last item."; // untranslated
+Blockly.Msg.LISTS_INDEX_FROM_START_TOOLTIP = "%1 is the first item."; // untranslated
+Blockly.Msg.LISTS_INDEX_OF_FIRST = "find first occurrence of item"; // untranslated
+Blockly.Msg.LISTS_INDEX_OF_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-items-from-a-list"; // untranslated
+Blockly.Msg.LISTS_INDEX_OF_LAST = "find last occurrence of item"; // untranslated
+Blockly.Msg.LISTS_INDEX_OF_TOOLTIP = "Returns the index of the first/last occurrence of the item in the list. Returns %1 if item is not found."; // untranslated
+Blockly.Msg.LISTS_INLIST = "исемлеккә";
+Blockly.Msg.LISTS_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#is-empty"; // untranslated
+Blockly.Msg.LISTS_ISEMPTY_TITLE = "%1 буш";
+Blockly.Msg.LISTS_ISEMPTY_TOOLTIP = "Returns true if the list is empty."; // untranslated
+Blockly.Msg.LISTS_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Lists#length-of"; // untranslated
+Blockly.Msg.LISTS_LENGTH_TITLE = "оҙонлоғо %1";
+Blockly.Msg.LISTS_LENGTH_TOOLTIP = "Returns the length of a list."; // untranslated
+Blockly.Msg.LISTS_REPEAT_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
+Blockly.Msg.LISTS_REPEAT_TITLE = "create list with item %1 repeated %2 times"; // untranslated
+Blockly.Msg.LISTS_REPEAT_TOOLTIP = "Creates a list consisting of the given value repeated the specified number of times."; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_HELPURL = "https://github.com/google/blockly/wiki/Lists#in-list--set"; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_INPUT_TO = "кеүек";
+Blockly.Msg.LISTS_SET_INDEX_INSERT = "өҫтәп ҡуйырға";
+Blockly.Msg.LISTS_SET_INDEX_SET = "йыйылма";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST = "Inserts the item at the start of a list."; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FROM = "Inserts the item at the specified position in a list."; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_LAST = "Append the item to the end of a list."; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM = "Inserts the item randomly in a list."; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FIRST = "Sets the first item in a list."; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FROM = "Sets the item at the specified position in a list."; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_LAST = "Sets the last item in a list."; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_RANDOM = "Sets a random item in a list."; // untranslated
+Blockly.Msg.LISTS_SORT_HELPURL = "https://github.com/google/blockly/wiki/Lists#sorting-a-list"; // untranslated
+Blockly.Msg.LISTS_SORT_ORDER_ASCENDING = "ascending"; // untranslated
+Blockly.Msg.LISTS_SORT_ORDER_DESCENDING = "descending"; // untranslated
+Blockly.Msg.LISTS_SORT_TITLE = "sort %1 %2 %3"; // untranslated
+Blockly.Msg.LISTS_SORT_TOOLTIP = "Sort a copy of a list."; // untranslated
+Blockly.Msg.LISTS_SORT_TYPE_IGNORECASE = "alphabetic, ignore case"; // untranslated
+Blockly.Msg.LISTS_SORT_TYPE_NUMERIC = "numeric"; // untranslated
+Blockly.Msg.LISTS_SORT_TYPE_TEXT = "alphabetic"; // untranslated
+Blockly.Msg.LISTS_SPLIT_HELPURL = "https://github.com/google/blockly/wiki/Lists#splitting-strings-and-joining-lists"; // untranslated
+Blockly.Msg.LISTS_SPLIT_LIST_FROM_TEXT = "make list from text"; // untranslated
+Blockly.Msg.LISTS_SPLIT_TEXT_FROM_LIST = "make text from list"; // untranslated
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_JOIN = "Join a list of texts into one text, separated by a delimiter."; // untranslated
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_SPLIT = "Split text into a list of texts, breaking at each delimiter."; // untranslated
+Blockly.Msg.LISTS_SPLIT_WITH_DELIMITER = "with delimiter"; // untranslated
+Blockly.Msg.LOGIC_BOOLEAN_FALSE = "ялған";
+Blockly.Msg.LOGIC_BOOLEAN_HELPURL = "https://github.com/google/blockly/wiki/Logic#values"; // untranslated
+Blockly.Msg.LOGIC_BOOLEAN_TOOLTIP = "Дөрөҫ йәки ялғанды ҡайтара.";
+Blockly.Msg.LOGIC_BOOLEAN_TRUE = "дөрөҫ";
+Blockly.Msg.LOGIC_COMPARE_HELPURL = "https://en.wikipedia.org/wiki/Inequality_(математика)";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_EQ = "Өҫтәмәләр тигеҙ булһа, дөрөҫ мәғәнәһен кире ҡайтара.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GT = "Беренсе өҫтәмә икенсеһенән ҙурыраҡ булһа, дөрөҫ мәғәнәһен кире ҡайтара.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GTE = "Беренсе өҫтәмә икенсеһенән бәләкәйерәк йә уға тиң булһа, дөрөҫ мәғәнәһен кире ҡайтара.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LT = "Беренсе өҫтәмә икенсеһенән бәләкәйерәк булһа, дөрөҫ мәғәнәһен кире ҡайтара.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LTE = "Беренсе өҫтәмә икенсеһенән бәләкәйерәк йә уға тиң булһа, дөрөҫ мәғәнәһен кире ҡайтара.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_NEQ = "Өҫтәмәләр тигеҙ булмаһа, дөрөҫ мәғәнәһен кире ҡайтара.";
+Blockly.Msg.LOGIC_NEGATE_HELPURL = "https://github.com/google/blockly/wiki/Logic#not"; // untranslated
+Blockly.Msg.LOGIC_NEGATE_TITLE = "%1 түгел";
+Blockly.Msg.LOGIC_NEGATE_TOOLTIP = "Өҫтәлмә ялған булһа, дөрөҫ аңлатманы ҡайтара. Өҫтәлмә дөрөҫ булһа, ялған аңлатманы ҡайтара.";
+Blockly.Msg.LOGIC_NULL = "нуль";
+Blockly.Msg.LOGIC_NULL_HELPURL = "https://en.wikipedia.org/wiki/Nullable_type"; // untranslated
+Blockly.Msg.LOGIC_NULL_TOOLTIP = "Нулде ҡайтара.";
+Blockly.Msg.LOGIC_OPERATION_AND = "һәм";
+Blockly.Msg.LOGIC_OPERATION_HELPURL = "https://github.com/google/blockly/wiki/Logic#logical-operations"; // untranslated
+Blockly.Msg.LOGIC_OPERATION_OR = "йәки";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_AND = "Әгәр ҙә ике өҫтәлмә лә тап килһә, дөрөҫ аңлатманы кире ҡайтара.";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_OR = "Өҫтәлмәләрҙең береһе генә дөрөҫ булһа, дөрөҫ аңлатманы ҡайтара.";
+Blockly.Msg.LOGIC_TERNARY_CONDITION = "тест";
+Blockly.Msg.LOGIC_TERNARY_HELPURL = "https://en.wikipedia.org/wiki/%3F:"; // untranslated
+Blockly.Msg.LOGIC_TERNARY_IF_FALSE = "әгәр ялған булһа";
+Blockly.Msg.LOGIC_TERNARY_IF_TRUE = "әгәр дөрөҫ булһа";
+Blockly.Msg.LOGIC_TERNARY_TOOLTIP = "Һайлау шартын тикшерә. Әгәр ул дөрөҫ булһа, беренсе мәғәнәне, хата булһа, икенсе мәғәнәне ҡайтара.";
+Blockly.Msg.MATH_ADDITION_SYMBOL = "+"; // untranslated
+Blockly.Msg.MATH_ARITHMETIC_HELPURL = "https://ba.wikipedia.org/wiki/Арифметика";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_ADD = "Ике һандың суммаһын ҡайтара.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE = "Ике һандың бүлендеген ҡайтара.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MINUS = "Ике һандың айырмаһын ҡайтара.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MULTIPLY = "Ике һандың ҡабатландығын ҡайтара.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_POWER = "Дәрәжәгә күтәрелгән икенсе һандан тәүгеһенә ҡайтара.";
+Blockly.Msg.MATH_CHANGE_HELPURL = "https://ba.wikipedia.org/wiki/Programming_idiom#Incrementing_a_counter";
+Blockly.Msg.MATH_CHANGE_TITLE = "%1 тан %2 ҡа арттырырға";
+Blockly.Msg.MATH_CHANGE_TOOLTIP = "Үҙгәреүсән һанға өҫтәй '%1'.";
+Blockly.Msg.MATH_CONSTANT_HELPURL = "https://ba.wikipedia.org/wiki/Математик_константа";
+Blockly.Msg.MATH_CONSTANT_TOOLTIP = "Таралған константаның береһен күрһәтә: π (3.141...), e (2.718...), φ (1.618...), sqrt(2) (1.414...), sqrt(½) (0.707...) йәки ∞ (сикһеҙлек).";
+Blockly.Msg.MATH_CONSTRAIN_HELPURL = "https://en.wikipedia.org/wiki/Clamping_%28graphics%29"; // untranslated
+Blockly.Msg.MATH_CONSTRAIN_TITLE = "сикләргә %1 аҫтан %2 өҫтән %3";
+Blockly.Msg.MATH_CONSTRAIN_TOOLTIP = "Һанды аҫтан һәм өҫтән сикләй (сиктәгеләрен индереп).";
+Blockly.Msg.MATH_DIVISION_SYMBOL = "÷"; // untranslated
+Blockly.Msg.MATH_IS_DIVISIBLE_BY = "бүленә";
+Blockly.Msg.MATH_IS_EVEN = "тағы";
+Blockly.Msg.MATH_IS_NEGATIVE = "тиҫкәре";
+Blockly.Msg.MATH_IS_ODD = "сәйер";
+Blockly.Msg.MATH_IS_POSITIVE = "ыңғай";
+Blockly.Msg.MATH_IS_PRIME = "ябай";
+Blockly.Msg.MATH_IS_TOOLTIP = "Һандың йоп, таҡ, ябай, бөтөн, ыңғай, кире йәки билдәле һанға ҡарата ниндәй булыуын тикшерә. Дөрөҫ йә ялған мәғәнәһен күрһәтә.";
+Blockly.Msg.MATH_IS_WHOLE = "бөтөн";
+Blockly.Msg.MATH_MODULO_HELPURL = "https://ba.wikipedia.org/wiki/Ҡалдыҡ_менән_бүлеү";
+Blockly.Msg.MATH_MODULO_TITLE = "ҡалдыҡ %1 : %2 араһында";
+Blockly.Msg.MATH_MODULO_TOOLTIP = "Ике һанды бүлеү ҡалдығын күрһәтә.";
+Blockly.Msg.MATH_MULTIPLICATION_SYMBOL = "×"; // untranslated
+Blockly.Msg.MATH_NUMBER_HELPURL = "https://ba.wikipedia.org/wiki/Һан";
+Blockly.Msg.MATH_NUMBER_TOOLTIP = "Рәт.";
+Blockly.Msg.MATH_ONLIST_HELPURL = ""; // untranslated
+Blockly.Msg.MATH_ONLIST_OPERATOR_AVERAGE = "исемлектең уртаса арифметик дәүмәле";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MAX = "исемлектәге иң ҙуры";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MEDIAN = "исемлек медианаһы";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MIN = "Исемлектәге иң бәләкәйе";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MODE = "исемлек модалары";
+Blockly.Msg.MATH_ONLIST_OPERATOR_RANDOM = "исемлектең осраҡлы элементы";
+Blockly.Msg.MATH_ONLIST_OPERATOR_STD_DEV = "исемлекте стандарт кире ҡағыу";
+Blockly.Msg.MATH_ONLIST_OPERATOR_SUM = "исемлек суммаһы";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_AVERAGE = "Исемлектең уртаса арифметик дәүмәле күрһәтә.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MAX = "Исемлектең иң ҙур һанын күрһәтә.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MEDIAN = "Исемлек медианаһын күрһәтә.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MIN = "Исемлектәге иң бәләкәй һанды күрһәтә.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MODE = "Исемлектең иң күп осраған элементтарын күрһәтә.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_RANDOM = "Исемлектең осраҡлы элементын күрһәтә.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_STD_DEV = "Исемлекте стандарт кире ҡағыуҙы күрһәтә.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_SUM = "Исемлектәрҙәге һандар суммаһын күрһәтә.";
+Blockly.Msg.MATH_POWER_SYMBOL = "^"; // untranslated
+Blockly.Msg.MATH_RANDOM_FLOAT_HELPURL = "https://ba.wikipedia.org/wiki/Ялған осраҡлы_һандар_генераторы";
+Blockly.Msg.MATH_RANDOM_FLOAT_TITLE_RANDOM = "0 (үҙен дә индереп) һәм 1 араһындағы осраҡлы һан";
+Blockly.Msg.MATH_RANDOM_FLOAT_TOOLTIP = "Return a random fraction between 0.0 (inclusive) and 1.0 (exclusive)."; // untranslated
+Blockly.Msg.MATH_RANDOM_INT_HELPURL = "https://ba.wikipedia.org/wiki/Ялған осраҡлы_һандар_генераторы";
+Blockly.Msg.MATH_RANDOM_INT_TITLE = "%1-ҙән %2-гә тиклем осраҡлы бөтөн һан";
+Blockly.Msg.MATH_RANDOM_INT_TOOLTIP = "Ике бирелгән һан араһындағы (үҙҙәрен дә индереп) осраҡлы һанды күрһәтә.";
+Blockly.Msg.MATH_ROUND_HELPURL = "https://ba.wikipedia.org/wiki/Т=Түңәрәкләү";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUND = "түңәрәк";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDDOWN = "бәләкәйгә тиклем түңәрәкләргә";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDUP = "ҙурына тиклем түңәрәкләргә";
+Blockly.Msg.MATH_ROUND_TOOLTIP = "Һанды ҙурына йә бәләкәйенә тиклем түңәрәкләргә.";
+Blockly.Msg.MATH_SINGLE_HELPURL = "https://ba.wikipedia.org/wiki/Квадрат_тамыр";
+Blockly.Msg.MATH_SINGLE_OP_ABSOLUTE = "абсолют";
+Blockly.Msg.MATH_SINGLE_OP_ROOT = "квадрат тамыр";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ABS = "Һандың модулен ҡайтара.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_EXP = "Күрһәтелгән дәрәжәлә ҡайтара.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LN = "Һандың натураль логаритмын ҡайтара.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LOG10 = "Һандың унынсы логаритмын ҡайтара.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_NEG = "Кире һанды ҡайтара.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_POW10 = "Күрһәтелгән 10-сы дәрәжәлә ҡайтара.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ROOT = "Һандың квадрат тамырын ҡайтара.";
+Blockly.Msg.MATH_SUBTRACTION_SYMBOL = "-"; // untranslated
+Blockly.Msg.MATH_TRIG_ACOS = "acos"; // untranslated
+Blockly.Msg.MATH_TRIG_ASIN = "asin"; // untranslated
+Blockly.Msg.MATH_TRIG_ATAN = "atan"; // untranslated
+Blockly.Msg.MATH_TRIG_COS = "cos"; // untranslated
+Blockly.Msg.MATH_TRIG_HELPURL = "https://ba..wikipedia.org/wiki/Тригонометрик_функциялар";
+Blockly.Msg.MATH_TRIG_SIN = "sin"; // untranslated
+Blockly.Msg.MATH_TRIG_TAN = "tan"; // untranslated
+Blockly.Msg.MATH_TRIG_TOOLTIP_ACOS = "Арккосинусты градустарҙа күрһәтә.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ASIN = "Арксинусты градустарҙа күрһәтә.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ATAN = "Арктангенсты градустарҙа күрһәтә.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_COS = "Мөйөштөң косинусын градустарҙа ҡайтара.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_SIN = "Мөйөштөң синусын градустарҙа ҡайтара.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_TAN = "Мөйөштөң тангенсын градустарҙа күрһәтә.";
+Blockly.Msg.NEW_VARIABLE = "Яңы үҙгәреүсән...";
+Blockly.Msg.NEW_VARIABLE_TITLE = "Яңы үҙгәреүсәндең исеме:";
+Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; // untranslated
+Blockly.Msg.PROCEDURES_ALLOW_STATEMENTS = "allow statements"; // untranslated
+Blockly.Msg.PROCEDURES_BEFORE_PARAMS = "with:"; // untranslated
+Blockly.Msg.PROCEDURES_CALLNORETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_CALLNORETURN_TOOLTIP = "Run the user-defined function '%1'."; // untranslated
+Blockly.Msg.PROCEDURES_CALLRETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_CALLRETURN_TOOLTIP = "Run the user-defined function '%1' and use its output."; // untranslated
+Blockly.Msg.PROCEDURES_CALL_BEFORE_PARAMS = "with:"; // untranslated
+Blockly.Msg.PROCEDURES_CREATE_DO = "'%1' төҙөргә";
+Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT = "Describe this function..."; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_DO = ""; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE = "do something"; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE = "to"; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_TOOLTIP = "Creates a function with no output."; // untranslated
+Blockly.Msg.PROCEDURES_DEFRETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_DEFRETURN_RETURN = "кире ҡайтарыу";
+Blockly.Msg.PROCEDURES_DEFRETURN_TOOLTIP = "Creates a function with an output."; // untranslated
+Blockly.Msg.PROCEDURES_DEF_DUPLICATE_WARNING = "Warning: This function has duplicate parameters."; // untranslated
+Blockly.Msg.PROCEDURES_HIGHLIGHT_DEF = "Highlight function definition"; // untranslated
+Blockly.Msg.PROCEDURES_IFRETURN_HELPURL = "http://c2.com/cgi/wiki?GuardClause"; // untranslated
+Blockly.Msg.PROCEDURES_IFRETURN_TOOLTIP = "If a value is true, then return a second value."; // untranslated
+Blockly.Msg.PROCEDURES_IFRETURN_WARNING = "Warning: This block may be used only within a function definition."; // untranslated
+Blockly.Msg.PROCEDURES_MUTATORARG_TITLE = "инеү исеме:";
+Blockly.Msg.PROCEDURES_MUTATORARG_TOOLTIP = "Add an input to the function."; // untranslated
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TITLE = "инеү";
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TOOLTIP = "Add, remove, or reorder inputs to this function."; // untranslated
+Blockly.Msg.REDO = "документтарҙы үҙгәртергә";
+Blockly.Msg.REMOVE_COMMENT = "Аңлатмаларҙы юйырға";
+Blockly.Msg.RENAME_VARIABLE = "Үҙгәреүсәндең исемен алмаштырырға...";
+Blockly.Msg.RENAME_VARIABLE_TITLE = "Бөтә '%1' үҙгәреүсәндәрҙең исемен ошолай алмаштырырға:";
+Blockly.Msg.TEXT_APPEND_APPENDTEXT = "текст өҫтәргә";
+Blockly.Msg.TEXT_APPEND_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_APPEND_TO = "to"; // untranslated
+Blockly.Msg.TEXT_APPEND_TOOLTIP = "Үҙгәреүсән «%1»-гә текст өҫтәргә.";
+Blockly.Msg.TEXT_CHANGECASE_HELPURL = "https://github.com/google/blockly/wiki/Text#adjusting-text-case"; // untranslated
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_LOWERCASE = "to lower case"; // untranslated
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_TITLECASE = "to Title Case"; // untranslated
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_UPPERCASE = "to UPPER CASE"; // untranslated
+Blockly.Msg.TEXT_CHANGECASE_TOOLTIP = "Return a copy of the text in a different case."; // untranslated
+Blockly.Msg.TEXT_CHARAT_FIRST = "тәүге хәрефте алырға";
+Blockly.Msg.TEXT_CHARAT_FROM_END = "№ хәрефен аҙаҡтан алырға";
+Blockly.Msg.TEXT_CHARAT_FROM_START = "хат алырға #";
+Blockly.Msg.TEXT_CHARAT_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-text"; // untranslated
+Blockly.Msg.TEXT_CHARAT_INPUT_INTEXT = "текста";
+Blockly.Msg.TEXT_CHARAT_LAST = "һуңғы хәрефте алырға";
+Blockly.Msg.TEXT_CHARAT_RANDOM = "осраҡлы хәрефте алырға";
+Blockly.Msg.TEXT_CHARAT_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_CHARAT_TOOLTIP = "Returns the letter at the specified position."; // untranslated
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TOOLTIP = "Текстҡа элемент өҫтәү.";
+Blockly.Msg.TEXT_CREATE_JOIN_TITLE_JOIN = "ҡушылығыҙ";
+Blockly.Msg.TEXT_CREATE_JOIN_TOOLTIP = "Add, remove, or reorder sections to reconfigure this text block."; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_END = "to letter # from end"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_START = "# хатҡа";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_LAST = "һуңғы хәрефкә тиклем";
+Blockly.Msg.TEXT_GET_SUBSTRING_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_INPUT_IN_TEXT = "текста";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FIRST = "get substring from first letter"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_END = "get substring from letter # from end"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_START = "get substring from letter #"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_TOOLTIP = "Returns a specified portion of the text."; // untranslated
+Blockly.Msg.TEXT_INDEXOF_HELPURL = "https://github.com/google/blockly/wiki/Text#finding-text"; // untranslated
+Blockly.Msg.TEXT_INDEXOF_INPUT_INTEXT = "текстҡа";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_FIRST = "текстың тәүге инеүен табырға";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_LAST = "Текстың һуңғы инеүен табырға";
+Blockly.Msg.TEXT_INDEXOF_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_INDEXOF_TOOLTIP = "Returns the index of the first/last occurrence of the first text in the second text. Returns %1 if text is not found."; // untranslated
+Blockly.Msg.TEXT_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Text#checking-for-empty-text"; // untranslated
+Blockly.Msg.TEXT_ISEMPTY_TITLE = "%1 буш";
+Blockly.Msg.TEXT_ISEMPTY_TOOLTIP = "Returns true if the provided text is empty."; // untranslated
+Blockly.Msg.TEXT_JOIN_HELPURL = "https://github.com/google/blockly/wiki/Text#text-creation"; // untranslated
+Blockly.Msg.TEXT_JOIN_TITLE_CREATEWITH = "текст төҙөргә";
+Blockly.Msg.TEXT_JOIN_TOOLTIP = "Элементтарҙың теләһә күпме һанын берләштереп текст фрагментын булдыра.";
+Blockly.Msg.TEXT_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_LENGTH_TITLE = "оҙонлоғо %1";
+Blockly.Msg.TEXT_LENGTH_TOOLTIP = "Бирелгән текстағы символдар һанын (буш урындар менән бергә) кире ҡайтара.";
+Blockly.Msg.TEXT_PRINT_HELPURL = "https://github.com/google/blockly/wiki/Text#printing-text"; // untranslated
+Blockly.Msg.TEXT_PRINT_TITLE = "%1 баҫтырырға";
+Blockly.Msg.TEXT_PRINT_TOOLTIP = "Print the specified text, number or other value."; // untranslated
+Blockly.Msg.TEXT_PROMPT_HELPURL = "https://github.com/google/blockly/wiki/Text#getting-input-from-the-user"; // untranslated
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_NUMBER = "Prompt for user for a number."; // untranslated
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_TEXT = "Prompt for user for some text."; // untranslated
+Blockly.Msg.TEXT_PROMPT_TYPE_NUMBER = "prompt for number with message"; // untranslated
+Blockly.Msg.TEXT_PROMPT_TYPE_TEXT = "prompt for text with message"; // untranslated
+Blockly.Msg.TEXT_TEXT_HELPURL = "https://en.wikipedia.org/wiki/String_(computer_science)"; // untranslated
+Blockly.Msg.TEXT_TEXT_TOOLTIP = "Текстың хәрефе, һүҙе йәки юлы.";
+Blockly.Msg.TEXT_TRIM_HELPURL = "https://github.com/google/blockly/wiki/Text#trimming-removing-spaces"; // untranslated
+Blockly.Msg.TEXT_TRIM_OPERATOR_BOTH = "trim spaces from both sides of"; // untranslated
+Blockly.Msg.TEXT_TRIM_OPERATOR_LEFT = "trim spaces from left side of"; // untranslated
+Blockly.Msg.TEXT_TRIM_OPERATOR_RIGHT = "trim spaces from right side of"; // untranslated
+Blockly.Msg.TEXT_TRIM_TOOLTIP = "Return a copy of the text with spaces removed from one or both ends."; // untranslated
+Blockly.Msg.TODAY = "Бөгөн";
+Blockly.Msg.UNDO = "Кире алырға";
+Blockly.Msg.VARIABLES_DEFAULT_NAME = "элемент";
+Blockly.Msg.VARIABLES_GET_CREATE_SET = "Create 'set %1'"; // untranslated
+Blockly.Msg.VARIABLES_GET_HELPURL = "https://github.com/google/blockly/wiki/Variables#get"; // untranslated
+Blockly.Msg.VARIABLES_GET_TOOLTIP = "Returns the value of this variable."; // untranslated
+Blockly.Msg.VARIABLES_SET = "set %1 to %2"; // untranslated
+Blockly.Msg.VARIABLES_SET_CREATE_GET = "Create 'get %1'"; // untranslated
+Blockly.Msg.VARIABLES_SET_HELPURL = "https://github.com/google/blockly/wiki/Variables#set"; // untranslated
+Blockly.Msg.VARIABLES_SET_TOOLTIP = "Sets this variable to be equal to the input."; // untranslated
+Blockly.Msg.VARIABLE_ALREADY_EXISTS = "A variable named '%1' already exists."; // untranslated
+Blockly.Msg.PROCEDURES_DEFRETURN_TITLE = Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE;
+Blockly.Msg.CONTROLS_IF_IF_TITLE_IF = Blockly.Msg.CONTROLS_IF_MSG_IF;
+Blockly.Msg.CONTROLS_WHILEUNTIL_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_MSG_THEN = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_ELSE_TITLE_ELSE = Blockly.Msg.CONTROLS_IF_MSG_ELSE;
+Blockly.Msg.PROCEDURES_DEFRETURN_PROCEDURE = Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE;
+Blockly.Msg.LISTS_GET_SUBLIST_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.LISTS_GET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.PROCEDURES_DEFRETURN_DO = Blockly.Msg.PROCEDURES_DEFNORETURN_DO;
+Blockly.Msg.CONTROLS_IF_ELSEIF_TITLE_ELSEIF = Blockly.Msg.CONTROLS_IF_MSG_ELSEIF;
+Blockly.Msg.LISTS_GET_INDEX_HELPURL = Blockly.Msg.LISTS_INDEX_OF_HELPURL;
+Blockly.Msg.CONTROLS_FOREACH_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_SET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TITLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_APPEND_VARIABLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.LISTS_INDEX_OF_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.PROCEDURES_DEFRETURN_COMMENT = Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT; \ No newline at end of file
diff --git a/blockly/msg/js/bcc.js b/blockly/msg/js/bcc.js
new file mode 100644
index 0000000..d4ff7cb
--- /dev/null
+++ b/blockly/msg/js/bcc.js
@@ -0,0 +1,391 @@
+// This file was automatically generated. Do not modify.
+
+'use strict';
+
+goog.provide('Blockly.Msg.bcc');
+
+goog.require('Blockly.Msg');
+
+Blockly.Msg.ADD_COMMENT = "افزودن نظر";
+Blockly.Msg.CHANGE_VALUE_TITLE = "تغییر مقدار:";
+Blockly.Msg.CLEAN_UP = "Clean up Blocks"; // untranslated
+Blockly.Msg.COLLAPSE_ALL = "فروپاشی بلوک‌ها";
+Blockly.Msg.COLLAPSE_BLOCK = "فروپاشی بلوک";
+Blockly.Msg.COLOUR_BLEND_COLOUR1 = "رنگ ۱";
+Blockly.Msg.COLOUR_BLEND_COLOUR2 = "رنگ ۲";
+Blockly.Msg.COLOUR_BLEND_HELPURL = "http://meyerweb.com/eric/tools/color-blend/"; // untranslated
+Blockly.Msg.COLOUR_BLEND_RATIO = "نسبت";
+Blockly.Msg.COLOUR_BLEND_TITLE = "مخلوط";
+Blockly.Msg.COLOUR_BLEND_TOOLTIP = "دو رنگ را با نسبت مشخص‌شده مخلوط می‌کند (۰٫۰ - ۱٫۰)";
+Blockly.Msg.COLOUR_PICKER_HELPURL = "https://fa.wikipedia.org/wiki/%D8%B1%D9%86%DA%AF";
+Blockly.Msg.COLOUR_PICKER_TOOLTIP = "انتخاب یک رنگ از تخته‌رنگ.";
+Blockly.Msg.COLOUR_RANDOM_HELPURL = "http://randomcolour.com"; // untranslated
+Blockly.Msg.COLOUR_RANDOM_TITLE = "رنگ تصادفی";
+Blockly.Msg.COLOUR_RANDOM_TOOLTIP = "انتخاب یک رنگ به شکل تصادفی.";
+Blockly.Msg.COLOUR_RGB_BLUE = "آبی";
+Blockly.Msg.COLOUR_RGB_GREEN = "سبز";
+Blockly.Msg.COLOUR_RGB_HELPURL = "http://www.december.com/html/spec/colorper.html"; // untranslated
+Blockly.Msg.COLOUR_RGB_RED = "قرمز";
+Blockly.Msg.COLOUR_RGB_TITLE = "رنگ با";
+Blockly.Msg.COLOUR_RGB_TOOLTIP = "ساخت یک رنگ با مقدار مشخص‌شده‌ای از قرمز، سبز و آبی. همهٔ مقادیر باید بین ۰ تا ۱۰۰ باشند.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_HELPURL = "https://github.com/google/blockly/wiki/Loops#loop-termination-blocks"; // untranslated
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK = "شکستن حلقه";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE = "ادامه با تکرار بعدی حلقه";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK = "شکستن حلقهٔ شامل.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE = "پریدن از بقیهٔ حلقه و ادامه با تکرار بعدی.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_WARNING = "اخطار: این بلوک ممکن است فقط داخل یک حلقه استفاده شود.";
+Blockly.Msg.CONTROLS_FOREACH_HELPURL = "https://github.com/google/blockly/wiki/Loops#for-each"; // untranslated
+Blockly.Msg.CONTROLS_FOREACH_TITLE = "برای هر مورد %1 در فهرست %2";
+Blockly.Msg.CONTROLS_FOREACH_TOOLTIP = "برای هر مورد در این فهرست، تنظیم متغیر «%1» به مورد و انجام تعدادی عبارت.";
+Blockly.Msg.CONTROLS_FOR_HELPURL = "https://github.com/google/blockly/wiki/Loops#count-with"; // untranslated
+Blockly.Msg.CONTROLS_FOR_TITLE = "با تعداد %1 از %2 به %3 با گام‌های %4";
+Blockly.Msg.CONTROLS_FOR_TOOLTIP = "متغیر %1 را در مقادیر شروع‌شده از عدد انتهای به عدد انتهایی را دارد، با فواصل مشخص‌شده می‌شمارد و این بلوک مشخص‌شده را انجام می‌دهد.";
+Blockly.Msg.CONTROLS_IF_ELSEIF_TOOLTIP = "افزودن یک شرط به بلوک اگر.";
+Blockly.Msg.CONTROLS_IF_ELSE_TOOLTIP = "اضافه‌کردن نهایی، گرفتن همهٔ شرایط به بلوک اگر.";
+Blockly.Msg.CONTROLS_IF_HELPURL = "https://github.com/google/blockly/wiki/IfElse"; // untranslated
+Blockly.Msg.CONTROLS_IF_IF_TOOLTIP = "اضافه، حذف یا ترتیب‌سازی قسمت‌ها برای تنظیم مجدد این بلوک اگر مسدود است.";
+Blockly.Msg.CONTROLS_IF_MSG_ELSE = "آنگاه";
+Blockly.Msg.CONTROLS_IF_MSG_ELSEIF = "اگر آنگاه";
+Blockly.Msg.CONTROLS_IF_MSG_IF = "اگر";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_1 = "اگر یک مقدار صحیح است، سپس چند عبارت را انجام بده.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_2 = "اگر یک مقدار صحیح است، اول بلوک اول عبارات را انجام بده. در غیر این صورت بلوک دوم عبارات انجام بده.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_3 = "اگر مقدار اول صحیح بود، از آن بلوک اول عبارات را انجام بده. در غیر این صورت، اگر مقدار دوم صحیح است، بلوک دوم عبارات را انجام بده.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_4 = "اگر مقدار اول درست است، بلوک اول عبارات را انجام بده. در غیر این صورت، اگر مقدار دوم درست باشد بلوک دوم عبارات را انجام بده. اگر هیچ از مقادیر درست نبود، آخرین بلوک عبارات را انجام بده.";
+Blockly.Msg.CONTROLS_REPEAT_HELPURL = "https://fa.wikipedia.org/wiki/%D8%AD%D9%84%D9%82%D9%87_%D9%81%D9%88%D8%B1";
+Blockly.Msg.CONTROLS_REPEAT_INPUT_DO = "انجام";
+Blockly.Msg.CONTROLS_REPEAT_TITLE = "%1 بار تکرار";
+Blockly.Msg.CONTROLS_REPEAT_TOOLTIP = "انجام چند عبارت چندین بار.";
+Blockly.Msg.CONTROLS_WHILEUNTIL_HELPURL = "https://github.com/google/blockly/wiki/Loops#repeat"; // untranslated
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "تکرار تا";
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "تکرار در حالی که";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "تا زمانی که یک مقدار ناصحیح است، چند عبارت را انجام بده.";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "تا زمانی که یک مقدار صحیح است، چند عبارت را انجام بده.";
+Blockly.Msg.DELETE_ALL_BLOCKS = "Delete all %1 blocks?"; // untranslated
+Blockly.Msg.DELETE_BLOCK = "حذف بلوک";
+Blockly.Msg.DELETE_VARIABLE = "Delete the '%1' variable"; // untranslated
+Blockly.Msg.DELETE_VARIABLE_CONFIRMATION = "Delete %1 uses of the '%2' variable?"; // untranslated
+Blockly.Msg.DELETE_X_BLOCKS = "حذف بلوک‌های %1";
+Blockly.Msg.DISABLE_BLOCK = "غیرفعال‌سازی بلوک";
+Blockly.Msg.DUPLICATE_BLOCK = "تکراری";
+Blockly.Msg.ENABLE_BLOCK = "فعال‌سازی بلوک";
+Blockly.Msg.EXPAND_ALL = "گسترش بلوک‌ها";
+Blockly.Msg.EXPAND_BLOCK = "گسترش بلوک";
+Blockly.Msg.EXTERNAL_INPUTS = "ورودی‌های خارجی";
+Blockly.Msg.HELP = "کومک";
+Blockly.Msg.INLINE_INPUTS = "ورودی‌های درون خطی";
+Blockly.Msg.LISTS_CREATE_EMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-empty-list"; // untranslated
+Blockly.Msg.LISTS_CREATE_EMPTY_TITLE = "ایجاد فهرست خالی";
+Blockly.Msg.LISTS_CREATE_EMPTY_TOOLTIP = "فهرستی با طول صفر شامل هیچ رکورد داده‌ای بر می‌گرداند.";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TITLE_ADD = "فهرست";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TOOLTIP = "اضافه‌کردن، حذف‌کردن یا ترتیب‌سازی مجدد بخش‌ها این بلوک فهرستی.";
+Blockly.Msg.LISTS_CREATE_WITH_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
+Blockly.Msg.LISTS_CREATE_WITH_INPUT_WITH = "ایجاد فهرست با";
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TOOLTIP = "اضافه‌کردن یک مورد به فهرست.";
+Blockly.Msg.LISTS_CREATE_WITH_TOOLTIP = "فهرستی از هر عددی از موارد می‌سازد.";
+Blockly.Msg.LISTS_GET_INDEX_FIRST = "اولین";
+Blockly.Msg.LISTS_GET_INDEX_FROM_END = "# از انتها";
+Blockly.Msg.LISTS_GET_INDEX_FROM_START = "#"; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_GET = "گرفتن";
+Blockly.Msg.LISTS_GET_INDEX_GET_REMOVE = "گرفتن و حذف‌کردن";
+Blockly.Msg.LISTS_GET_INDEX_LAST = "اهرین";
+Blockly.Msg.LISTS_GET_INDEX_RANDOM = "تصادفی";
+Blockly.Msg.LISTS_GET_INDEX_REMOVE = "حذف‌کردن";
+Blockly.Msg.LISTS_GET_INDEX_TAIL = ""; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FIRST = "اولین مورد یک فهرست را بر می‌گرداند.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FROM = "موردی در محل مشخص‌شده بر می‌گرداند.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_LAST = "آخرین مورد در یک فهرست را بر می‌گرداند.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_RANDOM = "یک مورد تصادفی در یک فهرست بر می‌گرداند.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST = "اولین مورد مشخص‌شده در فهرست را حذف و بر می‌گرداند.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM = "مورد در محل مشخص‌شده در فهرست را حذف و بر می‌گرداند.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST = "آخرین مورد مشخص‌شده در فهرست را حذف و بر می‌گرداند.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM = "مورد تصادفی‌ای را در فهرست حذف و بر می‌گرداند.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST = "اولین مورد را در یک فهرست حذف می‌کند.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM = "مورد مشخص‌شده در موقعیت مشخص در یک فهرست را حذف و بر می‌گرداند.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST = "آخرین مورد را در یک فهرست حذف می‌کند.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM = "یک مورد تصادفی را یک فهرست حذف می‌کند.";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_END = "به # از انتها";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_START = "به #";
+Blockly.Msg.LISTS_GET_SUBLIST_END_LAST = "به آخرین";
+Blockly.Msg.LISTS_GET_SUBLIST_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-a-sublist"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_START_FIRST = "گرفتن زیرمجموعه‌ای از ابتدا";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_END = "گرفتن زیرمجموعه‌ای از # از انتها";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_START = "گرفتن زیرمجموعه‌ای از #";
+Blockly.Msg.LISTS_GET_SUBLIST_TAIL = ""; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_TOOLTIP = "کپی از قسمت مشخص‌شدهٔ لیست درست می‌کند.";
+Blockly.Msg.LISTS_INDEX_FROM_END_TOOLTIP = "%1 آخرین مورد است.";
+Blockly.Msg.LISTS_INDEX_FROM_START_TOOLTIP = "%1 اولین مورد است.";
+Blockly.Msg.LISTS_INDEX_OF_FIRST = "آخرین رخداد متن را بیاب";
+Blockly.Msg.LISTS_INDEX_OF_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-items-from-a-list"; // untranslated
+Blockly.Msg.LISTS_INDEX_OF_LAST = "یافتن آخرین رخ‌داد مورد";
+Blockly.Msg.LISTS_INDEX_OF_TOOLTIP = "شاخصی از اولین/آخرین رخ‌داد مورد در فهرست را بر می‌گرداند. %1 بر می‌گرداند اگر متن موجود نبود.";
+Blockly.Msg.LISTS_INLIST = "در فهرست";
+Blockly.Msg.LISTS_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#is-empty"; // untranslated
+Blockly.Msg.LISTS_ISEMPTY_TITLE = "%1 خالی است";
+Blockly.Msg.LISTS_ISEMPTY_TOOLTIP = "اگر فهرست خالی است مقدار صجیج بر می‌گرداند.";
+Blockly.Msg.LISTS_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Lists#length-of"; // untranslated
+Blockly.Msg.LISTS_LENGTH_TITLE = "طول %1";
+Blockly.Msg.LISTS_LENGTH_TOOLTIP = "طول یک فهرست را برمی‌گرداند.";
+Blockly.Msg.LISTS_REPEAT_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
+Blockly.Msg.LISTS_REPEAT_TITLE = "فهرستی با %1 تکرارشده به اندازهٔ %2 می‌سازد";
+Blockly.Msg.LISTS_REPEAT_TOOLTIP = "فهرستی شامل مقادیر داده‌شدهٔ تکرار شده عدد مشخص‌شده می‌سازد.";
+Blockly.Msg.LISTS_SET_INDEX_HELPURL = "https://github.com/google/blockly/wiki/Lists#in-list--set"; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_INPUT_TO = "به‌عنوان";
+Blockly.Msg.LISTS_SET_INDEX_INSERT = "درج در";
+Blockly.Msg.LISTS_SET_INDEX_SET = "مجموعه";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST = "موردی به ته فهرست اضافه می‌کند.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FROM = "موردی در موقعیت مشخص‌شده در یک فهرست اضافه می‌کند.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_LAST = "موردی به ته فهرست الحاق می‌کند.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM = "مورد را به صورت تصادفی در یک فهرست می‌افزاید.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FIRST = "اولین مورد در یک فهرست را تعیین می‌کند.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FROM = "مورد مشخص‌شده در یک فهرست را قرار می‌دهد.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_LAST = "آخرین مورد در یک فهرست را تعیین می‌کند.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_RANDOM = "یک مورد تصادفی در یک فهرست را تعیین می‌کند.";
+Blockly.Msg.LISTS_SORT_HELPURL = "https://github.com/google/blockly/wiki/Lists#sorting-a-list"; // untranslated
+Blockly.Msg.LISTS_SORT_ORDER_ASCENDING = "ascending"; // untranslated
+Blockly.Msg.LISTS_SORT_ORDER_DESCENDING = "descending"; // untranslated
+Blockly.Msg.LISTS_SORT_TITLE = "sort %1 %2 %3"; // untranslated
+Blockly.Msg.LISTS_SORT_TOOLTIP = "Sort a copy of a list."; // untranslated
+Blockly.Msg.LISTS_SORT_TYPE_IGNORECASE = "alphabetic, ignore case"; // untranslated
+Blockly.Msg.LISTS_SORT_TYPE_NUMERIC = "numeric"; // untranslated
+Blockly.Msg.LISTS_SORT_TYPE_TEXT = "alphabetic"; // untranslated
+Blockly.Msg.LISTS_SPLIT_HELPURL = "https://github.com/google/blockly/wiki/Lists#splitting-strings-and-joining-lists"; // untranslated
+Blockly.Msg.LISTS_SPLIT_LIST_FROM_TEXT = "make list from text"; // untranslated
+Blockly.Msg.LISTS_SPLIT_TEXT_FROM_LIST = "make text from list"; // untranslated
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_JOIN = "Join a list of texts into one text, separated by a delimiter."; // untranslated
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_SPLIT = "Split text into a list of texts, breaking at each delimiter."; // untranslated
+Blockly.Msg.LISTS_SPLIT_WITH_DELIMITER = "with delimiter"; // untranslated
+Blockly.Msg.LOGIC_BOOLEAN_FALSE = "ناصحیح";
+Blockly.Msg.LOGIC_BOOLEAN_HELPURL = "https://github.com/google/blockly/wiki/Logic#values"; // untranslated
+Blockly.Msg.LOGIC_BOOLEAN_TOOLTIP = "بازگرداندن یکی از صحیح یا ناصحیح.";
+Blockly.Msg.LOGIC_BOOLEAN_TRUE = "صحیح";
+Blockly.Msg.LOGIC_COMPARE_HELPURL = "https://fa.wikipedia.org/wiki/%D9%86%D8%A7%D8%A8%D8%B1%D8%A7%D8%A8%D8%B1%DB%8C";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_EQ = "بازگشت صحیح اگر هر دو ورودی با یکدیگر برابر باشد.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GT = "بازگرداندن صحیح اگر ورودی اول بزرگتر از ورودی دوم باشد.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GTE = "بازگرداندن صحیح اگر ورودی اول بزرگتر یا مساوی یا ورودی دوم باشد.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LT = "بازگرداندن صحیح اگر ورودی اول کوچکتر از ورودی دوم باشد.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LTE = "بازگرداندن صحیح اگر ورودی اول کوچکتر یا مساوی با ورودی دوم باشد.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_NEQ = "برگرداندن صحیح اگر هر دو ورودی با یکدیگر برابر نباشند.";
+Blockly.Msg.LOGIC_NEGATE_HELPURL = "https://github.com/google/blockly/wiki/Logic#not"; // untranslated
+Blockly.Msg.LOGIC_NEGATE_TITLE = "نه %1";
+Blockly.Msg.LOGIC_NEGATE_TOOLTIP = "صجیج باز می‌گرداند اگر ورودی نا صحیح باشند. ناصحیح بازمی‌گرداند اگر ورودی صحیح باشد.";
+Blockly.Msg.LOGIC_NULL = "تهی";
+Blockly.Msg.LOGIC_NULL_HELPURL = "https://en.wikipedia.org/wiki/Nullable_type"; // untranslated
+Blockly.Msg.LOGIC_NULL_TOOLTIP = "تهی بازمی‌گرداند.";
+Blockly.Msg.LOGIC_OPERATION_AND = "و";
+Blockly.Msg.LOGIC_OPERATION_HELPURL = "https://github.com/google/blockly/wiki/Logic#logical-operations"; // untranslated
+Blockly.Msg.LOGIC_OPERATION_OR = "یا";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_AND = "بازگرداندن صحیح اگر هر دو ورودی صحیح باشد.";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_OR = "بازگرداندن صحیح اگر یکی از دو ورودی صحیح باشد.";
+Blockly.Msg.LOGIC_TERNARY_CONDITION = "آزمایش";
+Blockly.Msg.LOGIC_TERNARY_HELPURL = "https://en.wikipedia.org/wiki/%3F:"; // untranslated
+Blockly.Msg.LOGIC_TERNARY_IF_FALSE = "اگر ناصحیح";
+Blockly.Msg.LOGIC_TERNARY_IF_TRUE = "اگر صحیح";
+Blockly.Msg.LOGIC_TERNARY_TOOLTIP = "بررسی وضعیت در «آزمایش». اگر وضعیت صحیح باشد، مقدار «اگر صحیح» را بر می‌گرداند در غیر اینصورت مقدار «اگر ناصحیح» را.";
+Blockly.Msg.MATH_ADDITION_SYMBOL = "+"; // untranslated
+Blockly.Msg.MATH_ARITHMETIC_HELPURL = "https://fa.wikipedia.org/wiki/%D8%AD%D8%B3%D8%A7%D8%A8";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_ADD = "بازگرداندن مقدار جمع دو عدد.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE = "بازگرداندن باقی‌ماندهٔ دو عدد.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MINUS = "بازگرداندن تفاوت دو عدد.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MULTIPLY = "بازگرداندن حاصلضرب دو عدد.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_POWER = "بازگرداندن اولین عددی که از توان عدد دوم حاصل شده باشد.";
+Blockly.Msg.MATH_CHANGE_HELPURL = "https://fa.wikipedia.org/wiki/%D8%A7%D8%B5%D8%B7%D9%84%D8%A7%D8%AD_%D8%A8%D8%B1%D9%86%D8%A7%D9%85%D9%87%E2%80%8C%D9%86%D9%88%DB%8C%D8%B3%DB%8C#.D8.A7.D9.81.D8.B2.D8.A7.DB.8C.D8.B4_.D8.B4.D9.85.D8.A7.D8.B1.D9.86.D8.AF.D9.87";
+Blockly.Msg.MATH_CHANGE_TITLE = "تغییر %1 با %2";
+Blockly.Msg.MATH_CHANGE_TOOLTIP = "افزودن یک عدد به متغیر '%1'.";
+Blockly.Msg.MATH_CONSTANT_HELPURL = "https://fa.wikipedia.org/wiki/%D8%AB%D8%A7%D8%A8%D8%AA_%D8%B1%DB%8C%D8%A7%D8%B6%DB%8C";
+Blockly.Msg.MATH_CONSTANT_TOOLTIP = "یکی از مقادیر مشترک را برمی‌گرداند: π (۳٫۱۴۱…)، e (۲٫۷۱۸...)، φ (۱٫۶۱۸)، sqrt(۲) (۱٫۴۱۴)، sqrt(۱/۲) (۰٫۷۰۷...) و یا ∞ (بی‌نهایت).";
+Blockly.Msg.MATH_CONSTRAIN_HELPURL = "https://en.wikipedia.org/wiki/Clamping_%28graphics%29"; // untranslated
+Blockly.Msg.MATH_CONSTRAIN_TITLE = "محدودکردن %1 پایین %2 بالا %3";
+Blockly.Msg.MATH_CONSTRAIN_TOOLTIP = "محدودکردن یک عدد بین محدودیت‌های مشخص‌شده (بسته).";
+Blockly.Msg.MATH_DIVISION_SYMBOL = "÷"; // untranslated
+Blockly.Msg.MATH_IS_DIVISIBLE_BY = "تقسیم شده بر";
+Blockly.Msg.MATH_IS_EVEN = "زوج است";
+Blockly.Msg.MATH_IS_NEGATIVE = "منفی است";
+Blockly.Msg.MATH_IS_ODD = "فرد است";
+Blockly.Msg.MATH_IS_POSITIVE = "مثبت است";
+Blockly.Msg.MATH_IS_PRIME = "عدد اول است";
+Blockly.Msg.MATH_IS_TOOLTIP = "بررسی می‌کند که آیا یک عدد زوج، فرد، اول، کامل، مثبت، منفی یا بخش‌پذیر عدد خاصی باشد را بررسی می‌کند. درست یا نادرست باز می‌گرداند.";
+Blockly.Msg.MATH_IS_WHOLE = "کامل است";
+Blockly.Msg.MATH_MODULO_HELPURL = "https://fa.wikipedia.org/wiki/%D8%B9%D9%85%D9%84%DB%8C%D8%A7%D8%AA_%D9%BE%DB%8C%D9%85%D8%A7%D9%86%D9%87";
+Blockly.Msg.MATH_MODULO_TITLE = "باقی‌ماندهٔ %1 + %2";
+Blockly.Msg.MATH_MODULO_TOOLTIP = "باقی‌ماندهٔ تقسیم دو عدد را بر می‌گرداند.";
+Blockly.Msg.MATH_MULTIPLICATION_SYMBOL = "×"; // untranslated
+Blockly.Msg.MATH_NUMBER_HELPURL = "https://fa.wikipedia.org/wiki/%D8%B9%D8%AF%D8%AF";
+Blockly.Msg.MATH_NUMBER_TOOLTIP = "یک عدد.";
+Blockly.Msg.MATH_ONLIST_HELPURL = ""; // untranslated
+Blockly.Msg.MATH_ONLIST_OPERATOR_AVERAGE = "میانگین فهرست";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MAX = "بزرگ‌ترین فهرست";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MEDIAN = "میانهٔ فهرست";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MIN = "کوچکترین فهرست";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MODE = "مد فهرست";
+Blockly.Msg.MATH_ONLIST_OPERATOR_RANDOM = "مورد تصادفی از فهرست";
+Blockly.Msg.MATH_ONLIST_OPERATOR_STD_DEV = "انحراف معیار فهرست";
+Blockly.Msg.MATH_ONLIST_OPERATOR_SUM = "جمع فهرست";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_AVERAGE = "میانگین (میانگین ریاضی) مقادیر عددی فهرست را بر می‌گرداند.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MAX = "بزرگ‌ترین عدد در فهرست را باز می‌گرداند.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MEDIAN = "میانهٔ عدد در فهرست را بر می‌گرداند.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MIN = "کوچک‌ترین عدد در فهرست را باز می‌گرداند.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MODE = "شایع‌ترین قلم(های) در فهرست را بر می‌گرداند.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_RANDOM = "موردی تصادفی از فهرست را بر می‌گرداند.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_STD_DEV = "انحراف معیار فهرست را بر می‌گرداند.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_SUM = "جمع همهٔ عددهای فهرست را باز می‌گرداند.";
+Blockly.Msg.MATH_POWER_SYMBOL = "^"; // untranslated
+Blockly.Msg.MATH_RANDOM_FLOAT_HELPURL = "https://fa.wikipedia.org/wiki/%D8%AA%D9%88%D9%84%DB%8C%D8%AF_%D8%A7%D8%B9%D8%AF%D8%A7%D8%AF_%D8%AA%D8%B5%D8%A7%D8%AF%D9%81%DB%8C";
+Blockly.Msg.MATH_RANDOM_FLOAT_TITLE_RANDOM = "کسر تصادفی";
+Blockly.Msg.MATH_RANDOM_FLOAT_TOOLTIP = "بازگرداندن کسری تصادفی بین ۰٫۰ (بسته) تا ۱٫۰ (باز).";
+Blockly.Msg.MATH_RANDOM_INT_HELPURL = "https://fa.wikipedia.org/wiki/%D8%AA%D9%88%D9%84%DB%8C%D8%AF_%D8%A7%D8%B9%D8%AF%D8%A7%D8%AF_%D8%AA%D8%B5%D8%A7%D8%AF%D9%81%DB%8C";
+Blockly.Msg.MATH_RANDOM_INT_TITLE = "عدد صحیح تصادفی بین %1 تا %2";
+Blockly.Msg.MATH_RANDOM_INT_TOOLTIP = "یک عدد تصادفی بین دو مقدار مشخص‌شده به صورت بسته باز می‌گرداند.";
+Blockly.Msg.MATH_ROUND_HELPURL = "https://fa.wikipedia.org/wiki/%D8%B1%D9%88%DB%8C%D9%87_%28%D8%B9%D9%84%D9%88%D9%85_%D8%B1%D8%A7%DB%8C%D8%A7%D9%86%D9%87%29";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUND = "گردکردن";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDDOWN = "گرد به پایین";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDUP = "گرد به بالا";
+Blockly.Msg.MATH_ROUND_TOOLTIP = "گردکردن یک عدد به بالا یا پایین.";
+Blockly.Msg.MATH_SINGLE_HELPURL = "https://fa.wikipedia.org/wiki/%D8%B1%DB%8C%D8%B4%D9%87_%D8%AF%D9%88%D9%85";
+Blockly.Msg.MATH_SINGLE_OP_ABSOLUTE = "مطلق";
+Blockly.Msg.MATH_SINGLE_OP_ROOT = "ریشهٔ دوم";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ABS = "قدر مطلق یک عدد را بازمی‌گرداند.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_EXP = "بازگرداندن توان e یک عدد.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LN = "لوگاریتم طبیعی یک عدد را باز می‌گرداند.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LOG10 = "بازگرداندن لگاریتم بر پایهٔ ۱۰ یک عدد.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_NEG = "منفی‌شدهٔ یک عدد را باز می‌گرداند.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_POW10 = "بازگرداندن توان ۱۰ یک عدد.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ROOT = "ریشهٔ دوم یک عدد را باز می‌گرداند.";
+Blockly.Msg.MATH_SUBTRACTION_SYMBOL = "-"; // untranslated
+Blockly.Msg.MATH_TRIG_ACOS = "acos"; // untranslated
+Blockly.Msg.MATH_TRIG_ASIN = "asin"; // untranslated
+Blockly.Msg.MATH_TRIG_ATAN = "atan"; // untranslated
+Blockly.Msg.MATH_TRIG_COS = "cos"; // untranslated
+Blockly.Msg.MATH_TRIG_HELPURL = "https://fa.wikipedia.org/wiki/%D8%AA%D8%A7%D8%A8%D8%B9%E2%80%8C%D9%87%D8%A7%DB%8C_%D9%85%D8%AB%D9%84%D8%AB%D8%A7%D8%AA%DB%8C";
+Blockly.Msg.MATH_TRIG_SIN = "sin"; // untranslated
+Blockly.Msg.MATH_TRIG_TAN = "tan"; // untranslated
+Blockly.Msg.MATH_TRIG_TOOLTIP_ACOS = "بازگرداندن آرک‌کسینوس درجه (نه رادیان).";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ASIN = "بازگرداندن آرک‌سینوس درجه (نه رادیان).";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ATAN = "بازگرداندن آرک‌تانژانت درجه (نه رادیان).";
+Blockly.Msg.MATH_TRIG_TOOLTIP_COS = "بازگرداندن کسینوس درجه (نه رادیان).";
+Blockly.Msg.MATH_TRIG_TOOLTIP_SIN = "بازگرداندن سینوس درجه (نه رادیان).";
+Blockly.Msg.MATH_TRIG_TOOLTIP_TAN = "بازگرداندن تانژانت یک درجه (نه رادیان).";
+Blockly.Msg.NEW_VARIABLE = "متغیر تازه...";
+Blockly.Msg.NEW_VARIABLE_TITLE = "نام متغیر تازه:";
+Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; // untranslated
+Blockly.Msg.PROCEDURES_ALLOW_STATEMENTS = "اجازه اظهارات";
+Blockly.Msg.PROCEDURES_BEFORE_PARAMS = "با:";
+Blockly.Msg.PROCEDURES_CALLNORETURN_HELPURL = "https://fa.wikipedia.org/wiki/%D8%B1%D9%88%DB%8C%D9%87_%28%D8%B9%D9%84%D9%88%D9%85_%D8%B1%D8%A7%DB%8C%D8%A7%D9%86%D9%87%29";
+Blockly.Msg.PROCEDURES_CALLNORETURN_TOOLTIP = "اجرای تابع تعریف‌شده توسط کاربر «%1».";
+Blockly.Msg.PROCEDURES_CALLRETURN_HELPURL = "https://fa.wikipedia.org/wiki/%D8%B1%D9%88%DB%8C%D9%87_%28%D8%B9%D9%84%D9%88%D9%85_%D8%B1%D8%A7%DB%8C%D8%A7%D9%86%D9%87%29";
+Blockly.Msg.PROCEDURES_CALLRETURN_TOOLTIP = "اجرای تابع تعریف‌شده توسط کاربر «%1» و استفاده از خروجی آن.";
+Blockly.Msg.PROCEDURES_CALL_BEFORE_PARAMS = "با:";
+Blockly.Msg.PROCEDURES_CREATE_DO = "ساختن «%1»";
+Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT = "Describe this function..."; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_DO = ""; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE = "انجام چیزی";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE = "به";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TOOLTIP = "تابعی می‌سازد بدون هیچ خروجی.";
+Blockly.Msg.PROCEDURES_DEFRETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_DEFRETURN_RETURN = "بازگشت";
+Blockly.Msg.PROCEDURES_DEFRETURN_TOOLTIP = "تابعی با یک خروجی می‌سازد.";
+Blockly.Msg.PROCEDURES_DEF_DUPLICATE_WARNING = "اخطار: این تابعی پارامتر تکراری دارد.";
+Blockly.Msg.PROCEDURES_HIGHLIGHT_DEF = "برجسته‌سازی تعریف تابع";
+Blockly.Msg.PROCEDURES_IFRETURN_HELPURL = "http://c2.com/cgi/wiki?GuardClause"; // untranslated
+Blockly.Msg.PROCEDURES_IFRETURN_TOOLTIP = "اگر یک مقدار صحیح است، مقدار دوم را برگردان.";
+Blockly.Msg.PROCEDURES_IFRETURN_WARNING = "اخطار: این بلوک احتمالاً فقط داخل یک تابع استفاده می‌شود.";
+Blockly.Msg.PROCEDURES_MUTATORARG_TITLE = "نام ورودی:";
+Blockly.Msg.PROCEDURES_MUTATORARG_TOOLTIP = "اضافه کردن ورودی به تابع.";
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TITLE = "ورودی‌ها";
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TOOLTIP = "افزودن، حذف یا دوباره مرتب‌کردن ورودی این تابع.";
+Blockly.Msg.REDO = "Redo"; // untranslated
+Blockly.Msg.REMOVE_COMMENT = "حذف نظر";
+Blockly.Msg.RENAME_VARIABLE = "تغییر نام متغیر...";
+Blockly.Msg.RENAME_VARIABLE_TITLE = "تغییر نام همهٔ متغیرهای «%1» به:";
+Blockly.Msg.TEXT_APPEND_APPENDTEXT = "الحاق متن";
+Blockly.Msg.TEXT_APPEND_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_APPEND_TO = "به";
+Blockly.Msg.TEXT_APPEND_TOOLTIP = "الحاق متنی به متغیر «%1».";
+Blockly.Msg.TEXT_CHANGECASE_HELPURL = "https://github.com/google/blockly/wiki/Text#adjusting-text-case"; // untranslated
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_LOWERCASE = "به حروف کوچک";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_TITLECASE = "به حروف بزرگ عنوان";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_UPPERCASE = "به حروف بزرگ";
+Blockly.Msg.TEXT_CHANGECASE_TOOLTIP = "بازگرداندن کپی متن در حالتی متفاوت.";
+Blockly.Msg.TEXT_CHARAT_FIRST = "گرفتن اولین حرف";
+Blockly.Msg.TEXT_CHARAT_FROM_END = "گرفتن حرف # از آخر";
+Blockly.Msg.TEXT_CHARAT_FROM_START = "گرفتن حرف #";
+Blockly.Msg.TEXT_CHARAT_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-text"; // untranslated
+Blockly.Msg.TEXT_CHARAT_INPUT_INTEXT = "در متن";
+Blockly.Msg.TEXT_CHARAT_LAST = "گرفتن آخرین حرف";
+Blockly.Msg.TEXT_CHARAT_RANDOM = "گرفتن حرف تصادفی";
+Blockly.Msg.TEXT_CHARAT_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_CHARAT_TOOLTIP = "حرفی در موقعیت مشخص‌شده بر می‌گرداند.";
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TOOLTIP = "افزودن یک مورد به متن.";
+Blockly.Msg.TEXT_CREATE_JOIN_TITLE_JOIN = "عضویت";
+Blockly.Msg.TEXT_CREATE_JOIN_TOOLTIP = "اضافه، حذف یا ترتیب‌سازی قسمت‌ها برای تنظیم مجدد این بلوک اگر مسدود است.";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_END = "به حرف # از انتها";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_START = "به حرف #";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_LAST = "گرفتن آخرین حرف";
+Blockly.Msg.TEXT_GET_SUBSTRING_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_INPUT_IN_TEXT = "در متن";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FIRST = "گرفتن زیرمتن از اولین حرف";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_END = "گرفتن زیرمتن از حرف # به انتها";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_START = "گرفتن زیرمتن از حرف #";
+Blockly.Msg.TEXT_GET_SUBSTRING_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_TOOLTIP = "قسمت مشخصی‌شده‌ای از متن را بر می‌گرداند.";
+Blockly.Msg.TEXT_INDEXOF_HELPURL = "https://github.com/google/blockly/wiki/Text#finding-text"; // untranslated
+Blockly.Msg.TEXT_INDEXOF_INPUT_INTEXT = "در متن";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_FIRST = "اولین رخداد متن را بیاب";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_LAST = "آخرین رخداد متن را بیاب";
+Blockly.Msg.TEXT_INDEXOF_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_INDEXOF_TOOLTIP = "شاخصی از اولین آخرین رخ‌داد متن اول در متن دوم بر می‌گرداند. اگر متن یافت نشد %1 باز می‌گرداند.";
+Blockly.Msg.TEXT_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Text#checking-for-empty-text"; // untranslated
+Blockly.Msg.TEXT_ISEMPTY_TITLE = "%1 خالی است";
+Blockly.Msg.TEXT_ISEMPTY_TOOLTIP = "اضافه‌کردن صحیح اگر متن فراهم‌شده خالی است.";
+Blockly.Msg.TEXT_JOIN_HELPURL = "https://github.com/google/blockly/wiki/Text#text-creation"; // untranslated
+Blockly.Msg.TEXT_JOIN_TITLE_CREATEWITH = "ایجاد متن با";
+Blockly.Msg.TEXT_JOIN_TOOLTIP = "یک تکه‌ای از متن را با چسپاندن همهٔ تعداد از موارد ایجاد می‌کند.";
+Blockly.Msg.TEXT_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_LENGTH_TITLE = "طول %1";
+Blockly.Msg.TEXT_LENGTH_TOOLTIP = "بازگرداندن عددی از حروف (شامل فاصله‌ها) در متن فراهم‌شده.";
+Blockly.Msg.TEXT_PRINT_HELPURL = "https://github.com/google/blockly/wiki/Text#printing-text"; // untranslated
+Blockly.Msg.TEXT_PRINT_TITLE = "چاپ %1";
+Blockly.Msg.TEXT_PRINT_TOOLTIP = "چاپ متن، عدد یا هر مقدار دیگر مشخص‌شده.";
+Blockly.Msg.TEXT_PROMPT_HELPURL = "https://github.com/google/blockly/wiki/Text#getting-input-from-the-user"; // untranslated
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_NUMBER = "اعلان برای کاربر با یک عدد.";
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_TEXT = "اعلان برای کاربر برای یک متن.";
+Blockly.Msg.TEXT_PROMPT_TYPE_NUMBER = "اعلان برای عدد با پیام";
+Blockly.Msg.TEXT_PROMPT_TYPE_TEXT = "اعلان برای متن با پیام";
+Blockly.Msg.TEXT_TEXT_HELPURL = "https://fa.wikipedia.org/wiki/%D8%B1%D8%B4%D8%AA%D9%87_%28%D8%B9%D9%84%D9%88%D9%85_%D8%B1%D8%A7%DB%8C%D8%A7%D9%86%D9%87%29";
+Blockly.Msg.TEXT_TEXT_TOOLTIP = "یک حرف، کلمه یا خطی از متن.";
+Blockly.Msg.TEXT_TRIM_HELPURL = "https://github.com/google/blockly/wiki/Text#trimming-removing-spaces"; // untranslated
+Blockly.Msg.TEXT_TRIM_OPERATOR_BOTH = "تراشیدن فاصله‌ها از هر دو طرف";
+Blockly.Msg.TEXT_TRIM_OPERATOR_LEFT = "تراشیدن فاصله‌ها از طرف چپ";
+Blockly.Msg.TEXT_TRIM_OPERATOR_RIGHT = "تراشیدن فاصله‌ها از طرف چپ";
+Blockly.Msg.TEXT_TRIM_TOOLTIP = "کپی از متن با فاصله‌های حذف‌شده از یک یا هر دو پایان باز می‌گرداند.";
+Blockly.Msg.TODAY = "Today"; // untranslated
+Blockly.Msg.UNDO = "Undo"; // untranslated
+Blockly.Msg.VARIABLES_DEFAULT_NAME = "مورد";
+Blockly.Msg.VARIABLES_GET_CREATE_SET = "درست‌کردن «تنظیم %1»";
+Blockly.Msg.VARIABLES_GET_HELPURL = "https://github.com/google/blockly/wiki/Variables#get"; // untranslated
+Blockly.Msg.VARIABLES_GET_TOOLTIP = "مقدار این متغیر را بر می‌گرداند.";
+Blockly.Msg.VARIABLES_SET = "مجموعه %1 به %2";
+Blockly.Msg.VARIABLES_SET_CREATE_GET = "درست‌کردن «تنظیم %1»";
+Blockly.Msg.VARIABLES_SET_HELPURL = "https://github.com/google/blockly/wiki/Variables#set"; // untranslated
+Blockly.Msg.VARIABLES_SET_TOOLTIP = "متغیر برابر با خروجی را مشخص می‌کند.";
+Blockly.Msg.VARIABLE_ALREADY_EXISTS = "A variable named '%1' already exists."; // untranslated
+Blockly.Msg.PROCEDURES_DEFRETURN_TITLE = Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE;
+Blockly.Msg.CONTROLS_IF_IF_TITLE_IF = Blockly.Msg.CONTROLS_IF_MSG_IF;
+Blockly.Msg.CONTROLS_WHILEUNTIL_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_MSG_THEN = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_ELSE_TITLE_ELSE = Blockly.Msg.CONTROLS_IF_MSG_ELSE;
+Blockly.Msg.PROCEDURES_DEFRETURN_PROCEDURE = Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE;
+Blockly.Msg.LISTS_GET_SUBLIST_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.LISTS_GET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.PROCEDURES_DEFRETURN_DO = Blockly.Msg.PROCEDURES_DEFNORETURN_DO;
+Blockly.Msg.CONTROLS_IF_ELSEIF_TITLE_ELSEIF = Blockly.Msg.CONTROLS_IF_MSG_ELSEIF;
+Blockly.Msg.LISTS_GET_INDEX_HELPURL = Blockly.Msg.LISTS_INDEX_OF_HELPURL;
+Blockly.Msg.CONTROLS_FOREACH_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_SET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TITLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_APPEND_VARIABLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.LISTS_INDEX_OF_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.PROCEDURES_DEFRETURN_COMMENT = Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT; \ No newline at end of file
diff --git a/blockly/msg/js/be-tarask.js b/blockly/msg/js/be-tarask.js
new file mode 100644
index 0000000..6b1752b
--- /dev/null
+++ b/blockly/msg/js/be-tarask.js
@@ -0,0 +1,391 @@
+// This file was automatically generated. Do not modify.
+
+'use strict';
+
+goog.provide('Blockly.Msg.be.tarask');
+
+goog.require('Blockly.Msg');
+
+Blockly.Msg.ADD_COMMENT = "Дадаць камэнтар";
+Blockly.Msg.CHANGE_VALUE_TITLE = "Зьмяніць значэньне:";
+Blockly.Msg.CLEAN_UP = "Ачысьціць блёкі";
+Blockly.Msg.COLLAPSE_ALL = "Згарнуць блёкі";
+Blockly.Msg.COLLAPSE_BLOCK = "Згарнуць блёк";
+Blockly.Msg.COLOUR_BLEND_COLOUR1 = "колер 1";
+Blockly.Msg.COLOUR_BLEND_COLOUR2 = "колер 2";
+Blockly.Msg.COLOUR_BLEND_HELPURL = "http://meyerweb.com/eric/tools/color-blend/"; // untranslated
+Blockly.Msg.COLOUR_BLEND_RATIO = "дзеля";
+Blockly.Msg.COLOUR_BLEND_TITLE = "зьмяшаць";
+Blockly.Msg.COLOUR_BLEND_TOOLTIP = "Зьмешвае два колеры ў дадзенай прапорцыі (0.0 — 1.0)";
+Blockly.Msg.COLOUR_PICKER_HELPURL = "https://be-x-old.wikipedia.org/wiki/%D0%9A%D0%BE%D0%BB%D0%B5%D1%80";
+Blockly.Msg.COLOUR_PICKER_TOOLTIP = "Абярыце колер з палітры.";
+Blockly.Msg.COLOUR_RANDOM_HELPURL = "http://randomcolour.com"; // untranslated
+Blockly.Msg.COLOUR_RANDOM_TITLE = "выпадковы колер";
+Blockly.Msg.COLOUR_RANDOM_TOOLTIP = "Абраць выпадковы колер.";
+Blockly.Msg.COLOUR_RGB_BLUE = "сіняга";
+Blockly.Msg.COLOUR_RGB_GREEN = "зялёнага";
+Blockly.Msg.COLOUR_RGB_HELPURL = "http://www.december.com/html/spec/colorper.html"; // untranslated
+Blockly.Msg.COLOUR_RGB_RED = "чырвонага";
+Blockly.Msg.COLOUR_RGB_TITLE = "колер з";
+Blockly.Msg.COLOUR_RGB_TOOLTIP = "Стварыць колер з абранымі прапорцыямі чырвонага, зялёнага і сіняга. Усе значэньні павінны быць ад 0 да 100.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_HELPURL = "https://github.com/google/blockly/wiki/Loops#loop-termination-blocks"; // untranslated
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK = "перарваць цыкль";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE = "працягнуць з наступнага кроку цыклю";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK = "Спыніць гэты цыкль.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE = "Прапусьціць рэшту цыклю і перайсьці да наступнага кроку.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_WARNING = "Увага: гэты блёк можа быць выкарыстаны толькі ў цыклі.";
+Blockly.Msg.CONTROLS_FOREACH_HELPURL = "https://github.com/google/blockly/wiki/Loops#for-each"; // untranslated
+Blockly.Msg.CONTROLS_FOREACH_TITLE = "для кожнага элемэнта %1 у сьпісе %2";
+Blockly.Msg.CONTROLS_FOREACH_TOOLTIP = "Для кожнага элемэнту сьпісу прысвойвае зьменнай '%1' ягонае значэньне і выконвае пэўныя апэрацыі.";
+Blockly.Msg.CONTROLS_FOR_HELPURL = "https://github.com/google/blockly/wiki/Loops#count-with"; // untranslated
+Blockly.Msg.CONTROLS_FOR_TITLE = "лічыць з %1 ад %2 да %3 па %4";
+Blockly.Msg.CONTROLS_FOR_TOOLTIP = "Прысвойвае зьменнай \"%1\" значэньні ад пачатковага да канчатковага значэньня, улічваючы зададзены крок, і выконвае абраныя блёкі.";
+Blockly.Msg.CONTROLS_IF_ELSEIF_TOOLTIP = "Дадаць умову да блёку «калі».";
+Blockly.Msg.CONTROLS_IF_ELSE_TOOLTIP = "Дадаць заключную ўмову для ўсіх астатніх варыянтаў блёку «калі».";
+Blockly.Msg.CONTROLS_IF_HELPURL = "https://github.com/google/blockly/wiki/IfElse"; // untranslated
+Blockly.Msg.CONTROLS_IF_IF_TOOLTIP = "Дадаць, выдаліць ці пераставіць сэкцыі для пераканфігураваньня гэтага блёку «калі».";
+Blockly.Msg.CONTROLS_IF_MSG_ELSE = "інакш";
+Blockly.Msg.CONTROLS_IF_MSG_ELSEIF = "інакш, калі";
+Blockly.Msg.CONTROLS_IF_MSG_IF = "калі";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_1 = "Калі значэньне ісьціна, выканаць пэўныя апэрацыі.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_2 = "Калі значэньне ісьціна, выканаць першы блёк апэрацыяў, інакш выканаць другі блёк.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_3 = "Калі першае значэньне ісьціна, выканаць першы блёк апэрацыяў. Інакш, калі другое значэньне ісьціна, выканаць другі блёк апэрацыяў.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_4 = "Калі першае значэньне ісьціна, выканаць першы блёк апэрацыяў. Інакш, калі другое значэньне ісьціна, выканаць другі блёк апэрацыяў. Калі ніводнае з значэньняў не сапраўднае, выканаць апошні блёк апэрацыяў.";
+Blockly.Msg.CONTROLS_REPEAT_HELPURL = "https://en.wikipedia.org/wiki/For_loop";
+Blockly.Msg.CONTROLS_REPEAT_INPUT_DO = "выканаць";
+Blockly.Msg.CONTROLS_REPEAT_TITLE = "паўтарыць %1 раз(ы)";
+Blockly.Msg.CONTROLS_REPEAT_TOOLTIP = "Выконвае апэрацыі некалькі разоў.";
+Blockly.Msg.CONTROLS_WHILEUNTIL_HELPURL = "https://github.com/google/blockly/wiki/Loops#repeat"; // untranslated
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "паўтараць, пакуль не";
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "паўтараць, пакуль";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "Пакуль значэньне хлусьня, выконваць пэўныя апэрацыі.";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "Пакуль значэньне ісьціна, выконваць пэўныя апэрацыі.";
+Blockly.Msg.DELETE_ALL_BLOCKS = "Выдаліць усе блёкі %1?";
+Blockly.Msg.DELETE_BLOCK = "Выдаліць блёк";
+Blockly.Msg.DELETE_VARIABLE = "Выдаліць зьменную «%1»";
+Blockly.Msg.DELETE_VARIABLE_CONFIRMATION = "Выдаліць %1 выкарыстаньняў зьменнай «%2»?";
+Blockly.Msg.DELETE_X_BLOCKS = "Выдаліць %1 блёкі";
+Blockly.Msg.DISABLE_BLOCK = "Адключыць блёк";
+Blockly.Msg.DUPLICATE_BLOCK = "Капіяваць";
+Blockly.Msg.ENABLE_BLOCK = "Уключыць блёк";
+Blockly.Msg.EXPAND_ALL = "Разгарнуць блёкі";
+Blockly.Msg.EXPAND_BLOCK = "Разгарнуць блёк";
+Blockly.Msg.EXTERNAL_INPUTS = "Зьнешнія ўваходы";
+Blockly.Msg.HELP = "Дапамога";
+Blockly.Msg.INLINE_INPUTS = "Унутраныя ўваходы";
+Blockly.Msg.LISTS_CREATE_EMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-empty-list"; // untranslated
+Blockly.Msg.LISTS_CREATE_EMPTY_TITLE = "стварыць пусты сьпіс";
+Blockly.Msg.LISTS_CREATE_EMPTY_TOOLTIP = "Вяртае сьпіс даўжынёй 0, які ня ўтрымлівае запісаў зьвестак";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TITLE_ADD = "сьпіс";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TOOLTIP = "Дадаць, выдаліць ці пераставіць сэкцыі для пераканфігураваньня гэтага блёку.";
+Blockly.Msg.LISTS_CREATE_WITH_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
+Blockly.Msg.LISTS_CREATE_WITH_INPUT_WITH = "стварыць сьпіс з";
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TOOLTIP = "Дадаць элемэнт да сьпісу.";
+Blockly.Msg.LISTS_CREATE_WITH_TOOLTIP = "Ставарае сьпіс зь любой колькасьцю элемэнтаў.";
+Blockly.Msg.LISTS_GET_INDEX_FIRST = "першы";
+Blockly.Msg.LISTS_GET_INDEX_FROM_END = "№ з канца";
+Blockly.Msg.LISTS_GET_INDEX_FROM_START = "#"; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_GET = "атрымаць";
+Blockly.Msg.LISTS_GET_INDEX_GET_REMOVE = "атрымаць і выдаліць";
+Blockly.Msg.LISTS_GET_INDEX_LAST = "апошні";
+Blockly.Msg.LISTS_GET_INDEX_RANDOM = "выпадковы";
+Blockly.Msg.LISTS_GET_INDEX_REMOVE = "выдаліць";
+Blockly.Msg.LISTS_GET_INDEX_TAIL = ""; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FIRST = "Вяртае першы элемэнт у сьпісе.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FROM = "Вяртае элемэнт у пазначанай пазыцыі ў сьпісе.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_LAST = "Вяртае апошні элемэнт у сьпісе.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_RANDOM = "Вяртае выпадковы элемэнт у сьпісе.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST = "Выдаляе і вяртае першы элемэнт у сьпісе.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM = "Выдаляе і вяртае элемэнт у пазначанай пазыцыі ў сьпісе.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST = "Выдаляе і вяртае апошні элемэнт у сьпісе.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM = "Выдаляе і вяртае выпадковы элемэнт у сьпісе.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST = "Выдаляе першы элемэнт у сьпісе.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM = "Выдаляе элемэнт у пазначанай пазыцыі ў сьпісе.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST = "Выдаляе апошні элемэнт у сьпісе.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM = "Выдаляе выпадковы элемэнт у сьпісе.";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_END = "па № з канца";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_START = "да #";
+Blockly.Msg.LISTS_GET_SUBLIST_END_LAST = "да апошняга";
+Blockly.Msg.LISTS_GET_SUBLIST_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-a-sublist"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_START_FIRST = "атрымаць падсьпіс зь першага";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_END = "атрымаць падсьпіс з № з канца";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_START = "атрымаць падсьпіс з №";
+Blockly.Msg.LISTS_GET_SUBLIST_TAIL = ""; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_TOOLTIP = "Стварае копію пазначанай часткі сьпісу.";
+Blockly.Msg.LISTS_INDEX_FROM_END_TOOLTIP = "№%1 — апошні элемэнт.";
+Blockly.Msg.LISTS_INDEX_FROM_START_TOOLTIP = "№%1 — першы элемэнт.";
+Blockly.Msg.LISTS_INDEX_OF_FIRST = "знайсьці першае ўваходжаньне элемэнту";
+Blockly.Msg.LISTS_INDEX_OF_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-items-from-a-list"; // untranslated
+Blockly.Msg.LISTS_INDEX_OF_LAST = "знайсьці апошняе ўваходжаньне элемэнту";
+Blockly.Msg.LISTS_INDEX_OF_TOOLTIP = "Вяртае індэкс першага/апошняга ўваходжаньня элемэнту ў сьпіс. Вяртае %1, калі элемэнт ня знойдзены.";
+Blockly.Msg.LISTS_INLIST = "у сьпісе";
+Blockly.Msg.LISTS_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#is-empty"; // untranslated
+Blockly.Msg.LISTS_ISEMPTY_TITLE = "%1 пусты";
+Blockly.Msg.LISTS_ISEMPTY_TOOLTIP = "Вяртае значэньне ісьціна, калі сьпіс пусты.";
+Blockly.Msg.LISTS_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Lists#length-of"; // untranslated
+Blockly.Msg.LISTS_LENGTH_TITLE = "даўжыня %1";
+Blockly.Msg.LISTS_LENGTH_TOOLTIP = "Вяртае даўжыню сьпісу.";
+Blockly.Msg.LISTS_REPEAT_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
+Blockly.Msg.LISTS_REPEAT_TITLE = "стварыць сьпіс з элемэнту %1, які паўтараецца %2 разоў";
+Blockly.Msg.LISTS_REPEAT_TOOLTIP = "Стварае сьпіс, які ўтрымлівае пададзеную колькасьць копіяў элемэнту.";
+Blockly.Msg.LISTS_SET_INDEX_HELPURL = "https://github.com/google/blockly/wiki/Lists#in-list--set"; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_INPUT_TO = "як";
+Blockly.Msg.LISTS_SET_INDEX_INSERT = "уставіць у";
+Blockly.Msg.LISTS_SET_INDEX_SET = "усталяваць";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST = "Устаўляе элемэнт у пачатак сьпісу.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FROM = "Устаўляе элемэнт у пазначанай пазыцыі ў сьпісе.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_LAST = "Дадае элемэнт у канец сьпісу.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM = "Выпадковым чынам устаўляе элемэнт у сьпіс.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FIRST = "Задае першы элемэнт у сьпісе.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FROM = "Задае элемэнт у пазначанай пазыцыі ў сьпісе.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_LAST = "Задае апошні элемэнт у сьпісе.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_RANDOM = "Задае выпадковы элемэнт у сьпісе.";
+Blockly.Msg.LISTS_SORT_HELPURL = "https://github.com/google/blockly/wiki/Lists#sorting-a-list";
+Blockly.Msg.LISTS_SORT_ORDER_ASCENDING = "па павелічэньні";
+Blockly.Msg.LISTS_SORT_ORDER_DESCENDING = "па зьмяншэньні";
+Blockly.Msg.LISTS_SORT_TITLE = "сартаваць %1 %2 %3";
+Blockly.Msg.LISTS_SORT_TOOLTIP = "Сартаваць копію сьпісу.";
+Blockly.Msg.LISTS_SORT_TYPE_IGNORECASE = "паводле альфабэту, ігнараваць рэгістар";
+Blockly.Msg.LISTS_SORT_TYPE_NUMERIC = "як лікі";
+Blockly.Msg.LISTS_SORT_TYPE_TEXT = "паводле альфабэту";
+Blockly.Msg.LISTS_SPLIT_HELPURL = "https://github.com/google/blockly/wiki/Lists#splitting-strings-and-joining-lists"; // untranslated
+Blockly.Msg.LISTS_SPLIT_LIST_FROM_TEXT = "стварыць сьпіс з тэксту";
+Blockly.Msg.LISTS_SPLIT_TEXT_FROM_LIST = "стварыць тэкст са сьпісу";
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_JOIN = "Аб’ядноўвае сьпіс тэкстаў у адзін тэкст па падзяляльніках.";
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_SPLIT = "Падзяліць тэкст у сьпіс тэкстаў, па падзяляльніках.";
+Blockly.Msg.LISTS_SPLIT_WITH_DELIMITER = "з падзяляльнікам";
+Blockly.Msg.LOGIC_BOOLEAN_FALSE = "хлусьня";
+Blockly.Msg.LOGIC_BOOLEAN_HELPURL = "https://github.com/google/blockly/wiki/Logic#values"; // untranslated
+Blockly.Msg.LOGIC_BOOLEAN_TOOLTIP = "Вяртае «ісьціна» ці «хлусьня».";
+Blockly.Msg.LOGIC_BOOLEAN_TRUE = "ісьціна";
+Blockly.Msg.LOGIC_COMPARE_HELPURL = "https://be-x-old.wikipedia.org/wiki/%D0%9D%D1%8F%D1%80%D0%BE%D1%9E%D0%BD%D0%B0%D1%81%D1%8C%D1%86%D1%8C";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_EQ = "Вяртае «ісьціна», калі абодва ўводы роўныя.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GT = "Вяртае «ісьціна», калі першы ўвод большы за другі.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GTE = "Вяртае «ісьціна», калі першы ўвод большы ці роўны другому.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LT = "Вяртае «ісьціна», калі першы ўвод меншы за другі.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LTE = "Вяртае «ісьціна», калі першы ўвод меншы ці роўны другому.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_NEQ = "Вяртае «ісьціна», калі абодва ўводы ня роўныя.";
+Blockly.Msg.LOGIC_NEGATE_HELPURL = "https://github.com/google/blockly/wiki/Logic#not"; // untranslated
+Blockly.Msg.LOGIC_NEGATE_TITLE = "не %1";
+Blockly.Msg.LOGIC_NEGATE_TOOLTIP = "Вяртае «ісьціна», калі ўвод непраўдзівы. Вяртае «хлусьня», калі ўвод праўдзівы.";
+Blockly.Msg.LOGIC_NULL = "нічога";
+Blockly.Msg.LOGIC_NULL_HELPURL = "https://en.wikipedia.org/wiki/Nullable_type"; // untranslated
+Blockly.Msg.LOGIC_NULL_TOOLTIP = "Вяртае нічога.";
+Blockly.Msg.LOGIC_OPERATION_AND = "і";
+Blockly.Msg.LOGIC_OPERATION_HELPURL = "https://github.com/google/blockly/wiki/Logic#logical-operations"; // untranslated
+Blockly.Msg.LOGIC_OPERATION_OR = "ці";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_AND = "Вяртае «ісьціна», калі абодва ўводы праўдзівыя.";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_OR = "Вяртае «ісьціна», калі прынамсі адзін з уводаў праўдзівы.";
+Blockly.Msg.LOGIC_TERNARY_CONDITION = "тэст";
+Blockly.Msg.LOGIC_TERNARY_HELPURL = "https://en.wikipedia.org/wiki/%3F:"; // untranslated
+Blockly.Msg.LOGIC_TERNARY_IF_FALSE = "калі хлусьня";
+Blockly.Msg.LOGIC_TERNARY_IF_TRUE = "калі ісьціна";
+Blockly.Msg.LOGIC_TERNARY_TOOLTIP = "Праверыць умову ў 'тэст'. Калі ўмова праўдзівая, будзе вернутае значэньне «калі ісьціна»; інакш будзе вернутае «калі хлусьня».";
+Blockly.Msg.MATH_ADDITION_SYMBOL = "+"; // untranslated
+Blockly.Msg.MATH_ARITHMETIC_HELPURL = "https://be-x-old.wikipedia.org/wiki/%D0%90%D1%80%D1%8B%D1%82%D0%BC%D1%8D%D1%82%D1%8B%D0%BA%D0%B0";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_ADD = "Вяртае суму двух лікаў.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE = "Вяртае дзель двух лікаў.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MINUS = "Вяртае рознасьць двух лікаў.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MULTIPLY = "Вяртае здабытак двух лікаў.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_POWER = "Вяртае першы лік у ступені другога ліку.";
+Blockly.Msg.MATH_CHANGE_HELPURL = "https://en.wikipedia.org/wiki/Programming_idiom#Incrementing_a_counter";
+Blockly.Msg.MATH_CHANGE_TITLE = "зьмяніць %1 на %2";
+Blockly.Msg.MATH_CHANGE_TOOLTIP = "Дадае лічбу да зьменнай '%1'.";
+Blockly.Msg.MATH_CONSTANT_HELPURL = "https://be-x-old.wikipedia.org/wiki/%D0%9C%D0%B0%D1%82%D1%8D%D0%BC%D0%B0%D1%82%D1%8B%D1%87%D0%BD%D0%B0%D1%8F_%D0%BA%D0%B0%D0%BD%D1%81%D1%82%D0%B0%D0%BD%D1%82%D0%B0";
+Blockly.Msg.MATH_CONSTANT_TOOLTIP = "Вяртае адну з агульных канстантаў: π (3.141...), e (2.718...), φ (1.618...), sqrt(2) (1.414...), sqrt(½) (0,707...) або ∞ (бясконцасьць).";
+Blockly.Msg.MATH_CONSTRAIN_HELPURL = "https://en.wikipedia.org/wiki/Clamping_%28graphics%29"; // untranslated
+Blockly.Msg.MATH_CONSTRAIN_TITLE = "абмежаваць %1 зьнізу %2 зьверху %3";
+Blockly.Msg.MATH_CONSTRAIN_TOOLTIP = "Абмяжоўвае колькасьць ніжняй і верхняй межамі (уключна).";
+Blockly.Msg.MATH_DIVISION_SYMBOL = "÷"; // untranslated
+Blockly.Msg.MATH_IS_DIVISIBLE_BY = "дзяліць на";
+Blockly.Msg.MATH_IS_EVEN = "парная";
+Blockly.Msg.MATH_IS_NEGATIVE = "адмоўная";
+Blockly.Msg.MATH_IS_ODD = "няпарная";
+Blockly.Msg.MATH_IS_POSITIVE = "станоўчая";
+Blockly.Msg.MATH_IS_PRIME = "простая";
+Blockly.Msg.MATH_IS_TOOLTIP = "Правярае, ці зьяўляецца лік парным, няпарным, простым, станоўчым, адмоўным, ці ён дзеліцца на пэўны лік без астатку. Вяртае значэньне ісьціна або няпраўда.";
+Blockly.Msg.MATH_IS_WHOLE = "цэлая";
+Blockly.Msg.MATH_MODULO_HELPURL = "https://en.wikipedia.org/wiki/Modulo_operation";
+Blockly.Msg.MATH_MODULO_TITLE = "рэшта дзяленьня %1 ÷ %2";
+Blockly.Msg.MATH_MODULO_TOOLTIP = "Вяртае рэшту дзяленьня двух лікаў.";
+Blockly.Msg.MATH_MULTIPLICATION_SYMBOL = "×"; // untranslated
+Blockly.Msg.MATH_NUMBER_HELPURL = "https://be-x-old.wikipedia.org/wiki/%D0%9B%D1%96%D0%BA";
+Blockly.Msg.MATH_NUMBER_TOOLTIP = "Лік.";
+Blockly.Msg.MATH_ONLIST_HELPURL = ""; // untranslated
+Blockly.Msg.MATH_ONLIST_OPERATOR_AVERAGE = "сярэдняя ў сьпісе";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MAX = "мінімальная ў сьпісе";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MEDIAN = "мэдыяна сьпісу";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MIN = "мінімальная ў сьпісе";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MODE = "рэжымы сьпісу";
+Blockly.Msg.MATH_ONLIST_OPERATOR_RANDOM = "выпадковы элемэнт сьпісу";
+Blockly.Msg.MATH_ONLIST_OPERATOR_STD_DEV = "стандартнае адхіленьне сьпісу";
+Blockly.Msg.MATH_ONLIST_OPERATOR_SUM = "Сума сьпісу";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_AVERAGE = "Вяртае сярэднеарытмэтычнае значэньне лікавых значэньняў у сьпісе.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MAX = "Вяртае найменшы лік у сьпісе.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MEDIAN = "Вяртае мэдыяну сьпісу.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MIN = "Вяртае найменшы лік у сьпісе.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MODE = "Вяртае сьпіс самых распаўсюджаных элемэнтаў у сьпісе.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_RANDOM = "Вяртае выпадковы элемэнт сьпісу.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_STD_DEV = "Вяртае стандартнае адхіленьне сьпісу.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_SUM = "Вяртае суму ўсіх лікаў у сьпісе.";
+Blockly.Msg.MATH_POWER_SYMBOL = "^"; // untranslated
+Blockly.Msg.MATH_RANDOM_FLOAT_HELPURL = "https://en.wikipedia.org/wiki/Random_number_generation";
+Blockly.Msg.MATH_RANDOM_FLOAT_TITLE_RANDOM = "выпадковая дроб";
+Blockly.Msg.MATH_RANDOM_FLOAT_TOOLTIP = "Вяртае выпадковую дроб у дыяпазоне ад 0,0 (уключна) да 1,0.";
+Blockly.Msg.MATH_RANDOM_INT_HELPURL = "https://en.wikipedia.org/wiki/Random_number_generation";
+Blockly.Msg.MATH_RANDOM_INT_TITLE = "выпадковая цэлая з %1 для %2";
+Blockly.Msg.MATH_RANDOM_INT_TOOLTIP = "Вяртае выпадковы цэлы лік паміж двума зададзенымі абмежаваньнямі ўключна.";
+Blockly.Msg.MATH_ROUND_HELPURL = "https://en.wikipedia.org/wiki/Rounding";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUND = "акругліць";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDDOWN = "акругліць да меншага";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDUP = "акругліць да большага";
+Blockly.Msg.MATH_ROUND_TOOLTIP = "Акругленьне ліку да большага ці меншага.";
+Blockly.Msg.MATH_SINGLE_HELPURL = "https://be-x-old.wikipedia.org/wiki/%D0%9A%D0%B2%D0%B0%D0%B4%D1%80%D0%B0%D1%82%D0%BD%D1%8B_%D0%BA%D0%BE%D1%80%D0%B0%D0%BD%D1%8C";
+Blockly.Msg.MATH_SINGLE_OP_ABSOLUTE = "модуль";
+Blockly.Msg.MATH_SINGLE_OP_ROOT = "квадратны корань";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ABS = "Вяртае модуль ліку.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_EXP = "Вяртае e ў ступені ліку.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LN = "Вяртае натуральны лягарытм ліку.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LOG10 = "Вяртае дзесятковы лягарытм ліку.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_NEG = "Вяртае супрацьлеглы лік.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_POW10 = "Вяртае 10 у ступені ліку.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ROOT = "Вяртае квадратны корань ліку.";
+Blockly.Msg.MATH_SUBTRACTION_SYMBOL = "-"; // untranslated
+Blockly.Msg.MATH_TRIG_ACOS = "acos"; // untranslated
+Blockly.Msg.MATH_TRIG_ASIN = "asin"; // untranslated
+Blockly.Msg.MATH_TRIG_ATAN = "atan"; // untranslated
+Blockly.Msg.MATH_TRIG_COS = "cos"; // untranslated
+Blockly.Msg.MATH_TRIG_HELPURL = "https://be-x-old.wikipedia.org/wiki/%D0%A2%D1%80%D1%8B%D0%B3%D0%B0%D0%BD%D0%B0%D0%BC%D1%8D%D1%82%D1%80%D1%8B%D1%8F#.D0.A2.D1.80.D1.8B.D0.B3.D0.B0.D0.BD.D0.B0.D0.BC.D1.8D.D1.82.D1.80.D1.8B.D1.87.D0.BD.D1.8B.D1.8F_.D1.84.D1.83.D0.BD.D0.BA.D1.86.D1.8B.D1.96";
+Blockly.Msg.MATH_TRIG_SIN = "sin"; // untranslated
+Blockly.Msg.MATH_TRIG_TAN = "tan"; // untranslated
+Blockly.Msg.MATH_TRIG_TOOLTIP_ACOS = "Вяртае арккосынус ліку.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ASIN = "Вяртае арксынус ліку.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ATAN = "Вяртае арктангэнс ліку.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_COS = "Вяртае косынус кута ў градусах.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_SIN = "Вяртае сынус кута ў градусах.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_TAN = "Вяртае тангэнс кута ў градусах.";
+Blockly.Msg.NEW_VARIABLE = "Стварыць зьменную…";
+Blockly.Msg.NEW_VARIABLE_TITLE = "Імя новай зьменнай:";
+Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; // untranslated
+Blockly.Msg.PROCEDURES_ALLOW_STATEMENTS = "дазволіць зацьвярджэньне";
+Blockly.Msg.PROCEDURES_BEFORE_PARAMS = "з:";
+Blockly.Msg.PROCEDURES_CALLNORETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29";
+Blockly.Msg.PROCEDURES_CALLNORETURN_TOOLTIP = "Запусьціць функцыю вызначаную карыстальнікам '%1'.";
+Blockly.Msg.PROCEDURES_CALLRETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29";
+Blockly.Msg.PROCEDURES_CALLRETURN_TOOLTIP = "Запусьціць функцыю вызначаную карыстальнікам '%1' і выкарыстаць яе вынік.";
+Blockly.Msg.PROCEDURES_CALL_BEFORE_PARAMS = "з:";
+Blockly.Msg.PROCEDURES_CREATE_DO = "Стварыць '%1'";
+Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT = "Апішыце гэтую функцыю…";
+Blockly.Msg.PROCEDURES_DEFNORETURN_DO = ""; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE = "зрабіць што-небудзь";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE = "да";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TOOLTIP = "Стварае функцыю бяз выніку.";
+Blockly.Msg.PROCEDURES_DEFRETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_DEFRETURN_RETURN = "вярнуць";
+Blockly.Msg.PROCEDURES_DEFRETURN_TOOLTIP = "Стварае функцыю з вынікам.";
+Blockly.Msg.PROCEDURES_DEF_DUPLICATE_WARNING = "Увага: гэтая функцыя мае парамэтры-дублікаты.";
+Blockly.Msg.PROCEDURES_HIGHLIGHT_DEF = "Падсьвяціць вызначэньне функцыі";
+Blockly.Msg.PROCEDURES_IFRETURN_HELPURL = "http://c2.com/cgi/wiki?GuardClause";
+Blockly.Msg.PROCEDURES_IFRETURN_TOOLTIP = "Калі значэньне ісьціна, вярнуць другое значэньне.";
+Blockly.Msg.PROCEDURES_IFRETURN_WARNING = "Папярэджаньне: гэты блёк можа выкарыстоўвацца толькі ў вызначанай функцыі.";
+Blockly.Msg.PROCEDURES_MUTATORARG_TITLE = "назва парамэтру:";
+Blockly.Msg.PROCEDURES_MUTATORARG_TOOLTIP = "Дадаць уваходныя парамэтры ў функцыю.";
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TITLE = "парамэтры";
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TOOLTIP = "Дадаць, выдаліць ці запісаць чаргу ўваходных парамэтраў для гэтай функцыі.";
+Blockly.Msg.REDO = "Паўтарыць";
+Blockly.Msg.REMOVE_COMMENT = "Выдаліць камэнтар";
+Blockly.Msg.RENAME_VARIABLE = "Перайменаваць зьменную…";
+Blockly.Msg.RENAME_VARIABLE_TITLE = "Перайменаваць усе назвы зьменных '%1' на:";
+Blockly.Msg.TEXT_APPEND_APPENDTEXT = "дадаць тэкст";
+Blockly.Msg.TEXT_APPEND_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_APPEND_TO = "да";
+Blockly.Msg.TEXT_APPEND_TOOLTIP = "Дадаць які-небудзь тэкст да зьменнай '%1'.";
+Blockly.Msg.TEXT_CHANGECASE_HELPURL = "https://github.com/google/blockly/wiki/Text#adjusting-text-case"; // untranslated
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_LOWERCASE = "да ніжняга рэгістру";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_TITLECASE = "Вялікія Першыя Літары";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_UPPERCASE = "да ВЕРХНЯГА РЭГІСТРУ";
+Blockly.Msg.TEXT_CHANGECASE_TOOLTIP = "Вярнуць копію тэксту зь іншай велічынёй літар.";
+Blockly.Msg.TEXT_CHARAT_FIRST = "узяць першую літару";
+Blockly.Msg.TEXT_CHARAT_FROM_END = "узяць літару № з канца";
+Blockly.Msg.TEXT_CHARAT_FROM_START = "узяць літару №";
+Blockly.Msg.TEXT_CHARAT_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-text"; // untranslated
+Blockly.Msg.TEXT_CHARAT_INPUT_INTEXT = "у тэксьце";
+Blockly.Msg.TEXT_CHARAT_LAST = "узяць апошнюю літару";
+Blockly.Msg.TEXT_CHARAT_RANDOM = "узяць выпадковую літару";
+Blockly.Msg.TEXT_CHARAT_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_CHARAT_TOOLTIP = "Вяртае літару ў пазначанай пазыцыі.";
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TOOLTIP = "Дадаць элемэнт да тэксту.";
+Blockly.Msg.TEXT_CREATE_JOIN_TITLE_JOIN = "далучыць";
+Blockly.Msg.TEXT_CREATE_JOIN_TOOLTIP = "Дадайце, выдаліце ці зьмяніце парадак разьдзелаў для перадачы тэкставага блёку.";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_END = "да літары № з канца";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_START = "да літары №";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_LAST = "да апошняй літары";
+Blockly.Msg.TEXT_GET_SUBSTRING_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_INPUT_IN_TEXT = "у тэксьце";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FIRST = "атрымаць падрадок зь першай літары";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_END = "узяць падрадок зь літары № з канца";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_START = "узяць падрадок зь літары №";
+Blockly.Msg.TEXT_GET_SUBSTRING_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_TOOLTIP = "Вяртае пазначаную частку тэксту.";
+Blockly.Msg.TEXT_INDEXOF_HELPURL = "https://github.com/google/blockly/wiki/Text#finding-text"; // untranslated
+Blockly.Msg.TEXT_INDEXOF_INPUT_INTEXT = "у тэксьце";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_FIRST = "знайсьці першае ўваходжаньне тэксту";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_LAST = "знайсьці апошняе ўваходжаньне тэксту";
+Blockly.Msg.TEXT_INDEXOF_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_INDEXOF_TOOLTIP = "Вяртае індэкс першага/апошняга ўваходжаньня першага тэксту ў другі тэкст. Вяртае %1, калі тэкст ня знойдзены.";
+Blockly.Msg.TEXT_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Text#checking-for-empty-text"; // untranslated
+Blockly.Msg.TEXT_ISEMPTY_TITLE = "%1 пусты";
+Blockly.Msg.TEXT_ISEMPTY_TOOLTIP = "Вяртае значэньне ісьціна, калі тэкст пусты.";
+Blockly.Msg.TEXT_JOIN_HELPURL = "https://github.com/google/blockly/wiki/Text#text-creation"; // untranslated
+Blockly.Msg.TEXT_JOIN_TITLE_CREATEWITH = "стварыць тэкст з";
+Blockly.Msg.TEXT_JOIN_TOOLTIP = "Стварае фрагмэнт тэксту аб’яднаньнем любой колькасьці элемэнтаў.";
+Blockly.Msg.TEXT_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_LENGTH_TITLE = "даўжыня %1";
+Blockly.Msg.TEXT_LENGTH_TOOLTIP = "Вяртае колькасьць літараў (у тым ліку прабелы) у пададзеным тэксьце.";
+Blockly.Msg.TEXT_PRINT_HELPURL = "https://github.com/google/blockly/wiki/Text#printing-text"; // untranslated
+Blockly.Msg.TEXT_PRINT_TITLE = "друкаваць %1";
+Blockly.Msg.TEXT_PRINT_TOOLTIP = "Надрукаваць пазначаны тэкст, лічбу ці іншыя сымбалі.";
+Blockly.Msg.TEXT_PROMPT_HELPURL = "https://github.com/google/blockly/wiki/Text#getting-input-from-the-user"; // untranslated
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_NUMBER = "Запытаць у карыстальніка лічбу.";
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_TEXT = "Запытаць у карыстальніка тэкст.";
+Blockly.Msg.TEXT_PROMPT_TYPE_NUMBER = "запытаць лічбу з падказкай";
+Blockly.Msg.TEXT_PROMPT_TYPE_TEXT = "запытаць тэкст з падказкай";
+Blockly.Msg.TEXT_TEXT_HELPURL = "https://en.wikipedia.org/wiki/String_(computer_science)";
+Blockly.Msg.TEXT_TEXT_TOOLTIP = "Літара, слова ці радок тэксту.";
+Blockly.Msg.TEXT_TRIM_HELPURL = "https://github.com/google/blockly/wiki/Text#trimming-removing-spaces"; // untranslated
+Blockly.Msg.TEXT_TRIM_OPERATOR_BOTH = "абрэзаць прабелы з абодвух бакоў";
+Blockly.Msg.TEXT_TRIM_OPERATOR_LEFT = "абрэзаць прабелы зь левага боку";
+Blockly.Msg.TEXT_TRIM_OPERATOR_RIGHT = "абрэзаць прабелы з правага боку";
+Blockly.Msg.TEXT_TRIM_TOOLTIP = "Вяртае копію тэксту з прабеламі, выдаленымі ад аднаго ці абодвух бакоў.";
+Blockly.Msg.TODAY = "Сёньня";
+Blockly.Msg.UNDO = "Скасаваць";
+Blockly.Msg.VARIABLES_DEFAULT_NAME = "аб’ект";
+Blockly.Msg.VARIABLES_GET_CREATE_SET = "Стварыць блёк «усталяваць %1»";
+Blockly.Msg.VARIABLES_GET_HELPURL = "https://github.com/google/blockly/wiki/Variables#get"; // untranslated
+Blockly.Msg.VARIABLES_GET_TOOLTIP = "Вяртае значэньне гэтай зьменнай.";
+Blockly.Msg.VARIABLES_SET = "усталяваць %1 да %2";
+Blockly.Msg.VARIABLES_SET_CREATE_GET = "Стварыць блёк «атрымаць %1»";
+Blockly.Msg.VARIABLES_SET_HELPURL = "https://github.com/google/blockly/wiki/Variables#set"; // untranslated
+Blockly.Msg.VARIABLES_SET_TOOLTIP = "Надаць гэтай зьменнай значэньне ўстаўкі.";
+Blockly.Msg.VARIABLE_ALREADY_EXISTS = "Зьменная з назвай «%1» ужо існуе.";
+Blockly.Msg.PROCEDURES_DEFRETURN_TITLE = Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE;
+Blockly.Msg.CONTROLS_IF_IF_TITLE_IF = Blockly.Msg.CONTROLS_IF_MSG_IF;
+Blockly.Msg.CONTROLS_WHILEUNTIL_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_MSG_THEN = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_ELSE_TITLE_ELSE = Blockly.Msg.CONTROLS_IF_MSG_ELSE;
+Blockly.Msg.PROCEDURES_DEFRETURN_PROCEDURE = Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE;
+Blockly.Msg.LISTS_GET_SUBLIST_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.LISTS_GET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.PROCEDURES_DEFRETURN_DO = Blockly.Msg.PROCEDURES_DEFNORETURN_DO;
+Blockly.Msg.CONTROLS_IF_ELSEIF_TITLE_ELSEIF = Blockly.Msg.CONTROLS_IF_MSG_ELSEIF;
+Blockly.Msg.LISTS_GET_INDEX_HELPURL = Blockly.Msg.LISTS_INDEX_OF_HELPURL;
+Blockly.Msg.CONTROLS_FOREACH_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_SET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TITLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_APPEND_VARIABLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.LISTS_INDEX_OF_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.PROCEDURES_DEFRETURN_COMMENT = Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT; \ No newline at end of file
diff --git a/blockly/msg/js/bg.js b/blockly/msg/js/bg.js
new file mode 100644
index 0000000..1681e1f
--- /dev/null
+++ b/blockly/msg/js/bg.js
@@ -0,0 +1,391 @@
+// This file was automatically generated. Do not modify.
+
+'use strict';
+
+goog.provide('Blockly.Msg.bg');
+
+goog.require('Blockly.Msg');
+
+Blockly.Msg.ADD_COMMENT = "Добави коментар";
+Blockly.Msg.CHANGE_VALUE_TITLE = "Промени стойността:";
+Blockly.Msg.CLEAN_UP = "Премахни блокове";
+Blockly.Msg.COLLAPSE_ALL = "Скрий блокове";
+Blockly.Msg.COLLAPSE_BLOCK = "Скрий блок";
+Blockly.Msg.COLOUR_BLEND_COLOUR1 = "цвят 1";
+Blockly.Msg.COLOUR_BLEND_COLOUR2 = "цвят 2";
+Blockly.Msg.COLOUR_BLEND_HELPURL = "http://meyerweb.com/eric/tools/color-blend/"; // untranslated
+Blockly.Msg.COLOUR_BLEND_RATIO = "съотношение";
+Blockly.Msg.COLOUR_BLEND_TITLE = "смеси";
+Blockly.Msg.COLOUR_BLEND_TOOLTIP = "Смесва два цвят в дадено съотношение (0.0 - 1.0).";
+Blockly.Msg.COLOUR_PICKER_HELPURL = "https://bg.wikipedia.org/wiki/Цвят_(оптика)";
+Blockly.Msg.COLOUR_PICKER_TOOLTIP = "Избери цвят от палитрата.";
+Blockly.Msg.COLOUR_RANDOM_HELPURL = "http://randomcolour.com"; // untranslated
+Blockly.Msg.COLOUR_RANDOM_TITLE = "случаен цвят";
+Blockly.Msg.COLOUR_RANDOM_TOOLTIP = "Избери цвят на случаен принцип.";
+Blockly.Msg.COLOUR_RGB_BLUE = "син";
+Blockly.Msg.COLOUR_RGB_GREEN = "зелен";
+Blockly.Msg.COLOUR_RGB_HELPURL = "http://www.december.com/html/spec/colorper.html"; // untranslated
+Blockly.Msg.COLOUR_RGB_RED = "червен";
+Blockly.Msg.COLOUR_RGB_TITLE = "оцвети с";
+Blockly.Msg.COLOUR_RGB_TOOLTIP = "Създай цвят с избраните пропорции, червено, зелено и синьо. Всички стойности трябва да бъдат от 0 до 100.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_HELPURL = "https://github.com/google/blockly/wiki/Loops#loop-termination-blocks"; // untranslated
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK = "прекъсни цикъла";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE = "премини към следващата стъпка от цикъла";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK = "Прекъсни цикъла, в койте се съдержа тази команда.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE = "Премини към следващата стъпка от цикъла";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_WARNING = "Предупреждение: Този блок може да се използва само в цикъл.";
+Blockly.Msg.CONTROLS_FOREACH_HELPURL = "https://github.com/google/blockly/wiki/Loops#for-each"; // untranslated
+Blockly.Msg.CONTROLS_FOREACH_TITLE = "за всеки елемент %1 в списъка %2";
+Blockly.Msg.CONTROLS_FOREACH_TOOLTIP = "За всеки елемент в списък присвои елемента на променливата '%1' и след това изпълни командите.";
+Blockly.Msg.CONTROLS_FOR_HELPURL = "https://github.com/google/blockly/wiki/Loops#count-with"; // untranslated
+Blockly.Msg.CONTROLS_FOR_TITLE = "преброй чрез %1 от %2 до %3 през %4";
+Blockly.Msg.CONTROLS_FOR_TOOLTIP = "Нека променлива \"%1\" премине през стойностите от началното до крайното число през зададената стъпка и изпълни избраните блокове.";
+Blockly.Msg.CONTROLS_IF_ELSEIF_TOOLTIP = "Добави условие към \"ако\" блока.";
+Blockly.Msg.CONTROLS_IF_ELSE_TOOLTIP = "Добави окончателено, прихващащо всичко останали случаи условие към \"ако\" блока.";
+Blockly.Msg.CONTROLS_IF_HELPURL = "https://github.com/google/blockly/wiki/IfElse"; // untranslated
+Blockly.Msg.CONTROLS_IF_IF_TOOLTIP = "Добави, премахни или пренареди частите, за да промениш този \"ако\" блок.";
+Blockly.Msg.CONTROLS_IF_MSG_ELSE = "иначе";
+Blockly.Msg.CONTROLS_IF_MSG_ELSEIF = "иначе ако";
+Blockly.Msg.CONTROLS_IF_MSG_IF = "ако";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_1 = "Ако стойността е вярна, изпълни операциите.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_2 = "Ако стойността е вярна, изпълни първия блок. Иначе, изпълни втория блок.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_3 = "Ако първата стойност е вярна, изпълни първия блок. Иначе, ако втората стойност е вярна, изпълни втория блок.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_4 = "Ако първата стойност е вярна, изпълни първия блок. В противен случай, ако втората стойност е вярна, изпълни втория блок. Ако нито една от стойностите не е вярна, изпълни последния блок.";
+Blockly.Msg.CONTROLS_REPEAT_HELPURL = "https://bg.wikipedia.org/wiki/Цикъл_(програмиране)#For_.D1.86.D0.B8.D0.BA.D1.8A.D0.BB.D1.8A.D1.82";
+Blockly.Msg.CONTROLS_REPEAT_INPUT_DO = "изпълни";
+Blockly.Msg.CONTROLS_REPEAT_TITLE = "Повтори %1 пъти";
+Blockly.Msg.CONTROLS_REPEAT_TOOLTIP = "Изпълнява команди няколко пъти.";
+Blockly.Msg.CONTROLS_WHILEUNTIL_HELPURL = "https://github.com/google/blockly/wiki/Loops#repeat"; // untranslated
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "повтаряй докато";
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "повтаряй докато е вярно, че";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "Докато стойността е лъжа, изпълнявай командите.";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "Докато стойността е истина, изпълнявай командите.";
+Blockly.Msg.DELETE_ALL_BLOCKS = "Изтриване на всички 1% блокове?";
+Blockly.Msg.DELETE_BLOCK = "Изтрий блок";
+Blockly.Msg.DELETE_VARIABLE = "Delete the '%1' variable"; // untranslated
+Blockly.Msg.DELETE_VARIABLE_CONFIRMATION = "Delete %1 uses of the '%2' variable?"; // untranslated
+Blockly.Msg.DELETE_X_BLOCKS = "Изтрий %1 блока";
+Blockly.Msg.DISABLE_BLOCK = "Деактивирай блок";
+Blockly.Msg.DUPLICATE_BLOCK = "Копирай";
+Blockly.Msg.ENABLE_BLOCK = "Активирай блок";
+Blockly.Msg.EXPAND_ALL = "Покажи блокове";
+Blockly.Msg.EXPAND_BLOCK = "Покажи блок";
+Blockly.Msg.EXTERNAL_INPUTS = "Външни входове";
+Blockly.Msg.HELP = "Помощ";
+Blockly.Msg.INLINE_INPUTS = "Вътрешни входове";
+Blockly.Msg.LISTS_CREATE_EMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-empty-list"; // untranslated
+Blockly.Msg.LISTS_CREATE_EMPTY_TITLE = "създай празен списък";
+Blockly.Msg.LISTS_CREATE_EMPTY_TOOLTIP = "Връща списък с дължина 0, не съдържащ данни";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TITLE_ADD = "списък";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TOOLTIP = "Добави, премахни или пренареди частите, за да промениш този списъчен блок.";
+Blockly.Msg.LISTS_CREATE_WITH_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
+Blockly.Msg.LISTS_CREATE_WITH_INPUT_WITH = "създай списък с";
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TOOLTIP = "Добави елемент към текста.";
+Blockly.Msg.LISTS_CREATE_WITH_TOOLTIP = "Създай списък с произволен брой елементи.";
+Blockly.Msg.LISTS_GET_INDEX_FIRST = "първия";
+Blockly.Msg.LISTS_GET_INDEX_FROM_END = "№ от края";
+Blockly.Msg.LISTS_GET_INDEX_FROM_START = "#"; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_GET = "вземи";
+Blockly.Msg.LISTS_GET_INDEX_GET_REMOVE = "вземи и премахни";
+Blockly.Msg.LISTS_GET_INDEX_LAST = "последния";
+Blockly.Msg.LISTS_GET_INDEX_RANDOM = "произволен";
+Blockly.Msg.LISTS_GET_INDEX_REMOVE = "премахни";
+Blockly.Msg.LISTS_GET_INDEX_TAIL = ""; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FIRST = "Връща първия елемент в списък.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FROM = "Връща елемента на определената позиция в списък.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_LAST = "Връща последния елемент в списък.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_RANDOM = "Връща случаен елемент от списъка.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST = "Премахва и връща първия елемент в списък.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM = "Премахва и връща елемента на определена позиция в списък.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST = "Премахва и връща последния елемент в списък.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM = "Премахва и връща случаен елемент в списък.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST = "Премахва първия елемент в списък.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM = "Премахва елемент на определена позиция в списък.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST = "Премахва последния елемент в списък.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM = "Премахва случаен елемент от списък.";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_END = "до № открая";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_START = "до #";
+Blockly.Msg.LISTS_GET_SUBLIST_END_LAST = "до края";
+Blockly.Msg.LISTS_GET_SUBLIST_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-a-sublist"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_START_FIRST = "вземи подсписък от първия";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_END = "вземи подсписък от № от края";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_START = "вземи подсписък от №";
+Blockly.Msg.LISTS_GET_SUBLIST_TAIL = ""; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_TOOLTIP = "Копира част от списък.";
+Blockly.Msg.LISTS_INDEX_FROM_END_TOOLTIP = "%1 е последният елемент.";
+Blockly.Msg.LISTS_INDEX_FROM_START_TOOLTIP = "%1 е първият елемент.";
+Blockly.Msg.LISTS_INDEX_OF_FIRST = "намери първата поява на елемента";
+Blockly.Msg.LISTS_INDEX_OF_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-items-from-a-list"; // untranslated
+Blockly.Msg.LISTS_INDEX_OF_LAST = "намери последната поява на елемента";
+Blockly.Msg.LISTS_INDEX_OF_TOOLTIP = "Връща индекса на първото/последното появяване на елемента в списъка. Връща %1 ако елементът не е намерен.";
+Blockly.Msg.LISTS_INLIST = "в списъка";
+Blockly.Msg.LISTS_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#is-empty"; // untranslated
+Blockly.Msg.LISTS_ISEMPTY_TITLE = "%1 е празен";
+Blockly.Msg.LISTS_ISEMPTY_TOOLTIP = "Връща стойност вярно, ако списъкът е празен.";
+Blockly.Msg.LISTS_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Lists#length-of"; // untranslated
+Blockly.Msg.LISTS_LENGTH_TITLE = "дължината на %1";
+Blockly.Msg.LISTS_LENGTH_TOOLTIP = "Връща дължината на списък.";
+Blockly.Msg.LISTS_REPEAT_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
+Blockly.Msg.LISTS_REPEAT_TITLE = "създай списък от %1 повторен %2 пъти";
+Blockly.Msg.LISTS_REPEAT_TOOLTIP = "Създава списък, състоящ се от определен брой копия на елемента.";
+Blockly.Msg.LISTS_SET_INDEX_HELPURL = "https://github.com/google/blockly/wiki/Lists#in-list--set"; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_INPUT_TO = "следното";
+Blockly.Msg.LISTS_SET_INDEX_INSERT = "вмъкни на позиция";
+Blockly.Msg.LISTS_SET_INDEX_SET = "промени";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST = "Вмъква елемент в началото на списъка.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FROM = "Вмъква елемент на определена позиция в списък.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_LAST = "Добави елемент в края на списък.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM = "Вмъква елемент на произволно място в списък.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FIRST = "Променя първия елемент в списък.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FROM = "Променя елемента на определена позиция в списък.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_LAST = "Променя последния елемент в списък.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_RANDOM = "Променя случаен елемент от списък.";
+Blockly.Msg.LISTS_SORT_HELPURL = "https://github.com/google/blockly/wiki/Lists#sorting-a-list";
+Blockly.Msg.LISTS_SORT_ORDER_ASCENDING = "възходящо";
+Blockly.Msg.LISTS_SORT_ORDER_DESCENDING = "низходящо";
+Blockly.Msg.LISTS_SORT_TITLE = "sort %1 %2 %3"; // untranslated
+Blockly.Msg.LISTS_SORT_TOOLTIP = "Подреди копие на списъка.";
+Blockly.Msg.LISTS_SORT_TYPE_IGNORECASE = "по азбучен ред, без отчитане на малки и главни букви";
+Blockly.Msg.LISTS_SORT_TYPE_NUMERIC = "в числов ред";
+Blockly.Msg.LISTS_SORT_TYPE_TEXT = "по азбучен ред";
+Blockly.Msg.LISTS_SPLIT_HELPURL = "https://github.com/google/blockly/wiki/Lists#splitting-strings-and-joining-lists"; // untranslated
+Blockly.Msg.LISTS_SPLIT_LIST_FROM_TEXT = "Направи списък от текст";
+Blockly.Msg.LISTS_SPLIT_TEXT_FROM_LIST = "направи текст от списък";
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_JOIN = "Събира списък от текстове в един текст, раделени с разделител.";
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_SPLIT = "Разделя текст в списък на текстове, по всеки разделител.";
+Blockly.Msg.LISTS_SPLIT_WITH_DELIMITER = "с разделител";
+Blockly.Msg.LOGIC_BOOLEAN_FALSE = "невярно";
+Blockly.Msg.LOGIC_BOOLEAN_HELPURL = "https://github.com/google/blockly/wiki/Logic#values"; // untranslated
+Blockly.Msg.LOGIC_BOOLEAN_TOOLTIP = "Връща вярно или невярно.";
+Blockly.Msg.LOGIC_BOOLEAN_TRUE = "вярно";
+Blockly.Msg.LOGIC_COMPARE_HELPURL = "https://en.wikipedia.org/wiki/Inequality_(mathematics)";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_EQ = "Върни вярно, ако двата параметъра са еднакви.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GT = "Върни истина, ако първия параметър е по-голям от втория.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GTE = "Върни истина, ако първия параметър е по-голям или равен на втория.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LT = "Върни вярно, ако първия параметър е по-малък от втория.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LTE = "Върни истина, ако първия параметър е по-малък или равен на втория.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_NEQ = "Върни вярно, ако двата параметъра са различни.";
+Blockly.Msg.LOGIC_NEGATE_HELPURL = "https://github.com/google/blockly/wiki/Logic#not"; // untranslated
+Blockly.Msg.LOGIC_NEGATE_TITLE = "не %1";
+Blockly.Msg.LOGIC_NEGATE_TOOLTIP = "Върни вярно, ако параметърът е неверен. Върни невярно, ако параметърът е верен.";
+Blockly.Msg.LOGIC_NULL = "нула";
+Blockly.Msg.LOGIC_NULL_HELPURL = "https://en.wikipedia.org/wiki/Nullable_type"; // untranslated
+Blockly.Msg.LOGIC_NULL_TOOLTIP = "Връща нула.";
+Blockly.Msg.LOGIC_OPERATION_AND = "и";
+Blockly.Msg.LOGIC_OPERATION_HELPURL = "https://github.com/google/blockly/wiki/Logic#logical-operations"; // untranslated
+Blockly.Msg.LOGIC_OPERATION_OR = "или";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_AND = "Върни вярно, ако и двата параметъра са верни.";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_OR = "Върни \"вярно\", ако поне един от входовете е верен.";
+Blockly.Msg.LOGIC_TERNARY_CONDITION = "тест";
+Blockly.Msg.LOGIC_TERNARY_HELPURL = "https://en.wikipedia.org/wiki/%3F:"; // untranslated
+Blockly.Msg.LOGIC_TERNARY_IF_FALSE = "Ако е невярно";
+Blockly.Msg.LOGIC_TERNARY_IF_TRUE = "Ако е вярно";
+Blockly.Msg.LOGIC_TERNARY_TOOLTIP = "Провери исловието в \"тест\". Ако условието е истина, върни \"ако е истина\" стойността, иначе върни \"ако е лъжа\" стойността.";
+Blockly.Msg.MATH_ADDITION_SYMBOL = "+"; // untranslated
+Blockly.Msg.MATH_ARITHMETIC_HELPURL = "https://bg.wikipedia.org/wiki/Аритметика";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_ADD = "Върни сумата на двете числа.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE = "Върни частното на двете числа.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MINUS = "Върни разликата на двете числа.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MULTIPLY = "Върни произведението на двете числа.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_POWER = "Върни първото число, повдигнато на степен на второто число.";
+Blockly.Msg.MATH_CHANGE_HELPURL = "https://bg.wikipedia.org/wiki/Събиране";
+Blockly.Msg.MATH_CHANGE_TITLE = "промени %1 на %2";
+Blockly.Msg.MATH_CHANGE_TOOLTIP = "Добави число към променлива '%1'.";
+Blockly.Msg.MATH_CONSTANT_HELPURL = "http://bg.wikipedia.org/wiki/Константа";
+Blockly.Msg.MATH_CONSTANT_TOOLTIP = "Връща една от често срещаните константи: π (3.141...), e (2.718...), φ (1.618...), sqrt(2) (1.414...), sqrt(½) (0.707...) или ∞ (безкрайност).";
+Blockly.Msg.MATH_CONSTRAIN_HELPURL = "https://en.wikipedia.org/wiki/Clamping_%28graphics%29"; // untranslated
+Blockly.Msg.MATH_CONSTRAIN_TITLE = "ограничи %1 между %2 и %3";
+Blockly.Msg.MATH_CONSTRAIN_TOOLTIP = "Ограничи число да бъде в определените граници (включително).";
+Blockly.Msg.MATH_DIVISION_SYMBOL = "÷"; // untranslated
+Blockly.Msg.MATH_IS_DIVISIBLE_BY = "се дели на";
+Blockly.Msg.MATH_IS_EVEN = "е четно";
+Blockly.Msg.MATH_IS_NEGATIVE = "е отрицателно";
+Blockly.Msg.MATH_IS_ODD = "е нечетно";
+Blockly.Msg.MATH_IS_POSITIVE = "е положително";
+Blockly.Msg.MATH_IS_PRIME = "е просто";
+Blockly.Msg.MATH_IS_TOOLTIP = "Проверете дали дадено число е четно, нечетно, просто, цяло, положително, отрицателно или дали се дели на друго число. Връща истина или лъжа.";
+Blockly.Msg.MATH_IS_WHOLE = "е цяло";
+Blockly.Msg.MATH_MODULO_HELPURL = "http://bg.wikipedia.org/wiki/Остатък";
+Blockly.Msg.MATH_MODULO_TITLE = "остатъка от делението на %1 на %2";
+Blockly.Msg.MATH_MODULO_TOOLTIP = "Върни остатъка от деление на две числа.";
+Blockly.Msg.MATH_MULTIPLICATION_SYMBOL = "×"; // untranslated
+Blockly.Msg.MATH_NUMBER_HELPURL = "https://bg.wikipedia.org/wiki/Число";
+Blockly.Msg.MATH_NUMBER_TOOLTIP = "Число.";
+Blockly.Msg.MATH_ONLIST_HELPURL = ""; // untranslated
+Blockly.Msg.MATH_ONLIST_OPERATOR_AVERAGE = "средната стойност на числата в списъка";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MAX = "най-голямата стойност в списъка";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MEDIAN = "медианата на списък";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MIN = "най-малката стойност в списъка";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MODE = "мода на списъка";
+Blockly.Msg.MATH_ONLIST_OPERATOR_RANDOM = "случаен елемент от списъка";
+Blockly.Msg.MATH_ONLIST_OPERATOR_STD_DEV = "стандартно отклонение на списък";
+Blockly.Msg.MATH_ONLIST_OPERATOR_SUM = "сумирай списъка";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_AVERAGE = "Върни средната стойност (аритметичното средно) на числата в списъка.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MAX = "Върни най-голямото число в списъка.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MEDIAN = "Върни медианата в списъка.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MIN = "Върни най-малкото число в списъка.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MODE = "Върни списък на най-често срещаните елементи в списъка.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_RANDOM = "Върни случаен елемент от списъка.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_STD_DEV = "Връща стандартното отклонение на списъка.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_SUM = "Върни сумата на всички числа в списъка.";
+Blockly.Msg.MATH_POWER_SYMBOL = "^"; // untranslated
+Blockly.Msg.MATH_RANDOM_FLOAT_HELPURL = "https://bg.wikipedia.org/wiki/Генератор_на_случайни_числа";
+Blockly.Msg.MATH_RANDOM_FLOAT_TITLE_RANDOM = "случайно дробно число";
+Blockly.Msg.MATH_RANDOM_FLOAT_TOOLTIP = "Върни случайно дробно число между 0.0 (включително) и 1.0 (без да го включва)";
+Blockly.Msg.MATH_RANDOM_INT_HELPURL = "https://bg.wikipedia.org/wiki/Генератор_на_случайни_числа";
+Blockly.Msg.MATH_RANDOM_INT_TITLE = "случайно цяло число между %1 и %2";
+Blockly.Msg.MATH_RANDOM_INT_TOOLTIP = "Върни случайно число в определените граници (включително).";
+Blockly.Msg.MATH_ROUND_HELPURL = "https://en.wikipedia.org/wiki/Rounding";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUND = "закръгли";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDDOWN = "закръгли надолу";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDUP = "закръгли нагоре";
+Blockly.Msg.MATH_ROUND_TOOLTIP = "Закръгли число нагоре или надолу.";
+Blockly.Msg.MATH_SINGLE_HELPURL = "https://en.wikipedia.org/wiki/Square_root";
+Blockly.Msg.MATH_SINGLE_OP_ABSOLUTE = "абсолютна";
+Blockly.Msg.MATH_SINGLE_OP_ROOT = "корен квадратен";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ABS = "Връща абсолютната стойност на число.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_EXP = "Върни е (неперовото число) на степен зададеното число.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LN = "Върни натуралния логаритъм от число.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LOG10 = "Върни десетичния логаритъм на число.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_NEG = "Върни числото с обърнат знак.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_POW10 = "Върни 10 на степен зададеното число.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ROOT = "Връща корен квадратен от число.";
+Blockly.Msg.MATH_SUBTRACTION_SYMBOL = "-"; // untranslated
+Blockly.Msg.MATH_TRIG_ACOS = "acos"; // untranslated
+Blockly.Msg.MATH_TRIG_ASIN = "asin"; // untranslated
+Blockly.Msg.MATH_TRIG_ATAN = "atan"; // untranslated
+Blockly.Msg.MATH_TRIG_COS = "cos"; // untranslated
+Blockly.Msg.MATH_TRIG_HELPURL = "https://bg.wikipedia.org/wiki/Тригонометрична_функция";
+Blockly.Msg.MATH_TRIG_SIN = "sin"; // untranslated
+Blockly.Msg.MATH_TRIG_TAN = "tan"; // untranslated
+Blockly.Msg.MATH_TRIG_TOOLTIP_ACOS = "Върни аркускосинус от число.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ASIN = "Върни аркуссинус от число.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ATAN = "Върни аркустангенс от число.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_COS = "Върни косинус от ъгъл в градуси (не в радиани)";
+Blockly.Msg.MATH_TRIG_TOOLTIP_SIN = "Върни синус от ъгъл в градуси (не в радиани)";
+Blockly.Msg.MATH_TRIG_TOOLTIP_TAN = "Върни тангенс от ъгъл в градуси (не в радиани)";
+Blockly.Msg.NEW_VARIABLE = "Нова променлива...";
+Blockly.Msg.NEW_VARIABLE_TITLE = "Ново име на променливата:";
+Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; // untranslated
+Blockly.Msg.PROCEDURES_ALLOW_STATEMENTS = "позволи операциите";
+Blockly.Msg.PROCEDURES_BEFORE_PARAMS = "със:";
+Blockly.Msg.PROCEDURES_CALLNORETURN_HELPURL = "https://bg.wikipedia.org/wiki/Подпрограма";
+Blockly.Msg.PROCEDURES_CALLNORETURN_TOOLTIP = "Изпълни дефинирана от потребителя функция \"%1\".";
+Blockly.Msg.PROCEDURES_CALLRETURN_HELPURL = "https://bg.wikipedia.org/wiki/Подпрограма";
+Blockly.Msg.PROCEDURES_CALLRETURN_TOOLTIP = "Изпълни дефинирана от потребителя функция \"%1\" и използвай резултата.";
+Blockly.Msg.PROCEDURES_CALL_BEFORE_PARAMS = "със:";
+Blockly.Msg.PROCEDURES_CREATE_DO = "Създай '%1'";
+Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT = "Опишете тази функция...";
+Blockly.Msg.PROCEDURES_DEFNORETURN_DO = ""; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE = "направиш";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE = "за да";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TOOLTIP = "Създава функция, която не връща резултат.";
+Blockly.Msg.PROCEDURES_DEFRETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_DEFRETURN_RETURN = "върни";
+Blockly.Msg.PROCEDURES_DEFRETURN_TOOLTIP = "Създава функция, която връща резултат.";
+Blockly.Msg.PROCEDURES_DEF_DUPLICATE_WARNING = "Предупреждение: Тази функция има дублиращи се параметри.";
+Blockly.Msg.PROCEDURES_HIGHLIGHT_DEF = "Покажи дефиницията на функцията";
+Blockly.Msg.PROCEDURES_IFRETURN_HELPURL = "http://c2.com/cgi/wiki?GuardClause";
+Blockly.Msg.PROCEDURES_IFRETURN_TOOLTIP = "Ако стойността е истина, върни втората стойност.";
+Blockly.Msg.PROCEDURES_IFRETURN_WARNING = "Предупреждение: Този блок може да се използва само във функция.";
+Blockly.Msg.PROCEDURES_MUTATORARG_TITLE = "име на параметър";
+Blockly.Msg.PROCEDURES_MUTATORARG_TOOLTIP = "Добавяне на параметър към функцията.";
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TITLE = "вход";
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TOOLTIP = "Добави, премахни или пренареди входните параметри за тази функция.";
+Blockly.Msg.REDO = "Повторение";
+Blockly.Msg.REMOVE_COMMENT = "Премахни коментар";
+Blockly.Msg.RENAME_VARIABLE = "Преименувай променливата...";
+Blockly.Msg.RENAME_VARIABLE_TITLE = "Преименувай всички '%1' променливи на:";
+Blockly.Msg.TEXT_APPEND_APPENDTEXT = "добави текста";
+Blockly.Msg.TEXT_APPEND_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_APPEND_TO = "към";
+Blockly.Msg.TEXT_APPEND_TOOLTIP = "Добави текста към променливата \"%1\".";
+Blockly.Msg.TEXT_CHANGECASE_HELPURL = "https://github.com/google/blockly/wiki/Text#adjusting-text-case"; // untranslated
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_LOWERCASE = "с малки букви";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_TITLECASE = "с Главна Буква На Всяка Дума";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_UPPERCASE = "с ГЛАВНИ БУКВИ";
+Blockly.Msg.TEXT_CHANGECASE_TOOLTIP = "Връща копие на текста със сменени малки и главни букви.";
+Blockly.Msg.TEXT_CHARAT_FIRST = "вземи първата буква";
+Blockly.Msg.TEXT_CHARAT_FROM_END = "вземи поредна буква от края";
+Blockly.Msg.TEXT_CHARAT_FROM_START = "вземи поредна буква";
+Blockly.Msg.TEXT_CHARAT_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-text"; // untranslated
+Blockly.Msg.TEXT_CHARAT_INPUT_INTEXT = "от текста";
+Blockly.Msg.TEXT_CHARAT_LAST = "вземи последната буква";
+Blockly.Msg.TEXT_CHARAT_RANDOM = "вземи произволна буква";
+Blockly.Msg.TEXT_CHARAT_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_CHARAT_TOOLTIP = "Връща буквата в определена позиция.";
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TOOLTIP = "Добави елемент към текста.";
+Blockly.Msg.TEXT_CREATE_JOIN_TITLE_JOIN = "свържи";
+Blockly.Msg.TEXT_CREATE_JOIN_TOOLTIP = "Добави, премахни или пренареди частите, за да промениш този текстов блок.";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_END = "со буква № (броено отзад-напред)";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_START = "до буква №";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_LAST = "со последната буква.";
+Blockly.Msg.TEXT_GET_SUBSTRING_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_INPUT_IN_TEXT = "В текста";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FIRST = "вземи текста от първата буква";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_END = "вземи текста от буква № (броено отзад-напред)";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_START = "вземи текста от буква №";
+Blockly.Msg.TEXT_GET_SUBSTRING_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_TOOLTIP = "Връща определена част от текста.";
+Blockly.Msg.TEXT_INDEXOF_HELPURL = "https://github.com/google/blockly/wiki/Text#finding-text"; // untranslated
+Blockly.Msg.TEXT_INDEXOF_INPUT_INTEXT = "в текста";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_FIRST = "намери първата поява на текста";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_LAST = "намери последната поява на текста";
+Blockly.Msg.TEXT_INDEXOF_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_INDEXOF_TOOLTIP = "Връща индекса на първото/последното срещане на първия текст във втория текст. Връща %1, ако текстът не е намерен.";
+Blockly.Msg.TEXT_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Text#checking-for-empty-text"; // untranslated
+Blockly.Msg.TEXT_ISEMPTY_TITLE = "%1 е празен";
+Blockly.Msg.TEXT_ISEMPTY_TOOLTIP = "Връща истина, ако текста е празен.";
+Blockly.Msg.TEXT_JOIN_HELPURL = "https://github.com/google/blockly/wiki/Text#text-creation"; // untranslated
+Blockly.Msg.TEXT_JOIN_TITLE_CREATEWITH = "създай текст с";
+Blockly.Msg.TEXT_JOIN_TOOLTIP = "Създай текст като съчетаеш няколко елемента.";
+Blockly.Msg.TEXT_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_LENGTH_TITLE = "дължината на %1";
+Blockly.Msg.TEXT_LENGTH_TOOLTIP = "Връща броя на символите (включително и интервалите) в текста.";
+Blockly.Msg.TEXT_PRINT_HELPURL = "https://github.com/google/blockly/wiki/Text#printing-text"; // untranslated
+Blockly.Msg.TEXT_PRINT_TITLE = "отпечатай %1";
+Blockly.Msg.TEXT_PRINT_TOOLTIP = "Отпечатай текста, числото или друга стойност.";
+Blockly.Msg.TEXT_PROMPT_HELPURL = "https://github.com/google/blockly/wiki/Text#getting-input-from-the-user"; // untranslated
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_NUMBER = "Питай потребителя за число.";
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_TEXT = "Питай потребителя за текст.";
+Blockly.Msg.TEXT_PROMPT_TYPE_NUMBER = "питай за число със съобщение";
+Blockly.Msg.TEXT_PROMPT_TYPE_TEXT = "питай за текст със съобщение";
+Blockly.Msg.TEXT_TEXT_HELPURL = "https://bg.wikipedia.org/wiki/Низ";
+Blockly.Msg.TEXT_TEXT_TOOLTIP = "Буква, дума или ред";
+Blockly.Msg.TEXT_TRIM_HELPURL = "https://github.com/google/blockly/wiki/Text#trimming-removing-spaces"; // untranslated
+Blockly.Msg.TEXT_TRIM_OPERATOR_BOTH = "премахни интервалите от двете страни";
+Blockly.Msg.TEXT_TRIM_OPERATOR_LEFT = "премахни интервалите отляво";
+Blockly.Msg.TEXT_TRIM_OPERATOR_RIGHT = "премахни интервалите отдясно";
+Blockly.Msg.TEXT_TRIM_TOOLTIP = "Върни копие на текста с пемахнати интервали от диния или двата края.";
+Blockly.Msg.TODAY = "Днес";
+Blockly.Msg.UNDO = "Отмяна";
+Blockly.Msg.VARIABLES_DEFAULT_NAME = "елемент";
+Blockly.Msg.VARIABLES_GET_CREATE_SET = "Създай \"промени стойността на %1\"";
+Blockly.Msg.VARIABLES_GET_HELPURL = "https://github.com/google/blockly/wiki/Variables#get"; // untranslated
+Blockly.Msg.VARIABLES_GET_TOOLTIP = "Връща стойността на тази променлива.";
+Blockly.Msg.VARIABLES_SET = "нека %1 бъде %2";
+Blockly.Msg.VARIABLES_SET_CREATE_GET = "Създай \"вземи стойността на %1\"";
+Blockly.Msg.VARIABLES_SET_HELPURL = "https://github.com/google/blockly/wiki/Variables#set"; // untranslated
+Blockly.Msg.VARIABLES_SET_TOOLTIP = "Задава тази променлива да бъде равен на входа.";
+Blockly.Msg.VARIABLE_ALREADY_EXISTS = "A variable named '%1' already exists."; // untranslated
+Blockly.Msg.PROCEDURES_DEFRETURN_TITLE = Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE;
+Blockly.Msg.CONTROLS_IF_IF_TITLE_IF = Blockly.Msg.CONTROLS_IF_MSG_IF;
+Blockly.Msg.CONTROLS_WHILEUNTIL_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_MSG_THEN = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_ELSE_TITLE_ELSE = Blockly.Msg.CONTROLS_IF_MSG_ELSE;
+Blockly.Msg.PROCEDURES_DEFRETURN_PROCEDURE = Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE;
+Blockly.Msg.LISTS_GET_SUBLIST_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.LISTS_GET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.PROCEDURES_DEFRETURN_DO = Blockly.Msg.PROCEDURES_DEFNORETURN_DO;
+Blockly.Msg.CONTROLS_IF_ELSEIF_TITLE_ELSEIF = Blockly.Msg.CONTROLS_IF_MSG_ELSEIF;
+Blockly.Msg.LISTS_GET_INDEX_HELPURL = Blockly.Msg.LISTS_INDEX_OF_HELPURL;
+Blockly.Msg.CONTROLS_FOREACH_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_SET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TITLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_APPEND_VARIABLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.LISTS_INDEX_OF_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.PROCEDURES_DEFRETURN_COMMENT = Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT; \ No newline at end of file
diff --git a/blockly/msg/js/bn.js b/blockly/msg/js/bn.js
new file mode 100644
index 0000000..739407d
--- /dev/null
+++ b/blockly/msg/js/bn.js
@@ -0,0 +1,391 @@
+// This file was automatically generated. Do not modify.
+
+'use strict';
+
+goog.provide('Blockly.Msg.bn');
+
+goog.require('Blockly.Msg');
+
+Blockly.Msg.ADD_COMMENT = "মন্তব্য যোগ করুন";
+Blockly.Msg.CHANGE_VALUE_TITLE = "মান পরিবর্তন করুন:";
+Blockly.Msg.CLEAN_UP = "Clean up Blocks"; // untranslated
+Blockly.Msg.COLLAPSE_ALL = "Collapse Blocks"; // untranslated
+Blockly.Msg.COLLAPSE_BLOCK = "Collapse Block"; // untranslated
+Blockly.Msg.COLOUR_BLEND_COLOUR1 = "রং ১";
+Blockly.Msg.COLOUR_BLEND_COLOUR2 = "রং ২";
+Blockly.Msg.COLOUR_BLEND_HELPURL = "http://meyerweb.com/eric/tools/color-blend/"; // untranslated
+Blockly.Msg.COLOUR_BLEND_RATIO = "অনুপাত";
+Blockly.Msg.COLOUR_BLEND_TITLE = "মিশ্রণ";
+Blockly.Msg.COLOUR_BLEND_TOOLTIP = "প্রদত্ত অনুপাত(০.০ - ১.০) অনুসারে দুটি রং একসাথে মিশ্রিত করুন।";
+Blockly.Msg.COLOUR_PICKER_HELPURL = "https://en.wikipedia.org/wiki/Color"; // untranslated
+Blockly.Msg.COLOUR_PICKER_TOOLTIP = "প্যালেট থেকে একটি রং পছন্দ করুন";
+Blockly.Msg.COLOUR_RANDOM_HELPURL = "http://randomcolour.com"; // untranslated
+Blockly.Msg.COLOUR_RANDOM_TITLE = "এলোমেলো রং";
+Blockly.Msg.COLOUR_RANDOM_TOOLTIP = "এলোমেলোভাবে একটি রং পছন্দ করুন।";
+Blockly.Msg.COLOUR_RGB_BLUE = "নীল";
+Blockly.Msg.COLOUR_RGB_GREEN = "সবুজ";
+Blockly.Msg.COLOUR_RGB_HELPURL = "http://www.december.com/html/spec/colorper.html"; // untranslated
+Blockly.Msg.COLOUR_RGB_RED = "লাল";
+Blockly.Msg.COLOUR_RGB_TITLE = "রং সহ";
+Blockly.Msg.COLOUR_RGB_TOOLTIP = "একটি রং তৈরি করুন নির্দিষ্ট পরিমাণে লাল, সবুজ এবং নীল রং মিশ্রিত করে। প্রত্যেকটির মান অবশ্যই ০ থেকে ১০০ এর মধ্যে হতে হবে।";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_HELPURL = "https://github.com/google/blockly/wiki/Loops#loop-termination-blocks"; // untranslated
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK = "break out of loop"; // untranslated
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE = "continue with next iteration of loop"; // untranslated
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK = "Break out of the containing loop."; // untranslated
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE = "Skip the rest of this loop, and continue with the next iteration."; // untranslated
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_WARNING = "সর্তকীবার্তা: এই ব্লকটি শুধুমাত্র লুপের মধ্যে ব্যবহার করা যাবে।";
+Blockly.Msg.CONTROLS_FOREACH_HELPURL = "https://github.com/google/blockly/wiki/Loops#for-each"; // untranslated
+Blockly.Msg.CONTROLS_FOREACH_TITLE = "প্রত্যেকটি পদের জন্য %1 তালিকার মধ্যে %2";
+Blockly.Msg.CONTROLS_FOREACH_TOOLTIP = "For each item in a list, set the variable '%1' to the item, and then do some statements."; // untranslated
+Blockly.Msg.CONTROLS_FOR_HELPURL = "https://github.com/google/blockly/wiki/Loops#count-with"; // untranslated
+Blockly.Msg.CONTROLS_FOR_TITLE = "গণনা কর %1 %4 দিয়ে %2 থেকে %3";
+Blockly.Msg.CONTROLS_FOR_TOOLTIP = "Have the variable '%1' take on the values from the start number to the end number, counting by the specified interval, and do the specified blocks."; // untranslated
+Blockly.Msg.CONTROLS_IF_ELSEIF_TOOLTIP = "যদি নামক ব্লক এ একটি শর্ত যোগ করুন।";
+Blockly.Msg.CONTROLS_IF_ELSE_TOOLTIP = "Add a final, catch-all condition to the if block."; // untranslated
+Blockly.Msg.CONTROLS_IF_HELPURL = "https://github.com/google/blockly/wiki/IfElse"; // untranslated
+Blockly.Msg.CONTROLS_IF_IF_TOOLTIP = "Add, remove, or reorder sections to reconfigure this if block."; // untranslated
+Blockly.Msg.CONTROLS_IF_MSG_ELSE = "নতুবা";
+Blockly.Msg.CONTROLS_IF_MSG_ELSEIF = "নতুবা যদি";
+Blockly.Msg.CONTROLS_IF_MSG_IF = "যদি";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_1 = "If a value is true, then do some statements."; // untranslated
+Blockly.Msg.CONTROLS_IF_TOOLTIP_2 = "If a value is true, then do the first block of statements. Otherwise, do the second block of statements."; // untranslated
+Blockly.Msg.CONTROLS_IF_TOOLTIP_3 = "If the first value is true, then do the first block of statements. Otherwise, if the second value is true, do the second block of statements."; // untranslated
+Blockly.Msg.CONTROLS_IF_TOOLTIP_4 = "If the first value is true, then do the first block of statements. Otherwise, if the second value is true, do the second block of statements. If none of the values are true, do the last block of statements."; // untranslated
+Blockly.Msg.CONTROLS_REPEAT_HELPURL = "https://en.wikipedia.org/wiki/For_loop"; // untranslated
+Blockly.Msg.CONTROLS_REPEAT_INPUT_DO = "করুন";
+Blockly.Msg.CONTROLS_REPEAT_TITLE = "%1 বার পুনরাবৃত্তি করো";
+Blockly.Msg.CONTROLS_REPEAT_TOOLTIP = "Do some statements several times."; // untranslated
+Blockly.Msg.CONTROLS_WHILEUNTIL_HELPURL = "https://github.com/google/blockly/wiki/Loops#repeat"; // untranslated
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "repeat until"; // untranslated
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "repeat while"; // untranslated
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "While a value is false, then do some statements."; // untranslated
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "While a value is true, then do some statements."; // untranslated
+Blockly.Msg.DELETE_ALL_BLOCKS = "Delete all %1 blocks?"; // untranslated
+Blockly.Msg.DELETE_BLOCK = "ব্লকটি মুছে ফেল";
+Blockly.Msg.DELETE_VARIABLE = "Delete the '%1' variable"; // untranslated
+Blockly.Msg.DELETE_VARIABLE_CONFIRMATION = "Delete %1 uses of the '%2' variable?"; // untranslated
+Blockly.Msg.DELETE_X_BLOCKS = "%1 ব্লক অপসারণ কর";
+Blockly.Msg.DISABLE_BLOCK = "ব্লকটি বিকল কর";
+Blockly.Msg.DUPLICATE_BLOCK = "প্রতিলিপি";
+Blockly.Msg.ENABLE_BLOCK = "ব্লকটি সচল কর";
+Blockly.Msg.EXPAND_ALL = "ব্লকগুলো সম্প্রসারিত কর";
+Blockly.Msg.EXPAND_BLOCK = "ব্লকটি সম্প্রসারিত কর";
+Blockly.Msg.EXTERNAL_INPUTS = "বহি:স্থ ইনপুট";
+Blockly.Msg.HELP = "সাহায্য";
+Blockly.Msg.INLINE_INPUTS = "সারি ইনপুট";
+Blockly.Msg.LISTS_CREATE_EMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-empty-list"; // untranslated
+Blockly.Msg.LISTS_CREATE_EMPTY_TITLE = "খালি তালিকা তৈরি করুন";
+Blockly.Msg.LISTS_CREATE_EMPTY_TOOLTIP = "পাঠাবে একটি তালিকা, দের্ঘ্য হবে ০, কোন উপাত্ত থাকবে না";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TITLE_ADD = "তালিকা";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TOOLTIP = "Add, remove, or reorder sections to reconfigure this list block."; // untranslated
+Blockly.Msg.LISTS_CREATE_WITH_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
+Blockly.Msg.LISTS_CREATE_WITH_INPUT_WITH = "create list with"; // untranslated
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TOOLTIP = "তালিকায় একটি পদ যোগ করুন।";
+Blockly.Msg.LISTS_CREATE_WITH_TOOLTIP = "যেকোন সংখ্যক পদ নিয়ে একটি তালিকা তৈরি করুন।";
+Blockly.Msg.LISTS_GET_INDEX_FIRST = "প্রথম";
+Blockly.Msg.LISTS_GET_INDEX_FROM_END = "# শেষ থেকে";
+Blockly.Msg.LISTS_GET_INDEX_FROM_START = "#"; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_GET = "নিন";
+Blockly.Msg.LISTS_GET_INDEX_GET_REMOVE = "নিন ও সরান";
+Blockly.Msg.LISTS_GET_INDEX_LAST = "শেষ";
+Blockly.Msg.LISTS_GET_INDEX_RANDOM = "এলোমেলো";
+Blockly.Msg.LISTS_GET_INDEX_REMOVE = "অপসারণ";
+Blockly.Msg.LISTS_GET_INDEX_TAIL = ""; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FIRST = "তালিকার প্রথম পদটি পাঠাবে।";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FROM = "Returns the item at the specified position in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_LAST = "তালিকার শেষ পদটি পাঠাবে।";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_RANDOM = "এলোমেলোভাবে তালিকার যেকোন একটি পদ পাঠাবে।";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST = "অপসারণ করুন এবং তালিকার প্রথম পদটি পাঠান।";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM = "Removes and returns the item at the specified position in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST = "অপসারণ করুন এবং তালিকার শেষ পদটি পাঠান।";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM = "অপসারণ করুন এবং তালিকার এলোমেলো একটি পদ পাঠান।";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST = "তালিকার প্রথম পদটি অপসারণ করা হয়েছে।";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM = "Removes the item at the specified position in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST = "তালিকার শেষ পদটি অপসারণ করা হয়েছে।";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM = "তালিকা থেকে এলোমেলো একটি পদ অপসারণ করা হয়েছে।";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_END = "to # from end"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_START = "to #"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_END_LAST = "to last"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-a-sublist"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_START_FIRST = "get sub-list from first"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_END = "get sub-list from # from end"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_START = "get sub-list from #"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_TAIL = ""; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_TOOLTIP = "Creates a copy of the specified portion of a list."; // untranslated
+Blockly.Msg.LISTS_INDEX_FROM_END_TOOLTIP = "%1 is the last item."; // untranslated
+Blockly.Msg.LISTS_INDEX_FROM_START_TOOLTIP = "%1 is the first item."; // untranslated
+Blockly.Msg.LISTS_INDEX_OF_FIRST = "আইটেমের প্রথম সংঘটন খুঁজুন";
+Blockly.Msg.LISTS_INDEX_OF_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-items-from-a-list"; // untranslated
+Blockly.Msg.LISTS_INDEX_OF_LAST = "আইটেমের শেষ সংঘটন খুঁজুন";
+Blockly.Msg.LISTS_INDEX_OF_TOOLTIP = "Returns the index of the first/last occurrence of the item in the list. Returns %1 if item is not found."; // untranslated
+Blockly.Msg.LISTS_INLIST = "তালিকার মধ্যে";
+Blockly.Msg.LISTS_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#is-empty"; // untranslated
+Blockly.Msg.LISTS_ISEMPTY_TITLE = "%1 খালি";
+Blockly.Msg.LISTS_ISEMPTY_TOOLTIP = "পাঠাবে সত্য যদি তালিকাটি খালি হয়।";
+Blockly.Msg.LISTS_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Lists#length-of"; // untranslated
+Blockly.Msg.LISTS_LENGTH_TITLE = "%1-এর দৈর্ঘ্য";
+Blockly.Msg.LISTS_LENGTH_TOOLTIP = "একটি তালিকার দৈর্ঘ্য পাঠাবে।";
+Blockly.Msg.LISTS_REPEAT_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
+Blockly.Msg.LISTS_REPEAT_TITLE = "create list with item %1 repeated %2 times"; // untranslated
+Blockly.Msg.LISTS_REPEAT_TOOLTIP = "Creates a list consisting of the given value repeated the specified number of times."; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_HELPURL = "https://github.com/google/blockly/wiki/Lists#in-list--set"; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_INPUT_TO = "as"; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_INSERT = "insert at"; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_SET = "set"; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST = "Inserts the item at the start of a list."; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FROM = "Inserts the item at the specified position in a list."; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_LAST = "Append the item to the end of a list."; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM = "Inserts the item randomly in a list."; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FIRST = "Sets the first item in a list."; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FROM = "Sets the item at the specified position in a list."; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_LAST = "Sets the last item in a list."; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_RANDOM = "Sets a random item in a list."; // untranslated
+Blockly.Msg.LISTS_SORT_HELPURL = "https://github.com/google/blockly/wiki/Lists#sorting-a-list"; // untranslated
+Blockly.Msg.LISTS_SORT_ORDER_ASCENDING = "ascending"; // untranslated
+Blockly.Msg.LISTS_SORT_ORDER_DESCENDING = "descending"; // untranslated
+Blockly.Msg.LISTS_SORT_TITLE = "sort %1 %2 %3"; // untranslated
+Blockly.Msg.LISTS_SORT_TOOLTIP = "Sort a copy of a list."; // untranslated
+Blockly.Msg.LISTS_SORT_TYPE_IGNORECASE = "alphabetic, ignore case"; // untranslated
+Blockly.Msg.LISTS_SORT_TYPE_NUMERIC = "numeric"; // untranslated
+Blockly.Msg.LISTS_SORT_TYPE_TEXT = "alphabetic"; // untranslated
+Blockly.Msg.LISTS_SPLIT_HELPURL = "https://github.com/google/blockly/wiki/Lists#splitting-strings-and-joining-lists"; // untranslated
+Blockly.Msg.LISTS_SPLIT_LIST_FROM_TEXT = "লিখা থেকে তালিকা তৈরি করুন";
+Blockly.Msg.LISTS_SPLIT_TEXT_FROM_LIST = "তালিকা থেকে লিখা তৈরি করুন";
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_JOIN = "Join a list of texts into one text, separated by a delimiter."; // untranslated
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_SPLIT = "Split text into a list of texts, breaking at each delimiter."; // untranslated
+Blockly.Msg.LISTS_SPLIT_WITH_DELIMITER = "with delimiter"; // untranslated
+Blockly.Msg.LOGIC_BOOLEAN_FALSE = "মিথ্যা";
+Blockly.Msg.LOGIC_BOOLEAN_HELPURL = "https://github.com/google/blockly/wiki/Logic#values"; // untranslated
+Blockly.Msg.LOGIC_BOOLEAN_TOOLTIP = "পাঠাবে হয় সত্য অথবা মিথ্যা।";
+Blockly.Msg.LOGIC_BOOLEAN_TRUE = "সত্য";
+Blockly.Msg.LOGIC_COMPARE_HELPURL = "https://en.wikipedia.org/wiki/Inequality_(mathematics)"; // untranslated
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_EQ = "পাঠাবে সত্য যদি উভয় ইনপুটই সমান হয়।";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GT = "পাঠাবে সত্য যদি প্রথম ইনপুট দ্বিতীয় ইনপুট থেকে বড় হয়।";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GTE = "পাঠাবে সত্য যদি প্রথম ইনপুট দ্বিতীয় ইনপুট থেকে বড় অথবা সমান হয়।";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LT = "পাঠাবে সত্য যদি প্রথম ইনপুট দ্বিতীয় ইনপুট থেকে ছোট হয়।";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LTE = "পাঠাবে সত্য যদি প্রথম ইনপুট দ্বিতীয় ইনপুট থেকে ছোট অথবা সমান হয়।";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_NEQ = "পাঠাবে সত্য যদি উভয় ইনপুটই সমান না হয়।";
+Blockly.Msg.LOGIC_NEGATE_HELPURL = "https://github.com/google/blockly/wiki/Logic#not"; // untranslated
+Blockly.Msg.LOGIC_NEGATE_TITLE = "%1 নয়";
+Blockly.Msg.LOGIC_NEGATE_TOOLTIP = "পাঠাবে সত্য যদি ইনপুট মিথ্যা হয়। পাঠাবে মিথ্যা যদি ইনপুট সত্য হয়।";
+Blockly.Msg.LOGIC_NULL = "কিছু না";
+Blockly.Msg.LOGIC_NULL_HELPURL = "https://en.wikipedia.org/wiki/Nullable_type"; // untranslated
+Blockly.Msg.LOGIC_NULL_TOOLTIP = "কিছু ফেরত দিবে না।";
+Blockly.Msg.LOGIC_OPERATION_AND = "এবং";
+Blockly.Msg.LOGIC_OPERATION_HELPURL = "https://github.com/google/blockly/wiki/Logic#logical-operations"; // untranslated
+Blockly.Msg.LOGIC_OPERATION_OR = "অথবা";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_AND = "পাঠাবে সত্য যদি উভয় ইনপুটই সত্য হয়।";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_OR = "পাঠাবে সত্য যদি অন্ততপক্ষে যেকোন একটি ইনপুট সত্য হয়।";
+Blockly.Msg.LOGIC_TERNARY_CONDITION = "পরীক্ষা";
+Blockly.Msg.LOGIC_TERNARY_HELPURL = "https://en.wikipedia.org/wiki/%3F:"; // untranslated
+Blockly.Msg.LOGIC_TERNARY_IF_FALSE = "যদি মিথ্যা হয়";
+Blockly.Msg.LOGIC_TERNARY_IF_TRUE = "যদি সত্য হয়";
+Blockly.Msg.LOGIC_TERNARY_TOOLTIP = "Check the condition in 'test'. If the condition is true, returns the 'if true' value; otherwise returns the 'if false' value."; // untranslated
+Blockly.Msg.MATH_ADDITION_SYMBOL = "+"; // untranslated
+Blockly.Msg.MATH_ARITHMETIC_HELPURL = "https://en.wikipedia.org/wiki/Arithmetic"; // untranslated
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_ADD = "পাঠাবে দুটি সংখ্যার যোগফল।";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE = "পাঠাবে দুটি সংখ্যার ভাগফল।";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MINUS = "পাঠাবে দুটি সংখ্যার বিয়োগফল।";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MULTIPLY = "পাঠাবে দুটি সংখ্যার গুণফল।";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_POWER = "Return the first number raised to the power of the second number."; // untranslated
+Blockly.Msg.MATH_CHANGE_HELPURL = "https://en.wikipedia.org/wiki/Programming_idiom#Incrementing_a_counter"; // untranslated
+Blockly.Msg.MATH_CHANGE_TITLE = "%2 দ্বারা %1 পরিবর্তন";
+Blockly.Msg.MATH_CHANGE_TOOLTIP = "Add a number to variable '%1'."; // untranslated
+Blockly.Msg.MATH_CONSTANT_HELPURL = "https://en.wikipedia.org/wiki/Mathematical_constant"; // untranslated
+Blockly.Msg.MATH_CONSTANT_TOOLTIP = "Return one of the common constants: π (3.141…), e (2.718…), φ (1.618…), sqrt(2) (1.414…), sqrt(½) (0.707…), or ∞ (infinity)."; // untranslated
+Blockly.Msg.MATH_CONSTRAIN_HELPURL = "https://en.wikipedia.org/wiki/Clamping_%28graphics%29"; // untranslated
+Blockly.Msg.MATH_CONSTRAIN_TITLE = "constrain %1 low %2 high %3"; // untranslated
+Blockly.Msg.MATH_CONSTRAIN_TOOLTIP = "Constrain a number to be between the specified limits (inclusive)."; // untranslated
+Blockly.Msg.MATH_DIVISION_SYMBOL = "÷"; // untranslated
+Blockly.Msg.MATH_IS_DIVISIBLE_BY = "দ্বারা বিভাজ্য";
+Blockly.Msg.MATH_IS_EVEN = "জোড় সংখ্যা";
+Blockly.Msg.MATH_IS_NEGATIVE = "নেতিবাচক";
+Blockly.Msg.MATH_IS_ODD = "বিজোড় সংখ্যা";
+Blockly.Msg.MATH_IS_POSITIVE = "ইতিবাচক";
+Blockly.Msg.MATH_IS_PRIME = "মৌলিক সংখ্যা";
+Blockly.Msg.MATH_IS_TOOLTIP = "Check if a number is an even, odd, prime, whole, positive, negative, or if it is divisible by certain number. Returns true or false."; // untranslated
+Blockly.Msg.MATH_IS_WHOLE = "is whole"; // untranslated
+Blockly.Msg.MATH_MODULO_HELPURL = "https://en.wikipedia.org/wiki/Modulo_operation"; // untranslated
+Blockly.Msg.MATH_MODULO_TITLE = "%1 ÷ %2 এর ভাগশেষ";
+Blockly.Msg.MATH_MODULO_TOOLTIP = "Return the remainder from dividing the two numbers."; // untranslated
+Blockly.Msg.MATH_MULTIPLICATION_SYMBOL = "×"; // untranslated
+Blockly.Msg.MATH_NUMBER_HELPURL = "https://bn.wikipedia.org/wiki/সংখ্যা";
+Blockly.Msg.MATH_NUMBER_TOOLTIP = "একটি সংখ্যা।";
+Blockly.Msg.MATH_ONLIST_HELPURL = ""; // untranslated
+Blockly.Msg.MATH_ONLIST_OPERATOR_AVERAGE = "তালিকার গড়";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MAX = "তালিকার মধ্যে সর্বোচ্চ";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MEDIAN = "তালিকার মধ্যমা";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MIN = "তালিকার মধ্যে সর্বনিম্ন";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MODE = "modes of list"; // untranslated
+Blockly.Msg.MATH_ONLIST_OPERATOR_RANDOM = "তালিকার এলোমেলো পদ";
+Blockly.Msg.MATH_ONLIST_OPERATOR_STD_DEV = "standard deviation of list"; // untranslated
+Blockly.Msg.MATH_ONLIST_OPERATOR_SUM = "তালিকার যোগফল";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_AVERAGE = "পাঠাবে তালিকার সব সংখ্যার গড়।";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MAX = "তালিকার মধ্যে সর্বোচ্চ সংখ্যাটি পাঠাও";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MEDIAN = "তালিকার মধ্যমা সংখ্যাটি পাঠাবে।";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MIN = "তালিকার মধ্যে সর্বনিম্ন সংখ্যাটি পাঠাও";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MODE = "Return a list of the most common item(s) in the list."; // untranslated
+Blockly.Msg.MATH_ONLIST_TOOLTIP_RANDOM = "তালিকা থেকে এলোমেলোভাবে একটি পদ পাঠাবে।";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_STD_DEV = "Return the standard deviation of the list."; // untranslated
+Blockly.Msg.MATH_ONLIST_TOOLTIP_SUM = "পাঠাবে তালিকার সব সংখ্যার যোগফল।";
+Blockly.Msg.MATH_POWER_SYMBOL = "^"; // untranslated
+Blockly.Msg.MATH_RANDOM_FLOAT_HELPURL = "https://en.wikipedia.org/wiki/Random_number_generation"; // untranslated
+Blockly.Msg.MATH_RANDOM_FLOAT_TITLE_RANDOM = "এলোমেলো ভগ্নাংশ";
+Blockly.Msg.MATH_RANDOM_FLOAT_TOOLTIP = "Return a random fraction between 0.0 (inclusive) and 1.0 (exclusive)."; // untranslated
+Blockly.Msg.MATH_RANDOM_INT_HELPURL = "https://en.wikipedia.org/wiki/Random_number_generation"; // untranslated
+Blockly.Msg.MATH_RANDOM_INT_TITLE = "random integer from %1 to %2"; // untranslated
+Blockly.Msg.MATH_RANDOM_INT_TOOLTIP = "Return a random integer between the two specified limits, inclusive."; // untranslated
+Blockly.Msg.MATH_ROUND_HELPURL = "https://en.wikipedia.org/wiki/Rounding"; // untranslated
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUND = "round"; // untranslated
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDDOWN = "round down"; // untranslated
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDUP = "round up"; // untranslated
+Blockly.Msg.MATH_ROUND_TOOLTIP = "Round a number up or down."; // untranslated
+Blockly.Msg.MATH_SINGLE_HELPURL = "https://en.wikipedia.org/wiki/Square_root"; // untranslated
+Blockly.Msg.MATH_SINGLE_OP_ABSOLUTE = "পরম";
+Blockly.Msg.MATH_SINGLE_OP_ROOT = "বর্গমূল";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ABS = "পাঠাবে সংখ্যার পরমমান।";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_EXP = "Return e to the power of a number."; // untranslated
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LN = "Return the natural logarithm of a number."; // untranslated
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LOG10 = "Return the base 10 logarithm of a number."; // untranslated
+Blockly.Msg.MATH_SINGLE_TOOLTIP_NEG = "Return the negation of a number."; // untranslated
+Blockly.Msg.MATH_SINGLE_TOOLTIP_POW10 = "Return 10 to the power of a number."; // untranslated
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ROOT = "পাঠাবে একটি সংখ্যার বর্গমূল।";
+Blockly.Msg.MATH_SUBTRACTION_SYMBOL = "-"; // untranslated
+Blockly.Msg.MATH_TRIG_ACOS = "acos"; // untranslated
+Blockly.Msg.MATH_TRIG_ASIN = "asin"; // untranslated
+Blockly.Msg.MATH_TRIG_ATAN = "atan"; // untranslated
+Blockly.Msg.MATH_TRIG_COS = "cos"; // untranslated
+Blockly.Msg.MATH_TRIG_HELPURL = "https://en.wikipedia.org/wiki/Trigonometric_functions"; // untranslated
+Blockly.Msg.MATH_TRIG_SIN = "sin"; // untranslated
+Blockly.Msg.MATH_TRIG_TAN = "tan"; // untranslated
+Blockly.Msg.MATH_TRIG_TOOLTIP_ACOS = "Return the arccosine of a number."; // untranslated
+Blockly.Msg.MATH_TRIG_TOOLTIP_ASIN = "Return the arcsine of a number."; // untranslated
+Blockly.Msg.MATH_TRIG_TOOLTIP_ATAN = "Return the arctangent of a number."; // untranslated
+Blockly.Msg.MATH_TRIG_TOOLTIP_COS = "Return the cosine of a degree (not radian)."; // untranslated
+Blockly.Msg.MATH_TRIG_TOOLTIP_SIN = "Return the sine of a degree (not radian)."; // untranslated
+Blockly.Msg.MATH_TRIG_TOOLTIP_TAN = "Return the tangent of a degree (not radian)."; // untranslated
+Blockly.Msg.NEW_VARIABLE = "নতুন চলক...";
+Blockly.Msg.NEW_VARIABLE_TITLE = "নতুন চলকের নাম:";
+Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; // untranslated
+Blockly.Msg.PROCEDURES_ALLOW_STATEMENTS = "allow statements"; // untranslated
+Blockly.Msg.PROCEDURES_BEFORE_PARAMS = "with:"; // untranslated
+Blockly.Msg.PROCEDURES_CALLNORETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_CALLNORETURN_TOOLTIP = "Run the user-defined function '%1'."; // untranslated
+Blockly.Msg.PROCEDURES_CALLRETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_CALLRETURN_TOOLTIP = "Run the user-defined function '%1' and use its output."; // untranslated
+Blockly.Msg.PROCEDURES_CALL_BEFORE_PARAMS = "with:"; // untranslated
+Blockly.Msg.PROCEDURES_CREATE_DO = "Create '%1'"; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT = "Describe this function..."; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_DO = ""; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE = "do something"; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE = "এতে";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TOOLTIP = "আউটপুট ছাড়া একটি ক্রিয়া তৈরি করুন।";
+Blockly.Msg.PROCEDURES_DEFRETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_DEFRETURN_RETURN = "পাঠাবে";
+Blockly.Msg.PROCEDURES_DEFRETURN_TOOLTIP = "আউটপুট সহ একটি ক্রিয়া তৈরি করুন।";
+Blockly.Msg.PROCEDURES_DEF_DUPLICATE_WARNING = "Warning: This function has duplicate parameters."; // untranslated
+Blockly.Msg.PROCEDURES_HIGHLIGHT_DEF = "ক্রিয়ার সংজ্ঞা উজ্জল করুন";
+Blockly.Msg.PROCEDURES_IFRETURN_HELPURL = "http://c2.com/cgi/wiki?GuardClause"; // untranslated
+Blockly.Msg.PROCEDURES_IFRETURN_TOOLTIP = "যদি মান সত্য হয় তাহলে দ্বিতীয় মান পাঠাবে।";
+Blockly.Msg.PROCEDURES_IFRETURN_WARNING = "Warning: This block may be used only within a function definition."; // untranslated
+Blockly.Msg.PROCEDURES_MUTATORARG_TITLE = "ইনপুটের নাম:";
+Blockly.Msg.PROCEDURES_MUTATORARG_TOOLTIP = "ক্রিয়াতে একটি ইনপুট যোগ করুন।";
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TITLE = "inputs"; // untranslated
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TOOLTIP = "Add, remove, or reorder inputs to this function."; // untranslated
+Blockly.Msg.REDO = "পুনরায় করুন";
+Blockly.Msg.REMOVE_COMMENT = "মন্তব্য সরাও";
+Blockly.Msg.RENAME_VARIABLE = "চলকের নাম পরিবর্তন...";
+Blockly.Msg.RENAME_VARIABLE_TITLE = "Rename all '%1' variables to:"; // untranslated
+Blockly.Msg.TEXT_APPEND_APPENDTEXT = "append text"; // untranslated
+Blockly.Msg.TEXT_APPEND_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_APPEND_TO = "এতে";
+Blockly.Msg.TEXT_APPEND_TOOLTIP = "Append some text to variable '%1'."; // untranslated
+Blockly.Msg.TEXT_CHANGECASE_HELPURL = "https://github.com/google/blockly/wiki/Text#adjusting-text-case"; // untranslated
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_LOWERCASE = "ছোটহাতের অক্ষরে";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_TITLECASE = "to Title Case"; // untranslated
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_UPPERCASE = "বড়হাতের অক্ষরে";
+Blockly.Msg.TEXT_CHANGECASE_TOOLTIP = "Return a copy of the text in a different case."; // untranslated
+Blockly.Msg.TEXT_CHARAT_FIRST = "get first letter"; // untranslated
+Blockly.Msg.TEXT_CHARAT_FROM_END = "get letter # from end"; // untranslated
+Blockly.Msg.TEXT_CHARAT_FROM_START = "get letter #"; // untranslated
+Blockly.Msg.TEXT_CHARAT_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-text"; // untranslated
+Blockly.Msg.TEXT_CHARAT_INPUT_INTEXT = "in text"; // untranslated
+Blockly.Msg.TEXT_CHARAT_LAST = "get last letter"; // untranslated
+Blockly.Msg.TEXT_CHARAT_RANDOM = "get random letter"; // untranslated
+Blockly.Msg.TEXT_CHARAT_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_CHARAT_TOOLTIP = "Returns the letter at the specified position."; // untranslated
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TOOLTIP = "লেখাটিতে একটি পদ যোগ করুন।";
+Blockly.Msg.TEXT_CREATE_JOIN_TITLE_JOIN = "যোগ";
+Blockly.Msg.TEXT_CREATE_JOIN_TOOLTIP = "Add, remove, or reorder sections to reconfigure this text block."; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_END = "to letter # from end"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_START = "to letter #"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_END_LAST = "to last letter"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_INPUT_IN_TEXT = "in text"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FIRST = "get substring from first letter"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_END = "get substring from letter # from end"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_START = "get substring from letter #"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_TOOLTIP = "Returns a specified portion of the text."; // untranslated
+Blockly.Msg.TEXT_INDEXOF_HELPURL = "https://github.com/google/blockly/wiki/Text#finding-text"; // untranslated
+Blockly.Msg.TEXT_INDEXOF_INPUT_INTEXT = "in text"; // untranslated
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_FIRST = "find first occurrence of text"; // untranslated
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_LAST = "find last occurrence of text"; // untranslated
+Blockly.Msg.TEXT_INDEXOF_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_INDEXOF_TOOLTIP = "Returns the index of the first/last occurrence of the first text in the second text. Returns %1 if text is not found."; // untranslated
+Blockly.Msg.TEXT_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Text#checking-for-empty-text"; // untranslated
+Blockly.Msg.TEXT_ISEMPTY_TITLE = "%1 খালি";
+Blockly.Msg.TEXT_ISEMPTY_TOOLTIP = "পাঠাবে সত্য যদি সরবরাহকৃত লেখাটি খালি হয়।";
+Blockly.Msg.TEXT_JOIN_HELPURL = "https://github.com/google/blockly/wiki/Text#text-creation"; // untranslated
+Blockly.Msg.TEXT_JOIN_TITLE_CREATEWITH = "create text with"; // untranslated
+Blockly.Msg.TEXT_JOIN_TOOLTIP = "Create a piece of text by joining together any number of items."; // untranslated
+Blockly.Msg.TEXT_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_LENGTH_TITLE = "%1-এর দৈর্ঘ্য";
+Blockly.Msg.TEXT_LENGTH_TOOLTIP = "Returns the number of letters (including spaces) in the provided text."; // untranslated
+Blockly.Msg.TEXT_PRINT_HELPURL = "https://github.com/google/blockly/wiki/Text#printing-text"; // untranslated
+Blockly.Msg.TEXT_PRINT_TITLE = "%1 মুদ্রণ করুন";
+Blockly.Msg.TEXT_PRINT_TOOLTIP = "Print the specified text, number or other value."; // untranslated
+Blockly.Msg.TEXT_PROMPT_HELPURL = "https://github.com/google/blockly/wiki/Text#getting-input-from-the-user"; // untranslated
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_NUMBER = "Prompt for user for a number."; // untranslated
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_TEXT = "Prompt for user for some text."; // untranslated
+Blockly.Msg.TEXT_PROMPT_TYPE_NUMBER = "prompt for number with message"; // untranslated
+Blockly.Msg.TEXT_PROMPT_TYPE_TEXT = "prompt for text with message"; // untranslated
+Blockly.Msg.TEXT_TEXT_HELPURL = "https://en.wikipedia.org/wiki/String_(computer_science)"; // untranslated
+Blockly.Msg.TEXT_TEXT_TOOLTIP = "একটি অক্ষর, শব্দ অথবা বাক্য।";
+Blockly.Msg.TEXT_TRIM_HELPURL = "https://github.com/google/blockly/wiki/Text#trimming-removing-spaces"; // untranslated
+Blockly.Msg.TEXT_TRIM_OPERATOR_BOTH = "উভয় পাশ থেকে খালি অংশ ছাটাই";
+Blockly.Msg.TEXT_TRIM_OPERATOR_LEFT = "বামপাশ থেকে খালি অংশ ছাটাই";
+Blockly.Msg.TEXT_TRIM_OPERATOR_RIGHT = "ডানপাশ থেকে খালি অংশ ছাটাই";
+Blockly.Msg.TEXT_TRIM_TOOLTIP = "Return a copy of the text with spaces removed from one or both ends."; // untranslated
+Blockly.Msg.TODAY = "আজ";
+Blockly.Msg.UNDO = "পূর্বাবস্থা";
+Blockly.Msg.VARIABLES_DEFAULT_NAME = "পদ";
+Blockly.Msg.VARIABLES_GET_CREATE_SET = "Create 'set %1'"; // untranslated
+Blockly.Msg.VARIABLES_GET_HELPURL = "https://github.com/google/blockly/wiki/Variables#get"; // untranslated
+Blockly.Msg.VARIABLES_GET_TOOLTIP = "Returns the value of this variable."; // untranslated
+Blockly.Msg.VARIABLES_SET = "set %1 to %2"; // untranslated
+Blockly.Msg.VARIABLES_SET_CREATE_GET = "'%1 নিন' তৈরি করুন";
+Blockly.Msg.VARIABLES_SET_HELPURL = "https://github.com/google/blockly/wiki/Variables#set"; // untranslated
+Blockly.Msg.VARIABLES_SET_TOOLTIP = "Sets this variable to be equal to the input."; // untranslated
+Blockly.Msg.VARIABLE_ALREADY_EXISTS = "A variable named '%1' already exists."; // untranslated
+Blockly.Msg.PROCEDURES_DEFRETURN_TITLE = Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE;
+Blockly.Msg.CONTROLS_IF_IF_TITLE_IF = Blockly.Msg.CONTROLS_IF_MSG_IF;
+Blockly.Msg.CONTROLS_WHILEUNTIL_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_MSG_THEN = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_ELSE_TITLE_ELSE = Blockly.Msg.CONTROLS_IF_MSG_ELSE;
+Blockly.Msg.PROCEDURES_DEFRETURN_PROCEDURE = Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE;
+Blockly.Msg.LISTS_GET_SUBLIST_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.LISTS_GET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.PROCEDURES_DEFRETURN_DO = Blockly.Msg.PROCEDURES_DEFNORETURN_DO;
+Blockly.Msg.CONTROLS_IF_ELSEIF_TITLE_ELSEIF = Blockly.Msg.CONTROLS_IF_MSG_ELSEIF;
+Blockly.Msg.LISTS_GET_INDEX_HELPURL = Blockly.Msg.LISTS_INDEX_OF_HELPURL;
+Blockly.Msg.CONTROLS_FOREACH_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_SET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TITLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_APPEND_VARIABLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.LISTS_INDEX_OF_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.PROCEDURES_DEFRETURN_COMMENT = Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT; \ No newline at end of file
diff --git a/blockly/msg/js/br.js b/blockly/msg/js/br.js
new file mode 100644
index 0000000..00a952a
--- /dev/null
+++ b/blockly/msg/js/br.js
@@ -0,0 +1,391 @@
+// This file was automatically generated. Do not modify.
+
+'use strict';
+
+goog.provide('Blockly.Msg.br');
+
+goog.require('Blockly.Msg');
+
+Blockly.Msg.ADD_COMMENT = "Ouzhpennañ un evezhiadenn";
+Blockly.Msg.CHANGE_VALUE_TITLE = "Kemmañ an dalvoudenn :";
+Blockly.Msg.CLEAN_UP = "Naetaat ar bloc'hoù";
+Blockly.Msg.COLLAPSE_ALL = "Bihanaat ar bloc'hoù";
+Blockly.Msg.COLLAPSE_BLOCK = "Bihanaat ar bloc'h";
+Blockly.Msg.COLOUR_BLEND_COLOUR1 = "liv 1";
+Blockly.Msg.COLOUR_BLEND_COLOUR2 = "liv 2";
+Blockly.Msg.COLOUR_BLEND_HELPURL = "http://meyerweb.com/eric/tools/color-blend/"; // untranslated
+Blockly.Msg.COLOUR_BLEND_RATIO = "feur";
+Blockly.Msg.COLOUR_BLEND_TITLE = "meskañ";
+Blockly.Msg.COLOUR_BLEND_TOOLTIP = "a gemmesk daou liv gant ur feur roet(0.0 - 1.0).";
+Blockly.Msg.COLOUR_PICKER_HELPURL = "http://br.wikipedia.org/wiki/Liv";
+Blockly.Msg.COLOUR_PICKER_TOOLTIP = "Dibab ul liv diwar al livaoueg.";
+Blockly.Msg.COLOUR_RANDOM_HELPURL = "http://randomcolour.com"; // untranslated
+Blockly.Msg.COLOUR_RANDOM_TITLE = "liv dargouezhek";
+Blockly.Msg.COLOUR_RANDOM_TOOLTIP = "Tennañ ul liv d'ar sord";
+Blockly.Msg.COLOUR_RGB_BLUE = "glas";
+Blockly.Msg.COLOUR_RGB_GREEN = "gwer";
+Blockly.Msg.COLOUR_RGB_HELPURL = "http://www.december.com/html/spec/colorper.html"; // untranslated
+Blockly.Msg.COLOUR_RGB_RED = "ruz";
+Blockly.Msg.COLOUR_RGB_TITLE = "liv gant";
+Blockly.Msg.COLOUR_RGB_TOOLTIP = "Krouiñ ul liv gant ar c'hementad spisaet a ruz, a wer hag a c'hlas. Etre 0 ha 100 e tle bezañ an holl dalvoudoù.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_HELPURL = "https://github.com/google/blockly/wiki/Loops#loop-termination-blocks"; // untranslated
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK = "Mont e-maez an adlañsañ";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE = "Kenderc'hel gant iteradur nevez ar rodell";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK = "Mont e-maez ar boukl engronnus.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE = "Lammat ar rest eus ar rodell, ha kenderc'hel gant an iteradur war-lerc'h.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_WARNING = "Diwallit : ne c'hall ar bloc'h-mañ bezañ implijet nemet e-barzh ur boukl.";
+Blockly.Msg.CONTROLS_FOREACH_HELPURL = "https://github.com/google/blockly/wiki/Loops#for-each"; // untranslated
+Blockly.Msg.CONTROLS_FOREACH_TITLE = "evit pep elfenn %1 er roll %2";
+Blockly.Msg.CONTROLS_FOREACH_TOOLTIP = "Evit pep elfenn en ur roll, reiñ talvoud an elfenn d'an argemmenn '%1', ha seveniñ urzhioù zo da c'houde.";
+Blockly.Msg.CONTROLS_FOR_HELPURL = "https://github.com/google/blockly/wiki/Loops#count-with"; // untranslated
+Blockly.Msg.CONTROLS_FOR_TITLE = "kontañ gant %1 eus %2 da %3 dre %4";
+Blockly.Msg.CONTROLS_FOR_TOOLTIP = "Ober e doare ma kemero an argemmenn \"%1\" an talvoudennoù adalek niverenn an deroù betek niverenn an dibenn, en ur inkremantiñ an esaouenn, ha seveniñ an urzhioù spisaet.";
+Blockly.Msg.CONTROLS_IF_ELSEIF_TOOLTIP = "Ouzhpennañ un amplegad d'ar bloc'h ma.";
+Blockly.Msg.CONTROLS_IF_ELSE_TOOLTIP = "Ouzhpennañ un amplegad dibenn lak-pep-tra d'ar bloc'h ma.";
+Blockly.Msg.CONTROLS_IF_HELPURL = "https://github.com/google/blockly/wiki/IfElse"; // untranslated
+Blockly.Msg.CONTROLS_IF_IF_TOOLTIP = "Ouzhpennañ, lemel pe adurzhiañ ar rannoù evit kefluniañ ar bloc'h ma.";
+Blockly.Msg.CONTROLS_IF_MSG_ELSE = "a-hend-all";
+Blockly.Msg.CONTROLS_IF_MSG_ELSEIF = "mod all ma";
+Blockly.Msg.CONTROLS_IF_MSG_IF = "ma";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_1 = "Ma vez gwir un dalvoudenn, seveniñ urzhioù zo neuze.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_2 = "Ma vez gwir un dalvoudenn, seveniñ ar c'henañ bloc'had urzhioù neuze. Anez seveniñ an eil bloc'had urzhioù.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_3 = "Ma vez gwir an dalvoudenn gentañ, seveniñ ar c'hentañ bloc'had urzhioù neuze. Anez ma vez gwir an eil talvoudenn, seveniñ an eil bloc'had urzhioù.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_4 = "Ma vez gwir an dalvoudenn gentañ, seveniñ ar c'hentañ bloc'had. Anez, ma vez gwir an eil talvoudenn, seveniñ an eil bloc'had urzhioù. Ma ne vez gwir talvoudenn ebet, seveniñ ar bloc'had diwezhañ a urzhioù.";
+Blockly.Msg.CONTROLS_REPEAT_HELPURL = "https://en.wikipedia.org/wiki/For_loop";
+Blockly.Msg.CONTROLS_REPEAT_INPUT_DO = "ober";
+Blockly.Msg.CONTROLS_REPEAT_TITLE = "adober %1 gwech";
+Blockly.Msg.CONTROLS_REPEAT_TOOLTIP = "Seveniñ urzhioù zo meur a wech";
+Blockly.Msg.CONTROLS_WHILEUNTIL_HELPURL = "https://github.com/google/blockly/wiki/Loops#repeat"; // untranslated
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "adober betek";
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "adober keit ha ma";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "Keit ha ma vez faos un dalvoudenn,seveniñ urzhioù zo neuze.";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "Keit ha ma vez gwir un dalvoudenn, seveniñ urzhioù zo neuze.";
+Blockly.Msg.DELETE_ALL_BLOCKS = "Diverkañ an holl vloc'hoù %1 ?";
+Blockly.Msg.DELETE_BLOCK = "Dilemel ar bloc'h";
+Blockly.Msg.DELETE_VARIABLE = "Lemel an argemm '%1'";
+Blockly.Msg.DELETE_VARIABLE_CONFIRMATION = "Lemel %1 implij eus an argemm '%2' ?";
+Blockly.Msg.DELETE_X_BLOCKS = "Dilemel %1 bloc'h";
+Blockly.Msg.DISABLE_BLOCK = "Diweredekaat ar bloc'h";
+Blockly.Msg.DUPLICATE_BLOCK = "Eiladuriñ";
+Blockly.Msg.ENABLE_BLOCK = "Gweredekaat ar bloc'h";
+Blockly.Msg.EXPAND_ALL = "Astenn ar bloc'hoù";
+Blockly.Msg.EXPAND_BLOCK = "Astenn ar bloc'h";
+Blockly.Msg.EXTERNAL_INPUTS = "Monedoù diavaez";
+Blockly.Msg.HELP = "Skoazell";
+Blockly.Msg.INLINE_INPUTS = "Monedoù enlinenn";
+Blockly.Msg.LISTS_CREATE_EMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-empty-list"; // untranslated
+Blockly.Msg.LISTS_CREATE_EMPTY_TITLE = "krouiñ ur roll goullo";
+Blockly.Msg.LISTS_CREATE_EMPTY_TOOLTIP = "Distreiñ ul listenn, 0 a hirder, n'eus enrolladenn ebet enni";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TITLE_ADD = "roll";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TOOLTIP = "Ouzhpennañ, lemel pe adurzhiañ ar rannoù evit kefluniañ ar bloc'h listenn-mañ.";
+Blockly.Msg.LISTS_CREATE_WITH_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with";
+Blockly.Msg.LISTS_CREATE_WITH_INPUT_WITH = "krouiñ ur roll gant";
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TOOLTIP = "Ouzhpennañ un elfenn d'ar roll";
+Blockly.Msg.LISTS_CREATE_WITH_TOOLTIP = "Krouiñ ur roll gant un niver bennak a elfennoù.";
+Blockly.Msg.LISTS_GET_INDEX_FIRST = "kentañ";
+Blockly.Msg.LISTS_GET_INDEX_FROM_END = "# adalek ar fin";
+Blockly.Msg.LISTS_GET_INDEX_FROM_START = "#"; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_GET = "tapout";
+Blockly.Msg.LISTS_GET_INDEX_GET_REMOVE = "tapout ha lemel";
+Blockly.Msg.LISTS_GET_INDEX_LAST = "diwezhañ";
+Blockly.Msg.LISTS_GET_INDEX_RANDOM = "dre zegouezh";
+Blockly.Msg.LISTS_GET_INDEX_REMOVE = "lemel";
+Blockly.Msg.LISTS_GET_INDEX_TAIL = ""; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FIRST = "Distreiñ an elfenn gentañ en ul listenn.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FROM = "Distreiñ an elfenn el lec'h meneget en ul listenn.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_LAST = "Distreiñ un elfenn diwezhañ en ul listenn.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_RANDOM = "Distreiñ un elfenn dre zegouezh en ul listenn.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST = "Lemel ha distreiñ a ra an elfenn gentañ en ul listenn.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM = "Lemel ha distreiñ a ra an elfenn el lec'h meneget en ul listenn.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST = "Lemel ha distreiñ a ra an elfenn diwezhañ en ul listenn.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM = "Lemel ha distreiñ a ra an elfenn dre zegouezh en ul listenn.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST = "Lemel a ra an elfenn gentañ en ul listenn.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM = "Lemel a ra an elfenn el lec'h meneget en ul listenn.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST = "Distreiñ a ra an elfenn diwezhañ en ul listenn.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM = "Lemel a ra un elfenn dre zegouezh en ul listenn.";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_END = "betek # adalek an dibenn";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_START = "da #";
+Blockly.Msg.LISTS_GET_SUBLIST_END_LAST = "betek ar fin";
+Blockly.Msg.LISTS_GET_SUBLIST_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-a-sublist"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_START_FIRST = "Kaout an islistenn adalek an deroù";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_END = "Kaout an islistenn adalek # adalek an dibenn";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_START = "Kaout an islistenn adalek #";
+Blockly.Msg.LISTS_GET_SUBLIST_TAIL = ""; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_TOOLTIP = "Krouiñ un eilad eus lodenn spisaet ul listenn.";
+Blockly.Msg.LISTS_INDEX_FROM_END_TOOLTIP = "%1 eo an elfenn gentañ.";
+Blockly.Msg.LISTS_INDEX_FROM_START_TOOLTIP = "%1 eo an elfenn gentañ.";
+Blockly.Msg.LISTS_INDEX_OF_FIRST = "kavout reveziadenn gentañ un elfenn";
+Blockly.Msg.LISTS_INDEX_OF_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-items-from-a-list"; // untranslated
+Blockly.Msg.LISTS_INDEX_OF_LAST = "kavout reveziadenn diwezhañ un elfenn";
+Blockly.Msg.LISTS_INDEX_OF_TOOLTIP = "Distreiñ meneger ar c'hentañ/an eil reveziadenn eus an elfenn en ul listenn. Distreiñ %1 ma n'eo ket kavet an destenn.";
+Blockly.Msg.LISTS_INLIST = "el listenn";
+Blockly.Msg.LISTS_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#is-empty"; // untranslated
+Blockly.Msg.LISTS_ISEMPTY_TITLE = "%1 zo goullo";
+Blockly.Msg.LISTS_ISEMPTY_TOOLTIP = "Distreiñ gwir m'eo goullo al listenn.";
+Blockly.Msg.LISTS_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Lists#length-of"; // untranslated
+Blockly.Msg.LISTS_LENGTH_TITLE = "hirder %1";
+Blockly.Msg.LISTS_LENGTH_TOOLTIP = "Distreiñ hirder ul listenn.";
+Blockly.Msg.LISTS_REPEAT_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
+Blockly.Msg.LISTS_REPEAT_TITLE = "Krouiñ ul listenn gant an elfenn %1 arreet div wech";
+Blockly.Msg.LISTS_REPEAT_TOOLTIP = "Krouiñ ul listenn a c'hoarvez eus an dalvoudenn roet arreet an niver a wech meneget";
+Blockly.Msg.LISTS_SET_INDEX_HELPURL = "https://github.com/google/blockly/wiki/Lists#in-list--set"; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_INPUT_TO = "evel";
+Blockly.Msg.LISTS_SET_INDEX_INSERT = "ensoc'hañ evel";
+Blockly.Msg.LISTS_SET_INDEX_SET = "termenañ";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST = "Ensoc'hañ a ra an elfenn e deroù ul listenn.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FROM = "Ensoc'hañ a ra an elfenn el lec'h meneget en ul listenn.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_LAST = "Ouzhpennañ a ra an elfenn e fin al listenn.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM = "Ensoc'hañ a ra an elfenn dre zegouezh en ul listenn.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FIRST = "Termenañ a ra an elfenn gentañ en ul listenn.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FROM = "Termenañ a ra an elfenn el lec'h meneget en ul listenn.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_LAST = "Termenañ a ra an elfenn diwezhañ en ul listenn.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_RANDOM = "Termenañ a ra un elfenn dre zegouezh en ul listenn.";
+Blockly.Msg.LISTS_SORT_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with";
+Blockly.Msg.LISTS_SORT_ORDER_ASCENDING = "war gresk";
+Blockly.Msg.LISTS_SORT_ORDER_DESCENDING = "war zigresk";
+Blockly.Msg.LISTS_SORT_TITLE = "Rummañ%1,%2,%3";
+Blockly.Msg.LISTS_SORT_TOOLTIP = "Rummañ un eilenn eus ar roll";
+Blockly.Msg.LISTS_SORT_TYPE_IGNORECASE = "Dre urzh al lizherenneg, hep derc'hel kont eus an direnneg";
+Blockly.Msg.LISTS_SORT_TYPE_NUMERIC = "niverel";
+Blockly.Msg.LISTS_SORT_TYPE_TEXT = "Dre urzh al lizherenneg";
+Blockly.Msg.LISTS_SPLIT_HELPURL = "https://github.com/google/blockly/wiki/Lists#splitting-strings-and-joining-lists";
+Blockly.Msg.LISTS_SPLIT_LIST_FROM_TEXT = "Krouiñ ul listenn diwar an destenn";
+Blockly.Msg.LISTS_SPLIT_TEXT_FROM_LIST = "Krouiñ un destenn diwar al listenn";
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_JOIN = "Bodañ ul listennad testennoù en ul listenn hepken, o tispartiañ anezho gant un dispartier.";
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_SPLIT = "Troc'hañ un destenn en ul listennad testennoù, o troc'hañ e pep dispartier.";
+Blockly.Msg.LISTS_SPLIT_WITH_DELIMITER = "gant an dispartier";
+Blockly.Msg.LOGIC_BOOLEAN_FALSE = "gaou";
+Blockly.Msg.LOGIC_BOOLEAN_HELPURL = "https://github.com/google/blockly/wiki/Logic#values"; // untranslated
+Blockly.Msg.LOGIC_BOOLEAN_TOOLTIP = "Distreiñ pe gwir pe faos";
+Blockly.Msg.LOGIC_BOOLEAN_TRUE = "gwir";
+Blockly.Msg.LOGIC_COMPARE_HELPURL = "https://en.wikipedia.org/wiki/Inequality_(mathematics)";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_EQ = "Distreiñ gwir m'eo par an daou voned.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GT = "Distreiñ gwir m'eo brasoc'h ar moned kentañ eget an eil.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GTE = "Distreiñ gwir m'eo brasoc'h ar moned kentañ eget an eil pe par dezhañ.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LT = "Distreiñ gwir m'eo bihanoc'h ar moned kentañ eget an eil.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LTE = "Distreiñ gwir m'eo bihanoc'h ar moned kentañ eget an eil pe m'eo par dezhañ.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_NEQ = "Distreiñ gwir ma n'eo ket par an daou voned.";
+Blockly.Msg.LOGIC_NEGATE_HELPURL = "https://github.com/google/blockly/wiki/Logic#not"; // untranslated
+Blockly.Msg.LOGIC_NEGATE_TITLE = "nann %1";
+Blockly.Msg.LOGIC_NEGATE_TOOLTIP = "Distreiñ gwir m'eo faos ar moned. Distreiñ faos m'eo gwir ar moned.";
+Blockly.Msg.LOGIC_NULL = "Null";
+Blockly.Msg.LOGIC_NULL_HELPURL = "https://en.wikipedia.org/wiki/Nullable_type"; // untranslated
+Blockly.Msg.LOGIC_NULL_TOOLTIP = "Distreiñ null.";
+Blockly.Msg.LOGIC_OPERATION_AND = "ha(g)";
+Blockly.Msg.LOGIC_OPERATION_HELPURL = "https://github.com/google/blockly/wiki/Logic#logical-operations"; // untranslated
+Blockly.Msg.LOGIC_OPERATION_OR = "pe";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_AND = "Distreiñ gwir m'eo gwir an da daou voned.";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_OR = "Distreiñ gwir m'eo gwir unan eus an daou voned da nebeutañ.";
+Blockly.Msg.LOGIC_TERNARY_CONDITION = "amprouad";
+Blockly.Msg.LOGIC_TERNARY_HELPURL = "https://en.wikipedia.org/wiki/%3F:"; // untranslated
+Blockly.Msg.LOGIC_TERNARY_IF_FALSE = "m'eo gaou";
+Blockly.Msg.LOGIC_TERNARY_IF_TRUE = "m'eo gwir";
+Blockly.Msg.LOGIC_TERNARY_TOOLTIP = "Gwiriañ an amplegad e 'prouad'. M'eo gwir an amplegad, distreiñ an dalvoudenn 'm'eo gwir'; anez distreiñ ar moned 'm'eo faos'.";
+Blockly.Msg.MATH_ADDITION_SYMBOL = "+"; // untranslated
+Blockly.Msg.MATH_ARITHMETIC_HELPURL = "https://br.wikipedia.org/wiki/Aritmetik";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_ADD = "Distreiñ sammad daou niver.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE = "Distreiñ rannad daou niver.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MINUS = "Distreiñ diforc'h daou niver";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MULTIPLY = "Distreiñ liesad daou niver.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_POWER = "Distreiñ an niver kentañ lakaet dindan gallouter an eil niver.";
+Blockly.Msg.MATH_CHANGE_HELPURL = "https://en.wikipedia.org/wiki/Programming_idiom#Incrementing_a_counter";
+Blockly.Msg.MATH_CHANGE_TITLE = "kemmañ %1 gant %2";
+Blockly.Msg.MATH_CHANGE_TOOLTIP = "Ouzhpennañ un niver d'an argemm '%1'.";
+Blockly.Msg.MATH_CONSTANT_HELPURL = "https://en.wikipedia.org/wiki/Mathematical_constant";
+Blockly.Msg.MATH_CONSTANT_TOOLTIP = "Distreiñ unan eus digemmennoù red : π (3.141…), e (2.718…), φ (1.618…), sqrt(2) (1.414…), sqrt(½) (0.707…), or ∞ (anvevenn).";
+Blockly.Msg.MATH_CONSTRAIN_HELPURL = "https://en.wikipedia.org/wiki/Clamping_%28graphics%29"; // untranslated
+Blockly.Msg.MATH_CONSTRAIN_TITLE = "destrizhañ %1 etre %2 ha %3";
+Blockly.Msg.MATH_CONSTRAIN_TOOLTIP = "Destrizhañ un niver da vezañ etre ar bevennoù spisaet (enlakaet)";
+Blockly.Msg.MATH_DIVISION_SYMBOL = "÷"; // untranslated
+Blockly.Msg.MATH_IS_DIVISIBLE_BY = "a zo rannadus dre";
+Blockly.Msg.MATH_IS_EVEN = "zo par";
+Blockly.Msg.MATH_IS_NEGATIVE = "a zo negativel";
+Blockly.Msg.MATH_IS_ODD = "zo ampar";
+Blockly.Msg.MATH_IS_POSITIVE = "a zo pozitivel";
+Blockly.Msg.MATH_IS_PRIME = "zo kentañ";
+Blockly.Msg.MATH_IS_TOOLTIP = "Gwiriañ m'eo par, anpar, kentañ, muiel, leiel un niverenn pe ma c'haller rannañ anezhi dre un niver roet zo. Distreiñ gwir pe faos.";
+Blockly.Msg.MATH_IS_WHOLE = "zo anterin";
+Blockly.Msg.MATH_MODULO_HELPURL = "https://en.wikipedia.org/wiki/Modulo_operation";
+Blockly.Msg.MATH_MODULO_TITLE = "rest eus %1 ÷ %2";
+Blockly.Msg.MATH_MODULO_TOOLTIP = "Distreiñ dilerc'h rannadur an div niver";
+Blockly.Msg.MATH_MULTIPLICATION_SYMBOL = "×"; // untranslated
+Blockly.Msg.MATH_NUMBER_HELPURL = "https://br.wikipedia.org/wiki/Niver";
+Blockly.Msg.MATH_NUMBER_TOOLTIP = "Un niver.";
+Blockly.Msg.MATH_ONLIST_HELPURL = ""; // untranslated
+Blockly.Msg.MATH_ONLIST_OPERATOR_AVERAGE = "Keitat al listenn";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MAX = "Uc'hegenn al listenn";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MEDIAN = "Kreizad al listenn";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MIN = "Izegenn al listenn";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MODE = "modoù stankañ el listenn";
+Blockly.Msg.MATH_ONLIST_OPERATOR_RANDOM = "Elfennn eus al listenn tennet d'ar sord";
+Blockly.Msg.MATH_ONLIST_OPERATOR_STD_DEV = "forc'had standart eus al listenn";
+Blockly.Msg.MATH_ONLIST_OPERATOR_SUM = "Sammad al listenn";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_AVERAGE = "Distreiñ keitad (niveroniel) an talvoudennoù niverel el listenn.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MAX = "Distreiñ an niver brasañ el listenn.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MEDIAN = "Distreiñ an niver kreiz el listenn";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MIN = "Distreiñ an niver bihanañ el listenn";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MODE = "Distreiñ ul listennad elfennoù stankoc'h el listenn.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_RANDOM = "Distreiñ un elfenn zargouezhek el listenn";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_STD_DEV = "Distreiñ forc'had standart al listenn.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_SUM = "Distreiñ sammad an holl niveroù zo el listenn.";
+Blockly.Msg.MATH_POWER_SYMBOL = "^"; // untranslated
+Blockly.Msg.MATH_RANDOM_FLOAT_HELPURL = "https://en.wikipedia.org/wiki/Random_number_generation";
+Blockly.Msg.MATH_RANDOM_FLOAT_TITLE_RANDOM = "Rann dargouezhek";
+Blockly.Msg.MATH_RANDOM_FLOAT_TOOLTIP = "Distreiñ ur rann dargouezhek etre 0.0 (enkaelat) hag 1.0 (ezkaelat).";
+Blockly.Msg.MATH_RANDOM_INT_HELPURL = "https://en.wikipedia.org/wiki/Random_number_generation";
+Blockly.Msg.MATH_RANDOM_INT_TITLE = "anterin dargouezhek etre %1 ha %2";
+Blockly.Msg.MATH_RANDOM_INT_TOOLTIP = "Distreiñ un anterin dargouezhek etre an div vevenn spisaet, endalc'het.";
+Blockly.Msg.MATH_ROUND_HELPURL = "https://en.wikipedia.org/wiki/Rounding";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUND = "Rontaat";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDDOWN = "Rontaat dindan";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDUP = "Rontaat a-us";
+Blockly.Msg.MATH_ROUND_TOOLTIP = "Rontaat un niver dindan pe a-us";
+Blockly.Msg.MATH_SINGLE_HELPURL = "https://br.wikipedia.org/wiki/Square_root";
+Blockly.Msg.MATH_SINGLE_OP_ABSOLUTE = "dizave";
+Blockly.Msg.MATH_SINGLE_OP_ROOT = "gwrizienn garrez";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ABS = "Distreiñ talvoud dizave un niver.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_EXP = "Distreiñ galloudad un niver.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LN = "Distreiñ logaritm naturel un niver";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LOG10 = "Distreiñ logaritm diazez 10 un niver";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_NEG = "Distreiñ enebad un niver";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_POW10 = "Distreiñ 10 da c'halloudad un niver.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ROOT = "Distreiñ gwrizienn garrez un niver";
+Blockly.Msg.MATH_SUBTRACTION_SYMBOL = "-"; // untranslated
+Blockly.Msg.MATH_TRIG_ACOS = "acos"; // untranslated
+Blockly.Msg.MATH_TRIG_ASIN = "asin"; // untranslated
+Blockly.Msg.MATH_TRIG_ATAN = "atan"; // untranslated
+Blockly.Msg.MATH_TRIG_COS = "cos"; // untranslated
+Blockly.Msg.MATH_TRIG_HELPURL = "https://br.wikipedia.org/wiki/Trigonometric_functions";
+Blockly.Msg.MATH_TRIG_SIN = "sin"; // untranslated
+Blockly.Msg.MATH_TRIG_TAN = "tan"; // untranslated
+Blockly.Msg.MATH_TRIG_TOOLTIP_ACOS = "Distreiñ ark kosinuz un niver";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ASIN = "Distreiñ ark sinuz un niver";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ATAN = "Distreiñ ark tangent un niver";
+Blockly.Msg.MATH_TRIG_TOOLTIP_COS = "Distreiñ kosinuz ur c'horn (ket e radianoù)";
+Blockly.Msg.MATH_TRIG_TOOLTIP_SIN = "Distreiñ sinuz ur c'horn (ket e radianoù)";
+Blockly.Msg.MATH_TRIG_TOOLTIP_TAN = "Distreiñ tangent ur c'horn (ket e radianoù).";
+Blockly.Msg.NEW_VARIABLE = "Krouiñ un argemm nevez...";
+Blockly.Msg.NEW_VARIABLE_TITLE = "Anv an argemmenn nevez :";
+Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; // untranslated
+Blockly.Msg.PROCEDURES_ALLOW_STATEMENTS = "aotren an disklêriadurioù";
+Blockly.Msg.PROCEDURES_BEFORE_PARAMS = "gant :";
+Blockly.Msg.PROCEDURES_CALLNORETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29";
+Blockly.Msg.PROCEDURES_CALLNORETURN_TOOLTIP = "Seveniñ an arc'hwel '%1' termenet gant an implijer.";
+Blockly.Msg.PROCEDURES_CALLRETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29";
+Blockly.Msg.PROCEDURES_CALLRETURN_TOOLTIP = "Seveniñ an arc'hwel '%1' termenet gant an implijer hag implijout e zisoc'h.";
+Blockly.Msg.PROCEDURES_CALL_BEFORE_PARAMS = "gant :";
+Blockly.Msg.PROCEDURES_CREATE_DO = "Krouiñ '%1'";
+Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT = "Deskrivañ an arc'hwel-mañ...";
+Blockly.Msg.PROCEDURES_DEFNORETURN_DO = ""; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE = "ober un dra bennak";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE = "da";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TOOLTIP = "Krouiñ un arc'hwel hep mont er-maez.";
+Blockly.Msg.PROCEDURES_DEFRETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_DEFRETURN_RETURN = "distreiñ";
+Blockly.Msg.PROCEDURES_DEFRETURN_TOOLTIP = "Kouiñ un arc'hwel gant ur mont er-maez";
+Blockly.Msg.PROCEDURES_DEF_DUPLICATE_WARNING = "Diwallit : an arc'hwel-mañ en deus arventennoù eiladet.";
+Blockly.Msg.PROCEDURES_HIGHLIGHT_DEF = "Dreislinennañ termenadur an arc'hwel";
+Blockly.Msg.PROCEDURES_IFRETURN_HELPURL = "http://c2.com/cgi/wiki?GuardClause"; // untranslated
+Blockly.Msg.PROCEDURES_IFRETURN_TOOLTIP = "Ma'z eo gwir un dalvoudenn, distreiñ un eil talvoudenn neuze.";
+Blockly.Msg.PROCEDURES_IFRETURN_WARNING = "Diwallit : Gallout a rafe ar bloc'h bezañ implijet e termenadur un arc'hwel hepken.";
+Blockly.Msg.PROCEDURES_MUTATORARG_TITLE = "Anv ar moned";
+Blockly.Msg.PROCEDURES_MUTATORARG_TOOLTIP = "Ouzhpennañ ur moned d'an arc'hwel.";
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TITLE = "Monedoù";
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TOOLTIP = "Ouzhpennañ, lemel, pe adkempenn monedoù an arc'hwel-mañ.";
+Blockly.Msg.REDO = "Adober";
+Blockly.Msg.REMOVE_COMMENT = "Lemel an evezhiadenn kuit";
+Blockly.Msg.RENAME_VARIABLE = "Adenvel an argemmenn...";
+Blockly.Msg.RENAME_VARIABLE_TITLE = "Adenvel an holl argemmennoù '%1' e :";
+Blockly.Msg.TEXT_APPEND_APPENDTEXT = "ouzhpennañ an destenn";
+Blockly.Msg.TEXT_APPEND_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_APPEND_TO = "da";
+Blockly.Msg.TEXT_APPEND_TOOLTIP = "Ouzhpennañ testenn d'an argemmenn'%1'.";
+Blockly.Msg.TEXT_CHANGECASE_HELPURL = "https://github.com/google/blockly/wiki/Text#adjusting-text-case"; // untranslated
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_LOWERCASE = "e lizherennoù bihan";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_TITLECASE = "Gant Ur Bennlizherenn E Deroù Pep Ger";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_UPPERCASE = "e PENNLIZHERENNOÙ";
+Blockly.Msg.TEXT_CHANGECASE_TOOLTIP = "Distreiñ un eilenn eus an eilenn en un direnneg all";
+Blockly.Msg.TEXT_CHARAT_FIRST = "tapout al lizherenn gentañ";
+Blockly.Msg.TEXT_CHARAT_FROM_END = "Kaout al lizherenn # adalek an dibenn.";
+Blockly.Msg.TEXT_CHARAT_FROM_START = "Kaout al lizherenn #";
+Blockly.Msg.TEXT_CHARAT_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-text"; // untranslated
+Blockly.Msg.TEXT_CHARAT_INPUT_INTEXT = "en destenn";
+Blockly.Msg.TEXT_CHARAT_LAST = "tapout al lizherenn ziwezhañ";
+Blockly.Msg.TEXT_CHARAT_RANDOM = "Kaout ul lizherenn dre zegouezh";
+Blockly.Msg.TEXT_CHARAT_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_CHARAT_TOOLTIP = "Distreiñ al lizherenn d'al lec'h spisaet.";
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TOOLTIP = "Ouzhpennañ un elfenn d'an destenn.";
+Blockly.Msg.TEXT_CREATE_JOIN_TITLE_JOIN = "stagañ";
+Blockly.Msg.TEXT_CREATE_JOIN_TOOLTIP = "Ouzhpennañ, lemel pe adurzhiañ ar rannoù evit kefluniañ ar bloc'h testenn-mañ.";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_END = "Betek al lizherenn # adalek an dibenn.";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_START = "betek al lizherenn #";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_LAST = "d'al lizherenn diwezhañ";
+Blockly.Msg.TEXT_GET_SUBSTRING_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_INPUT_IN_TEXT = "en destenn";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FIRST = "Kaout an ischadenn adalek al lizherenn gentañ";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_END = "Kaout an ischadenn adalek al lizherenn # betek an dibenn";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_START = "Kaout an ischadenn adalek al lizherenn #";
+Blockly.Msg.TEXT_GET_SUBSTRING_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_TOOLTIP = "Distreiñ un tamm spisaet eus an destenn.";
+Blockly.Msg.TEXT_INDEXOF_HELPURL = "https://github.com/google/blockly/wiki/Text#finding-text"; // untranslated
+Blockly.Msg.TEXT_INDEXOF_INPUT_INTEXT = "en destenn";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_FIRST = "kavout reveziadenn gentañ an destenn";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_LAST = "kavout reveziadenn diwezhañ an destenn";
+Blockly.Msg.TEXT_INDEXOF_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_INDEXOF_TOOLTIP = "Distreiñ meneger ar c'hentañ/an eil reveziadenn eus ar chadenn gentañ en eil chadenn. Distreiñ %1 ma n'eo ket kavet ar chadenn.";
+Blockly.Msg.TEXT_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Text#checking-for-empty-text"; // untranslated
+Blockly.Msg.TEXT_ISEMPTY_TITLE = "%1 zo goullo";
+Blockly.Msg.TEXT_ISEMPTY_TOOLTIP = "Adkas gwir m'eo goullo an destenn roet.";
+Blockly.Msg.TEXT_JOIN_HELPURL = "https://github.com/google/blockly/wiki/Text#text-creation"; // untranslated
+Blockly.Msg.TEXT_JOIN_TITLE_CREATEWITH = "krouiñ un destenn gant";
+Blockly.Msg.TEXT_JOIN_TOOLTIP = "Krouit un tamm testenn en ur gevelstrollañ un niver bennak a elfennoù";
+Blockly.Msg.TEXT_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_LENGTH_TITLE = "hirder %1";
+Blockly.Msg.TEXT_LENGTH_TOOLTIP = "Distreiñ an niver a lizherennoù(en ur gontañ an esaouennoù e-barzh) en destenn roet.";
+Blockly.Msg.TEXT_PRINT_HELPURL = "https://github.com/google/blockly/wiki/Text#printing-text"; // untranslated
+Blockly.Msg.TEXT_PRINT_TITLE = "moullañ %1";
+Blockly.Msg.TEXT_PRINT_TOOLTIP = "Moullañ an destenn, an niverenn pe un dalvoudenn spisaet all";
+Blockly.Msg.TEXT_PROMPT_HELPURL = "https://github.com/google/blockly/wiki/Text#getting-input-from-the-user"; // untranslated
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_NUMBER = "Goulenn un niver gant an implijer.";
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_TEXT = "Goulenn un destenn gant an implijer.";
+Blockly.Msg.TEXT_PROMPT_TYPE_NUMBER = "pedadenn evit un niver gant ur c'hemennad";
+Blockly.Msg.TEXT_PROMPT_TYPE_TEXT = "pedadenn evit un destenn gant ur c'hemennad";
+Blockly.Msg.TEXT_TEXT_HELPURL = "https://en.wikipedia.org/wiki/String_(computer_science)";
+Blockly.Msg.TEXT_TEXT_TOOLTIP = "Ul lizherenn, ur ger pe ul linennad testenn.";
+Blockly.Msg.TEXT_TRIM_HELPURL = "https://github.com/google/blockly/wiki/Text#trimming-removing-spaces"; // untranslated
+Blockly.Msg.TEXT_TRIM_OPERATOR_BOTH = "Lemel an esaouennoù en daou du";
+Blockly.Msg.TEXT_TRIM_OPERATOR_LEFT = "Lemel an esaouennoù eus an tu kleiz";
+Blockly.Msg.TEXT_TRIM_OPERATOR_RIGHT = "Lemel an esaouennoù eus an tu dehou";
+Blockly.Msg.TEXT_TRIM_TOOLTIP = "Distreiñ un eilenn eus an destenn gant an esaouennoù lamet eus un tu pe eus an daou du";
+Blockly.Msg.TODAY = "Hiziv";
+Blockly.Msg.UNDO = "Dizober";
+Blockly.Msg.VARIABLES_DEFAULT_NAME = "elfenn";
+Blockly.Msg.VARIABLES_GET_CREATE_SET = "Krouiñ 'termenañ %1'";
+Blockly.Msg.VARIABLES_GET_HELPURL = "https://github.com/google/blockly/wiki/Variables#get"; // untranslated
+Blockly.Msg.VARIABLES_GET_TOOLTIP = "Distreiñ talvoud an argemm-mañ.";
+Blockly.Msg.VARIABLES_SET = "termenañ %1 da %2";
+Blockly.Msg.VARIABLES_SET_CREATE_GET = "Krouiñ 'kaout %1'";
+Blockly.Msg.VARIABLES_SET_HELPURL = "https://github.com/google/blockly/wiki/Variables#set"; // untranslated
+Blockly.Msg.VARIABLES_SET_TOOLTIP = "Termenañ a ra argemm-mañ evit ma vo par da dalvoudenn ar moned.";
+Blockly.Msg.VARIABLE_ALREADY_EXISTS = "Un argemm anvet '%1' zo anezhañ dija.";
+Blockly.Msg.PROCEDURES_DEFRETURN_TITLE = Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE;
+Blockly.Msg.CONTROLS_IF_IF_TITLE_IF = Blockly.Msg.CONTROLS_IF_MSG_IF;
+Blockly.Msg.CONTROLS_WHILEUNTIL_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_MSG_THEN = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_ELSE_TITLE_ELSE = Blockly.Msg.CONTROLS_IF_MSG_ELSE;
+Blockly.Msg.PROCEDURES_DEFRETURN_PROCEDURE = Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE;
+Blockly.Msg.LISTS_GET_SUBLIST_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.LISTS_GET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.PROCEDURES_DEFRETURN_DO = Blockly.Msg.PROCEDURES_DEFNORETURN_DO;
+Blockly.Msg.CONTROLS_IF_ELSEIF_TITLE_ELSEIF = Blockly.Msg.CONTROLS_IF_MSG_ELSEIF;
+Blockly.Msg.LISTS_GET_INDEX_HELPURL = Blockly.Msg.LISTS_INDEX_OF_HELPURL;
+Blockly.Msg.CONTROLS_FOREACH_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_SET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TITLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_APPEND_VARIABLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.LISTS_INDEX_OF_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.PROCEDURES_DEFRETURN_COMMENT = Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT; \ No newline at end of file
diff --git a/blockly/msg/js/ca.js b/blockly/msg/js/ca.js
new file mode 100644
index 0000000..7bd6ef6
--- /dev/null
+++ b/blockly/msg/js/ca.js
@@ -0,0 +1,391 @@
+// This file was automatically generated. Do not modify.
+
+'use strict';
+
+goog.provide('Blockly.Msg.ca');
+
+goog.require('Blockly.Msg');
+
+Blockly.Msg.ADD_COMMENT = "Afegeix un comentari";
+Blockly.Msg.CHANGE_VALUE_TITLE = "Canvia valor:";
+Blockly.Msg.CLEAN_UP = "Clean up Blocks"; // untranslated
+Blockly.Msg.COLLAPSE_ALL = "Contraure blocs";
+Blockly.Msg.COLLAPSE_BLOCK = "Contraure bloc";
+Blockly.Msg.COLOUR_BLEND_COLOUR1 = "color 1";
+Blockly.Msg.COLOUR_BLEND_COLOUR2 = "color 2";
+Blockly.Msg.COLOUR_BLEND_HELPURL = "http://meyerweb.com/eric/tools/color-blend/"; // untranslated
+Blockly.Msg.COLOUR_BLEND_RATIO = "proporció";
+Blockly.Msg.COLOUR_BLEND_TITLE = "barreja";
+Blockly.Msg.COLOUR_BLEND_TOOLTIP = "Barreja dos colors amb una proporció donada (0,0 - 1,0).";
+Blockly.Msg.COLOUR_PICKER_HELPURL = "https://ca.wikipedia.org/wiki/Color";
+Blockly.Msg.COLOUR_PICKER_TOOLTIP = "Escolliu un color de la paleta.";
+Blockly.Msg.COLOUR_RANDOM_HELPURL = "http://randomcolour.com"; // untranslated
+Blockly.Msg.COLOUR_RANDOM_TITLE = "color aleatori";
+Blockly.Msg.COLOUR_RANDOM_TOOLTIP = "Escolliu un color a l'atzar.";
+Blockly.Msg.COLOUR_RGB_BLUE = "blau";
+Blockly.Msg.COLOUR_RGB_GREEN = "verd";
+Blockly.Msg.COLOUR_RGB_HELPURL = "http://www.december.com/html/spec/colorper.html"; // untranslated
+Blockly.Msg.COLOUR_RGB_RED = "vermell";
+Blockly.Msg.COLOUR_RGB_TITLE = "color amb";
+Blockly.Msg.COLOUR_RGB_TOOLTIP = "Crear un color amb les quantitats especificades de vermell, verd i blau. Tots els valors han de ser entre 0 i 100.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_HELPURL = "https://github.com/google/blockly/wiki/Loops#loop-termination-blocks"; // untranslated
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK = "sortir del bucle";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE = "continuar amb la següent iteració del bucle";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK = "Sortir del bucle interior.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE = "Ometre la resta d'aquest bucle, i continuar amb la següent iteració.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_WARNING = "Advertència: Aquest bloc només es pot utilitzar dins d'un bucle.";
+Blockly.Msg.CONTROLS_FOREACH_HELPURL = "https://github.com/google/blockly/wiki/Loops#for-each"; // untranslated
+Blockly.Msg.CONTROLS_FOREACH_TITLE = "per a cada element %1 en la llista %2";
+Blockly.Msg.CONTROLS_FOREACH_TOOLTIP = "Per a cada element en la llista, desar l'element dins la variable '%1', i llavors executar unes sentències.";
+Blockly.Msg.CONTROLS_FOR_HELPURL = "https://github.com/google/blockly/wiki/Loops#count-with"; // untranslated
+Blockly.Msg.CONTROLS_FOR_TITLE = "comptar amb %1 des de %2 fins a %3 en increments de %4";
+Blockly.Msg.CONTROLS_FOR_TOOLTIP = "Fer que la variable \"%1\" prengui els valors des del nombre inicial fins al nombre final, incrementant a cada pas l'interval indicat, i executar els blocs especificats.";
+Blockly.Msg.CONTROLS_IF_ELSEIF_TOOLTIP = "Afegeix una condició al bloc 'si'.";
+Blockly.Msg.CONTROLS_IF_ELSE_TOOLTIP = "Afegeix una condició final, que recull qualsevol altra possibilitat, al bloc 'si'.";
+Blockly.Msg.CONTROLS_IF_HELPURL = "https://github.com/google/blockly/wiki/IfElse"; // untranslated
+Blockly.Msg.CONTROLS_IF_IF_TOOLTIP = "Afegeix, esborra o reordena seccions per reconfigurar aquest bloc 'si'.";
+Blockly.Msg.CONTROLS_IF_MSG_ELSE = "si no";
+Blockly.Msg.CONTROLS_IF_MSG_ELSEIF = "si no, si";
+Blockly.Msg.CONTROLS_IF_MSG_IF = "si";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_1 = "Si un valor és cert, llavors executar unes sentències.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_2 = "Si un valor és cert, llavors executar el primer bloc de sentències. En cas contrari, executar el segon bloc de sentències.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_3 = "Si el primer valor és cert, llavors executar el primer bloc de sentències. En cas contrari, si el segon valor és cert, executar el segon bloc de sentències.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_4 = "Si el primer valor és cert, llavors executar el primer bloc de sentències. En cas contrari, si el segon valor és cert, executar el segon bloc de sentències. Si cap dels valors és cert, executar l'últim bloc de sentències.";
+Blockly.Msg.CONTROLS_REPEAT_HELPURL = "https://ca.wikipedia.org/wiki/Bucle_For";
+Blockly.Msg.CONTROLS_REPEAT_INPUT_DO = "fer";
+Blockly.Msg.CONTROLS_REPEAT_TITLE = "repetir %1 vegades";
+Blockly.Msg.CONTROLS_REPEAT_TOOLTIP = "Executar unes sentències diverses vegades.";
+Blockly.Msg.CONTROLS_WHILEUNTIL_HELPURL = "https://github.com/google/blockly/wiki/Loops#repeat"; // untranslated
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "repetir fins que";
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "repetir mentre";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "Mentre un valor sigui fals, llavors executar unes sentències.";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "Mentre un valor sigui cert, llavors executar unes sentències.";
+Blockly.Msg.DELETE_ALL_BLOCKS = "Esborrar els %1 blocs?";
+Blockly.Msg.DELETE_BLOCK = "Esborra bloc";
+Blockly.Msg.DELETE_VARIABLE = "Delete the '%1' variable"; // untranslated
+Blockly.Msg.DELETE_VARIABLE_CONFIRMATION = "Delete %1 uses of the '%2' variable?"; // untranslated
+Blockly.Msg.DELETE_X_BLOCKS = "Esborra %1 blocs";
+Blockly.Msg.DISABLE_BLOCK = "Desactiva bloc";
+Blockly.Msg.DUPLICATE_BLOCK = "Duplica";
+Blockly.Msg.ENABLE_BLOCK = "Activa bloc";
+Blockly.Msg.EXPAND_ALL = "Expandir blocs";
+Blockly.Msg.EXPAND_BLOCK = "Expandir bloc";
+Blockly.Msg.EXTERNAL_INPUTS = "Entrades externes";
+Blockly.Msg.HELP = "Ajuda";
+Blockly.Msg.INLINE_INPUTS = "Entrades en línia";
+Blockly.Msg.LISTS_CREATE_EMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-empty-list"; // untranslated
+Blockly.Msg.LISTS_CREATE_EMPTY_TITLE = "crear llista buida";
+Blockly.Msg.LISTS_CREATE_EMPTY_TOOLTIP = "Retorna una llista, de longitud 0, que no conté cap dada.";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TITLE_ADD = "llista";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TOOLTIP = "Afegeix, esborra o reordena seccions per reconfigurar aquest bloc de llista.";
+Blockly.Msg.LISTS_CREATE_WITH_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
+Blockly.Msg.LISTS_CREATE_WITH_INPUT_WITH = "crear llista amb";
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TOOLTIP = "Afegeix un element a la llista.";
+Blockly.Msg.LISTS_CREATE_WITH_TOOLTIP = "Crea una llista amb qualsevol nombre d'elements.";
+Blockly.Msg.LISTS_GET_INDEX_FIRST = "primer";
+Blockly.Msg.LISTS_GET_INDEX_FROM_END = "núm.# des del final";
+Blockly.Msg.LISTS_GET_INDEX_FROM_START = "#"; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_GET = "recupera";
+Blockly.Msg.LISTS_GET_INDEX_GET_REMOVE = "recupera i esborra";
+Blockly.Msg.LISTS_GET_INDEX_LAST = "últim";
+Blockly.Msg.LISTS_GET_INDEX_RANDOM = "a l'atzar";
+Blockly.Msg.LISTS_GET_INDEX_REMOVE = "esborra";
+Blockly.Msg.LISTS_GET_INDEX_TAIL = ""; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FIRST = "Retorna el primer element d'una llista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FROM = "Retorna l'element de la posició especificada a la llista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_LAST = "Retorna l'últim element d'una llista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_RANDOM = "Retorna un element a l'atzar d'una llista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST = "Esborra i retorna el primer element d'una llista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM = "Esborra i retorna l'element de la posició especificada de la llista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST = "Esborra i retorna l'últim element d'una llista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM = "Esborra i retorna un element a l'atzar d'una llista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST = "Esborra el primer element d'una llista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM = "Esborra l'element de la posició especificada de la llista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST = "Esborra l'últim element d'una llista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM = "Esborra un element a l'atzar d'una llista.";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_END = "fins # des del final";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_START = "fins #";
+Blockly.Msg.LISTS_GET_SUBLIST_END_LAST = "fins l'últim";
+Blockly.Msg.LISTS_GET_SUBLIST_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-a-sublist"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_START_FIRST = "recupera sub-llista des del principi";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_END = "recupera sub-llista des de # des del final";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_START = "recupera sub-llista des de #";
+Blockly.Msg.LISTS_GET_SUBLIST_TAIL = ""; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_TOOLTIP = "Crea una còpia de la part especificada d'una llista.";
+Blockly.Msg.LISTS_INDEX_FROM_END_TOOLTIP = "%1 és l'últim element.";
+Blockly.Msg.LISTS_INDEX_FROM_START_TOOLTIP = "%1 és el primer element.";
+Blockly.Msg.LISTS_INDEX_OF_FIRST = "buscar primera aparició d'un element";
+Blockly.Msg.LISTS_INDEX_OF_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-items-from-a-list"; // untranslated
+Blockly.Msg.LISTS_INDEX_OF_LAST = "buscar última aparició d'un element";
+Blockly.Msg.LISTS_INDEX_OF_TOOLTIP = "Retorna l'índex de la primera/última aparició d'un element a la llista. Retorna %1 si no s'hi troba el text.";
+Blockly.Msg.LISTS_INLIST = "en la llista";
+Blockly.Msg.LISTS_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#is-empty"; // untranslated
+Blockly.Msg.LISTS_ISEMPTY_TITLE = "%1 és buida";
+Blockly.Msg.LISTS_ISEMPTY_TOOLTIP = "Retorna cert si la llista és buida.";
+Blockly.Msg.LISTS_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Lists#length-of"; // untranslated
+Blockly.Msg.LISTS_LENGTH_TITLE = "longitud de %1";
+Blockly.Msg.LISTS_LENGTH_TOOLTIP = "Retorna la longitud d'una llista.";
+Blockly.Msg.LISTS_REPEAT_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
+Blockly.Msg.LISTS_REPEAT_TITLE = "crea llista amb element %1 repetit %2 vegades";
+Blockly.Msg.LISTS_REPEAT_TOOLTIP = "Crea una llista formada pel valor donat, repetit tantes vegades com s'indiqui.";
+Blockly.Msg.LISTS_SET_INDEX_HELPURL = "https://github.com/google/blockly/wiki/Lists#in-list--set"; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_INPUT_TO = "com";
+Blockly.Msg.LISTS_SET_INDEX_INSERT = "insereix a";
+Blockly.Msg.LISTS_SET_INDEX_SET = "modifica";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST = "Insereix l'element al principi d'una llista.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FROM = "Insereix l'element a la posició especificada d'una llista.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_LAST = "Afegeix l'element al final d'una llista.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM = "Insereix l'element en una posició a l'atzar d'una llista.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FIRST = "Modifica el primer element d'una llista.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FROM = "Modifica l'element de la posició especificada d'una llista.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_LAST = "Modifica l'últim element d'una llista.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_RANDOM = "Modifica un element a l'atzar d'una llista.";
+Blockly.Msg.LISTS_SORT_HELPURL = "https://github.com/google/blockly/wiki/Lists#sorting-a-list"; // untranslated
+Blockly.Msg.LISTS_SORT_ORDER_ASCENDING = "ascending"; // untranslated
+Blockly.Msg.LISTS_SORT_ORDER_DESCENDING = "descending"; // untranslated
+Blockly.Msg.LISTS_SORT_TITLE = "sort %1 %2 %3"; // untranslated
+Blockly.Msg.LISTS_SORT_TOOLTIP = "Sort a copy of a list."; // untranslated
+Blockly.Msg.LISTS_SORT_TYPE_IGNORECASE = "alphabetic, ignore case"; // untranslated
+Blockly.Msg.LISTS_SORT_TYPE_NUMERIC = "numeric"; // untranslated
+Blockly.Msg.LISTS_SORT_TYPE_TEXT = "alphabetic"; // untranslated
+Blockly.Msg.LISTS_SPLIT_HELPURL = "https://github.com/google/blockly/wiki/Lists#splitting-strings-and-joining-lists"; // untranslated
+Blockly.Msg.LISTS_SPLIT_LIST_FROM_TEXT = "make list from text"; // untranslated
+Blockly.Msg.LISTS_SPLIT_TEXT_FROM_LIST = "make text from list"; // untranslated
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_JOIN = "Join a list of texts into one text, separated by a delimiter."; // untranslated
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_SPLIT = "Split text into a list of texts, breaking at each delimiter."; // untranslated
+Blockly.Msg.LISTS_SPLIT_WITH_DELIMITER = "with delimiter"; // untranslated
+Blockly.Msg.LOGIC_BOOLEAN_FALSE = "fals";
+Blockly.Msg.LOGIC_BOOLEAN_HELPURL = "https://github.com/google/blockly/wiki/Logic#values"; // untranslated
+Blockly.Msg.LOGIC_BOOLEAN_TOOLTIP = "Retorna o bé cert o bé fals.";
+Blockly.Msg.LOGIC_BOOLEAN_TRUE = "cert";
+Blockly.Msg.LOGIC_COMPARE_HELPURL = "https://ca.wikipedia.org/wiki/Inequaci%C3%B3";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_EQ = "Retorna cert si totes dues entrades són iguals.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GT = "Retorna cert si la primera entrada és més gran que la segona entrada.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GTE = "Retorna cert si la primera entrada és més gran o igual a la segona entrada.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LT = "Retorna cert si la primera entrada és més petita que la segona entrada.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LTE = "Retorna cert si la primera entra és més petita o igual a la segona entrada.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_NEQ = "Retorna cert si totes dues entrades són diferents.";
+Blockly.Msg.LOGIC_NEGATE_HELPURL = "https://github.com/google/blockly/wiki/Logic#not"; // untranslated
+Blockly.Msg.LOGIC_NEGATE_TITLE = "no %1";
+Blockly.Msg.LOGIC_NEGATE_TOOLTIP = "Retorna cert si l'entrada és falsa. Retorna fals si l'entrada és certa.";
+Blockly.Msg.LOGIC_NULL = "nul";
+Blockly.Msg.LOGIC_NULL_HELPURL = "https://en.wikipedia.org/wiki/Nullable_type"; // untranslated
+Blockly.Msg.LOGIC_NULL_TOOLTIP = "Retorna nul.";
+Blockly.Msg.LOGIC_OPERATION_AND = "i";
+Blockly.Msg.LOGIC_OPERATION_HELPURL = "https://github.com/google/blockly/wiki/Logic#logical-operations"; // untranslated
+Blockly.Msg.LOGIC_OPERATION_OR = "o";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_AND = "Retorna cer si totes dues entrades són certes.";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_OR = "Retorna cert si almenys una de les entrades és certa.";
+Blockly.Msg.LOGIC_TERNARY_CONDITION = "condició";
+Blockly.Msg.LOGIC_TERNARY_HELPURL = "https://en.wikipedia.org/wiki/%3F:"; // untranslated
+Blockly.Msg.LOGIC_TERNARY_IF_FALSE = "si és fals";
+Blockly.Msg.LOGIC_TERNARY_IF_TRUE = "si és cert";
+Blockly.Msg.LOGIC_TERNARY_TOOLTIP = "Comprova la condició de 'condició'. Si la condició és certa, retorna el valor 'si és cert'; en cas contrari, retorna el valor 'si és fals'.";
+Blockly.Msg.MATH_ADDITION_SYMBOL = "+"; // untranslated
+Blockly.Msg.MATH_ARITHMETIC_HELPURL = "https://ca.wikipedia.org/wiki/Aritm%C3%A8tica";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_ADD = "Retorna la suma dels dos nombres.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE = "Retorna el quocient dels dos nombres.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MINUS = "Retorna la diferència entre els dos nombres.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MULTIPLY = "Retorna el producte del dos nombres.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_POWER = "Retorna el primer nombre elevat a la potència indicada pel segon nombre.";
+Blockly.Msg.MATH_CHANGE_HELPURL = "https://ca.wikipedia.org/wiki/Suma";
+Blockly.Msg.MATH_CHANGE_TITLE = "canvia %1 per %2";
+Blockly.Msg.MATH_CHANGE_TOOLTIP = "Afegeix un nombre a la variable '%1'.";
+Blockly.Msg.MATH_CONSTANT_HELPURL = "https://ca.wikipedia.org/wiki/Constant_matem%C3%A0tica";
+Blockly.Msg.MATH_CONSTANT_TOOLTIP = "Retorna una de les constants més habituals: π (3,141…), e (2,718…), φ (1,618…), sqrt(2) (1,414…), sqrt(½) (0,707…), o ∞ (infinit).";
+Blockly.Msg.MATH_CONSTRAIN_HELPURL = "https://en.wikipedia.org/wiki/Clamping_%28graphics%29"; // untranslated
+Blockly.Msg.MATH_CONSTRAIN_TITLE = "limitar %1 entre %2 i %3";
+Blockly.Msg.MATH_CONSTRAIN_TOOLTIP = "Limita un nombre perquè estigui entre els límits especificats (inclosos).";
+Blockly.Msg.MATH_DIVISION_SYMBOL = "÷"; // untranslated
+Blockly.Msg.MATH_IS_DIVISIBLE_BY = "és divisible per";
+Blockly.Msg.MATH_IS_EVEN = "és parell";
+Blockly.Msg.MATH_IS_NEGATIVE = "és negatiu";
+Blockly.Msg.MATH_IS_ODD = "és senar";
+Blockly.Msg.MATH_IS_POSITIVE = "és positiu";
+Blockly.Msg.MATH_IS_PRIME = "és primer";
+Blockly.Msg.MATH_IS_TOOLTIP = "Comprova si un nombre és parell, senar, enter, positium negatiu, o si és divisible per un cert nombre. Retorna cert o fals.";
+Blockly.Msg.MATH_IS_WHOLE = "és enter";
+Blockly.Msg.MATH_MODULO_HELPURL = "https://ca.wikipedia.org/wiki/Residu_%28aritm%C3%A8tica%29";
+Blockly.Msg.MATH_MODULO_TITLE = "residu de %1 ÷ %2";
+Blockly.Msg.MATH_MODULO_TOOLTIP = "Retorna el residu de dividir els dos nombres.";
+Blockly.Msg.MATH_MULTIPLICATION_SYMBOL = "×"; // untranslated
+Blockly.Msg.MATH_NUMBER_HELPURL = "https://ca.wikipedia.org/wiki/Nombre";
+Blockly.Msg.MATH_NUMBER_TOOLTIP = "Un nombre.";
+Blockly.Msg.MATH_ONLIST_HELPURL = ""; // untranslated
+Blockly.Msg.MATH_ONLIST_OPERATOR_AVERAGE = "mitjana de llista";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MAX = "màxim de llista";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MEDIAN = "mediana de llista";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MIN = "mínim de llista";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MODE = "moda de llista";
+Blockly.Msg.MATH_ONLIST_OPERATOR_RANDOM = "element aleatori de llista";
+Blockly.Msg.MATH_ONLIST_OPERATOR_STD_DEV = "desviació estàndard de llista";
+Blockly.Msg.MATH_ONLIST_OPERATOR_SUM = "suma de llista";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_AVERAGE = "Retorna la mitjana (mitjana aritmètica) dels valors numèrics de la llista.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MAX = "Retorna el nombre més gran de la llista.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MEDIAN = "Retorna la mediana de la llista.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MIN = "Retorna el nombre més petit de la llista.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MODE = "Retorna una llista dels elements que apareixen més vegades a la llista.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_RANDOM = "Retorna un element aleatori de la lllista.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_STD_DEV = "Retorna la desviació estàndard de la llista.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_SUM = "Retorna la suma de tots els nombres de la llista.";
+Blockly.Msg.MATH_POWER_SYMBOL = "^"; // untranslated
+Blockly.Msg.MATH_RANDOM_FLOAT_HELPURL = "https://ca.wikipedia.org/wiki/Generaci%C3%B3_de_nombres_aleatoris";
+Blockly.Msg.MATH_RANDOM_FLOAT_TITLE_RANDOM = "fracció aleatòria";
+Blockly.Msg.MATH_RANDOM_FLOAT_TOOLTIP = "Retorna una fracció aleatòria entre 0,0 (inclòs) i 1,0 (exclòs).";
+Blockly.Msg.MATH_RANDOM_INT_HELPURL = "https://ca.wikipedia.org/wiki/Generaci%C3%B3_de_nombres_aleatoris";
+Blockly.Msg.MATH_RANDOM_INT_TITLE = "nombre aleatori entre %1 i %2";
+Blockly.Msg.MATH_RANDOM_INT_TOOLTIP = "Retorna un nombre aleatori entre els dos límits especificats, inclosos.";
+Blockly.Msg.MATH_ROUND_HELPURL = "https://ca.wikipedia.org/wiki/Arrodoniment";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUND = "arrodonir";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDDOWN = "arrodonir cap avall";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDUP = "arrodonir cap amunt";
+Blockly.Msg.MATH_ROUND_TOOLTIP = "Arrodonir un nombre cap amunt o cap avall.";
+Blockly.Msg.MATH_SINGLE_HELPURL = "https://ca.wikipedia.org/wiki/Arrel_quadrada";
+Blockly.Msg.MATH_SINGLE_OP_ABSOLUTE = "absolut";
+Blockly.Msg.MATH_SINGLE_OP_ROOT = "arrel quadrada";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ABS = "Retorna el valor absolut d'un nombre.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_EXP = "Retorna ''e'' elevat a la potència del nombre indicat.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LN = "Retorna el logaritme natural d'un nombre.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LOG10 = "Retorna el logaritme en base 10 d'un nombre.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_NEG = "Retorna l'oposat d'un nombre.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_POW10 = "Retorna 10 elevat a la potència del nombre indicat.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ROOT = "Retorna l'arrel quadrada d'un nombre.";
+Blockly.Msg.MATH_SUBTRACTION_SYMBOL = "-"; // untranslated
+Blockly.Msg.MATH_TRIG_ACOS = "acos"; // untranslated
+Blockly.Msg.MATH_TRIG_ASIN = "asin"; // untranslated
+Blockly.Msg.MATH_TRIG_ATAN = "atan"; // untranslated
+Blockly.Msg.MATH_TRIG_COS = "cos"; // untranslated
+Blockly.Msg.MATH_TRIG_HELPURL = "https://ca.wikipedia.org/wiki/Funci%C3%B3_trigonom%C3%A8trica";
+Blockly.Msg.MATH_TRIG_SIN = "sin"; // untranslated
+Blockly.Msg.MATH_TRIG_TAN = "tan"; // untranslated
+Blockly.Msg.MATH_TRIG_TOOLTIP_ACOS = "Retorna l'arccosinus d'un nombre.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ASIN = "Retorna l'arcsinus d'un nombre.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ATAN = "Retorna l'arctangent d'un nombre.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_COS = "Retorna el cosinus d'un grau (no radiant).";
+Blockly.Msg.MATH_TRIG_TOOLTIP_SIN = "Retorna el sinus d'un grau (no radiant).";
+Blockly.Msg.MATH_TRIG_TOOLTIP_TAN = "Retorna la tangent d'un grau (no radiant).";
+Blockly.Msg.NEW_VARIABLE = "Nova variable...";
+Blockly.Msg.NEW_VARIABLE_TITLE = "Nou nom de variable:";
+Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; // untranslated
+Blockly.Msg.PROCEDURES_ALLOW_STATEMENTS = "permetre declaracions";
+Blockly.Msg.PROCEDURES_BEFORE_PARAMS = "amb:";
+Blockly.Msg.PROCEDURES_CALLNORETURN_HELPURL = "https://ca.wikipedia.org/wiki/Procediment_%28Programació%29";
+Blockly.Msg.PROCEDURES_CALLNORETURN_TOOLTIP = "Executa la funció definida per usuari '%1'.";
+Blockly.Msg.PROCEDURES_CALLRETURN_HELPURL = "https://ca.wikipedia.org/wiki/Procediment_%28Programació%29";
+Blockly.Msg.PROCEDURES_CALLRETURN_TOOLTIP = "Executa la funció definida per l'usuari '%1' i utilitza la seva sortida.";
+Blockly.Msg.PROCEDURES_CALL_BEFORE_PARAMS = "amb:";
+Blockly.Msg.PROCEDURES_CREATE_DO = "Crear '%1'";
+Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT = "Describe this function..."; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_DO = ""; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE = "fes alguna cosa";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE = "a";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TOOLTIP = "Crea una funció sense sortida.";
+Blockly.Msg.PROCEDURES_DEFRETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_DEFRETURN_RETURN = "retorna";
+Blockly.Msg.PROCEDURES_DEFRETURN_TOOLTIP = "Crea una funció amb una sortida.";
+Blockly.Msg.PROCEDURES_DEF_DUPLICATE_WARNING = "Advertència: Aquesta funció té paràmetres duplicats.";
+Blockly.Msg.PROCEDURES_HIGHLIGHT_DEF = "Iluminar la definició de la funció";
+Blockly.Msg.PROCEDURES_IFRETURN_HELPURL = "http://c2.com/cgi/wiki?GuardClause"; // untranslated
+Blockly.Msg.PROCEDURES_IFRETURN_TOOLTIP = "Si el valor és cert, llavors retorna un segon valor.";
+Blockly.Msg.PROCEDURES_IFRETURN_WARNING = "Advertència: Aquest bloc només es pot utilitzar dins de la definició d'una funció.";
+Blockly.Msg.PROCEDURES_MUTATORARG_TITLE = "nom d'entrada:";
+Blockly.Msg.PROCEDURES_MUTATORARG_TOOLTIP = "Afegir una entrada per la funció.";
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TITLE = "entrades";
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TOOLTIP = "Afegir, eliminar o canviar l'ordre de les entrades per aquesta funció.";
+Blockly.Msg.REDO = "Redo"; // untranslated
+Blockly.Msg.REMOVE_COMMENT = "Elimina el comentari";
+Blockly.Msg.RENAME_VARIABLE = "Reanomena variable...";
+Blockly.Msg.RENAME_VARIABLE_TITLE = "Reanomena totes les variables '%1' a:";
+Blockly.Msg.TEXT_APPEND_APPENDTEXT = "afegir text";
+Blockly.Msg.TEXT_APPEND_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_APPEND_TO = "a";
+Blockly.Msg.TEXT_APPEND_TOOLTIP = "Afegir un text a la variable '%1'.";
+Blockly.Msg.TEXT_CHANGECASE_HELPURL = "https://github.com/google/blockly/wiki/Text#adjusting-text-case"; // untranslated
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_LOWERCASE = "a minúscules";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_TITLECASE = "a Text De Títol";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_UPPERCASE = "a MAJÚSCULES";
+Blockly.Msg.TEXT_CHANGECASE_TOOLTIP = "Retorna una còpia del text amb diferents majúscules/minúscules.";
+Blockly.Msg.TEXT_CHARAT_FIRST = "recupera la primera lletra";
+Blockly.Msg.TEXT_CHARAT_FROM_END = "recupera la lletra núm.# des del final";
+Blockly.Msg.TEXT_CHARAT_FROM_START = "recupera la lletra núm.#";
+Blockly.Msg.TEXT_CHARAT_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-text"; // untranslated
+Blockly.Msg.TEXT_CHARAT_INPUT_INTEXT = "en el text";
+Blockly.Msg.TEXT_CHARAT_LAST = "recupera l'última lletra";
+Blockly.Msg.TEXT_CHARAT_RANDOM = "recupera una lletra a l'atzar";
+Blockly.Msg.TEXT_CHARAT_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_CHARAT_TOOLTIP = "Recupera la lletra de la posició especificada.";
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TOOLTIP = "Afegeix un element al text.";
+Blockly.Msg.TEXT_CREATE_JOIN_TITLE_JOIN = "unir";
+Blockly.Msg.TEXT_CREATE_JOIN_TOOLTIP = "Afegeix, esborrar o reordenar seccions per reconfigurar aquest bloc de text.";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_END = "fins a la lletra núm.# des del final";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_START = "fins a la lletra núm.#";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_LAST = "fins a l'última lletra";
+Blockly.Msg.TEXT_GET_SUBSTRING_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_INPUT_IN_TEXT = "en el text";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FIRST = "recupera subcadena des de la primera lletra";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_END = "recupera subcadena des de la lletra núm.# des del final";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_START = "recupera subcadena des de la lletra núm.#";
+Blockly.Msg.TEXT_GET_SUBSTRING_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_TOOLTIP = "Recupera una part especificada del text.";
+Blockly.Msg.TEXT_INDEXOF_HELPURL = "https://github.com/google/blockly/wiki/Text#finding-text"; // untranslated
+Blockly.Msg.TEXT_INDEXOF_INPUT_INTEXT = "en el text";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_FIRST = "trobar la primera aparició del text";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_LAST = "trobar l'última aparició del text";
+Blockly.Msg.TEXT_INDEXOF_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_INDEXOF_TOOLTIP = "Retorna l'índex de la primera/última aparició del primer text dins el segon. Retorna %1 si no es troba el text.";
+Blockly.Msg.TEXT_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Text#checking-for-empty-text"; // untranslated
+Blockly.Msg.TEXT_ISEMPTY_TITLE = "%1 està buit";
+Blockly.Msg.TEXT_ISEMPTY_TOOLTIP = "Retorna cert si el text proporcionat està buit.";
+Blockly.Msg.TEXT_JOIN_HELPURL = "https://github.com/google/blockly/wiki/Text#text-creation"; // untranslated
+Blockly.Msg.TEXT_JOIN_TITLE_CREATEWITH = "crear text amb";
+Blockly.Msg.TEXT_JOIN_TOOLTIP = "Crea un tros de text per unió de qualsevol nombre d'elements.";
+Blockly.Msg.TEXT_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_LENGTH_TITLE = "llargària de %1";
+Blockly.Msg.TEXT_LENGTH_TOOLTIP = "Retorna el nombre de lletres (espais inclosos) en el text proporcionat.";
+Blockly.Msg.TEXT_PRINT_HELPURL = "https://github.com/google/blockly/wiki/Text#printing-text"; // untranslated
+Blockly.Msg.TEXT_PRINT_TITLE = "imprimir %1";
+Blockly.Msg.TEXT_PRINT_TOOLTIP = "Imprimir el text, el nombre o altre valor especificat.";
+Blockly.Msg.TEXT_PROMPT_HELPURL = "https://github.com/google/blockly/wiki/Text#getting-input-from-the-user"; // untranslated
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_NUMBER = "Demana que l'usuari introdueixi un nombre.";
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_TEXT = "Demana que l'usuari introdueixi un text.";
+Blockly.Msg.TEXT_PROMPT_TYPE_NUMBER = "demanar un nombre amb el missatge";
+Blockly.Msg.TEXT_PROMPT_TYPE_TEXT = "demanar text amb el missatge";
+Blockly.Msg.TEXT_TEXT_HELPURL = "https://ca.wikipedia.org/wiki/Cadena_%28inform%C3%A0tica%29";
+Blockly.Msg.TEXT_TEXT_TOOLTIP = "Una lletra, paraula o línia de text.";
+Blockly.Msg.TEXT_TRIM_HELPURL = "https://github.com/google/blockly/wiki/Text#trimming-removing-spaces"; // untranslated
+Blockly.Msg.TEXT_TRIM_OPERATOR_BOTH = "retalla espais de tots dos extrems de";
+Blockly.Msg.TEXT_TRIM_OPERATOR_LEFT = "retalla espais de l'esquerra de";
+Blockly.Msg.TEXT_TRIM_OPERATOR_RIGHT = "retalla espais de la dreta de";
+Blockly.Msg.TEXT_TRIM_TOOLTIP = "Retorna una còpia del text on s'han esborrat els espais d'un o dels dos extrems.";
+Blockly.Msg.TODAY = "Today"; // untranslated
+Blockly.Msg.UNDO = "Undo"; // untranslated
+Blockly.Msg.VARIABLES_DEFAULT_NAME = "element";
+Blockly.Msg.VARIABLES_GET_CREATE_SET = "Crea 'modifica %1'";
+Blockly.Msg.VARIABLES_GET_HELPURL = "https://github.com/google/blockly/wiki/Variables#get"; // untranslated
+Blockly.Msg.VARIABLES_GET_TOOLTIP = "Retorna el valor d'aquesta variable.";
+Blockly.Msg.VARIABLES_SET = "modifica %1 a %2";
+Blockly.Msg.VARIABLES_SET_CREATE_GET = "Crear 'recupera %1'";
+Blockly.Msg.VARIABLES_SET_HELPURL = "https://github.com/google/blockly/wiki/Variables#set"; // untranslated
+Blockly.Msg.VARIABLES_SET_TOOLTIP = "Modifica aquesta variable al valor introduït.";
+Blockly.Msg.VARIABLE_ALREADY_EXISTS = "A variable named '%1' already exists."; // untranslated
+Blockly.Msg.PROCEDURES_DEFRETURN_TITLE = Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE;
+Blockly.Msg.CONTROLS_IF_IF_TITLE_IF = Blockly.Msg.CONTROLS_IF_MSG_IF;
+Blockly.Msg.CONTROLS_WHILEUNTIL_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_MSG_THEN = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_ELSE_TITLE_ELSE = Blockly.Msg.CONTROLS_IF_MSG_ELSE;
+Blockly.Msg.PROCEDURES_DEFRETURN_PROCEDURE = Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE;
+Blockly.Msg.LISTS_GET_SUBLIST_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.LISTS_GET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.PROCEDURES_DEFRETURN_DO = Blockly.Msg.PROCEDURES_DEFNORETURN_DO;
+Blockly.Msg.CONTROLS_IF_ELSEIF_TITLE_ELSEIF = Blockly.Msg.CONTROLS_IF_MSG_ELSEIF;
+Blockly.Msg.LISTS_GET_INDEX_HELPURL = Blockly.Msg.LISTS_INDEX_OF_HELPURL;
+Blockly.Msg.CONTROLS_FOREACH_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_SET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TITLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_APPEND_VARIABLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.LISTS_INDEX_OF_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.PROCEDURES_DEFRETURN_COMMENT = Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT; \ No newline at end of file
diff --git a/blockly/msg/js/cs.js b/blockly/msg/js/cs.js
new file mode 100644
index 0000000..1ca8da1
--- /dev/null
+++ b/blockly/msg/js/cs.js
@@ -0,0 +1,391 @@
+// This file was automatically generated. Do not modify.
+
+'use strict';
+
+goog.provide('Blockly.Msg.cs');
+
+goog.require('Blockly.Msg');
+
+Blockly.Msg.ADD_COMMENT = "Přidat komentář";
+Blockly.Msg.CHANGE_VALUE_TITLE = "Změnit hodnotu:";
+Blockly.Msg.CLEAN_UP = "Uspořádat bloky";
+Blockly.Msg.COLLAPSE_ALL = "Sbalit bloky";
+Blockly.Msg.COLLAPSE_BLOCK = "Sbalit blok";
+Blockly.Msg.COLOUR_BLEND_COLOUR1 = "barva 1";
+Blockly.Msg.COLOUR_BLEND_COLOUR2 = "barva 2";
+Blockly.Msg.COLOUR_BLEND_HELPURL = "http://meyerweb.com/eric/tools/color-blend/"; // untranslated
+Blockly.Msg.COLOUR_BLEND_RATIO = "poměr";
+Blockly.Msg.COLOUR_BLEND_TITLE = "smíchat";
+Blockly.Msg.COLOUR_BLEND_TOOLTIP = "Smíchá dvě barvy v daném poměru (0.0–1.0).";
+Blockly.Msg.COLOUR_PICKER_HELPURL = "https://cs.wikipedia.org/wiki/Barva";
+Blockly.Msg.COLOUR_PICKER_TOOLTIP = "Vyberte barvu z palety.";
+Blockly.Msg.COLOUR_RANDOM_HELPURL = "http://randomcolour.com"; // untranslated
+Blockly.Msg.COLOUR_RANDOM_TITLE = "náhodná barva";
+Blockly.Msg.COLOUR_RANDOM_TOOLTIP = "Zvolte barvu náhodně.";
+Blockly.Msg.COLOUR_RGB_BLUE = "modrá";
+Blockly.Msg.COLOUR_RGB_GREEN = "zelená";
+Blockly.Msg.COLOUR_RGB_HELPURL = "http://www.december.com/html/spec/colorper.html"; // untranslated
+Blockly.Msg.COLOUR_RGB_RED = "červená";
+Blockly.Msg.COLOUR_RGB_TITLE = "obarvěte barvou";
+Blockly.Msg.COLOUR_RGB_TOOLTIP = "Vytvoř barvu se zadaným množstvím červené, zelené a modré. Všechny hodnoty musí být mezi 0 a 100.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_HELPURL = "https://github.com/google/blockly/wiki/Loops#loop-termination-blocks"; // untranslated
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK = "vyskočit ze smyčky";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE = "pokračuj dalším opakováním smyčky";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK = "Vyskoč z vnitřní smyčky.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE = "Přeskoč zbytek této smyčky a pokračuj dalším opakováním.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_WARNING = "Upozornění: Tento blok může být použit pouze uvnitř smyčky.";
+Blockly.Msg.CONTROLS_FOREACH_HELPURL = "https://github.com/google/blockly/wiki/Loops#for-each"; // untranslated
+Blockly.Msg.CONTROLS_FOREACH_TITLE = "pro každou položku %1 v seznamu %2";
+Blockly.Msg.CONTROLS_FOREACH_TOOLTIP = "Pro každou položku v seznamu nastavte do proměnné '%1' danou položku a proveďte nějaké operace.";
+Blockly.Msg.CONTROLS_FOR_HELPURL = "https://github.com/google/blockly/wiki/Loops#count-with"; // untranslated
+Blockly.Msg.CONTROLS_FOR_TITLE = "počítat s %1 od %2 do %3 po %4";
+Blockly.Msg.CONTROLS_FOR_TOOLTIP = "Nechá proměnnou '%1' nabývat hodnot od počátečního do koncového čísla po daném přírůstku a provádí s ní příslušné bloky.";
+Blockly.Msg.CONTROLS_IF_ELSEIF_TOOLTIP = "Přidat podmínku do \"pokud\" bloku.";
+Blockly.Msg.CONTROLS_IF_ELSE_TOOLTIP = "Přidej konečnou podmínku zahrnující ostatní případy do bloku \"pokud\".";
+Blockly.Msg.CONTROLS_IF_HELPURL = "https://github.com/google/blockly/wiki/IfElse"; // untranslated
+Blockly.Msg.CONTROLS_IF_IF_TOOLTIP = "Přidej, odstraň či uspořádej sekce k přenastavení tohoto bloku \"pokud\".";
+Blockly.Msg.CONTROLS_IF_MSG_ELSE = "jinak";
+Blockly.Msg.CONTROLS_IF_MSG_ELSEIF = "nebo pokud";
+Blockly.Msg.CONTROLS_IF_MSG_IF = "pokud";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_1 = "Je-li hodnota pravda, proveď určité příkazy.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_2 = "Je-li hodnota pravda, proveď první blok příkazů. V opačném případě proveď druhý blok příkazů.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_3 = "Je-li první hodnota pravdivá, proveď první blok příkazů. V opačném případě, je-li pravdivá druhá hodnota, proveď druhý blok příkazů.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_4 = "Je-li první hodnota pravda, proveď první blok příkazů. Je-li druhá hodnota pravda, proveď druhý blok příkazů. Pokud žádná hodnota není pravda, proveď poslední blok příkazů.";
+Blockly.Msg.CONTROLS_REPEAT_HELPURL = "https://cs.wikipedia.org/wiki/Cyklus_pro";
+Blockly.Msg.CONTROLS_REPEAT_INPUT_DO = "dělej";
+Blockly.Msg.CONTROLS_REPEAT_TITLE = "opakuj %1 krát";
+Blockly.Msg.CONTROLS_REPEAT_TOOLTIP = "Proveď určité příkazy několikrát.";
+Blockly.Msg.CONTROLS_WHILEUNTIL_HELPURL = "https://github.com/google/blockly/wiki/Loops#repeat"; // untranslated
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "opakovat dokud";
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "opakovat když";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "Dokud je hodnota nepravdivá, prováděj určité příkazy.";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "Dokud je hodnota pravdivá, prováděj určité příkazy.";
+Blockly.Msg.DELETE_ALL_BLOCKS = "Smazat všech %1 bloků?";
+Blockly.Msg.DELETE_BLOCK = "Smazat blok";
+Blockly.Msg.DELETE_VARIABLE = "Delete the '%1' variable"; // untranslated
+Blockly.Msg.DELETE_VARIABLE_CONFIRMATION = "Delete %1 uses of the '%2' variable?"; // untranslated
+Blockly.Msg.DELETE_X_BLOCKS = "Smazat %1 bloků";
+Blockly.Msg.DISABLE_BLOCK = "Deaktivovat blok";
+Blockly.Msg.DUPLICATE_BLOCK = "Duplikovat";
+Blockly.Msg.ENABLE_BLOCK = "Povolit blok";
+Blockly.Msg.EXPAND_ALL = "Rozbalit bloky";
+Blockly.Msg.EXPAND_BLOCK = "Rozbalit blok";
+Blockly.Msg.EXTERNAL_INPUTS = "vnější vstupy";
+Blockly.Msg.HELP = "Nápověda";
+Blockly.Msg.INLINE_INPUTS = "Vložené vstupy";
+Blockly.Msg.LISTS_CREATE_EMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-empty-list"; // untranslated
+Blockly.Msg.LISTS_CREATE_EMPTY_TITLE = "vytvořit prázdný seznam";
+Blockly.Msg.LISTS_CREATE_EMPTY_TOOLTIP = "Vrátí seznam nulové délky, který neobsahuje žádné datové záznamy";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TITLE_ADD = "seznam";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TOOLTIP = "Přidat, odebrat nebo změnit pořadí oddílů tohoto seznamu bloku.";
+Blockly.Msg.LISTS_CREATE_WITH_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
+Blockly.Msg.LISTS_CREATE_WITH_INPUT_WITH = "vytvořit seznam s";
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TOOLTIP = "Přidat položku do seznamu.";
+Blockly.Msg.LISTS_CREATE_WITH_TOOLTIP = "Vytvoř seznam s libovolným počtem položek.";
+Blockly.Msg.LISTS_GET_INDEX_FIRST = "první";
+Blockly.Msg.LISTS_GET_INDEX_FROM_END = "# od konce";
+Blockly.Msg.LISTS_GET_INDEX_FROM_START = "#";
+Blockly.Msg.LISTS_GET_INDEX_GET = "získat";
+Blockly.Msg.LISTS_GET_INDEX_GET_REMOVE = "získat a odstranit";
+Blockly.Msg.LISTS_GET_INDEX_LAST = "poslední";
+Blockly.Msg.LISTS_GET_INDEX_RANDOM = "náhodné";
+Blockly.Msg.LISTS_GET_INDEX_REMOVE = "odstranit";
+Blockly.Msg.LISTS_GET_INDEX_TAIL = ""; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FIRST = "Vrátí první položku v seznamu.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FROM = "Získá položku z určené pozice v seznamu.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_LAST = "Vrátí poslední položku v seznamu.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_RANDOM = "Vrátí náhodnou položku ze seznamu.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST = "Odstraní a vrátí první položku v seznamu.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM = "Odstraní a získá položku z určené pozice v seznamu.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST = "Odstraní a vrátí poslední položku v seznamu.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM = "Odstraní a vrátí náhodnou položku v seznamu.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST = "Odstraní první položku v seznamu.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM = "Odebere položku na konkrétním místě v seznamu.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST = "Odstraní poslední položku v seznamu.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM = "Odstraní náhodou položku v seznamu.";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_END = "do # od konce";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_START = "do #";
+Blockly.Msg.LISTS_GET_SUBLIST_END_LAST = "jako poslední";
+Blockly.Msg.LISTS_GET_SUBLIST_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-a-sublist"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_START_FIRST = "získat podseznam od první položky";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_END = "získat podseznam od # od konce";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_START = "získat podseznam od #";
+Blockly.Msg.LISTS_GET_SUBLIST_TAIL = ""; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_TOOLTIP = "Vytvoří kopii určené části seznamu.";
+Blockly.Msg.LISTS_INDEX_FROM_END_TOOLTIP = "%1 je poslední položka.";
+Blockly.Msg.LISTS_INDEX_FROM_START_TOOLTIP = "%1 je první položka.";
+Blockly.Msg.LISTS_INDEX_OF_FIRST = "najít první výskyt položky";
+Blockly.Msg.LISTS_INDEX_OF_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-items-from-a-list"; // untranslated
+Blockly.Msg.LISTS_INDEX_OF_LAST = "najít poslední výskyt položky";
+Blockly.Msg.LISTS_INDEX_OF_TOOLTIP = "Vrací index prvního/posledního výskytu položky v seznamu. Vrací %1, pokud položka nebyla nalezena.";
+Blockly.Msg.LISTS_INLIST = "v seznamu";
+Blockly.Msg.LISTS_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#is-empty"; // untranslated
+Blockly.Msg.LISTS_ISEMPTY_TITLE = "%1 je prázdné";
+Blockly.Msg.LISTS_ISEMPTY_TOOLTIP = "Vrátí hodnotu pravda, pokud je seznam prázdný.";
+Blockly.Msg.LISTS_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Lists#length-of"; // untranslated
+Blockly.Msg.LISTS_LENGTH_TITLE = "délka %1";
+Blockly.Msg.LISTS_LENGTH_TOOLTIP = "Vrací počet položek v seznamu.";
+Blockly.Msg.LISTS_REPEAT_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
+Blockly.Msg.LISTS_REPEAT_TITLE = "vytvoř seznam s položkou %1 opakovanou %1 krát";
+Blockly.Msg.LISTS_REPEAT_TOOLTIP = "Vytváří seznam obsahující danou hodnotu n-krát.";
+Blockly.Msg.LISTS_SET_INDEX_HELPURL = "https://github.com/google/blockly/wiki/Lists#in-list--set"; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_INPUT_TO = "jako";
+Blockly.Msg.LISTS_SET_INDEX_INSERT = "vložit na";
+Blockly.Msg.LISTS_SET_INDEX_SET = "nastavit";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST = "Vložit položku na začátek seznamu.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FROM = "Vloží položku na určenou pozici v seznamu.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_LAST = "Připojí položku na konec seznamu.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM = "Připojí položku náhodně do seznamu.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FIRST = "Nastaví první položku v seznamu.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FROM = "Nastaví položku na konkrétní místo v seznamu.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_LAST = "Nastaví poslední položku v seznamu.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_RANDOM = "Nastaví náhodnou položku v seznamu.";
+Blockly.Msg.LISTS_SORT_HELPURL = "https://github.com/google/blockly/wiki/Lists#sorting-a-list";
+Blockly.Msg.LISTS_SORT_ORDER_ASCENDING = "vzestupně";
+Blockly.Msg.LISTS_SORT_ORDER_DESCENDING = "sestupně";
+Blockly.Msg.LISTS_SORT_TITLE = "seřadit %1 %2 %3";
+Blockly.Msg.LISTS_SORT_TOOLTIP = "Seřadit kopii seznamu.";
+Blockly.Msg.LISTS_SORT_TYPE_IGNORECASE = "abecedně, na velikosti písmen nezáleží";
+Blockly.Msg.LISTS_SORT_TYPE_NUMERIC = "číselné";
+Blockly.Msg.LISTS_SORT_TYPE_TEXT = "abecedně";
+Blockly.Msg.LISTS_SPLIT_HELPURL = "https://github.com/google/blockly/wiki/Lists#splitting-strings-and-joining-lists"; // untranslated
+Blockly.Msg.LISTS_SPLIT_LIST_FROM_TEXT = "udělat z textu seznam";
+Blockly.Msg.LISTS_SPLIT_TEXT_FROM_LIST = "udělat ze seznamu text";
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_JOIN = "Spojit seznam textů do jednoho textu, rozdělaného oddělovači.";
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_SPLIT = "Rozdělit text do seznamu textů, lámání na oddělovačích.";
+Blockly.Msg.LISTS_SPLIT_WITH_DELIMITER = "s oddělovačem";
+Blockly.Msg.LOGIC_BOOLEAN_FALSE = "nepravda";
+Blockly.Msg.LOGIC_BOOLEAN_HELPURL = "https://github.com/google/blockly/wiki/Logic#values"; // untranslated
+Blockly.Msg.LOGIC_BOOLEAN_TOOLTIP = "Vrací pravda nebo nepravda.";
+Blockly.Msg.LOGIC_BOOLEAN_TRUE = "pravda";
+Blockly.Msg.LOGIC_COMPARE_HELPURL = "https://cs.wikipedia.org/wiki/Nerovnost_(matematika)";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_EQ = "Vrátí hodnotu pravda, pokud se oba vstupy rovnají jeden druhému.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GT = "Navrátí hodnotu pravda, pokud první vstup je větší než druhý vstup.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GTE = "Navrátí hodnotu pravda, pokud je první vstup větší a nebo rovný druhému vstupu.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LT = "Navrátí hodnotu pravda, pokud je první vstup menší než druhý vstup.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LTE = "Navrátí hodnotu pravda, pokud je první vstup menší a nebo rovný druhému vstupu.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_NEQ = "Vrátí hodnotu pravda, pokud se oba vstupy nerovnají sobě navzájem.";
+Blockly.Msg.LOGIC_NEGATE_HELPURL = "https://github.com/google/blockly/wiki/Logic#not"; // untranslated
+Blockly.Msg.LOGIC_NEGATE_TITLE = "ne %1";
+Blockly.Msg.LOGIC_NEGATE_TOOLTIP = "Navrátí hodnotu pravda, pokud je vstup nepravda. Navrátí hodnotu nepravda, pokud je vstup pravda.";
+Blockly.Msg.LOGIC_NULL = "prázdný";
+Blockly.Msg.LOGIC_NULL_HELPURL = "https://en.wikipedia.org/wiki/Nullable_type"; // untranslated
+Blockly.Msg.LOGIC_NULL_TOOLTIP = "Vrátí prázdnou hodnotu";
+Blockly.Msg.LOGIC_OPERATION_AND = "a";
+Blockly.Msg.LOGIC_OPERATION_HELPURL = "https://github.com/google/blockly/wiki/Logic#logical-operations"; // untranslated
+Blockly.Msg.LOGIC_OPERATION_OR = "nebo";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_AND = "Vrátí hodnotu pravda, pokud oba dva vstupy jsou pravdivé.";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_OR = "Vrátí hodnotu pravda, pokud alespoň jeden ze vstupů má hodnotu pravda.";
+Blockly.Msg.LOGIC_TERNARY_CONDITION = "test";
+Blockly.Msg.LOGIC_TERNARY_HELPURL = "https://cs.wikipedia.org/wiki/Ternární operátor (programování)";
+Blockly.Msg.LOGIC_TERNARY_IF_FALSE = "pokud nepravda";
+Blockly.Msg.LOGIC_TERNARY_IF_TRUE = "pokud pravda";
+Blockly.Msg.LOGIC_TERNARY_TOOLTIP = "Zkontroluje podmínku v \"testu\". Když je podmínka pravda, vrátí hodnotu \"pokud pravda\"; v opačném případě vrátí hodnotu \"pokud nepravda\".";
+Blockly.Msg.MATH_ADDITION_SYMBOL = "+"; // untranslated
+Blockly.Msg.MATH_ARITHMETIC_HELPURL = "https://cs.wikipedia.org/wiki/Aritmetika";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_ADD = "Vrátí součet dvou čísel.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE = "Vrátí podíl dvou čísel.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MINUS = "Vrátí rozdíl dvou čísel.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MULTIPLY = "Vrátí součin dvou čísel.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_POWER = "Vrátí první číslo umocněné na druhé číslo.";
+Blockly.Msg.MATH_CHANGE_HELPURL = "https://en.wikipedia.org/wiki/Programming_idiom#Incrementing_a_counter";
+Blockly.Msg.MATH_CHANGE_TITLE = "zaměň %1 za %2";
+Blockly.Msg.MATH_CHANGE_TOOLTIP = "Přičti číslo k proměnné '%1'.";
+Blockly.Msg.MATH_CONSTANT_HELPURL = "https://en.wikipedia.org/wiki/Mathematical_constant";
+Blockly.Msg.MATH_CONSTANT_TOOLTIP = "Vraťte jednu z následujících konstant: π (3.141…), e (2.718…), φ (1.618…), sqrt(2) (1.414…), sqrt(½) (0.707…), or ∞ (nekonečno).";
+Blockly.Msg.MATH_CONSTRAIN_HELPURL = "https://en.wikipedia.org/wiki/Clamping_%28graphics%29"; // untranslated
+Blockly.Msg.MATH_CONSTRAIN_TITLE = "omez %1 na rozmezí od %2 do %3";
+Blockly.Msg.MATH_CONSTRAIN_TOOLTIP = "Omezí číslo tak, aby bylo ve stanovených mezích (včetně).";
+Blockly.Msg.MATH_DIVISION_SYMBOL = "÷";
+Blockly.Msg.MATH_IS_DIVISIBLE_BY = "je dělitelné číslem";
+Blockly.Msg.MATH_IS_EVEN = "je sudé";
+Blockly.Msg.MATH_IS_NEGATIVE = "je záporné";
+Blockly.Msg.MATH_IS_ODD = "je liché";
+Blockly.Msg.MATH_IS_POSITIVE = "je kladné";
+Blockly.Msg.MATH_IS_PRIME = "je prvočíslo";
+Blockly.Msg.MATH_IS_TOOLTIP = "Kontrola, zda je číslo sudé, liché, prvočíslo, celé, kladné, záporné nebo zda je dělitelné daným číslem. Vrací pravdu nebo nepravdu.";
+Blockly.Msg.MATH_IS_WHOLE = "je celé";
+Blockly.Msg.MATH_MODULO_HELPURL = "https://cs.wikipedia.org/wiki/Modul%C3%A1rn%C3%AD_aritmetika";
+Blockly.Msg.MATH_MODULO_TITLE = "zbytek po dělení %1 ÷ %2";
+Blockly.Msg.MATH_MODULO_TOOLTIP = "Vrátí zbytek po dělení dvou čísel.";
+Blockly.Msg.MATH_MULTIPLICATION_SYMBOL = "×";
+Blockly.Msg.MATH_NUMBER_HELPURL = "https://cs.wikipedia.org/wiki/Číslo";
+Blockly.Msg.MATH_NUMBER_TOOLTIP = "Číslo.";
+Blockly.Msg.MATH_ONLIST_HELPURL = ""; // untranslated
+Blockly.Msg.MATH_ONLIST_OPERATOR_AVERAGE = "průměr v seznamu";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MAX = "největší v seznamu";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MEDIAN = "medián v seznamu";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MIN = "nejmenší v seznamu";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MODE = "nejčastější ze seznamu";
+Blockly.Msg.MATH_ONLIST_OPERATOR_RANDOM = "náhodná položka seznamu";
+Blockly.Msg.MATH_ONLIST_OPERATOR_STD_DEV = "směrodatná odchylka ze seznamu";
+Blockly.Msg.MATH_ONLIST_OPERATOR_SUM = "suma seznamu";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_AVERAGE = "Vrátí průměr (aritmetický průměr) číselných hodnot v seznamu.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MAX = "Vrátí největší číslo v seznamu.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MEDIAN = "Vrátí medián seznamu.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MIN = "Vrátí nejmenší číslo v seznamu.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MODE = "Vrátí seznam nejčastějších položek seznamu.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_RANDOM = "Vrátí náhodnou položku ze seznamu.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_STD_DEV = "Vrátí směrodatnou odchylku seznamu.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_SUM = "Vrátí součet všech čísel v seznamu.";
+Blockly.Msg.MATH_POWER_SYMBOL = "^";
+Blockly.Msg.MATH_RANDOM_FLOAT_HELPURL = "https://cs.wikipedia.org/wiki/Gener%C3%A1tor_n%C3%A1hodn%C3%BDch_%C4%8D%C3%ADsel";
+Blockly.Msg.MATH_RANDOM_FLOAT_TITLE_RANDOM = "náhodné číslo mezi 0 (včetně) do 1";
+Blockly.Msg.MATH_RANDOM_FLOAT_TOOLTIP = "Vrátí náhodné číslo mezi 0,0 (včetně) až 1,0";
+Blockly.Msg.MATH_RANDOM_INT_HELPURL = "https://cs.wikipedia.org/wiki/Gener%C3%A1tor_n%C3%A1hodn%C3%BDch_%C4%8D%C3%ADsel";
+Blockly.Msg.MATH_RANDOM_INT_TITLE = "náhodné celé číslo od %1 do %2";
+Blockly.Msg.MATH_RANDOM_INT_TOOLTIP = "Vrací náhodné celé číslo mezi dvěma určenými mezemi, včetně mezních hodnot.";
+Blockly.Msg.MATH_ROUND_HELPURL = "https://en.wikipedia.org/wiki/Rounding";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUND = "zaokrouhlit";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDDOWN = "zaokrouhlit dolů";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDUP = "zaokrouhlit nahoru";
+Blockly.Msg.MATH_ROUND_TOOLTIP = "Zaokrouhlit číslo nahoru nebo dolů.";
+Blockly.Msg.MATH_SINGLE_HELPURL = "https://cs.wikipedia.org/wiki/Druhá_odmocnina";
+Blockly.Msg.MATH_SINGLE_OP_ABSOLUTE = "absolutní hodnota";
+Blockly.Msg.MATH_SINGLE_OP_ROOT = "druhá odmocnina";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ABS = "Vrátí absolutní hodnotu čísla.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_EXP = "Vrátí mocninu čísla e.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LN = "Vrátí přirozený logaritmus čísla.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LOG10 = "Vrátí desítkový logaritmus čísla.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_NEG = "Vrátí zápornou hodnotu čísla.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_POW10 = "Vrátí mocninu čísla 10.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ROOT = "Vrátí druhou odmocninu čísla.";
+Blockly.Msg.MATH_SUBTRACTION_SYMBOL = "-";
+Blockly.Msg.MATH_TRIG_ACOS = "acos";
+Blockly.Msg.MATH_TRIG_ASIN = "arcsin";
+Blockly.Msg.MATH_TRIG_ATAN = "arctan";
+Blockly.Msg.MATH_TRIG_COS = "cos";
+Blockly.Msg.MATH_TRIG_HELPURL = "https://en.wikipedia.org/wiki/Trigonometric_functions";
+Blockly.Msg.MATH_TRIG_SIN = "sin";
+Blockly.Msg.MATH_TRIG_TAN = "tan";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ACOS = "Vrátí arkus kosinus čísla.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ASIN = "Vrátí arkus sinus čísla.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ATAN = "Vrátí arkus tangens čísla.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_COS = "Vrátí kosinus úhlu ve stupních.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_SIN = "Vrátí sinus úhlu ve stupních.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_TAN = "Vrátí tangens úhlu ve stupních.";
+Blockly.Msg.NEW_VARIABLE = "Nová proměnná...";
+Blockly.Msg.NEW_VARIABLE_TITLE = "Nový název proměnné:";
+Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; // untranslated
+Blockly.Msg.PROCEDURES_ALLOW_STATEMENTS = "povolit příkazy";
+Blockly.Msg.PROCEDURES_BEFORE_PARAMS = "s:";
+Blockly.Msg.PROCEDURES_CALLNORETURN_HELPURL = "https://cs.wikipedia.org/wiki/Funkce_(programov%C3%A1n%C3%AD)";
+Blockly.Msg.PROCEDURES_CALLNORETURN_TOOLTIP = "Spustí uživatelem definovanou funkci '%1'.";
+Blockly.Msg.PROCEDURES_CALLRETURN_HELPURL = "https://cs.wikipedia.org/wiki/Funkce_(programov%C3%A1n%C3%AD)";
+Blockly.Msg.PROCEDURES_CALLRETURN_TOOLTIP = "Spustí uživatelem definovanou funkci '%1' a použije její výstup.";
+Blockly.Msg.PROCEDURES_CALL_BEFORE_PARAMS = "s:";
+Blockly.Msg.PROCEDURES_CREATE_DO = "Vytvořit '%1'";
+Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT = "Popište tuto funkci...";
+Blockly.Msg.PROCEDURES_DEFNORETURN_DO = ""; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_HELPURL = "https://cs.wikipedia.org/w/index.php?title=Funkce_(programování)";
+Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE = "proveď něco";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE = "k provedení";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TOOLTIP = "Vytvořit funkci bez výstupu.";
+Blockly.Msg.PROCEDURES_DEFRETURN_HELPURL = "https://cs.wikipedia.org/w/index.php?title=Funkce_(programování)";
+Blockly.Msg.PROCEDURES_DEFRETURN_RETURN = "navrátit";
+Blockly.Msg.PROCEDURES_DEFRETURN_TOOLTIP = "Vytvořit funkci s výstupem.";
+Blockly.Msg.PROCEDURES_DEF_DUPLICATE_WARNING = "Upozornění: Tato funkce má duplicitní parametry.";
+Blockly.Msg.PROCEDURES_HIGHLIGHT_DEF = "Zvýraznit definici funkce";
+Blockly.Msg.PROCEDURES_IFRETURN_HELPURL = "http://c2.com/cgi/wiki?GuardClause";
+Blockly.Msg.PROCEDURES_IFRETURN_TOOLTIP = "Je-li hodnota pravda, pak vrátí druhou hodnotu.";
+Blockly.Msg.PROCEDURES_IFRETURN_WARNING = "Varování: Tento blok může být použit pouze uvnitř definici funkce.";
+Blockly.Msg.PROCEDURES_MUTATORARG_TITLE = "vstupní jméno:";
+Blockly.Msg.PROCEDURES_MUTATORARG_TOOLTIP = "Přidat vstupy do funkce.";
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TITLE = "vstupy";
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TOOLTIP = "Přidat, odebrat nebo změnit pořadí vstupů této funkce.";
+Blockly.Msg.REDO = "Znovu";
+Blockly.Msg.REMOVE_COMMENT = "Odstranit komentář";
+Blockly.Msg.RENAME_VARIABLE = "Přejmenovat proměnnou...";
+Blockly.Msg.RENAME_VARIABLE_TITLE = "Přejmenuj všech '%1' proměnných na:";
+Blockly.Msg.TEXT_APPEND_APPENDTEXT = "přidat text";
+Blockly.Msg.TEXT_APPEND_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_APPEND_TO = "do";
+Blockly.Msg.TEXT_APPEND_TOOLTIP = "Přidá určitý text k proměnné '%1'.";
+Blockly.Msg.TEXT_CHANGECASE_HELPURL = "https://github.com/google/blockly/wiki/Text#adjusting-text-case"; // untranslated
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_LOWERCASE = "na malá písmena";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_TITLECASE = "na Počáteční Velká Písmena";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_UPPERCASE = "na VELKÁ PÍSMENA";
+Blockly.Msg.TEXT_CHANGECASE_TOOLTIP = "Vrátí kopii textu s jinou velikostí písmen.";
+Blockly.Msg.TEXT_CHARAT_FIRST = "získat první písmeno";
+Blockly.Msg.TEXT_CHARAT_FROM_END = "získat # písmeno od konce";
+Blockly.Msg.TEXT_CHARAT_FROM_START = "získat písmeno #";
+Blockly.Msg.TEXT_CHARAT_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-text"; // untranslated
+Blockly.Msg.TEXT_CHARAT_INPUT_INTEXT = "v textu";
+Blockly.Msg.TEXT_CHARAT_LAST = "získat poslední písmeno";
+Blockly.Msg.TEXT_CHARAT_RANDOM = "získat náhodné písmeno";
+Blockly.Msg.TEXT_CHARAT_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_CHARAT_TOOLTIP = "Získat písmeno na konkrétní pozici.";
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TOOLTIP = "Přidat položku do textu.";
+Blockly.Msg.TEXT_CREATE_JOIN_TITLE_JOIN = "spojit";
+Blockly.Msg.TEXT_CREATE_JOIN_TOOLTIP = "Přidat, odebrat nebo změnit pořadí oddílů tohoto textového bloku.";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_END = "do # písmene od konce";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_START = "do písmene #";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_LAST = "do posledního písmene";
+Blockly.Msg.TEXT_GET_SUBSTRING_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_INPUT_IN_TEXT = "v textu";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FIRST = "získat podřetězec od prvního písmene";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_END = "získat podřetězec od písmene # od konce";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_START = "získat podřetězec od písmene #";
+Blockly.Msg.TEXT_GET_SUBSTRING_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_TOOLTIP = "Získat zadanou část textu.";
+Blockly.Msg.TEXT_INDEXOF_HELPURL = "https://github.com/google/blockly/wiki/Text#finding-text"; // untranslated
+Blockly.Msg.TEXT_INDEXOF_INPUT_INTEXT = "v textu";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_FIRST = "najít první výskyt textu";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_LAST = "najít poslední výskyt textu";
+Blockly.Msg.TEXT_INDEXOF_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_INDEXOF_TOOLTIP = "Vrátí index prvního/posledního výskytu prvního textu v druhém textu. Pokud text není nalezen, vypíše %1.";
+Blockly.Msg.TEXT_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Text#checking-for-empty-text"; // untranslated
+Blockly.Msg.TEXT_ISEMPTY_TITLE = "%1 je prázdný";
+Blockly.Msg.TEXT_ISEMPTY_TOOLTIP = "Vrátí pravda pokud je zadaný text prázdný.";
+Blockly.Msg.TEXT_JOIN_HELPURL = "https://github.com/google/blockly/wiki/Text#text-creation"; // untranslated
+Blockly.Msg.TEXT_JOIN_TITLE_CREATEWITH = "vytvořit text s";
+Blockly.Msg.TEXT_JOIN_TOOLTIP = "Vytvoří kousek textu spojením libovolného počtu položek.";
+Blockly.Msg.TEXT_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_LENGTH_TITLE = "délka %1";
+Blockly.Msg.TEXT_LENGTH_TOOLTIP = "Vrátí počet písmen (včetně mezer) v zadaném textu.";
+Blockly.Msg.TEXT_PRINT_HELPURL = "https://github.com/google/blockly/wiki/Text#printing-text"; // untranslated
+Blockly.Msg.TEXT_PRINT_TITLE = "tisk %1";
+Blockly.Msg.TEXT_PRINT_TOOLTIP = "Tisk zadaného textu, čísla nebo jiné hodnoty.";
+Blockly.Msg.TEXT_PROMPT_HELPURL = "https://github.com/google/blockly/wiki/Text#getting-input-from-the-user"; // untranslated
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_NUMBER = "Výzva pro uživatele k zadání čísla.";
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_TEXT = "Výzva pro uživatele k zadání nějakého textu.";
+Blockly.Msg.TEXT_PROMPT_TYPE_NUMBER = "výzva k zadání čísla se zprávou";
+Blockly.Msg.TEXT_PROMPT_TYPE_TEXT = "výzva k zadání textu se zprávou";
+Blockly.Msg.TEXT_TEXT_HELPURL = "https://cs.wikipedia.org/wiki/Textov%C3%BD_%C5%99et%C4%9Bzec";
+Blockly.Msg.TEXT_TEXT_TOOLTIP = "Písmeno, slovo nebo řádek textu.";
+Blockly.Msg.TEXT_TRIM_HELPURL = "https://github.com/google/blockly/wiki/Text#trimming-removing-spaces"; // untranslated
+Blockly.Msg.TEXT_TRIM_OPERATOR_BOTH = "odstranit mezery z obou stran";
+Blockly.Msg.TEXT_TRIM_OPERATOR_LEFT = "odstranit mezery z levé strany";
+Blockly.Msg.TEXT_TRIM_OPERATOR_RIGHT = "odstranit mezery z pravé strany";
+Blockly.Msg.TEXT_TRIM_TOOLTIP = "Vrátí kopii textu s odstraněnými mezerami z jednoho nebo obou konců.";
+Blockly.Msg.TODAY = "Dnes";
+Blockly.Msg.UNDO = "Zpět";
+Blockly.Msg.VARIABLES_DEFAULT_NAME = "položka";
+Blockly.Msg.VARIABLES_GET_CREATE_SET = "Vytvořit \"nastavit %1\"";
+Blockly.Msg.VARIABLES_GET_HELPURL = "https://github.com/google/blockly/wiki/Variables#get"; // untranslated
+Blockly.Msg.VARIABLES_GET_TOOLTIP = "Vrátí hodnotu této proměnné.";
+Blockly.Msg.VARIABLES_SET = "nastavit %1 na %2";
+Blockly.Msg.VARIABLES_SET_CREATE_GET = "Vytvořit \"získat %1\"";
+Blockly.Msg.VARIABLES_SET_HELPURL = "https://github.com/google/blockly/wiki/Variables#set"; // untranslated
+Blockly.Msg.VARIABLES_SET_TOOLTIP = "Nastaví tuto proměnnou, aby se rovnala vstupu.";
+Blockly.Msg.VARIABLE_ALREADY_EXISTS = "A variable named '%1' already exists."; // untranslated
+Blockly.Msg.PROCEDURES_DEFRETURN_TITLE = Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE;
+Blockly.Msg.CONTROLS_IF_IF_TITLE_IF = Blockly.Msg.CONTROLS_IF_MSG_IF;
+Blockly.Msg.CONTROLS_WHILEUNTIL_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_MSG_THEN = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_ELSE_TITLE_ELSE = Blockly.Msg.CONTROLS_IF_MSG_ELSE;
+Blockly.Msg.PROCEDURES_DEFRETURN_PROCEDURE = Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE;
+Blockly.Msg.LISTS_GET_SUBLIST_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.LISTS_GET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.PROCEDURES_DEFRETURN_DO = Blockly.Msg.PROCEDURES_DEFNORETURN_DO;
+Blockly.Msg.CONTROLS_IF_ELSEIF_TITLE_ELSEIF = Blockly.Msg.CONTROLS_IF_MSG_ELSEIF;
+Blockly.Msg.LISTS_GET_INDEX_HELPURL = Blockly.Msg.LISTS_INDEX_OF_HELPURL;
+Blockly.Msg.CONTROLS_FOREACH_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_SET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TITLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_APPEND_VARIABLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.LISTS_INDEX_OF_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.PROCEDURES_DEFRETURN_COMMENT = Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT; \ No newline at end of file
diff --git a/blockly/msg/js/da.js b/blockly/msg/js/da.js
new file mode 100644
index 0000000..21e3e3e
--- /dev/null
+++ b/blockly/msg/js/da.js
@@ -0,0 +1,391 @@
+// This file was automatically generated. Do not modify.
+
+'use strict';
+
+goog.provide('Blockly.Msg.da');
+
+goog.require('Blockly.Msg');
+
+Blockly.Msg.ADD_COMMENT = "Tilføj kommentar";
+Blockly.Msg.CHANGE_VALUE_TITLE = "Skift værdi:";
+Blockly.Msg.CLEAN_UP = "Ryd op i blokke";
+Blockly.Msg.COLLAPSE_ALL = "Fold blokkene sammen";
+Blockly.Msg.COLLAPSE_BLOCK = "Fold blokken sammen";
+Blockly.Msg.COLOUR_BLEND_COLOUR1 = "farve 1";
+Blockly.Msg.COLOUR_BLEND_COLOUR2 = "farve 2";
+Blockly.Msg.COLOUR_BLEND_HELPURL = "http://meyerweb.com/eric/tools/color-blend/"; // untranslated
+Blockly.Msg.COLOUR_BLEND_RATIO = "i forholdet";
+Blockly.Msg.COLOUR_BLEND_TITLE = "bland";
+Blockly.Msg.COLOUR_BLEND_TOOLTIP = "Blander to farver sammen i et bestemt forhold (0.0 - 1.0).";
+Blockly.Msg.COLOUR_PICKER_HELPURL = "https://da.wikipedia.org/wiki/Farve";
+Blockly.Msg.COLOUR_PICKER_TOOLTIP = "Vælg en farve fra paletten.";
+Blockly.Msg.COLOUR_RANDOM_HELPURL = "http://randomcolour.com"; // untranslated
+Blockly.Msg.COLOUR_RANDOM_TITLE = "tilfældig farve";
+Blockly.Msg.COLOUR_RANDOM_TOOLTIP = "Vælg en tilfældig farve.";
+Blockly.Msg.COLOUR_RGB_BLUE = "blå";
+Blockly.Msg.COLOUR_RGB_GREEN = "grøn";
+Blockly.Msg.COLOUR_RGB_HELPURL = "http://www.december.com/html/spec/colorper.html"; // untranslated
+Blockly.Msg.COLOUR_RGB_RED = "rød";
+Blockly.Msg.COLOUR_RGB_TITLE = "farve med";
+Blockly.Msg.COLOUR_RGB_TOOLTIP = "Lav en farve med den angivne mængde af rød, grøn og blå. Alle værdier skal være mellem 0 og 100.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_HELPURL = "https://github.com/google/blockly/wiki/Loops#loop-termination-blocks"; // untranslated
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK = "bryd ud af løkken";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE = "fortsæt med den næste gentagelse i løkken";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK = "Bryd ud af den omgivende løkke.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE = "Spring resten af denne løkke over, og fortsæt med den næste gentagelse.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_WARNING = "Advarsel: Denne blok kan kun bruges i en løkke.";
+Blockly.Msg.CONTROLS_FOREACH_HELPURL = "https://github.com/google/blockly/wiki/Loops#for-each"; // untranslated
+Blockly.Msg.CONTROLS_FOREACH_TITLE = "for hvert element %1 i listen %2";
+Blockly.Msg.CONTROLS_FOREACH_TOOLTIP = "For hvert element i en liste, sæt variablen '%1' til elementet, og udfør derefter nogle kommandoer.";
+Blockly.Msg.CONTROLS_FOR_HELPURL = "https://github.com/google/blockly/wiki/Loops#count-with"; // untranslated
+Blockly.Msg.CONTROLS_FOR_TITLE = "tæl med %1 fra %2 til %3 med %4";
+Blockly.Msg.CONTROLS_FOR_TOOLTIP = "Få variablen \"%1\" til at have værdierne fra startværdien til slutværdien, mens der tælles med det angivne interval, og udfør de angivne blokke.";
+Blockly.Msg.CONTROLS_IF_ELSEIF_TOOLTIP = "Tilføj en betingelse til denne \"hvis\" blok.";
+Blockly.Msg.CONTROLS_IF_ELSE_TOOLTIP = "Tilføj en sidste fang-alt betingelse, til denne \"hvis\" blok.";
+Blockly.Msg.CONTROLS_IF_HELPURL = "https://github.com/google/blockly/wiki/IfElse"; // untranslated
+Blockly.Msg.CONTROLS_IF_IF_TOOLTIP = "Tilføj, fjern eller byt om på rækkefølgen af delene for at konfigurere denne \"hvis\" blok.";
+Blockly.Msg.CONTROLS_IF_MSG_ELSE = "ellers";
+Blockly.Msg.CONTROLS_IF_MSG_ELSEIF = "ellers hvis";
+Blockly.Msg.CONTROLS_IF_MSG_IF = "hvis";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_1 = "Hvis en værdi er sand, så udfør nogle kommandoer.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_2 = "Hvis en værdi er sand, så udfør den første blok af kommandoer. Ellers udfør den anden blok af kommandoer.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_3 = "Hvis den første værdi er sand, så udfør den første blok af kommandoer. Ellers, hvis den anden værdi er sand, så udfør den anden blok af kommandoer.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_4 = "Hvis den første værdi er sand, så udfør den første blok af kommandoer. Ellers, hvis den anden værdi er sand, så udfør den anden blok af kommandoer. Hvis ingen af værdierne er sande, så udfør den sidste blok af kommandoer.";
+Blockly.Msg.CONTROLS_REPEAT_HELPURL = "https://da.wikipedia.org/wiki/For-l%C3%B8kke";
+Blockly.Msg.CONTROLS_REPEAT_INPUT_DO = "udfør";
+Blockly.Msg.CONTROLS_REPEAT_TITLE = "gentag %1 gange";
+Blockly.Msg.CONTROLS_REPEAT_TOOLTIP = "Udfør nogle kommandoer flere gange.";
+Blockly.Msg.CONTROLS_WHILEUNTIL_HELPURL = "https://github.com/google/blockly/wiki/Loops#repeat"; // untranslated
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "gentag indtil";
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "gentag sålænge";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "Udfør nogle kommandoer, sålænge en værdi er falsk.";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "Udfør nogle kommandoer, sålænge en værdi er sand.";
+Blockly.Msg.DELETE_ALL_BLOCKS = "Slet alle %1 blokke?";
+Blockly.Msg.DELETE_BLOCK = "Slet blok";
+Blockly.Msg.DELETE_VARIABLE = "Delete the '%1' variable"; // untranslated
+Blockly.Msg.DELETE_VARIABLE_CONFIRMATION = "Delete %1 uses of the '%2' variable?"; // untranslated
+Blockly.Msg.DELETE_X_BLOCKS = "Slet %1 blokke";
+Blockly.Msg.DISABLE_BLOCK = "Deaktivér blok";
+Blockly.Msg.DUPLICATE_BLOCK = "Duplikér";
+Blockly.Msg.ENABLE_BLOCK = "Aktivér blok";
+Blockly.Msg.EXPAND_ALL = "Fold blokkene ud";
+Blockly.Msg.EXPAND_BLOCK = "Fold blokken ud";
+Blockly.Msg.EXTERNAL_INPUTS = "Udvendige inputs";
+Blockly.Msg.HELP = "Hjælp";
+Blockly.Msg.INLINE_INPUTS = "Indlejrede inputs";
+Blockly.Msg.LISTS_CREATE_EMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-empty-list"; // untranslated
+Blockly.Msg.LISTS_CREATE_EMPTY_TITLE = "opret en tom liste";
+Blockly.Msg.LISTS_CREATE_EMPTY_TOOLTIP = "Returnerer en liste af længde 0, som ikke indeholder nogen data";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TITLE_ADD = "liste";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TOOLTIP = "Tilføj, fjern eller byt om på rækkefølgen af delene for at konfigurere denne blok.";
+Blockly.Msg.LISTS_CREATE_WITH_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
+Blockly.Msg.LISTS_CREATE_WITH_INPUT_WITH = "opret liste med";
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TOOLTIP = "Føj et element til listen.";
+Blockly.Msg.LISTS_CREATE_WITH_TOOLTIP = "Opret en liste med et vilkårligt antal elementer.";
+Blockly.Msg.LISTS_GET_INDEX_FIRST = "første";
+Blockly.Msg.LISTS_GET_INDEX_FROM_END = "# fra slutningen";
+Blockly.Msg.LISTS_GET_INDEX_FROM_START = "#"; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_GET = "hent";
+Blockly.Msg.LISTS_GET_INDEX_GET_REMOVE = "hent og fjern";
+Blockly.Msg.LISTS_GET_INDEX_LAST = "sidste";
+Blockly.Msg.LISTS_GET_INDEX_RANDOM = "tilfældig";
+Blockly.Msg.LISTS_GET_INDEX_REMOVE = "fjern";
+Blockly.Msg.LISTS_GET_INDEX_TAIL = ""; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FIRST = "Returnerer det første element i en liste.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FROM = "Returnerer elementet på den angivne position på en liste.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_LAST = "Returnerer den sidste element i en liste.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_RANDOM = "Returnerer et tilfældigt element i en liste.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST = "Fjerner og returnerer det første element i en liste.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM = "Fjerner og returnerer elementet på den angivne position på en liste.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST = "Fjerner og returnerer det sidste element i en liste.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM = "Fjerner og returnerer et tilfældigt element i en liste.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST = "Fjerner det første element i en liste.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM = "Fjerner elementet på den angivne position på en liste.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST = "Fjerner sidste element i en liste.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM = "Fjerner et tilfældigt element i en liste.";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_END = "til # fra slutningen";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_START = "til #";
+Blockly.Msg.LISTS_GET_SUBLIST_END_LAST = "til sidste";
+Blockly.Msg.LISTS_GET_SUBLIST_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-a-sublist"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_START_FIRST = "hent underliste fra første";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_END = "hent underliste fra # fra slutningen";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_START = "hent underliste fra #";
+Blockly.Msg.LISTS_GET_SUBLIST_TAIL = ""; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_TOOLTIP = "Opretter en kopi af den angivne del af en liste.";
+Blockly.Msg.LISTS_INDEX_FROM_END_TOOLTIP = "%1 er det sidste element.";
+Blockly.Msg.LISTS_INDEX_FROM_START_TOOLTIP = "%1 er det første element.";
+Blockly.Msg.LISTS_INDEX_OF_FIRST = "find første forekomst af elementet";
+Blockly.Msg.LISTS_INDEX_OF_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-items-from-a-list"; // untranslated
+Blockly.Msg.LISTS_INDEX_OF_LAST = "find sidste forekomst af elementet";
+Blockly.Msg.LISTS_INDEX_OF_TOOLTIP = "Returnerer indeks for første/sidste forekomst af elementet i listen. Returnerer %1, hvis elementet ikke kan findes.";
+Blockly.Msg.LISTS_INLIST = "i listen";
+Blockly.Msg.LISTS_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#is-empty"; // untranslated
+Blockly.Msg.LISTS_ISEMPTY_TITLE = "%1 er tom";
+Blockly.Msg.LISTS_ISEMPTY_TOOLTIP = "Returnerer sand, hvis listen er tom.";
+Blockly.Msg.LISTS_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Lists#length-of"; // untranslated
+Blockly.Msg.LISTS_LENGTH_TITLE = "længden af %1";
+Blockly.Msg.LISTS_LENGTH_TOOLTIP = "Returnerer længden af en liste.";
+Blockly.Msg.LISTS_REPEAT_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
+Blockly.Msg.LISTS_REPEAT_TITLE = "opret liste med elementet %1 gentaget %2 gange";
+Blockly.Msg.LISTS_REPEAT_TOOLTIP = "Opretter en liste bestående af den givne værdi gentaget et bestemt antal gange.";
+Blockly.Msg.LISTS_SET_INDEX_HELPURL = "https://github.com/google/blockly/wiki/Lists#in-list--set"; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_INPUT_TO = "som";
+Blockly.Msg.LISTS_SET_INDEX_INSERT = "indsæt ved";
+Blockly.Msg.LISTS_SET_INDEX_SET = "sæt";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST = "Indsætter elementet i starten af en liste.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FROM = "Indsætter elementet på den angivne position i en liste.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_LAST = "Føj elementet til slutningen af en liste.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM = "Indsætter elementet tilfældigt i en liste.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FIRST = "Sætter det første element i en liste.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FROM = "Sætter elementet på den angivne position i en liste.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_LAST = "Sætter det sidste element i en liste.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_RANDOM = "Sætter et tilfældigt element i en liste.";
+Blockly.Msg.LISTS_SORT_HELPURL = "https://github.com/google/blockly/wiki/Lists#sorting-a-list"; // untranslated
+Blockly.Msg.LISTS_SORT_ORDER_ASCENDING = "ascending"; // untranslated
+Blockly.Msg.LISTS_SORT_ORDER_DESCENDING = "descending"; // untranslated
+Blockly.Msg.LISTS_SORT_TITLE = "sort %1 %2 %3"; // untranslated
+Blockly.Msg.LISTS_SORT_TOOLTIP = "Sort a copy of a list."; // untranslated
+Blockly.Msg.LISTS_SORT_TYPE_IGNORECASE = "alphabetic, ignore case"; // untranslated
+Blockly.Msg.LISTS_SORT_TYPE_NUMERIC = "numeric"; // untranslated
+Blockly.Msg.LISTS_SORT_TYPE_TEXT = "alphabetic"; // untranslated
+Blockly.Msg.LISTS_SPLIT_HELPURL = "https://github.com/google/blockly/wiki/Lists#splitting-strings-and-joining-lists"; // untranslated
+Blockly.Msg.LISTS_SPLIT_LIST_FROM_TEXT = "lav tekst til liste";
+Blockly.Msg.LISTS_SPLIT_TEXT_FROM_LIST = "lav liste til tekst";
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_JOIN = "Saml en liste af tekster til én tekst, der er adskilt af et skilletegn.";
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_SPLIT = "Bryd tekst op i en liste af tekster med brud ved hvert skilletegn.";
+Blockly.Msg.LISTS_SPLIT_WITH_DELIMITER = "med skilletegn";
+Blockly.Msg.LOGIC_BOOLEAN_FALSE = "falsk";
+Blockly.Msg.LOGIC_BOOLEAN_HELPURL = "https://github.com/google/blockly/wiki/Logic#values"; // untranslated
+Blockly.Msg.LOGIC_BOOLEAN_TOOLTIP = "Returnerer enten sand eller falsk.";
+Blockly.Msg.LOGIC_BOOLEAN_TRUE = "sand";
+Blockly.Msg.LOGIC_COMPARE_HELPURL = "https://da.wikipedia.org/wiki/Ulighed_(matematik)";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_EQ = "Returnere sand, hvis begge inputs er lig med hinanden.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GT = "Returnere sand, hvis det første input er større end det andet input.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GTE = "Returnere sand, hvis det første input er større end eller lig med det andet input.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LT = "Returnere sand, hvis det første input er mindre end det andet input.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LTE = "Returnere sand, hvis det første input er mindre end eller lig med det andet input.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_NEQ = "Returnere sand, hvis begge inputs ikke er lig med hinanden.";
+Blockly.Msg.LOGIC_NEGATE_HELPURL = "https://github.com/google/blockly/wiki/Logic#not"; // untranslated
+Blockly.Msg.LOGIC_NEGATE_TITLE = "ikke %1";
+Blockly.Msg.LOGIC_NEGATE_TOOLTIP = "Returnerer sand, hvis input er falsk. Returnerer falsk, hvis input er sandt.";
+Blockly.Msg.LOGIC_NULL = "null";
+Blockly.Msg.LOGIC_NULL_HELPURL = "https://en.wikipedia.org/wiki/Nullable_type"; // untranslated
+Blockly.Msg.LOGIC_NULL_TOOLTIP = "Returnerer null.";
+Blockly.Msg.LOGIC_OPERATION_AND = "og";
+Blockly.Msg.LOGIC_OPERATION_HELPURL = "https://github.com/google/blockly/wiki/Logic#logical-operations"; // untranslated
+Blockly.Msg.LOGIC_OPERATION_OR = "eller";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_AND = "Returnere sand, hvis begge inputs er sande.";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_OR = "Returnere sand, hvis mindst et af inputtene er sande.";
+Blockly.Msg.LOGIC_TERNARY_CONDITION = "test";
+Blockly.Msg.LOGIC_TERNARY_HELPURL = "https://en.wikipedia.org/wiki/%3F:"; // untranslated
+Blockly.Msg.LOGIC_TERNARY_IF_FALSE = "hvis falsk";
+Blockly.Msg.LOGIC_TERNARY_IF_TRUE = "hvis sand";
+Blockly.Msg.LOGIC_TERNARY_TOOLTIP = "Kontrollér betingelsen i 'test'. Hvis betingelsen er sand, returnér \"hvis sand\" værdien; ellers returnér \"hvis falsk\" værdien.";
+Blockly.Msg.MATH_ADDITION_SYMBOL = "+"; // untranslated
+Blockly.Msg.MATH_ARITHMETIC_HELPURL = "https://da.wikipedia.org/wiki/Aritmetik";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_ADD = "Returnere summen af de to tal.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE = "Returnere kvotienten af de to tal.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MINUS = "Returnere forskellen mellem de to tal.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MULTIPLY = "Returnere produktet af de to tal.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_POWER = "Returnere det første tal opløftet til potensen af det andet tal.";
+Blockly.Msg.MATH_CHANGE_HELPURL = "https://en.wikipedia.org/wiki/Programming_idiom#Incrementing_a_counter";
+Blockly.Msg.MATH_CHANGE_TITLE = "skift %1 med %2";
+Blockly.Msg.MATH_CHANGE_TOOLTIP = "Læg et tal til variablen '%1'.";
+Blockly.Msg.MATH_CONSTANT_HELPURL = "https://da.wikipedia.org/wiki/Matematisk_konstant";
+Blockly.Msg.MATH_CONSTANT_TOOLTIP = "Returnere en af de ofte brugte konstanter: π (3.141…), e (2.718…), φ (1.618…), sqrt(2) (1.414…), sqrt(2) (1.414…), sqrt(½) (0.707…) eller ∞ (uendeligt).";
+Blockly.Msg.MATH_CONSTRAIN_HELPURL = "https://en.wikipedia.org/wiki/Clamping_%28graphics%29"; // untranslated
+Blockly.Msg.MATH_CONSTRAIN_TITLE = "begræns %1 til mellem %2 og %3";
+Blockly.Msg.MATH_CONSTRAIN_TOOLTIP = "Begræns et tal til at være mellem de angivne grænser (inklusiv).";
+Blockly.Msg.MATH_DIVISION_SYMBOL = ":";
+Blockly.Msg.MATH_IS_DIVISIBLE_BY = "er deleligt med";
+Blockly.Msg.MATH_IS_EVEN = "er lige";
+Blockly.Msg.MATH_IS_NEGATIVE = "er negativt";
+Blockly.Msg.MATH_IS_ODD = "er ulige";
+Blockly.Msg.MATH_IS_POSITIVE = "er positivt";
+Blockly.Msg.MATH_IS_PRIME = "er et primtal";
+Blockly.Msg.MATH_IS_TOOLTIP = "Kontrollere, om et tal er lige, ulige, primtal, helt, positivt, negativt, eller om det er deleligt med bestemt tal. Returnere sandt eller falskt.";
+Blockly.Msg.MATH_IS_WHOLE = "er helt";
+Blockly.Msg.MATH_MODULO_HELPURL = "https://da.wikipedia.org/wiki/Modulo";
+Blockly.Msg.MATH_MODULO_TITLE = "resten af %1 ÷ %2";
+Blockly.Msg.MATH_MODULO_TOOLTIP = "Returner resten fra at dividere de to tal.";
+Blockly.Msg.MATH_MULTIPLICATION_SYMBOL = "×"; // untranslated
+Blockly.Msg.MATH_NUMBER_HELPURL = "https://da.wikipedia.org/wiki/Tal";
+Blockly.Msg.MATH_NUMBER_TOOLTIP = "Et tal.";
+Blockly.Msg.MATH_ONLIST_HELPURL = ""; // untranslated
+Blockly.Msg.MATH_ONLIST_OPERATOR_AVERAGE = "gennemsnit af listen";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MAX = "største tal i listen";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MEDIAN = "listens median";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MIN = "mindste tal i listen";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MODE = "listens typetal";
+Blockly.Msg.MATH_ONLIST_OPERATOR_RANDOM = "tilfældigt element fra listen";
+Blockly.Msg.MATH_ONLIST_OPERATOR_STD_DEV = "standardafvigelsen for listen";
+Blockly.Msg.MATH_ONLIST_OPERATOR_SUM = "summen af listen";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_AVERAGE = "Returner gennemsnittet (middelværdien) af de numeriske værdier i listen.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MAX = "Returner det største tal i listen.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MEDIAN = "Returner listens median.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MIN = "Returner det mindste tal i listen.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MODE = "Returner en liste over de mest almindelige elementer på listen.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_RANDOM = "Returner et tilfældigt element fra listen.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_STD_DEV = "Returner standardafvigelsen for listen.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_SUM = "Returner summen af alle tal i listen.";
+Blockly.Msg.MATH_POWER_SYMBOL = "^"; // untranslated
+Blockly.Msg.MATH_RANDOM_FLOAT_HELPURL = "https://da.wikipedia.org/wiki/Tilfældighedsgenerator";
+Blockly.Msg.MATH_RANDOM_FLOAT_TITLE_RANDOM = "tilfældigt decimaltal (mellem 0 og 1)";
+Blockly.Msg.MATH_RANDOM_FLOAT_TOOLTIP = "Returner et tilfældigt decimaltal mellem 0,0 (inklusiv) og 1,0 (eksklusiv).";
+Blockly.Msg.MATH_RANDOM_INT_HELPURL = "https://da.wikipedia.org/wiki/Tilfældighedsgenerator";
+Blockly.Msg.MATH_RANDOM_INT_TITLE = "tilfældigt heltal mellem %1 og %2";
+Blockly.Msg.MATH_RANDOM_INT_TOOLTIP = "Returner et tilfældigt heltal mellem de to angivne grænser (inklusiv).";
+Blockly.Msg.MATH_ROUND_HELPURL = "https://da.wikipedia.org/wiki/Afrunding";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUND = "afrund";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDDOWN = "rund ned";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDUP = "rund op";
+Blockly.Msg.MATH_ROUND_TOOLTIP = "Runde et tal op eller ned.";
+Blockly.Msg.MATH_SINGLE_HELPURL = "https://da.wikipedia.org/wiki/Kvadratrod";
+Blockly.Msg.MATH_SINGLE_OP_ABSOLUTE = "absolut";
+Blockly.Msg.MATH_SINGLE_OP_ROOT = "kvadratrod";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ABS = "Returnere den absolutte værdi af et tal.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_EXP = "Returnere e til potensen af et tal.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LN = "Returnere den naturlige logaritme af et tal.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LOG10 = "Returnere 10-talslogaritmen af et tal.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_NEG = "Returnere negationen af et tal.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_POW10 = "Returnere 10 til potensen af et tal.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ROOT = "Returnere kvadratroden af et tal.";
+Blockly.Msg.MATH_SUBTRACTION_SYMBOL = "-"; // untranslated
+Blockly.Msg.MATH_TRIG_ACOS = "acos"; // untranslated
+Blockly.Msg.MATH_TRIG_ASIN = "asin"; // untranslated
+Blockly.Msg.MATH_TRIG_ATAN = "atan"; // untranslated
+Blockly.Msg.MATH_TRIG_COS = "cos"; // untranslated
+Blockly.Msg.MATH_TRIG_HELPURL = "https://da.wikipedia.org/wiki/Trigonometrisk_funktion";
+Blockly.Msg.MATH_TRIG_SIN = "sin"; // untranslated
+Blockly.Msg.MATH_TRIG_TAN = "tan"; // untranslated
+Blockly.Msg.MATH_TRIG_TOOLTIP_ACOS = "Returnere arcus cosinus af et tal.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ASIN = "Returnere arcus sinus af et tal.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ATAN = "Returnere arcus tangens af et tal.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_COS = "Returnere cosinus af en vinkel (i grader).";
+Blockly.Msg.MATH_TRIG_TOOLTIP_SIN = "Returnere sinus af en vinkel (i grader).";
+Blockly.Msg.MATH_TRIG_TOOLTIP_TAN = "Returnere tangens af en vinkel (i grader).";
+Blockly.Msg.NEW_VARIABLE = "Ny variabel...";
+Blockly.Msg.NEW_VARIABLE_TITLE = "Navn til den nye variabel:";
+Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; // untranslated
+Blockly.Msg.PROCEDURES_ALLOW_STATEMENTS = "tillad erklæringer";
+Blockly.Msg.PROCEDURES_BEFORE_PARAMS = "med:";
+Blockly.Msg.PROCEDURES_CALLNORETURN_HELPURL = "https://da.wikipedia.org/wiki/Funktion_%28programmering%29";
+Blockly.Msg.PROCEDURES_CALLNORETURN_TOOLTIP = "Kør den brugerdefinerede funktion '%1'.";
+Blockly.Msg.PROCEDURES_CALLRETURN_HELPURL = "https://da.wikipedia.org/wiki/Funktion_%28programmering%29";
+Blockly.Msg.PROCEDURES_CALLRETURN_TOOLTIP = "Kør den brugerdefinerede funktion '%1' og brug dens returværdi.";
+Blockly.Msg.PROCEDURES_CALL_BEFORE_PARAMS = "med:";
+Blockly.Msg.PROCEDURES_CREATE_DO = "Opret '%1'";
+Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT = "Beskriv denne funktion...";
+Blockly.Msg.PROCEDURES_DEFNORETURN_DO = ""; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE = "gøre noget";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE = "for at";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TOOLTIP = "Opretter en funktion der ikke har nogen returværdi.";
+Blockly.Msg.PROCEDURES_DEFRETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_DEFRETURN_RETURN = "returnér";
+Blockly.Msg.PROCEDURES_DEFRETURN_TOOLTIP = "Opretter en funktion der har en returværdi.";
+Blockly.Msg.PROCEDURES_DEF_DUPLICATE_WARNING = "Advarsel: Denne funktion har dublerede parametre.";
+Blockly.Msg.PROCEDURES_HIGHLIGHT_DEF = "Markér funktionsdefinitionen";
+Blockly.Msg.PROCEDURES_IFRETURN_HELPURL = "http://c2.com/cgi/wiki?GuardClause";
+Blockly.Msg.PROCEDURES_IFRETURN_TOOLTIP = "Hvis en værdi er sand, så returnér en anden værdi.";
+Blockly.Msg.PROCEDURES_IFRETURN_WARNING = "Advarsel: Denne blok kan kun anvendes inden for en funktionsdefinition.";
+Blockly.Msg.PROCEDURES_MUTATORARG_TITLE = "parameternavn:";
+Blockly.Msg.PROCEDURES_MUTATORARG_TOOLTIP = "Tilføj en parameter til funktionen.";
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TITLE = "parametre";
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TOOLTIP = "Tilføje, fjerne eller ændre rækkefølgen af parametre til denne funktion.";
+Blockly.Msg.REDO = "Redo"; // untranslated
+Blockly.Msg.REMOVE_COMMENT = "Fjern kommentar";
+Blockly.Msg.RENAME_VARIABLE = "Omdøb variabel...";
+Blockly.Msg.RENAME_VARIABLE_TITLE = "Omdøb alle '%1' variabler til:";
+Blockly.Msg.TEXT_APPEND_APPENDTEXT = "tilføj tekst";
+Blockly.Msg.TEXT_APPEND_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_APPEND_TO = "til";
+Blockly.Msg.TEXT_APPEND_TOOLTIP = "Tilføj noget tekst til variablen '%1'.";
+Blockly.Msg.TEXT_CHANGECASE_HELPURL = "https://github.com/google/blockly/wiki/Text#adjusting-text-case"; // untranslated
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_LOWERCASE = "til små bogstaver";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_TITLECASE = "til Stort Begyndelsesbogstav";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_UPPERCASE = "til STORE BOGSTAVER";
+Blockly.Msg.TEXT_CHANGECASE_TOOLTIP = "Returner en kopi af teksten hvor bogstaverne enten er udelukkende store eller små, eller hvor første bogstav i hvert ord er stort.";
+Blockly.Msg.TEXT_CHARAT_FIRST = "hent første bogstav";
+Blockly.Msg.TEXT_CHARAT_FROM_END = "hent bogstav # fra slutningen";
+Blockly.Msg.TEXT_CHARAT_FROM_START = "hent bogstav #";
+Blockly.Msg.TEXT_CHARAT_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-text"; // untranslated
+Blockly.Msg.TEXT_CHARAT_INPUT_INTEXT = "i teksten";
+Blockly.Msg.TEXT_CHARAT_LAST = "hent sidste bogstav";
+Blockly.Msg.TEXT_CHARAT_RANDOM = "hent tilfældigt bogstav";
+Blockly.Msg.TEXT_CHARAT_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_CHARAT_TOOLTIP = "Returnerer bogstavet på den angivne placering.";
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TOOLTIP = "Føj et element til teksten.";
+Blockly.Msg.TEXT_CREATE_JOIN_TITLE_JOIN = "sammenføj";
+Blockly.Msg.TEXT_CREATE_JOIN_TOOLTIP = "Tilføj, fjern eller byt om på rækkefølgen af delene for at konfigurere denne tekstblok.";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_END = "til bogstav # fra slutningen";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_START = "til bogstav #";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_LAST = "til sidste bogstav";
+Blockly.Msg.TEXT_GET_SUBSTRING_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_INPUT_IN_TEXT = "i teksten";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FIRST = "hent delstreng fra første bogstav";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_END = "hent delstreng fra bogstav # fra slutningen";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_START = "hent delstreng fra bogstav #";
+Blockly.Msg.TEXT_GET_SUBSTRING_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_TOOLTIP = "Returnerer den angivne del af teksten.";
+Blockly.Msg.TEXT_INDEXOF_HELPURL = "https://github.com/google/blockly/wiki/Text#finding-text"; // untranslated
+Blockly.Msg.TEXT_INDEXOF_INPUT_INTEXT = "i teksten";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_FIRST = "find første forekomst af teksten";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_LAST = "find sidste forekomst af teksten";
+Blockly.Msg.TEXT_INDEXOF_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_INDEXOF_TOOLTIP = "Returnerer indeks for første/sidste forekomst af første tekst i den anden tekst. Returnerer %1, hvis teksten ikke kan findes.";
+Blockly.Msg.TEXT_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Text#checking-for-empty-text"; // untranslated
+Blockly.Msg.TEXT_ISEMPTY_TITLE = "%1 er tom";
+Blockly.Msg.TEXT_ISEMPTY_TOOLTIP = "Returnerer sand, hvis den angivne tekst er tom.";
+Blockly.Msg.TEXT_JOIN_HELPURL = "https://github.com/google/blockly/wiki/Text#text-creation"; // untranslated
+Blockly.Msg.TEXT_JOIN_TITLE_CREATEWITH = "lav en tekst med";
+Blockly.Msg.TEXT_JOIN_TOOLTIP = "Lav et stykke tekst ved at sætte et antal elementer sammen.";
+Blockly.Msg.TEXT_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_LENGTH_TITLE = "længden af %1";
+Blockly.Msg.TEXT_LENGTH_TOOLTIP = "Returnerer antallet af bogstaver (herunder mellemrum) i den angivne tekst.";
+Blockly.Msg.TEXT_PRINT_HELPURL = "https://github.com/google/blockly/wiki/Text#printing-text"; // untranslated
+Blockly.Msg.TEXT_PRINT_TITLE = "skriv %1";
+Blockly.Msg.TEXT_PRINT_TOOLTIP = "Skriv den angivne tekst, tal eller anden værdi.";
+Blockly.Msg.TEXT_PROMPT_HELPURL = "https://github.com/google/blockly/wiki/Text#getting-input-from-the-user"; // untranslated
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_NUMBER = "Spørg brugeren efter et tal";
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_TEXT = "Spørg brugeren efter en tekst";
+Blockly.Msg.TEXT_PROMPT_TYPE_NUMBER = "spørg efter et tal med meddelelsen";
+Blockly.Msg.TEXT_PROMPT_TYPE_TEXT = "spørg efter tekst med meddelelsen";
+Blockly.Msg.TEXT_TEXT_HELPURL = "https://da.wikipedia.org/wiki/Tekststreng";
+Blockly.Msg.TEXT_TEXT_TOOLTIP = "En bogstav, et ord eller en linje med tekst.";
+Blockly.Msg.TEXT_TRIM_HELPURL = "https://github.com/google/blockly/wiki/Text#trimming-removing-spaces"; // untranslated
+Blockly.Msg.TEXT_TRIM_OPERATOR_BOTH = "fjern mellemrum fra begge sider af";
+Blockly.Msg.TEXT_TRIM_OPERATOR_LEFT = "fjern mellemrum fra venstre side af";
+Blockly.Msg.TEXT_TRIM_OPERATOR_RIGHT = "fjern mellemrum fra højre side af";
+Blockly.Msg.TEXT_TRIM_TOOLTIP = "Returner en kopi af teksten med mellemrum fjernet fra den ene eller begge sider.";
+Blockly.Msg.TODAY = "I dag";
+Blockly.Msg.UNDO = "Undo"; // untranslated
+Blockly.Msg.VARIABLES_DEFAULT_NAME = "element";
+Blockly.Msg.VARIABLES_GET_CREATE_SET = "Opret 'sæt %1'";
+Blockly.Msg.VARIABLES_GET_HELPURL = "https://github.com/google/blockly/wiki/Variables#get"; // untranslated
+Blockly.Msg.VARIABLES_GET_TOOLTIP = "Returnerer værdien af denne variabel.";
+Blockly.Msg.VARIABLES_SET = "sæt %1 til %2";
+Blockly.Msg.VARIABLES_SET_CREATE_GET = "Opret 'hent %1'";
+Blockly.Msg.VARIABLES_SET_HELPURL = "https://github.com/google/blockly/wiki/Variables#set"; // untranslated
+Blockly.Msg.VARIABLES_SET_TOOLTIP = "Sætter denne variabel til at være lig med input.";
+Blockly.Msg.VARIABLE_ALREADY_EXISTS = "A variable named '%1' already exists."; // untranslated
+Blockly.Msg.PROCEDURES_DEFRETURN_TITLE = Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE;
+Blockly.Msg.CONTROLS_IF_IF_TITLE_IF = Blockly.Msg.CONTROLS_IF_MSG_IF;
+Blockly.Msg.CONTROLS_WHILEUNTIL_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_MSG_THEN = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_ELSE_TITLE_ELSE = Blockly.Msg.CONTROLS_IF_MSG_ELSE;
+Blockly.Msg.PROCEDURES_DEFRETURN_PROCEDURE = Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE;
+Blockly.Msg.LISTS_GET_SUBLIST_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.LISTS_GET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.PROCEDURES_DEFRETURN_DO = Blockly.Msg.PROCEDURES_DEFNORETURN_DO;
+Blockly.Msg.CONTROLS_IF_ELSEIF_TITLE_ELSEIF = Blockly.Msg.CONTROLS_IF_MSG_ELSEIF;
+Blockly.Msg.LISTS_GET_INDEX_HELPURL = Blockly.Msg.LISTS_INDEX_OF_HELPURL;
+Blockly.Msg.CONTROLS_FOREACH_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_SET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TITLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_APPEND_VARIABLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.LISTS_INDEX_OF_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.PROCEDURES_DEFRETURN_COMMENT = Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT; \ No newline at end of file
diff --git a/blockly/msg/js/de.js b/blockly/msg/js/de.js
new file mode 100644
index 0000000..39bb1e3
--- /dev/null
+++ b/blockly/msg/js/de.js
@@ -0,0 +1,391 @@
+// This file was automatically generated. Do not modify.
+
+'use strict';
+
+goog.provide('Blockly.Msg.de');
+
+goog.require('Blockly.Msg');
+
+Blockly.Msg.ADD_COMMENT = "Kommentar hinzufügen";
+Blockly.Msg.CHANGE_VALUE_TITLE = "Wert ändern:";
+Blockly.Msg.CLEAN_UP = "Bausteine aufräumen";
+Blockly.Msg.COLLAPSE_ALL = "Alle Bausteine zusammenfalten";
+Blockly.Msg.COLLAPSE_BLOCK = "Baustein zusammenfalten";
+Blockly.Msg.COLOUR_BLEND_COLOUR1 = "Farbe 1";
+Blockly.Msg.COLOUR_BLEND_COLOUR2 = "und Farbe 2";
+Blockly.Msg.COLOUR_BLEND_HELPURL = "http://meyerweb.com/eric/tools/color-blend/";
+Blockly.Msg.COLOUR_BLEND_RATIO = "im Verhältnis";
+Blockly.Msg.COLOUR_BLEND_TITLE = "mische";
+Blockly.Msg.COLOUR_BLEND_TOOLTIP = "Vermischt 2 Farben mit konfigurierbarem Farbverhältnis (0.0 - 1.0).";
+Blockly.Msg.COLOUR_PICKER_HELPURL = "https://de.wikipedia.org/wiki/Farbe";
+Blockly.Msg.COLOUR_PICKER_TOOLTIP = "Erzeugt eine Farbe aus der Palette.";
+Blockly.Msg.COLOUR_RANDOM_HELPURL = "http://randomcolour.com"; // untranslated
+Blockly.Msg.COLOUR_RANDOM_TITLE = "zufällige Farbe";
+Blockly.Msg.COLOUR_RANDOM_TOOLTIP = "Erzeugt eine Farbe nach dem Zufallsprinzip.";
+Blockly.Msg.COLOUR_RGB_BLUE = "blau";
+Blockly.Msg.COLOUR_RGB_GREEN = "grün";
+Blockly.Msg.COLOUR_RGB_HELPURL = "https://de.wikipedia.org/wiki/RGB-Farbraum";
+Blockly.Msg.COLOUR_RGB_RED = "rot";
+Blockly.Msg.COLOUR_RGB_TITLE = "Farbe aus";
+Blockly.Msg.COLOUR_RGB_TOOLTIP = "Erzeugt eine Farbe mit selbst definierten Rot-, Grün- und Blauwerten. Alle Werte müssen zwischen 0 und 100 liegen.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_HELPURL = "https://de.wikipedia.org/wiki/Kontrollstruktur";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK = "die Schleife abbrechen";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE = "sofort mit nächstem Schleifendurchlauf fortfahren";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK = "Die umgebende Schleife beenden.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE = "Diese Anweisung abbrechen und mit dem nächsten Schleifendurchlauf fortfahren.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_WARNING = "Warnung: Dieser Baustein kann nur in einer Schleife verwendet werden.";
+Blockly.Msg.CONTROLS_FOREACH_HELPURL = "https://de.wikipedia.org/wiki/For-Schleife";
+Blockly.Msg.CONTROLS_FOREACH_TITLE = "für jeden Wert %1 aus der Liste %2";
+Blockly.Msg.CONTROLS_FOREACH_TOOLTIP = "Führt eine Anweisung für jeden Wert in der Liste aus und setzt dabei die Variable \"%1\" auf den aktuellen Listenwert.";
+Blockly.Msg.CONTROLS_FOR_HELPURL = "https://de.wikipedia.org/wiki/For-Schleife";
+Blockly.Msg.CONTROLS_FOR_TITLE = "zähle %1 von %2 bis %3 in Schritten von %4:";
+Blockly.Msg.CONTROLS_FOR_TOOLTIP = "Zählt die Variable \"%1\" von einem Startwert bis zu einem Endwert und führt für jeden Wert eine Anweisung aus.";
+Blockly.Msg.CONTROLS_IF_ELSEIF_TOOLTIP = "Eine weitere Bedingung hinzufügen.";
+Blockly.Msg.CONTROLS_IF_ELSE_TOOLTIP = "Eine sonst-Bedingung hinzufügen. Führt eine Anweisung aus, falls keine Bedingung zutrifft.";
+Blockly.Msg.CONTROLS_IF_HELPURL = "https://github.com/google/blockly/wiki/IfElse"; // untranslated
+Blockly.Msg.CONTROLS_IF_IF_TOOLTIP = "Hinzufügen, entfernen oder sortieren von Sektionen";
+Blockly.Msg.CONTROLS_IF_MSG_ELSE = "sonst";
+Blockly.Msg.CONTROLS_IF_MSG_ELSEIF = "sonst falls";
+Blockly.Msg.CONTROLS_IF_MSG_IF = "falls";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_1 = "Führt eine Anweisung aus, falls eine Bedingung wahr ist.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_2 = "Führt die erste Anweisung aus, falls eine Bedingung wahr ist. Führt ansonsten die zweite Anweisung aus.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_3 = "Führt die erste Anweisung aus, falls die erste Bedingung wahr ist. Führt ansonsten die zweite Anweisung aus, falls die zweite Bedingung wahr ist.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_4 = "Führe die erste Anweisung aus, falls die erste Bedingung wahr ist. Führt ansonsten die zweite Anweisung aus, falls die zweite Bedingung wahr ist. Führt die dritte Anweisung aus, falls keine der beiden Bedingungen wahr ist";
+Blockly.Msg.CONTROLS_REPEAT_HELPURL = "https://de.wikipedia.org/wiki/For-Schleife";
+Blockly.Msg.CONTROLS_REPEAT_INPUT_DO = "mache";
+Blockly.Msg.CONTROLS_REPEAT_TITLE = "wiederhole %1 mal:";
+Blockly.Msg.CONTROLS_REPEAT_TOOLTIP = "Eine Anweisung mehrfach ausführen.";
+Blockly.Msg.CONTROLS_WHILEUNTIL_HELPURL = "https://de.wikipedia.org/wiki/Schleife_%28Programmierung%29";
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "wiederhole bis";
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "wiederhole solange";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "Führt Anweisungen aus solange die Bedingung unwahr ist.";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "Führt Anweisungen aus solange die Bedingung wahr ist.";
+Blockly.Msg.DELETE_ALL_BLOCKS = "Alle %1 Bausteine löschen?";
+Blockly.Msg.DELETE_BLOCK = "Baustein löschen";
+Blockly.Msg.DELETE_VARIABLE = "Die Variable „%1“ löschen";
+Blockly.Msg.DELETE_VARIABLE_CONFIRMATION = "%1 Verwendungen der Variable „%2“ löschen?";
+Blockly.Msg.DELETE_X_BLOCKS = "Baustein %1 löschen";
+Blockly.Msg.DISABLE_BLOCK = "Baustein deaktivieren";
+Blockly.Msg.DUPLICATE_BLOCK = "Kopieren";
+Blockly.Msg.ENABLE_BLOCK = "Baustein aktivieren";
+Blockly.Msg.EXPAND_ALL = "Alle Bausteine entfalten";
+Blockly.Msg.EXPAND_BLOCK = "Baustein entfalten";
+Blockly.Msg.EXTERNAL_INPUTS = "externe Eingänge";
+Blockly.Msg.HELP = "Hilfe";
+Blockly.Msg.INLINE_INPUTS = "interne Eingänge";
+Blockly.Msg.LISTS_CREATE_EMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-empty-list";
+Blockly.Msg.LISTS_CREATE_EMPTY_TITLE = "erzeuge eine leere Liste";
+Blockly.Msg.LISTS_CREATE_EMPTY_TOOLTIP = "Erzeugt eine leere Liste ohne Inhalt.";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TITLE_ADD = "Liste";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TOOLTIP = "Hinzufügen, entfernen und sortieren von Elementen.";
+Blockly.Msg.LISTS_CREATE_WITH_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with";
+Blockly.Msg.LISTS_CREATE_WITH_INPUT_WITH = "erzeuge Liste mit";
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TOOLTIP = "Ein Element zur Liste hinzufügen.";
+Blockly.Msg.LISTS_CREATE_WITH_TOOLTIP = "Erzeugt eine Liste aus den angegebenen Elementen.";
+Blockly.Msg.LISTS_GET_INDEX_FIRST = "erstes";
+Blockly.Msg.LISTS_GET_INDEX_FROM_END = "#tes von hinten";
+Blockly.Msg.LISTS_GET_INDEX_FROM_START = "#tes";
+Blockly.Msg.LISTS_GET_INDEX_GET = "nimm";
+Blockly.Msg.LISTS_GET_INDEX_GET_REMOVE = "nimm und entferne";
+Blockly.Msg.LISTS_GET_INDEX_LAST = "letztes";
+Blockly.Msg.LISTS_GET_INDEX_RANDOM = "zufälliges";
+Blockly.Msg.LISTS_GET_INDEX_REMOVE = "entferne";
+Blockly.Msg.LISTS_GET_INDEX_TAIL = "";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FIRST = "Extrahiert das erste Element aus der Liste.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FROM = "Extrahiert das Element an der angegebenen Position in der Liste.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_LAST = "Extrahiert das letzte Element aus der Liste.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_RANDOM = "Extrahiert ein zufälliges Element aus der Liste.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST = "Extrahiert und entfernt das erste Element aus der Liste.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM = "Extrahiert und entfernt das Element an der angegebenen Position aus der Liste.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST = "Extrahiert und entfernt das letzte Element aus der Liste.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM = "Extrahiert und entfernt ein zufälliges Element aus der Liste.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST = "Entfernt das erste Element aus der Liste.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM = "Entfernt das Element an der angegebenen Position aus der Liste.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST = "Entfernt das letzte Element aus der Liste.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM = "Entfernt ein zufälliges Element aus der Liste.";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_END = "bis zu # von hinten";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_START = "bis zu #";
+Blockly.Msg.LISTS_GET_SUBLIST_END_LAST = "bis zum Ende";
+Blockly.Msg.LISTS_GET_SUBLIST_HELPURL = "http://publib.boulder.ibm.com/infocenter/lnxpcomp/v8v101/index.jsp?topic=%2Fcom.ibm.xlcpp8l.doc%2Flanguage%2Fref%2Farsubex.htm";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FIRST = "erhalte Unterliste vom Anfang";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_END = "erhalte Unterliste von # von hinten";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_START = "erhalte Unterliste von #";
+Blockly.Msg.LISTS_GET_SUBLIST_TAIL = "";
+Blockly.Msg.LISTS_GET_SUBLIST_TOOLTIP = "Erstellt eine Kopie mit dem angegebenen Abschnitt der Liste.";
+Blockly.Msg.LISTS_INDEX_FROM_END_TOOLTIP = "%1 ist das letzte Element.";
+Blockly.Msg.LISTS_INDEX_FROM_START_TOOLTIP = "%1 ist das erste Element.";
+Blockly.Msg.LISTS_INDEX_OF_FIRST = "suche erstes Auftreten von";
+Blockly.Msg.LISTS_INDEX_OF_HELPURL = "http://publib.boulder.ibm.com/infocenter/lnxpcomp/v8v101/index.jsp?topic=%2Fcom.ibm.xlcpp8l.doc%2Flanguage%2Fref%2Farsubex.htm";
+Blockly.Msg.LISTS_INDEX_OF_LAST = "suche letztes Auftreten von";
+Blockly.Msg.LISTS_INDEX_OF_TOOLTIP = "Sucht die Position (Index) eines Elementes in der Liste. Gibt %1 zurück, falls kein Element gefunden wurde.";
+Blockly.Msg.LISTS_INLIST = "in der Liste";
+Blockly.Msg.LISTS_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#is-empty"; // untranslated
+Blockly.Msg.LISTS_ISEMPTY_TITLE = "%1 ist leer";
+Blockly.Msg.LISTS_ISEMPTY_TOOLTIP = "Ist wahr, falls die Liste leer ist.";
+Blockly.Msg.LISTS_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Lists#length-of"; // untranslated
+Blockly.Msg.LISTS_LENGTH_TITLE = "Länge von %1";
+Blockly.Msg.LISTS_LENGTH_TOOLTIP = "Die Anzahl von Elementen in der Liste.";
+Blockly.Msg.LISTS_REPEAT_HELPURL = "http://publib.boulder.ibm.com/infocenter/lnxpcomp/v8v101/index.jsp?topic=%2Fcom.ibm.xlcpp8l.doc%2Flanguage%2Fref%2Farsubex.htm";
+Blockly.Msg.LISTS_REPEAT_TITLE = "erzeuge Liste mit %2 mal dem Element %1​";
+Blockly.Msg.LISTS_REPEAT_TOOLTIP = "Erzeugt eine Liste mit einer variablen Anzahl von Elementen";
+Blockly.Msg.LISTS_SET_INDEX_HELPURL = "http://publib.boulder.ibm.com/infocenter/lnxpcomp/v8v101/index.jsp?topic=%2Fcom.ibm.xlcpp8l.doc%2Flanguage%2Fref%2Farsubex.htm";
+Blockly.Msg.LISTS_SET_INDEX_INPUT_TO = "ein";
+Blockly.Msg.LISTS_SET_INDEX_INSERT = "füge als";
+Blockly.Msg.LISTS_SET_INDEX_SET = "setze für";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST = "Fügt das Element an den Anfang der Liste an.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FROM = "Fügt das Element an der angegebenen Position in die Liste ein.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_LAST = "Fügt das Element ans Ende der Liste an.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM = "Fügt das Element zufällig in die Liste ein.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FIRST = "Setzt das erste Element in der Liste.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FROM = "Setzt das Element an der angegebenen Position in der Liste.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_LAST = "Setzt das letzte Element in die Liste.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_RANDOM = "Setzt ein zufälliges Element in der Liste.";
+Blockly.Msg.LISTS_SORT_HELPURL = "https://github.com/google/blockly/wiki/Lists#sorting-a-list";
+Blockly.Msg.LISTS_SORT_ORDER_ASCENDING = "aufsteigend";
+Blockly.Msg.LISTS_SORT_ORDER_DESCENDING = "absteigend";
+Blockly.Msg.LISTS_SORT_TITLE = "%1 %2 %3 sortieren";
+Blockly.Msg.LISTS_SORT_TOOLTIP = "Eine Kopie einer Liste sortieren.";
+Blockly.Msg.LISTS_SORT_TYPE_IGNORECASE = "alphabetisch, Großschreibung ignorieren";
+Blockly.Msg.LISTS_SORT_TYPE_NUMERIC = "numerisch";
+Blockly.Msg.LISTS_SORT_TYPE_TEXT = "alphabetisch";
+Blockly.Msg.LISTS_SPLIT_HELPURL = "https://github.com/google/blockly/wiki/Lists#splitting-strings-and-joining-lists";
+Blockly.Msg.LISTS_SPLIT_LIST_FROM_TEXT = "Liste aus Text erstellen";
+Blockly.Msg.LISTS_SPLIT_TEXT_FROM_LIST = "Text aus Liste erstellen";
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_JOIN = "Liste mit Texten in einen Text vereinen, getrennt durch ein Trennzeichen.";
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_SPLIT = "Text in eine Liste mit Texten aufteilen, unterbrochen bei jedem Trennzeichen.";
+Blockly.Msg.LISTS_SPLIT_WITH_DELIMITER = "mit Trennzeichen";
+Blockly.Msg.LOGIC_BOOLEAN_FALSE = "unwahr";
+Blockly.Msg.LOGIC_BOOLEAN_HELPURL = "https://github.com/google/blockly/wiki/Logic#values"; // untranslated
+Blockly.Msg.LOGIC_BOOLEAN_TOOLTIP = "Ist entweder wahr oder unwahr";
+Blockly.Msg.LOGIC_BOOLEAN_TRUE = "wahr";
+Blockly.Msg.LOGIC_COMPARE_HELPURL = "https://de.wikipedia.org/wiki/Vergleich_%28Zahlen%29";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_EQ = "Ist wahr, falls beide Werte gleich sind.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GT = "Ist wahr, falls der erste Wert größer als der zweite Wert ist.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GTE = "Ist wahr, falls der erste Wert größer als oder gleich groß wie der zweite Wert ist.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LT = "Ist wahr, falls der erste Wert kleiner als der zweite Wert ist.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LTE = "Ist wahr, falls der erste Wert kleiner als oder gleich groß wie der zweite Wert ist.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_NEQ = "Ist wahr, falls beide Werte unterschiedlich sind.";
+Blockly.Msg.LOGIC_NEGATE_HELPURL = "https://github.com/google/blockly/wiki/Logic#not"; // untranslated
+Blockly.Msg.LOGIC_NEGATE_TITLE = "nicht %1";
+Blockly.Msg.LOGIC_NEGATE_TOOLTIP = "Ist wahr, falls der Eingabewert unwahr ist. Ist unwahr, falls der Eingabewert wahr ist.";
+Blockly.Msg.LOGIC_NULL = "null";
+Blockly.Msg.LOGIC_NULL_HELPURL = "https://de.wikipedia.org/wiki/Nullwert";
+Blockly.Msg.LOGIC_NULL_TOOLTIP = "Ist \"null\".";
+Blockly.Msg.LOGIC_OPERATION_AND = "und";
+Blockly.Msg.LOGIC_OPERATION_HELPURL = "https://github.com/google/blockly/wiki/Logic#logical-operations"; // untranslated
+Blockly.Msg.LOGIC_OPERATION_OR = "oder";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_AND = "Ist wahr, falls beide Werte wahr sind.";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_OR = "Ist wahr, falls einer der beiden Werte wahr ist.";
+Blockly.Msg.LOGIC_TERNARY_CONDITION = "prüfe";
+Blockly.Msg.LOGIC_TERNARY_HELPURL = "https://de.wikipedia.org/wiki/%3F:#Auswahloperator";
+Blockly.Msg.LOGIC_TERNARY_IF_FALSE = "falls unwahr";
+Blockly.Msg.LOGIC_TERNARY_IF_TRUE = "falls wahr";
+Blockly.Msg.LOGIC_TERNARY_TOOLTIP = "Überprüft eine Bedingung \"prüfe\". Falls die Bedingung wahr ist, wird der \"falls wahr\" Wert zurückgegeben, andernfalls der \"falls unwahr\" Wert";
+Blockly.Msg.MATH_ADDITION_SYMBOL = "+"; // untranslated
+Blockly.Msg.MATH_ARITHMETIC_HELPURL = "https://de.wikipedia.org/wiki/Grundrechenart";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_ADD = "Ist die Summe zweier Zahlen.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE = "Ist der Quotient zweier Zahlen.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MINUS = "Ist die Differenz zweier Zahlen.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MULTIPLY = "Ist das Produkt zweier Zahlen.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_POWER = "Ist die erste Zahl potenziert mit der zweiten Zahl.";
+Blockly.Msg.MATH_CHANGE_HELPURL = "https://de.wikipedia.org/wiki/Inkrement_und_Dekrement";
+Blockly.Msg.MATH_CHANGE_TITLE = "erhöhe %1 um %2";
+Blockly.Msg.MATH_CHANGE_TOOLTIP = "Addiert eine Zahl zu \"%1\".";
+Blockly.Msg.MATH_CONSTANT_HELPURL = "https://de.wikipedia.org/wiki/Mathematische_Konstante";
+Blockly.Msg.MATH_CONSTANT_TOOLTIP = "Mathematische Konstanten wie: π (3.141…), e (2.718…), φ (1.618…), sqrt(2) (1.414…), sqrt(½) (0.707…) oder ∞ (unendlich).";
+Blockly.Msg.MATH_CONSTRAIN_HELPURL = "https://en.wikipedia.org/wiki/Clamping_%28graphics%29"; // untranslated
+Blockly.Msg.MATH_CONSTRAIN_TITLE = "begrenze %1 zwischen %2 und %3";
+Blockly.Msg.MATH_CONSTRAIN_TOOLTIP = "Begrenzt eine Zahl auf den Wertebereich zwischen zwei anderen Zahlen (inklusiv).";
+Blockly.Msg.MATH_DIVISION_SYMBOL = "÷"; // untranslated
+Blockly.Msg.MATH_IS_DIVISIBLE_BY = "ist teilbar durch";
+Blockly.Msg.MATH_IS_EVEN = "ist gerade";
+Blockly.Msg.MATH_IS_NEGATIVE = "ist negativ";
+Blockly.Msg.MATH_IS_ODD = "ist ungerade";
+Blockly.Msg.MATH_IS_POSITIVE = "ist positiv";
+Blockly.Msg.MATH_IS_PRIME = "ist eine Primzahl";
+Blockly.Msg.MATH_IS_TOOLTIP = "Überprüft ob eine Zahl gerade, ungerade, eine Primzahl, ganzzahlig, positiv, negativ oder durch eine zweite Zahl teilbar ist. Gibt wahr oder unwahr zurück.";
+Blockly.Msg.MATH_IS_WHOLE = "ist eine ganze Zahl";
+Blockly.Msg.MATH_MODULO_HELPURL = "https://de.wikipedia.org/wiki/Modulo";
+Blockly.Msg.MATH_MODULO_TITLE = "Rest von %1 ÷ %2";
+Blockly.Msg.MATH_MODULO_TOOLTIP = "Der Rest nach einer Division.";
+Blockly.Msg.MATH_MULTIPLICATION_SYMBOL = "×"; // untranslated
+Blockly.Msg.MATH_NUMBER_HELPURL = "https://de.wikipedia.org/wiki/Zahl";
+Blockly.Msg.MATH_NUMBER_TOOLTIP = "Eine Zahl.";
+Blockly.Msg.MATH_ONLIST_HELPURL = "http://www.sysplus.ch/einstieg.php?links=menu&seite=4125&grad=Crash&prog=Excel";
+Blockly.Msg.MATH_ONLIST_OPERATOR_AVERAGE = "Mittelwert der Liste";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MAX = "Maximalwert der Liste";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MEDIAN = "Median der Liste";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MIN = "Minimalwert der Liste";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MODE = "am häufigsten in der Liste";
+Blockly.Msg.MATH_ONLIST_OPERATOR_RANDOM = "Zufallswert aus der Liste";
+Blockly.Msg.MATH_ONLIST_OPERATOR_STD_DEV = "Standardabweichung der Liste";
+Blockly.Msg.MATH_ONLIST_OPERATOR_SUM = "Summe über die Liste";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_AVERAGE = "Ist der Durchschnittswert aller Zahlen in einer Liste.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MAX = "Ist die größte Zahl in einer Liste.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MEDIAN = "Ist der Median aller Zahlen in einer Liste.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MIN = "Ist die kleinste Zahl in einer Liste.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MODE = "Findet die Werte mit dem häufigstem Vorkommen in der Liste.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_RANDOM = "Gibt einen zufälligen Wert aus der Liste zurück.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_STD_DEV = "Ist die Standardabweichung aller Werte in der Liste.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_SUM = "Ist die Summe aller Zahlen in einer Liste.";
+Blockly.Msg.MATH_POWER_SYMBOL = "^"; // untranslated
+Blockly.Msg.MATH_RANDOM_FLOAT_HELPURL = "https://de.wikipedia.org/wiki/Zufallszahlen";
+Blockly.Msg.MATH_RANDOM_FLOAT_TITLE_RANDOM = "Zufallszahl (0.0 - 1.0)";
+Blockly.Msg.MATH_RANDOM_FLOAT_TOOLTIP = "Erzeugt eine Zufallszahl zwischen 0.0 (inklusiv) und 1.0 (exklusiv).";
+Blockly.Msg.MATH_RANDOM_INT_HELPURL = "https://de.wikipedia.org/wiki/Zufallszahlen";
+Blockly.Msg.MATH_RANDOM_INT_TITLE = "ganzzahlige Zufallszahl zwischen %1 und %2";
+Blockly.Msg.MATH_RANDOM_INT_TOOLTIP = "Erzeugt eine ganzzahlige Zufallszahl zwischen zwei Zahlen (inklusiv).";
+Blockly.Msg.MATH_ROUND_HELPURL = "https://de.wikipedia.org/wiki/Runden";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUND = "runde";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDDOWN = "runde ab";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDUP = "runde auf";
+Blockly.Msg.MATH_ROUND_TOOLTIP = "Eine Zahl auf- oder abrunden.";
+Blockly.Msg.MATH_SINGLE_HELPURL = "https://de.wikipedia.org/wiki/Quadratwurzel";
+Blockly.Msg.MATH_SINGLE_OP_ABSOLUTE = "Betrag";
+Blockly.Msg.MATH_SINGLE_OP_ROOT = "Quadratwurzel";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ABS = "Ist der Betrag einer Zahl.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_EXP = "Ist Wert der Exponentialfunktion einer Zahl.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LN = "Ist der natürliche Logarithmus einer Zahl.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LOG10 = "Ist der dekadische Logarithmus einer Zahl.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_NEG = "Negiert eine Zahl.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_POW10 = "Rechnet 10 hoch eine Zahl.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ROOT = "Ist die Quadratwurzel einer Zahl.";
+Blockly.Msg.MATH_SUBTRACTION_SYMBOL = "-"; // untranslated
+Blockly.Msg.MATH_TRIG_ACOS = "acos"; // untranslated
+Blockly.Msg.MATH_TRIG_ASIN = "asin"; // untranslated
+Blockly.Msg.MATH_TRIG_ATAN = "atan"; // untranslated
+Blockly.Msg.MATH_TRIG_COS = "cos"; // untranslated
+Blockly.Msg.MATH_TRIG_HELPURL = "https://de.wikipedia.org/wiki/Trigonometrie";
+Blockly.Msg.MATH_TRIG_SIN = "sin"; // untranslated
+Blockly.Msg.MATH_TRIG_TAN = "tan"; // untranslated
+Blockly.Msg.MATH_TRIG_TOOLTIP_ACOS = "Ist der Arkuskosinus des Eingabewertes.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ASIN = "Ist der Arkussinus des Eingabewertes.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ATAN = "Ist der Arkustangens des Eingabewertes.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_COS = "Ist der Kosinus des Winkels.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_SIN = "Ist der Sinus des Winkels.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_TAN = "Ist der Tangens des Winkels.";
+Blockly.Msg.NEW_VARIABLE = "Variable erstellen …";
+Blockly.Msg.NEW_VARIABLE_TITLE = "Name der neuen Variable:";
+Blockly.Msg.ORDINAL_NUMBER_SUFFIX = "";
+Blockly.Msg.PROCEDURES_ALLOW_STATEMENTS = "Aussagen erlauben";
+Blockly.Msg.PROCEDURES_BEFORE_PARAMS = "mit:";
+Blockly.Msg.PROCEDURES_CALLNORETURN_HELPURL = "https://de.wikipedia.org/wiki/Prozedur_%28Programmierung%29";
+Blockly.Msg.PROCEDURES_CALLNORETURN_TOOLTIP = "Rufe einen Funktionsblock ohne Rückgabewert auf.";
+Blockly.Msg.PROCEDURES_CALLRETURN_HELPURL = "https://de.wikipedia.org/wiki/Prozedur_%28Programmierung%29";
+Blockly.Msg.PROCEDURES_CALLRETURN_TOOLTIP = "Rufe einen Funktionsblock mit Rückgabewert auf.";
+Blockly.Msg.PROCEDURES_CALL_BEFORE_PARAMS = "mit:";
+Blockly.Msg.PROCEDURES_CREATE_DO = "Erzeuge \"Aufruf %1\"";
+Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT = "Beschreibe diese Funktion …";
+Blockly.Msg.PROCEDURES_DEFNORETURN_DO = "";
+Blockly.Msg.PROCEDURES_DEFNORETURN_HELPURL = "https://de.wikipedia.org/wiki/Prozedur_%28Programmierung%29";
+Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE = "etwas tun";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE = "";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TOOLTIP = "Ein Funktionsblock ohne Rückgabewert.";
+Blockly.Msg.PROCEDURES_DEFRETURN_HELPURL = "https://de.wikipedia.org/wiki/Prozedur_%28Programmierung%29";
+Blockly.Msg.PROCEDURES_DEFRETURN_RETURN = "gebe zurück";
+Blockly.Msg.PROCEDURES_DEFRETURN_TOOLTIP = "Ein Funktionsblock mit Rückgabewert.";
+Blockly.Msg.PROCEDURES_DEF_DUPLICATE_WARNING = "Warnung: dieser Funktionsblock hat zwei gleich benannte Parameter.";
+Blockly.Msg.PROCEDURES_HIGHLIGHT_DEF = "Markiere Funktionsblock";
+Blockly.Msg.PROCEDURES_IFRETURN_HELPURL = "http://c2.com/cgi/wiki?GuardClause";
+Blockly.Msg.PROCEDURES_IFRETURN_TOOLTIP = "Gibt den zweiten Wert zurück und verlässt die Funktion, falls der erste Wert wahr ist.";
+Blockly.Msg.PROCEDURES_IFRETURN_WARNING = "Warnung: Dieser Block darf nur innerhalb eines Funktionsblocks genutzt werden.";
+Blockly.Msg.PROCEDURES_MUTATORARG_TITLE = "Variable:";
+Blockly.Msg.PROCEDURES_MUTATORARG_TOOLTIP = "Eine Eingabe zur Funktion hinzufügen.";
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TITLE = "Parameter";
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TOOLTIP = "Die Eingaben zu dieser Funktion hinzufügen, entfernen oder neu anordnen.";
+Blockly.Msg.REDO = "Wiederholen";
+Blockly.Msg.REMOVE_COMMENT = "Kommentar entfernen";
+Blockly.Msg.RENAME_VARIABLE = "Variable umbenennen …";
+Blockly.Msg.RENAME_VARIABLE_TITLE = "Alle \"%1\" Variablen umbenennen in:";
+Blockly.Msg.TEXT_APPEND_APPENDTEXT = "Text anhängen";
+Blockly.Msg.TEXT_APPEND_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_APPEND_TO = "an";
+Blockly.Msg.TEXT_APPEND_TOOLTIP = "Text an die Variable \"%1\" anhängen.";
+Blockly.Msg.TEXT_CHANGECASE_HELPURL = "https://github.com/google/blockly/wiki/Text#adjusting-text-case"; // untranslated
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_LOWERCASE = "wandel um in kleinbuchstaben";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_TITLECASE = "wandel um in Substantive";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_UPPERCASE = "wandel um in GROSSBUCHSTABEN";
+Blockly.Msg.TEXT_CHANGECASE_TOOLTIP = "Wandelt Schreibweise von Texten um, in Großbuchstaben, Kleinbuchstaben oder den ersten Buchstaben jedes Wortes groß und die anderen klein.";
+Blockly.Msg.TEXT_CHARAT_FIRST = "nehme ersten Buchstaben";
+Blockly.Msg.TEXT_CHARAT_FROM_END = "nehme #ten Buchstaben von hinten";
+Blockly.Msg.TEXT_CHARAT_FROM_START = "nehme #ten Buchstaben";
+Blockly.Msg.TEXT_CHARAT_HELPURL = "http://publib.boulder.ibm.com/infocenter/lnxpcomp/v8v101/index.jsp?topic=%2Fcom.ibm.xlcpp8l.doc%2Flanguage%2Fref%2Farsubex.htm";
+Blockly.Msg.TEXT_CHARAT_INPUT_INTEXT = "vom Text";
+Blockly.Msg.TEXT_CHARAT_LAST = "nehme letzten Buchstaben";
+Blockly.Msg.TEXT_CHARAT_RANDOM = "nehme zufälligen Buchstaben";
+Blockly.Msg.TEXT_CHARAT_TAIL = "";
+Blockly.Msg.TEXT_CHARAT_TOOLTIP = "Extrahiert einen Buchstaben von einer bestimmten Position.";
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TOOLTIP = "Ein Element zum Text hinzufügen.";
+Blockly.Msg.TEXT_CREATE_JOIN_TITLE_JOIN = "verbinden";
+Blockly.Msg.TEXT_CREATE_JOIN_TOOLTIP = "Hinzufügen, entfernen und sortieren von Elementen.";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_END = "bis zum #ten Buchstaben von hinten";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_START = "bis zum #ten Buchstaben";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_LAST = "bis zum letzten Buchstaben";
+Blockly.Msg.TEXT_GET_SUBSTRING_HELPURL = "http://publib.boulder.ibm.com/infocenter/lnxpcomp/v8v101/index.jsp?topic=%2Fcom.ibm.xlcpp8l.doc%2Flanguage%2Fref%2Farsubex.htm";
+Blockly.Msg.TEXT_GET_SUBSTRING_INPUT_IN_TEXT = "im Text";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FIRST = "nehme Teil ab erstem Buchstaben";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_END = "nehme Teil ab #tem Buchstaben von hinten";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_START = "nehme Teil ab #tem Buchstaben";
+Blockly.Msg.TEXT_GET_SUBSTRING_TAIL = "";
+Blockly.Msg.TEXT_GET_SUBSTRING_TOOLTIP = "Gibt den angegebenen Textabschnitt zurück.";
+Blockly.Msg.TEXT_INDEXOF_HELPURL = "http://publib.boulder.ibm.com/infocenter/lnxpcomp/v8v101/index.jsp?topic=%2Fcom.ibm.xlcpp8l.doc%2Flanguage%2Fref%2Farsubex.htm";
+Blockly.Msg.TEXT_INDEXOF_INPUT_INTEXT = "im Text";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_FIRST = "suche erstes Auftreten des Begriffs";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_LAST = "suche letztes Auftreten des Begriffs";
+Blockly.Msg.TEXT_INDEXOF_TAIL = "";
+Blockly.Msg.TEXT_INDEXOF_TOOLTIP = "Findet das erste / letzte Auftreten eines Suchbegriffs in einem Text. Gibt die Position des Begriffs zurück oder %1 falls der Suchbegriff nicht gefunden wurde.";
+Blockly.Msg.TEXT_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Text#checking-for-empty-text"; // untranslated
+Blockly.Msg.TEXT_ISEMPTY_TITLE = "%1 ist leer";
+Blockly.Msg.TEXT_ISEMPTY_TOOLTIP = "Ist wahr, falls der Text keine Zeichen enthält ist.";
+Blockly.Msg.TEXT_JOIN_HELPURL = "";
+Blockly.Msg.TEXT_JOIN_TITLE_CREATEWITH = "erstelle Text aus";
+Blockly.Msg.TEXT_JOIN_TOOLTIP = "Erstellt einen Text durch das Verbinden von mehreren Textelementen.";
+Blockly.Msg.TEXT_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_LENGTH_TITLE = "Länge von %1";
+Blockly.Msg.TEXT_LENGTH_TOOLTIP = "Die Anzahl von Zeichen in einem Text (inkl. Leerzeichen).";
+Blockly.Msg.TEXT_PRINT_HELPURL = "https://github.com/google/blockly/wiki/Text#printing-text"; // untranslated
+Blockly.Msg.TEXT_PRINT_TITLE = "gib aus %1";
+Blockly.Msg.TEXT_PRINT_TOOLTIP = "Gibt den Text aus.";
+Blockly.Msg.TEXT_PROMPT_HELPURL = "https://github.com/google/blockly/wiki/Text#getting-input-from-the-user"; // untranslated
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_NUMBER = "Fragt den Benutzer nach einer Zahl.";
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_TEXT = "Fragt den Benutzer nach einem Text.";
+Blockly.Msg.TEXT_PROMPT_TYPE_NUMBER = "frage nach Zahl mit Hinweis";
+Blockly.Msg.TEXT_PROMPT_TYPE_TEXT = "frage nach Text mit Hinweis";
+Blockly.Msg.TEXT_TEXT_HELPURL = "https://de.wikipedia.org/wiki/Zeichenkette";
+Blockly.Msg.TEXT_TEXT_TOOLTIP = "Ein Buchstabe, Text oder Satz.";
+Blockly.Msg.TEXT_TRIM_HELPURL = "https://github.com/google/blockly/wiki/Text#trimming-removing-spaces"; // untranslated
+Blockly.Msg.TEXT_TRIM_OPERATOR_BOTH = "entferne Leerzeichen vom Anfang und vom Ende (links und rechts)";
+Blockly.Msg.TEXT_TRIM_OPERATOR_LEFT = "entferne Leerzeichen vom Anfang (links)";
+Blockly.Msg.TEXT_TRIM_OPERATOR_RIGHT = "entferne Leerzeichen vom Ende (rechts)";
+Blockly.Msg.TEXT_TRIM_TOOLTIP = "Entfernt Leerzeichen vom Anfang und / oder Ende eines Textes.";
+Blockly.Msg.TODAY = "Heute";
+Blockly.Msg.UNDO = "Rückgängig";
+Blockly.Msg.VARIABLES_DEFAULT_NAME = "etwas";
+Blockly.Msg.VARIABLES_GET_CREATE_SET = "Erzeuge \"Schreibe %1\"";
+Blockly.Msg.VARIABLES_GET_HELPURL = "https://de.wikipedia.org/wiki/Variable_%28Programmierung%29";
+Blockly.Msg.VARIABLES_GET_TOOLTIP = "Gibt den Wert der Variable zurück.";
+Blockly.Msg.VARIABLES_SET = "setze %1 auf %2";
+Blockly.Msg.VARIABLES_SET_CREATE_GET = "Erzeuge \"Lese %1\"";
+Blockly.Msg.VARIABLES_SET_HELPURL = "https://de.wikipedia.org/wiki/Variable_%28Programmierung%29";
+Blockly.Msg.VARIABLES_SET_TOOLTIP = "Setzt den Wert einer Variable.";
+Blockly.Msg.VARIABLE_ALREADY_EXISTS = "Eine Variable namens „%1“ ist bereits vorhanden.";
+Blockly.Msg.PROCEDURES_DEFRETURN_TITLE = Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE;
+Blockly.Msg.CONTROLS_IF_IF_TITLE_IF = Blockly.Msg.CONTROLS_IF_MSG_IF;
+Blockly.Msg.CONTROLS_WHILEUNTIL_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_MSG_THEN = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_ELSE_TITLE_ELSE = Blockly.Msg.CONTROLS_IF_MSG_ELSE;
+Blockly.Msg.PROCEDURES_DEFRETURN_PROCEDURE = Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE;
+Blockly.Msg.LISTS_GET_SUBLIST_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.LISTS_GET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.PROCEDURES_DEFRETURN_DO = Blockly.Msg.PROCEDURES_DEFNORETURN_DO;
+Blockly.Msg.CONTROLS_IF_ELSEIF_TITLE_ELSEIF = Blockly.Msg.CONTROLS_IF_MSG_ELSEIF;
+Blockly.Msg.LISTS_GET_INDEX_HELPURL = Blockly.Msg.LISTS_INDEX_OF_HELPURL;
+Blockly.Msg.CONTROLS_FOREACH_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_SET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TITLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_APPEND_VARIABLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.LISTS_INDEX_OF_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.PROCEDURES_DEFRETURN_COMMENT = Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT; \ No newline at end of file
diff --git a/blockly/msg/js/diq.js b/blockly/msg/js/diq.js
new file mode 100644
index 0000000..7d9f563
--- /dev/null
+++ b/blockly/msg/js/diq.js
@@ -0,0 +1,391 @@
+// This file was automatically generated. Do not modify.
+
+'use strict';
+
+goog.provide('Blockly.Msg.diq');
+
+goog.require('Blockly.Msg');
+
+Blockly.Msg.ADD_COMMENT = "Tefsir cı ke";
+Blockly.Msg.CHANGE_VALUE_TITLE = "Erci bıvurne:";
+Blockly.Msg.CLEAN_UP = "Blokan pak ke";
+Blockly.Msg.COLLAPSE_ALL = "Blokan teng ke";
+Blockly.Msg.COLLAPSE_BLOCK = "Bloki teng ke";
+Blockly.Msg.COLOUR_BLEND_COLOUR1 = "reng 1";
+Blockly.Msg.COLOUR_BLEND_COLOUR2 = "reng 2";
+Blockly.Msg.COLOUR_BLEND_HELPURL = "http://meyerweb.com/eric/tools/color-blend/"; // untranslated
+Blockly.Msg.COLOUR_BLEND_RATIO = "nısbet";
+Blockly.Msg.COLOUR_BLEND_TITLE = "tewde";
+Blockly.Msg.COLOUR_BLEND_TOOLTIP = "Blends two colours together with a given ratio (0.0 - 1.0)."; // untranslated
+Blockly.Msg.COLOUR_PICKER_HELPURL = "https://diq.wikipedia.org/wiki/Reng";
+Blockly.Msg.COLOUR_PICKER_TOOLTIP = "Choose a colour from the palette."; // untranslated
+Blockly.Msg.COLOUR_RANDOM_HELPURL = "http://randomcolour.com"; // untranslated
+Blockly.Msg.COLOUR_RANDOM_TITLE = "rengo rastameye";
+Blockly.Msg.COLOUR_RANDOM_TOOLTIP = "Tesadufi yu ren bıweçin";
+Blockly.Msg.COLOUR_RGB_BLUE = "kewe";
+Blockly.Msg.COLOUR_RGB_GREEN = "kıho";
+Blockly.Msg.COLOUR_RGB_HELPURL = "http://www.december.com/html/spec/colorper.html"; // untranslated
+Blockly.Msg.COLOUR_RGB_RED = "sur";
+Blockly.Msg.COLOUR_RGB_TITLE = "komponentên rengan";
+Blockly.Msg.COLOUR_RGB_TOOLTIP = "Create a colour with the specified amount of red, green, and blue. All values must be between 0 and 100."; // untranslated
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_HELPURL = "https://github.com/google/blockly/wiki/Loops#loop-termination-blocks"; // untranslated
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK = "Çerxen ra vec";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE = "Gama bin da çerxeni ra dewam ke";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK = "Öujtewada çerxeni ra bıvıci";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE = "Skip the rest of this loop, and continue with the next iteration."; // untranslated
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_WARNING = "Warning: This block may only be used within a loop."; // untranslated
+Blockly.Msg.CONTROLS_FOREACH_HELPURL = "https://github.com/google/blockly/wiki/Loops#for-each"; // untranslated
+Blockly.Msg.CONTROLS_FOREACH_TITLE = "for each item %1 in list %2"; // untranslated
+Blockly.Msg.CONTROLS_FOREACH_TOOLTIP = "For each item in a list, set the variable '%1' to the item, and then do some statements."; // untranslated
+Blockly.Msg.CONTROLS_FOR_HELPURL = "https://github.com/google/blockly/wiki/Loops#count-with"; // untranslated
+Blockly.Msg.CONTROLS_FOR_TITLE = "count with %1 from %2 to %3 by %4"; // untranslated
+Blockly.Msg.CONTROLS_FOR_TOOLTIP = "Have the variable '%1' take on the values from the start number to the end number, counting by the specified interval, and do the specified blocks."; // untranslated
+Blockly.Msg.CONTROLS_IF_ELSEIF_TOOLTIP = "Bloq da if'i rê yu şert dekerê de.";
+Blockly.Msg.CONTROLS_IF_ELSE_TOOLTIP = "Add a final, catch-all condition to the if block."; // untranslated
+Blockly.Msg.CONTROLS_IF_HELPURL = "https://github.com/google/blockly/wiki/IfElse"; // untranslated
+Blockly.Msg.CONTROLS_IF_IF_TOOLTIP = "Add, remove, or reorder sections to reconfigure this if block."; // untranslated
+Blockly.Msg.CONTROLS_IF_MSG_ELSE = "çıniyose";
+Blockly.Msg.CONTROLS_IF_MSG_ELSEIF = "niyose";
+Blockly.Msg.CONTROLS_IF_MSG_IF = "se";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_1 = "If a value is true, then do some statements."; // untranslated
+Blockly.Msg.CONTROLS_IF_TOOLTIP_2 = "If a value is true, then do the first block of statements. Otherwise, do the second block of statements."; // untranslated
+Blockly.Msg.CONTROLS_IF_TOOLTIP_3 = "If the first value is true, then do the first block of statements. Otherwise, if the second value is true, do the second block of statements."; // untranslated
+Blockly.Msg.CONTROLS_IF_TOOLTIP_4 = "If the first value is true, then do the first block of statements. Otherwise, if the second value is true, do the second block of statements. If none of the values are true, do the last block of statements."; // untranslated
+Blockly.Msg.CONTROLS_REPEAT_HELPURL = "https://en.wikipedia.org/wiki/For_loop";
+Blockly.Msg.CONTROLS_REPEAT_INPUT_DO = "bıke";
+Blockly.Msg.CONTROLS_REPEAT_TITLE = "%1 fıni tekrar ke";
+Blockly.Msg.CONTROLS_REPEAT_TOOLTIP = "Do some statements several times."; // untranslated
+Blockly.Msg.CONTROLS_WHILEUNTIL_HELPURL = "https://github.com/google/blockly/wiki/Loops#repeat"; // untranslated
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "hend tekrar ke";
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "Tekrar kerdış de";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "Yew erc xırabo se tay beyanati bıd";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "Yew erc raşto se yu beyanat bıd.";
+Blockly.Msg.DELETE_ALL_BLOCKS = "Pêro %1 bloki besteriyê?";
+Blockly.Msg.DELETE_BLOCK = "Bloki bestere";
+Blockly.Msg.DELETE_VARIABLE = "Delete the '%1' variable"; // untranslated
+Blockly.Msg.DELETE_VARIABLE_CONFIRMATION = "Delete %1 uses of the '%2' variable?"; // untranslated
+Blockly.Msg.DELETE_X_BLOCKS = "%1 blokan bestere";
+Blockly.Msg.DISABLE_BLOCK = "Çengi devre ra vec";
+Blockly.Msg.DUPLICATE_BLOCK = "Zewnc";
+Blockly.Msg.ENABLE_BLOCK = "Bloki feal ke";
+Blockly.Msg.EXPAND_ALL = "Blokan hera ke";
+Blockly.Msg.EXPAND_BLOCK = "Bloki hera ke";
+Blockly.Msg.EXTERNAL_INPUTS = "Cıkewtışê xarıciy";
+Blockly.Msg.HELP = "Peşti";
+Blockly.Msg.INLINE_INPUTS = "Cıkerdışê xomiyani";
+Blockly.Msg.LISTS_CREATE_EMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-empty-list"; // untranslated
+Blockly.Msg.LISTS_CREATE_EMPTY_TITLE = "lista venge vıraze";
+Blockly.Msg.LISTS_CREATE_EMPTY_TOOLTIP = "Returns a list, of length 0, containing no data records"; // untranslated
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TITLE_ADD = "liste";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TOOLTIP = "Add, remove, or reorder sections to reconfigure this list block."; // untranslated
+Blockly.Msg.LISTS_CREATE_WITH_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
+Blockly.Msg.LISTS_CREATE_WITH_INPUT_WITH = "create list with"; // untranslated
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TOOLTIP = "Yew nesne dekerê lista miyan";
+Blockly.Msg.LISTS_CREATE_WITH_TOOLTIP = "Create a list with any number of items."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_FIRST = "verên";
+Blockly.Msg.LISTS_GET_INDEX_FROM_END = "# peyniye ra";
+Blockly.Msg.LISTS_GET_INDEX_FROM_START = "#"; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_GET = "bıgê";
+Blockly.Msg.LISTS_GET_INDEX_GET_REMOVE = "Bıgi u wedarne";
+Blockly.Msg.LISTS_GET_INDEX_LAST = "peyên";
+Blockly.Msg.LISTS_GET_INDEX_RANDOM = "raştameye";
+Blockly.Msg.LISTS_GET_INDEX_REMOVE = "wedare";
+Blockly.Msg.LISTS_GET_INDEX_TAIL = ""; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FIRST = "Returns the first item in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FROM = "Returns the item at the specified position in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_LAST = "Returns the last item in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_RANDOM = "Returns a random item in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST = "Removes and returns the first item in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM = "Removes and returns the item at the specified position in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST = "Removes and returns the last item in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM = "Removes and returns a random item in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST = "Removes the first item in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM = "Removes the item at the specified position in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST = "Removes the last item in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM = "Removes a random item in a list."; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_END = "Peyni # ra hetana";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_START = "#'ya";
+Blockly.Msg.LISTS_GET_SUBLIST_END_LAST = "Hetana pey";
+Blockly.Msg.LISTS_GET_SUBLIST_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-a-sublist"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_START_FIRST = "get sub-list from first"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_END = "get sub-list from # from end"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_START = "get sub-list from #"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_TAIL = ""; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_TOOLTIP = "Creates a copy of the specified portion of a list."; // untranslated
+Blockly.Msg.LISTS_INDEX_FROM_END_TOOLTIP = "%1 objeyo peyên o";
+Blockly.Msg.LISTS_INDEX_FROM_START_TOOLTIP = "%1 objeyo sıfteyên o";
+Blockly.Msg.LISTS_INDEX_OF_FIRST = "Sıfte bıyayena cay obcey bıvin";
+Blockly.Msg.LISTS_INDEX_OF_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-items-from-a-list"; // untranslated
+Blockly.Msg.LISTS_INDEX_OF_LAST = "find last occurrence of item"; // untranslated
+Blockly.Msg.LISTS_INDEX_OF_TOOLTIP = "Returns the index of the first/last occurrence of the item in the list. Returns %1 if item is not found."; // untranslated
+Blockly.Msg.LISTS_INLIST = "lista de";
+Blockly.Msg.LISTS_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#is-empty"; // untranslated
+Blockly.Msg.LISTS_ISEMPTY_TITLE = "%1 vengo";
+Blockly.Msg.LISTS_ISEMPTY_TOOLTIP = "Eger kı lista venga se raşt keno çerğ";
+Blockly.Msg.LISTS_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Lists#length-of"; // untranslated
+Blockly.Msg.LISTS_LENGTH_TITLE = "length of %1"; // untranslated
+Blockly.Msg.LISTS_LENGTH_TOOLTIP = "Derganiya yu lister dano.";
+Blockly.Msg.LISTS_REPEAT_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
+Blockly.Msg.LISTS_REPEAT_TITLE = "create list with item %1 repeated %2 times"; // untranslated
+Blockly.Msg.LISTS_REPEAT_TOOLTIP = "Creates a list consisting of the given value repeated the specified number of times."; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_HELPURL = "https://github.com/google/blockly/wiki/Lists#in-list--set"; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_INPUT_TO = "zey";
+Blockly.Msg.LISTS_SET_INDEX_INSERT = "De fi";
+Blockly.Msg.LISTS_SET_INDEX_SET = "ca ke";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST = "Inserts the item at the start of a list."; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FROM = "Inserts the item at the specified position in a list."; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_LAST = "Append the item to the end of a list."; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM = "Inserts the item randomly in a list."; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FIRST = "Sets the first item in a list."; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FROM = "Sets the item at the specified position in a list."; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_LAST = "Sets the last item in a list."; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_RANDOM = "Sets a random item in a list."; // untranslated
+Blockly.Msg.LISTS_SORT_HELPURL = "https://github.com/google/blockly/wiki/Lists#sorting-a-list";
+Blockly.Msg.LISTS_SORT_ORDER_ASCENDING = "zeydıyen";
+Blockly.Msg.LISTS_SORT_ORDER_DESCENDING = "Kemeyen";
+Blockly.Msg.LISTS_SORT_TITLE = "Kılm %1 %2 %3";
+Blockly.Msg.LISTS_SORT_TOOLTIP = "Sort a copy of a list."; // untranslated
+Blockly.Msg.LISTS_SORT_TYPE_IGNORECASE = "alphabetic, ignore case"; // untranslated
+Blockly.Msg.LISTS_SORT_TYPE_NUMERIC = "Amoriyal";
+Blockly.Msg.LISTS_SORT_TYPE_TEXT = "Alfabetik";
+Blockly.Msg.LISTS_SPLIT_HELPURL = "https://github.com/google/blockly/wiki/Lists#splitting-strings-and-joining-lists"; // untranslated
+Blockly.Msg.LISTS_SPLIT_LIST_FROM_TEXT = "make list from text"; // untranslated
+Blockly.Msg.LISTS_SPLIT_TEXT_FROM_LIST = "make text from list"; // untranslated
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_JOIN = "Join a list of texts into one text, separated by a delimiter."; // untranslated
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_SPLIT = "Split text into a list of texts, breaking at each delimiter."; // untranslated
+Blockly.Msg.LISTS_SPLIT_WITH_DELIMITER = "Hududoxi ya";
+Blockly.Msg.LOGIC_BOOLEAN_FALSE = "ğelet";
+Blockly.Msg.LOGIC_BOOLEAN_HELPURL = "https://github.com/google/blockly/wiki/Logic#values"; // untranslated
+Blockly.Msg.LOGIC_BOOLEAN_TOOLTIP = "Raşt yana çep erc dano";
+Blockly.Msg.LOGIC_BOOLEAN_TRUE = "raşt";
+Blockly.Msg.LOGIC_COMPARE_HELPURL = "https://en.wikipedia.org/wiki/Inequality_(mathematics)"; // untranslated
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_EQ = "Return true if both inputs equal each other."; // untranslated
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GT = "Return true if the first input is greater than the second input."; // untranslated
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GTE = "Return true if the first input is greater than or equal to the second input."; // untranslated
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LT = "Return true if the first input is smaller than the second input."; // untranslated
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LTE = "Return true if the first input is smaller than or equal to the second input."; // untranslated
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_NEQ = "Return true if both inputs are not equal to each other."; // untranslated
+Blockly.Msg.LOGIC_NEGATE_HELPURL = "https://github.com/google/blockly/wiki/Logic#not"; // untranslated
+Blockly.Msg.LOGIC_NEGATE_TITLE = "%1 niyo";
+Blockly.Msg.LOGIC_NEGATE_TOOLTIP = "Returns true if the input is false. Returns false if the input is true."; // untranslated
+Blockly.Msg.LOGIC_NULL = "veng";
+Blockly.Msg.LOGIC_NULL_HELPURL = "https://en.wikipedia.org/wiki/Nullable_type"; // untranslated
+Blockly.Msg.LOGIC_NULL_TOOLTIP = "Veng çarneno ra.";
+Blockly.Msg.LOGIC_OPERATION_AND = "û";
+Blockly.Msg.LOGIC_OPERATION_HELPURL = "https://github.com/google/blockly/wiki/Logic#logical-operations"; // untranslated
+Blockly.Msg.LOGIC_OPERATION_OR = "ya zi";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_AND = "Return true if both inputs are true."; // untranslated
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_OR = "Return true if at least one of the inputs is true."; // untranslated
+Blockly.Msg.LOGIC_TERNARY_CONDITION = "test";
+Blockly.Msg.LOGIC_TERNARY_HELPURL = "https://en.wikipedia.org/wiki/%3F:"; // untranslated
+Blockly.Msg.LOGIC_TERNARY_IF_FALSE = "eke ğeleto";
+Blockly.Msg.LOGIC_TERNARY_IF_TRUE = "eke raşto";
+Blockly.Msg.LOGIC_TERNARY_TOOLTIP = "Şerta'test'i test keno. Eger ke şert raşta se erca 'raşt'i çarneno, çepo se erca 'çep' çarneno.";
+Blockly.Msg.MATH_ADDITION_SYMBOL = "+"; // untranslated
+Blockly.Msg.MATH_ARITHMETIC_HELPURL = "https://en.wikipedia.org/wiki/Aritmetik";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_ADD = "Return the sum of the two numbers."; // untranslated
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE = "Return the quotient of the two numbers."; // untranslated
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MINUS = "Return the difference of the two numbers."; // untranslated
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MULTIPLY = "Return the product of the two numbers."; // untranslated
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_POWER = "Return the first number raised to the power of the second number."; // untranslated
+Blockly.Msg.MATH_CHANGE_HELPURL = "https://en.wikipedia.org/wiki/Programming_idiom#Incrementing_a_counter";
+Blockly.Msg.MATH_CHANGE_TITLE = "%2, keno %1 vurneno";
+Blockly.Msg.MATH_CHANGE_TOOLTIP = "Add a number to variable '%1'."; // untranslated
+Blockly.Msg.MATH_CONSTANT_HELPURL = "https://en.wikipedia.org/wiki/Mathematical_constant";
+Blockly.Msg.MATH_CONSTANT_TOOLTIP = "Heryen sabitan ra yewi çerx ke:π (3.141…), e (2.718…), φ (1.618…), sqrt(2) (1.414…), sqrt(½) (0.707…), or ∞ (bêsonp).";
+Blockly.Msg.MATH_CONSTRAIN_HELPURL = "https://en.wikipedia.org/wiki/Clamping_%28graphics%29"; // untranslated
+Blockly.Msg.MATH_CONSTRAIN_TITLE = "constrain %1 low %2 high %3"; // untranslated
+Blockly.Msg.MATH_CONSTRAIN_TOOLTIP = "Constrain a number to be between the specified limits (inclusive)."; // untranslated
+Blockly.Msg.MATH_DIVISION_SYMBOL = "÷"; // untranslated
+Blockly.Msg.MATH_IS_DIVISIBLE_BY = "Leteyêno";
+Blockly.Msg.MATH_IS_EVEN = "zewnco";
+Blockly.Msg.MATH_IS_NEGATIVE = "negatifo";
+Blockly.Msg.MATH_IS_ODD = "kıto";
+Blockly.Msg.MATH_IS_POSITIVE = "pozitifo";
+Blockly.Msg.MATH_IS_PRIME = "bıngehên";
+Blockly.Msg.MATH_IS_TOOLTIP = "Check if a number is an even, odd, prime, whole, positive, negative, or if it is divisible by certain number. Returns true or false."; // untranslated
+Blockly.Msg.MATH_IS_WHOLE = "tamo";
+Blockly.Msg.MATH_MODULO_HELPURL = "https://en.wikipedia.org/wiki/Modulo_operation";
+Blockly.Msg.MATH_MODULO_TITLE = "%1 ÷ %2 ra menden";
+Blockly.Msg.MATH_MODULO_TOOLTIP = "Dı amoran ra amora menden çerx ke";
+Blockly.Msg.MATH_MULTIPLICATION_SYMBOL = "×"; // untranslated
+Blockly.Msg.MATH_NUMBER_HELPURL = "https://diq.wikipedia.org/wiki/Numre";
+Blockly.Msg.MATH_NUMBER_TOOLTIP = "Yew numre.";
+Blockly.Msg.MATH_ONLIST_HELPURL = ""; // untranslated
+Blockly.Msg.MATH_ONLIST_OPERATOR_AVERAGE = "Averacê lista";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MAX = "Tewr gırdê lista";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MEDIAN = "Wertey lista";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MIN = "Tewr qıcê lista";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MODE = "listey modi";
+Blockly.Msg.MATH_ONLIST_OPERATOR_RANDOM = "Raştamaye objeya lista";
+Blockly.Msg.MATH_ONLIST_OPERATOR_STD_DEV = "standard deviation of list"; // untranslated
+Blockly.Msg.MATH_ONLIST_OPERATOR_SUM = "koma liste";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_AVERAGE = "Return the average (arithmetic mean) of the numeric values in the list."; // untranslated
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MAX = "Return the largest number in the list."; // untranslated
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MEDIAN = "Return the median number in the list."; // untranslated
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MIN = "Return the smallest number in the list."; // untranslated
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MODE = "Return a list of the most common item(s) in the list."; // untranslated
+Blockly.Msg.MATH_ONLIST_TOOLTIP_RANDOM = "Liste ra raştamaye yew elementi çerx ke";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_STD_DEV = "Return the standard deviation of the list."; // untranslated
+Blockly.Msg.MATH_ONLIST_TOOLTIP_SUM = "Return the sum of all the numbers in the list."; // untranslated
+Blockly.Msg.MATH_POWER_SYMBOL = "^"; // untranslated
+Blockly.Msg.MATH_RANDOM_FLOAT_HELPURL = "https://en.wikipedia.org/wiki/Random_number_generation";
+Blockly.Msg.MATH_RANDOM_FLOAT_TITLE_RANDOM = "Raştamaye nimande amor";
+Blockly.Msg.MATH_RANDOM_FLOAT_TOOLTIP = "Return a random fraction between 0.0 (inclusive) and 1.0 (exclusive)."; // untranslated
+Blockly.Msg.MATH_RANDOM_INT_HELPURL = "https://en.wikipedia.org/wiki/Random_number_generation";
+Blockly.Msg.MATH_RANDOM_INT_TITLE = "random integer from %1 to %2"; // untranslated
+Blockly.Msg.MATH_RANDOM_INT_TOOLTIP = "Return a random integer between the two specified limits, inclusive."; // untranslated
+Blockly.Msg.MATH_ROUND_HELPURL = "https://en.wikipedia.org/wiki/Rounding";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUND = "gılor ke";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDDOWN = "Loğê cêri ke";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDUP = "Loğê cori ke";
+Blockly.Msg.MATH_ROUND_TOOLTIP = "Yu amorer loğê cêri yana cori ke";
+Blockly.Msg.MATH_SINGLE_HELPURL = "https://en.wikipedia.org/wiki/Square_root";
+Blockly.Msg.MATH_SINGLE_OP_ABSOLUTE = "mutlaq";
+Blockly.Msg.MATH_SINGLE_OP_ROOT = "karekok";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ABS = "Return the absolute value of a number."; // untranslated
+Blockly.Msg.MATH_SINGLE_TOOLTIP_EXP = "Return e to the power of a number."; // untranslated
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LN = "Return the natural logarithm of a number."; // untranslated
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LOG10 = "Return the base 10 logarithm of a number."; // untranslated
+Blockly.Msg.MATH_SINGLE_TOOLTIP_NEG = "Ena amorer nêravêrde deyne çerx ke.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_POW10 = "Return 10 to the power of a number."; // untranslated
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ROOT = "Return the square root of a number."; // untranslated
+Blockly.Msg.MATH_SUBTRACTION_SYMBOL = "-"; // untranslated
+Blockly.Msg.MATH_TRIG_ACOS = "acos"; // untranslated
+Blockly.Msg.MATH_TRIG_ASIN = "asin"; // untranslated
+Blockly.Msg.MATH_TRIG_ATAN = "atan"; // untranslated
+Blockly.Msg.MATH_TRIG_COS = "cos"; // untranslated
+Blockly.Msg.MATH_TRIG_HELPURL = "https://en.wikipedia.org/wiki/Trigonometric_functions"; // untranslated
+Blockly.Msg.MATH_TRIG_SIN = "sin"; // untranslated
+Blockly.Msg.MATH_TRIG_TAN = "tan"; // untranslated
+Blockly.Msg.MATH_TRIG_TOOLTIP_ACOS = "Return the arccosine of a number."; // untranslated
+Blockly.Msg.MATH_TRIG_TOOLTIP_ASIN = "Return the arcsine of a number."; // untranslated
+Blockly.Msg.MATH_TRIG_TOOLTIP_ATAN = "Return the arctangent of a number."; // untranslated
+Blockly.Msg.MATH_TRIG_TOOLTIP_COS = "Return the cosine of a degree (not radian)."; // untranslated
+Blockly.Msg.MATH_TRIG_TOOLTIP_SIN = "Return the sine of a degree (not radian)."; // untranslated
+Blockly.Msg.MATH_TRIG_TOOLTIP_TAN = "Return the tangent of a degree (not radian)."; // untranslated
+Blockly.Msg.NEW_VARIABLE = "Vuriyayeyo bıvıraz...";
+Blockly.Msg.NEW_VARIABLE_TITLE = "Namey vuriyayeyê newi:";
+Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; // untranslated
+Blockly.Msg.PROCEDURES_ALLOW_STATEMENTS = "Çıyan rê mısafe bıd";
+Blockly.Msg.PROCEDURES_BEFORE_PARAMS = "ebe:";
+Blockly.Msg.PROCEDURES_CALLNORETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_CALLNORETURN_TOOLTIP = "Run the user-defined function '%1'."; // untranslated
+Blockly.Msg.PROCEDURES_CALLRETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_CALLRETURN_TOOLTIP = "Run the user-defined function '%1' and use its output."; // untranslated
+Blockly.Msg.PROCEDURES_CALL_BEFORE_PARAMS = "ebe:";
+Blockly.Msg.PROCEDURES_CREATE_DO = "'%1' vıraze";
+Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT = "Nê fonksiyoni beyan ke...";
+Blockly.Msg.PROCEDURES_DEFNORETURN_DO = ""; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE = "Çıyê bık";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE = "rê";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TOOLTIP = "Yew fonksiyono çap nêdate vırazeno";
+Blockly.Msg.PROCEDURES_DEFRETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_DEFRETURN_RETURN = "peyser biya";
+Blockly.Msg.PROCEDURES_DEFRETURN_TOOLTIP = "Yew fonksiyono çap daye vırazeno";
+Blockly.Msg.PROCEDURES_DEF_DUPLICATE_WARNING = "Warning: This function has duplicate parameters."; // untranslated
+Blockly.Msg.PROCEDURES_HIGHLIGHT_DEF = "Highlight function definition"; // untranslated
+Blockly.Msg.PROCEDURES_IFRETURN_HELPURL = "http://c2.com/cgi/wiki?GuardClause"; // untranslated
+Blockly.Msg.PROCEDURES_IFRETURN_TOOLTIP = "If a value is true, then return a second value."; // untranslated
+Blockly.Msg.PROCEDURES_IFRETURN_WARNING = "Warning: This block may be used only within a function definition."; // untranslated
+Blockly.Msg.PROCEDURES_MUTATORARG_TITLE = "nameyê cıkewtışi:";
+Blockly.Msg.PROCEDURES_MUTATORARG_TOOLTIP = "Add an input to the function."; // untranslated
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TITLE = "cıkewtışi";
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TOOLTIP = "Add, remove, or reorder inputs to this function."; // untranslated
+Blockly.Msg.REDO = "Newe ke";
+Blockly.Msg.REMOVE_COMMENT = "Tefsiri Wedare";
+Blockly.Msg.RENAME_VARIABLE = "Vuriyayey fına name ke...";
+Blockly.Msg.RENAME_VARIABLE_TITLE = "Rename all '%1' variables to:"; // untranslated
+Blockly.Msg.TEXT_APPEND_APPENDTEXT = "Metin dek";
+Blockly.Msg.TEXT_APPEND_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_APPEND_TO = "rê";
+Blockly.Msg.TEXT_APPEND_TOOLTIP = "Append some text to variable '%1'."; // untranslated
+Blockly.Msg.TEXT_CHANGECASE_HELPURL = "https://github.com/google/blockly/wiki/Text#adjusting-text-case"; // untranslated
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_LOWERCASE = "Herfanê werdiyana";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_TITLECASE = "Ser herf gırd";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_UPPERCASE = "HERFANÊ GIRDANA";
+Blockly.Msg.TEXT_CHANGECASE_TOOLTIP = "Return a copy of the text in a different case."; // untranslated
+Blockly.Msg.TEXT_CHARAT_FIRST = "Herfa sıfti bıgi";
+Blockly.Msg.TEXT_CHARAT_FROM_END = "# ra tepya herfan bıgi";
+Blockly.Msg.TEXT_CHARAT_FROM_START = "Herfa # bıgi";
+Blockly.Msg.TEXT_CHARAT_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-text"; // untranslated
+Blockly.Msg.TEXT_CHARAT_INPUT_INTEXT = "metın de";
+Blockly.Msg.TEXT_CHARAT_LAST = "Herfa peyên bıgi";
+Blockly.Msg.TEXT_CHARAT_RANDOM = "Raştamaye yu herf bıgi";
+Blockly.Msg.TEXT_CHARAT_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_CHARAT_TOOLTIP = "Şınasnaye pozisyon de yu herfer çerğ keno";
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TOOLTIP = "Add an item to the text."; // untranslated
+Blockly.Msg.TEXT_CREATE_JOIN_TITLE_JOIN = "gıre de";
+Blockly.Msg.TEXT_CREATE_JOIN_TOOLTIP = "Add, remove, or reorder sections to reconfigure this text block."; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_END = "to letter # from end"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_START = "to letter #"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_END_LAST = "to last letter"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_INPUT_IN_TEXT = "metın de";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FIRST = "get substring from first letter"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_END = "get substring from letter # from end"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_START = "# ra substring gêno";
+Blockly.Msg.TEXT_GET_SUBSTRING_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_TOOLTIP = "Tay letey metini çerğ keno";
+Blockly.Msg.TEXT_INDEXOF_HELPURL = "https://github.com/google/blockly/wiki/Text#finding-text"; // untranslated
+Blockly.Msg.TEXT_INDEXOF_INPUT_INTEXT = "metın de";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_FIRST = "find first occurrence of text"; // untranslated
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_LAST = "find last occurrence of text"; // untranslated
+Blockly.Msg.TEXT_INDEXOF_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_INDEXOF_TOOLTIP = "Returns the index of the first/last occurrence of the first text in the second text. Returns %1 if text is not found."; // untranslated
+Blockly.Msg.TEXT_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Text#checking-for-empty-text"; // untranslated
+Blockly.Msg.TEXT_ISEMPTY_TITLE = "%1 vengo";
+Blockly.Msg.TEXT_ISEMPTY_TOOLTIP = "Returns true if the provided text is empty."; // untranslated
+Blockly.Msg.TEXT_JOIN_HELPURL = "https://github.com/google/blockly/wiki/Text#text-creation"; // untranslated
+Blockly.Msg.TEXT_JOIN_TITLE_CREATEWITH = "ya metin vıraz";
+Blockly.Msg.TEXT_JOIN_TOOLTIP = "Create a piece of text by joining together any number of items."; // untranslated
+Blockly.Msg.TEXT_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_LENGTH_TITLE = "length of %1"; // untranslated
+Blockly.Msg.TEXT_LENGTH_TOOLTIP = "Returns the number of letters (including spaces) in the provided text."; // untranslated
+Blockly.Msg.TEXT_PRINT_HELPURL = "https://github.com/google/blockly/wiki/Text#printing-text"; // untranslated
+Blockly.Msg.TEXT_PRINT_TITLE = "print %1"; // untranslated
+Blockly.Msg.TEXT_PRINT_TOOLTIP = "Print the specified text, number or other value."; // untranslated
+Blockly.Msg.TEXT_PROMPT_HELPURL = "https://github.com/google/blockly/wiki/Text#getting-input-from-the-user"; // untranslated
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_NUMBER = "Prompt for user for a number."; // untranslated
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_TEXT = "Prompt for user for some text."; // untranslated
+Blockly.Msg.TEXT_PROMPT_TYPE_NUMBER = "prompt for number with message"; // untranslated
+Blockly.Msg.TEXT_PROMPT_TYPE_TEXT = "prompt for text with message"; // untranslated
+Blockly.Msg.TEXT_TEXT_HELPURL = "https://en.wikipedia.org/wiki/String_(computer_science)";
+Blockly.Msg.TEXT_TEXT_TOOLTIP = "Yu herfa, satır yana çekuya metini";
+Blockly.Msg.TEXT_TRIM_HELPURL = "https://github.com/google/blockly/wiki/Text#trimming-removing-spaces"; // untranslated
+Blockly.Msg.TEXT_TRIM_OPERATOR_BOTH = "trim spaces from both sides of"; // untranslated
+Blockly.Msg.TEXT_TRIM_OPERATOR_LEFT = "trim spaces from left side of"; // untranslated
+Blockly.Msg.TEXT_TRIM_OPERATOR_RIGHT = "trim spaces from right side of"; // untranslated
+Blockly.Msg.TEXT_TRIM_TOOLTIP = "Return a copy of the text with spaces removed from one or both ends."; // untranslated
+Blockly.Msg.TODAY = "Ewro";
+Blockly.Msg.UNDO = "Peyser biya";
+Blockly.Msg.VARIABLES_DEFAULT_NAME = "unsur";
+Blockly.Msg.VARIABLES_GET_CREATE_SET = "Create 'set %1'"; // untranslated
+Blockly.Msg.VARIABLES_GET_HELPURL = "https://github.com/google/blockly/wiki/Variables#get"; // untranslated
+Blockly.Msg.VARIABLES_GET_TOOLTIP = "Returns the value of this variable."; // untranslated
+Blockly.Msg.VARIABLES_SET = "set %1 to %2"; // untranslated
+Blockly.Msg.VARIABLES_SET_CREATE_GET = "'get %1' vıraz";
+Blockly.Msg.VARIABLES_SET_HELPURL = "https://github.com/google/blockly/wiki/Variables#set"; // untranslated
+Blockly.Msg.VARIABLES_SET_TOOLTIP = "Sets this variable to be equal to the input."; // untranslated
+Blockly.Msg.VARIABLE_ALREADY_EXISTS = "A variable named '%1' already exists."; // untranslated
+Blockly.Msg.PROCEDURES_DEFRETURN_TITLE = Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE;
+Blockly.Msg.CONTROLS_IF_IF_TITLE_IF = Blockly.Msg.CONTROLS_IF_MSG_IF;
+Blockly.Msg.CONTROLS_WHILEUNTIL_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_MSG_THEN = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_ELSE_TITLE_ELSE = Blockly.Msg.CONTROLS_IF_MSG_ELSE;
+Blockly.Msg.PROCEDURES_DEFRETURN_PROCEDURE = Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE;
+Blockly.Msg.LISTS_GET_SUBLIST_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.LISTS_GET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.PROCEDURES_DEFRETURN_DO = Blockly.Msg.PROCEDURES_DEFNORETURN_DO;
+Blockly.Msg.CONTROLS_IF_ELSEIF_TITLE_ELSEIF = Blockly.Msg.CONTROLS_IF_MSG_ELSEIF;
+Blockly.Msg.LISTS_GET_INDEX_HELPURL = Blockly.Msg.LISTS_INDEX_OF_HELPURL;
+Blockly.Msg.CONTROLS_FOREACH_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_SET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TITLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_APPEND_VARIABLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.LISTS_INDEX_OF_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.PROCEDURES_DEFRETURN_COMMENT = Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT; \ No newline at end of file
diff --git a/blockly/msg/js/el.js b/blockly/msg/js/el.js
new file mode 100644
index 0000000..0445c9b
--- /dev/null
+++ b/blockly/msg/js/el.js
@@ -0,0 +1,391 @@
+// This file was automatically generated. Do not modify.
+
+'use strict';
+
+goog.provide('Blockly.Msg.el');
+
+goog.require('Blockly.Msg');
+
+Blockly.Msg.ADD_COMMENT = "Πρόσθεσε Το Σχόλιο";
+Blockly.Msg.CHANGE_VALUE_TITLE = "Άλλαξε την τιμή:";
+Blockly.Msg.CLEAN_UP = "Clean up Blocks"; // untranslated
+Blockly.Msg.COLLAPSE_ALL = "Σύμπτυξτε Όλα Τα Μπλοκ";
+Blockly.Msg.COLLAPSE_BLOCK = "Σύμπτυξε Το Μπλοκ";
+Blockly.Msg.COLOUR_BLEND_COLOUR1 = "χρώμα 1";
+Blockly.Msg.COLOUR_BLEND_COLOUR2 = "χρώμα 2";
+Blockly.Msg.COLOUR_BLEND_HELPURL = "http://meyerweb.com/eric/tools/color-blend/";
+Blockly.Msg.COLOUR_BLEND_RATIO = "αναλογία";
+Blockly.Msg.COLOUR_BLEND_TITLE = "μείγμα";
+Blockly.Msg.COLOUR_BLEND_TOOLTIP = "Συνδυάζει δύο χρώματα μαζί με μια δεδομένη αναλογία (0.0 - 1,0).";
+Blockly.Msg.COLOUR_PICKER_HELPURL = "https://el.wikipedia.org/wiki/%CE%A7%CF%81%CF%8E%CE%BC%CE%B1";
+Blockly.Msg.COLOUR_PICKER_TOOLTIP = "Επιτρέπει επιλογή χρώματος από την παλέτα.";
+Blockly.Msg.COLOUR_RANDOM_HELPURL = "http://randomcolour.com"; // untranslated
+Blockly.Msg.COLOUR_RANDOM_TITLE = "τυχαίο χρώμα";
+Blockly.Msg.COLOUR_RANDOM_TOOLTIP = "Επιλέγει χρώμα τυχαία.";
+Blockly.Msg.COLOUR_RGB_BLUE = "μπλε";
+Blockly.Msg.COLOUR_RGB_GREEN = "πράσινο";
+Blockly.Msg.COLOUR_RGB_HELPURL = "http://www.december.com/html/spec/colorper.html";
+Blockly.Msg.COLOUR_RGB_RED = "κόκκινο";
+Blockly.Msg.COLOUR_RGB_TITLE = "χρώμα με";
+Blockly.Msg.COLOUR_RGB_TOOLTIP = "Δημιουργεί χρώμα με το συγκεκριμένο ποσό του κόκκινου, πράσινου και μπλε που ορίζεις. Όλες οι τιμές πρέπει να είναι μεταξύ 0 και 100.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_HELPURL = "https://github.com/google/blockly/wiki/Loops#loop-termination-blocks"; // untranslated
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK = "φεύγει από το μπλοκ επαναλήψεως";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE = "συνέχισε με την επόμενη επανάληψη του μπλοκ επαναλήψεως";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK = "Ξεφεύγει (βγαίνει έξω) από την επανάληψη.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE = "Παραλείπει το υπόλοιπο τμήμα αυτού του μπλοκ επαναλήψεως, και συνεχίζει με την επόμενη επανάληψη.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_WARNING = "Προειδοποίηση: Αυτό το μπλοκ μπορεί να χρησιμοποιηθεί μόνο μέσα σε μια επανάληψη.";
+Blockly.Msg.CONTROLS_FOREACH_HELPURL = "https://github.com/google/blockly/wiki/Loops#for-each"; // untranslated
+Blockly.Msg.CONTROLS_FOREACH_TITLE = "για κάθε στοιχείο %1 στη λίστα %2";
+Blockly.Msg.CONTROLS_FOREACH_TOOLTIP = "Για κάθε στοιχείο σε μια λίστα, ορίζει τη μεταβλητή «%1» στο στοιχείο και, στη συνέχεια, εκτελεί κάποιες εντολές.";
+Blockly.Msg.CONTROLS_FOR_HELPURL = "Blockly";
+Blockly.Msg.CONTROLS_FOR_TITLE = "μέτρησε με %1 από το %2 έως το %3 ανά %4";
+Blockly.Msg.CONTROLS_FOR_TOOLTIP = "Η μεταβλητή «%1» παίρνει τιμές ξεκινώντας από τον αριθμό έναρξης μέχρι τον αριθμό τέλους αυξάνοντας κάθε φορά με το καθορισμένο βήμα και εκτελώντας το καθορισμένο μπλοκ.";
+Blockly.Msg.CONTROLS_IF_ELSEIF_TOOLTIP = "Πρόσθετει μια κατάσταση/συνθήκη στο μπλοκ «εάν».";
+Blockly.Msg.CONTROLS_IF_ELSE_TOOLTIP = "Προσθέτει μια τελική κατάσταση/συνθήκη, που πιάνει όλες τις άλλες περιπτώσεις, στο μπλοκ «εάν».";
+Blockly.Msg.CONTROLS_IF_HELPURL = "https://github.com/google/blockly/wiki/IfElse"; // untranslated
+Blockly.Msg.CONTROLS_IF_IF_TOOLTIP = "Προσθέτει, αφαιρεί ή αναδιατάσσει τα τμήματα για να αναδιαμορφώσει αυτό το μπλοκ «εάν».";
+Blockly.Msg.CONTROLS_IF_MSG_ELSE = "αλλιώς";
+Blockly.Msg.CONTROLS_IF_MSG_ELSEIF = "εναλλακτικά εάν";
+Blockly.Msg.CONTROLS_IF_MSG_IF = "εάν";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_1 = "Αν μια τιμή είναι αληθής, τότε εκτελεί κάποιες εντολές.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_2 = "Αν μια τιμή είναι αληθής, τότε εκτελεί το πρώτο τμήμα εντολών. Διαφορετικά, εκτελεί το δεύτερο τμήμα εντολών.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_3 = "Αν η πρώτη τιμή είναι αληθής, τότε εκτελεί το πρώτο τμήμα εντολών. Διαφορετικά, αν η δεύτερη τιμή είναι αληθής, εκτελεί το δεύτερο μπλοκ εντολών.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_4 = "Αν η πρώτη τιμή είναι αληθής, τότε εκτελεί το πρώτο τμήμα εντολών. Διαφορετικά, αν η δεύτερη τιμή είναι αληθής, εκτελεί το δεύτερο τμήμα εντολών. Αν καμία από τις τιμές δεν είναι αληθής, εκτελεί το τελευταίο τμήμα εντολών.";
+Blockly.Msg.CONTROLS_REPEAT_HELPURL = "https://en.wikipedia.org/wiki/For_loop";
+Blockly.Msg.CONTROLS_REPEAT_INPUT_DO = "κάνε";
+Blockly.Msg.CONTROLS_REPEAT_TITLE = "επανάλαβε %1 φορές";
+Blockly.Msg.CONTROLS_REPEAT_TOOLTIP = "Εκτελεί κάποιες εντολές αρκετές φορές.";
+Blockly.Msg.CONTROLS_WHILEUNTIL_HELPURL = "https://github.com/google/blockly/wiki/Loops#repeat"; // untranslated
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "επανάλαβε μέχρι";
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "επανάλαβε ενώ";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "Ενόσω μια τιμή είναι ψευδής, τότε εκτελεί κάποιες εντολές.";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "Ενόσω μια τιμή είναι αληθής, τότε εκτελεί κάποιες εντολές.";
+Blockly.Msg.DELETE_ALL_BLOCKS = "Να διαγραφούν και τα %1 μπλοκ?";
+Blockly.Msg.DELETE_BLOCK = "Διέγραψε Το Μπλοκ";
+Blockly.Msg.DELETE_VARIABLE = "Delete the '%1' variable"; // untranslated
+Blockly.Msg.DELETE_VARIABLE_CONFIRMATION = "Delete %1 uses of the '%2' variable?"; // untranslated
+Blockly.Msg.DELETE_X_BLOCKS = "Διέγραψε %1 Μπλοκ";
+Blockly.Msg.DISABLE_BLOCK = "Απενεργοποίησε Το Μπλοκ";
+Blockly.Msg.DUPLICATE_BLOCK = "Διπλότυπο";
+Blockly.Msg.ENABLE_BLOCK = "Ενεργοποίησε Το Μπλοκ";
+Blockly.Msg.EXPAND_ALL = "Επέκτεινε Όλα Τα Μπλοκ";
+Blockly.Msg.EXPAND_BLOCK = "Επέκτεινε Το Μπλοκ";
+Blockly.Msg.EXTERNAL_INPUTS = "Εξωτερικές Είσοδοι";
+Blockly.Msg.HELP = "Βοήθεια";
+Blockly.Msg.INLINE_INPUTS = "Εσωτερικές Είσοδοι";
+Blockly.Msg.LISTS_CREATE_EMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-empty-list";
+Blockly.Msg.LISTS_CREATE_EMPTY_TITLE = "δημιούργησε κενή λίστα";
+Blockly.Msg.LISTS_CREATE_EMPTY_TOOLTIP = "Επιστρέφει μια λίστα, με μήκος 0, η οποία δεν περιέχει εγγραφές δεδομένων";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TITLE_ADD = "λίστα";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TOOLTIP = "Προσθέτει, αφαιρεί ή αναδιατάσσει τα τμήματα για να αναδιαμορφώσει αυτό το μπλοκ λίστας.";
+Blockly.Msg.LISTS_CREATE_WITH_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
+Blockly.Msg.LISTS_CREATE_WITH_INPUT_WITH = "δημιούργησε λίστα με";
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TOOLTIP = "Προσθέτει αντικείμενο στη λίστα.";
+Blockly.Msg.LISTS_CREATE_WITH_TOOLTIP = "Δημιουργεί λίστα με οποιονδήποτε αριθμό αντικειμένων.";
+Blockly.Msg.LISTS_GET_INDEX_FIRST = "πρώτο";
+Blockly.Msg.LISTS_GET_INDEX_FROM_END = "# από το τέλος";
+Blockly.Msg.LISTS_GET_INDEX_FROM_START = "#";
+Blockly.Msg.LISTS_GET_INDEX_GET = "πάρε";
+Blockly.Msg.LISTS_GET_INDEX_GET_REMOVE = "πάρε και αφαίρεσε";
+Blockly.Msg.LISTS_GET_INDEX_LAST = "τελευταίο";
+Blockly.Msg.LISTS_GET_INDEX_RANDOM = "τυχαίο";
+Blockly.Msg.LISTS_GET_INDEX_REMOVE = "αφαίρεσε";
+Blockly.Msg.LISTS_GET_INDEX_TAIL = ""; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FIRST = "Επιστρέφει το πρώτο στοιχείο σε μια λίστα.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FROM = "Επιστρέφει το στοιχείο στην καθορισμένη θέση σε μια λίστα.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_LAST = "Επιστρέφει το τελευταίο στοιχείο σε μια λίστα.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_RANDOM = "Επιστρέφει ένα τυχαίο στοιχείο σε μια λίστα.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST = "Καταργεί και επιστρέφει το πρώτο στοιχείο σε μια λίστα.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM = "Καταργεί και επιστρέφει το στοιχείο στην καθορισμένη θέση σε μια λίστα.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST = "Καταργεί και επιστρέφει το τελευταίο στοιχείο σε μια λίστα.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM = "Καταργεί και επιστρέφει ένα τυχαίο στοιχείο σε μια λίστα.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST = "Καταργεί το πρώτο στοιχείο σε μια λίστα.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM = "Καταργεί το στοιχείο στην καθορισμένη θέση σε μια λίστα.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST = "Καταργεί το τελευταίο στοιχείο σε μια λίστα.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM = "Καταργεί ένα τυχαίο στοιχείο σε μια λίστα.";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_END = "έως # από το τέλος";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_START = "έως #";
+Blockly.Msg.LISTS_GET_SUBLIST_END_LAST = "έως το τελευταίο";
+Blockly.Msg.LISTS_GET_SUBLIST_HELPURL = "Blockly";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FIRST = "πάρε υπολίστα από την αρχή";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_END = "πάρε υπολίστα από # από το τέλος";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_START = "πάρε υπολίστα από #";
+Blockly.Msg.LISTS_GET_SUBLIST_TAIL = ""; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_TOOLTIP = "Δημιουργεί ένα αντίγραφο του καθορισμένου τμήματος μιας λίστας.";
+Blockly.Msg.LISTS_INDEX_FROM_END_TOOLTIP = "Το %1 είναι το τελευταίο στοιχείο.";
+Blockly.Msg.LISTS_INDEX_FROM_START_TOOLTIP = "Το %1 είναι το πρώτο στοιχείο.";
+Blockly.Msg.LISTS_INDEX_OF_FIRST = "βρες την πρώτη εμφάνιση του στοιχείου";
+Blockly.Msg.LISTS_INDEX_OF_HELPURL = "Blockly";
+Blockly.Msg.LISTS_INDEX_OF_LAST = "βρες την τελευταία εμφάνιση του στοιχείου";
+Blockly.Msg.LISTS_INDEX_OF_TOOLTIP = "Επιστρέφει τον δείκτη της πρώτης/τελευταίας εμφάνισης του στοιχείου στη λίστα. Επιστρέφει τιμή %1, αν το στοιχείο δεν βρεθεί.";
+Blockly.Msg.LISTS_INLIST = "στη λίστα";
+Blockly.Msg.LISTS_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#is-empty"; // untranslated
+Blockly.Msg.LISTS_ISEMPTY_TITLE = "το %1 είναι κενό";
+Blockly.Msg.LISTS_ISEMPTY_TOOLTIP = "Επιστρέφει αληθής αν η λίστα είναι κενή.";
+Blockly.Msg.LISTS_LENGTH_HELPURL = "Blockly";
+Blockly.Msg.LISTS_LENGTH_TITLE = "το μήκος του %1";
+Blockly.Msg.LISTS_LENGTH_TOOLTIP = "Επιστρέφει το μήκος μιας λίστας.";
+Blockly.Msg.LISTS_REPEAT_HELPURL = "Blockly";
+Blockly.Msg.LISTS_REPEAT_TITLE = "δημιούργησε λίστα με το στοιχείο %1 να επαναλαμβάνεται %2 φορές";
+Blockly.Msg.LISTS_REPEAT_TOOLTIP = "Δημιουργεί μια λίστα που αποτελείται από την δεδομένη τιμή που επαναλαμβάνεται για συγκεκριμένο αριθμό επαναλήψεων.";
+Blockly.Msg.LISTS_SET_INDEX_HELPURL = "https://github.com/google/blockly/wiki/Lists#in-list--set"; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_INPUT_TO = "σε";
+Blockly.Msg.LISTS_SET_INDEX_INSERT = "είσαγε στο";
+Blockly.Msg.LISTS_SET_INDEX_SET = "όρισε";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST = "Εισάγει το στοιχείο στην αρχή μιας λίστας.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FROM = "Εισάγει το στοιχείο στην καθορισμένη θέση σε μια λίστα.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_LAST = "Αναθέτει το στοιχείο στο τέλος μιας λίστας.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM = "Εισάγει το στοιχείο τυχαία σε μια λίστα.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FIRST = "Ορίζει το πρώτο στοιχείο σε μια λίστα.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FROM = "Ορίζει το στοιχείο στην καθορισμένη θέση σε μια λίστα.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_LAST = "Ορίζει το τελευταίο στοιχείο σε μια λίστα.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_RANDOM = "Ορίζει ένα τυχαίο στοιχείο σε μια λίστα.";
+Blockly.Msg.LISTS_SORT_HELPURL = "https://github.com/google/blockly/wiki/Lists#sorting-a-list";
+Blockly.Msg.LISTS_SORT_ORDER_ASCENDING = "Αύξουσα";
+Blockly.Msg.LISTS_SORT_ORDER_DESCENDING = "Φθίνουσα";
+Blockly.Msg.LISTS_SORT_TITLE = "sort %1 %2 %3"; // untranslated
+Blockly.Msg.LISTS_SORT_TOOLTIP = "Sort a copy of a list."; // untranslated
+Blockly.Msg.LISTS_SORT_TYPE_IGNORECASE = "alphabetic, ignore case"; // untranslated
+Blockly.Msg.LISTS_SORT_TYPE_NUMERIC = "αριθμητικό";
+Blockly.Msg.LISTS_SORT_TYPE_TEXT = "Αλφαβητικά";
+Blockly.Msg.LISTS_SPLIT_HELPURL = "https://github.com/google/blockly/wiki/Lists#splitting-strings-and-joining-lists"; // untranslated
+Blockly.Msg.LISTS_SPLIT_LIST_FROM_TEXT = "κάνετε λίστα από το κείμενο";
+Blockly.Msg.LISTS_SPLIT_TEXT_FROM_LIST = "κάνετε κείμενο από τη λίστα";
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_JOIN = "Ενώστε μια λίστα κειμένων σε ένα κείμενο, που χωρίζονται από ένα διαχωριστικό.";
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_SPLIT = "Διαίρεση του κειμένου σε μια λίστα κειμένων, με σπάσιμο σε κάθε διαχωριστικό.";
+Blockly.Msg.LISTS_SPLIT_WITH_DELIMITER = "με διαχωριστικό";
+Blockly.Msg.LOGIC_BOOLEAN_FALSE = "ψευδής";
+Blockly.Msg.LOGIC_BOOLEAN_HELPURL = "https://github.com/google/blockly/wiki/Logic#values"; // untranslated
+Blockly.Msg.LOGIC_BOOLEAN_TOOLTIP = "Επιστρέφει είτε αληθής είτε ψευδής.";
+Blockly.Msg.LOGIC_BOOLEAN_TRUE = "αληθής";
+Blockly.Msg.LOGIC_COMPARE_HELPURL = "https://en.wikipedia.org/wiki/Inequality_(mathematics)";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_EQ = "Επιστρέφει αληθής αν και οι δύο είσοδοι είναι ίσες μεταξύ τους.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GT = "Επιστρέφει αληθής αν η πρώτη είσοδος είναι μεγαλύτερη από τη δεύτερη είσοδο.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GTE = "Επιστρέφει αληθής αν η πρώτη είσοδος είναι μικρότερη ή ίση με τη δεύτερη είσοδο.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LT = "Επιστρέφει αληθής αν η πρώτη είσοδος είναι μικρότερη από τη δεύτερη είσοδο.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LTE = "Επιστρέφει αληθής αν η πρώτη είσοδος είναι μικρότερη από ή ίση με τη δεύτερη είσοδο.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_NEQ = "Επιστρέφει αληθής αν και οι δύο είσοδοι δεν είναι ίσες μεταξύ τους.";
+Blockly.Msg.LOGIC_NEGATE_HELPURL = "https://github.com/google/blockly/wiki/Logic#not"; // untranslated
+Blockly.Msg.LOGIC_NEGATE_TITLE = "όχι %1";
+Blockly.Msg.LOGIC_NEGATE_TOOLTIP = "Επιστρέφει αληθής αν η είσοδος είναι ψευδής. Επιστρέφει ψευδής αν η είσοδος είναι αληθής.";
+Blockly.Msg.LOGIC_NULL = "κενό";
+Blockly.Msg.LOGIC_NULL_HELPURL = "https://en.wikipedia.org/wiki/Nullable_type";
+Blockly.Msg.LOGIC_NULL_TOOLTIP = "Επιστρέφει κενό.";
+Blockly.Msg.LOGIC_OPERATION_AND = "και";
+Blockly.Msg.LOGIC_OPERATION_HELPURL = "https://github.com/google/blockly/wiki/Logic#logical-operations"; // untranslated
+Blockly.Msg.LOGIC_OPERATION_OR = "ή";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_AND = "Επιστρέφει αληθής αν και οι δύο είσοδοι είναι αληθής.";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_OR = "Επιστρέφει αληθής αν τουλάχιστον μια από τις εισόδους είναι αληθής.";
+Blockly.Msg.LOGIC_TERNARY_CONDITION = "έλεγχος";
+Blockly.Msg.LOGIC_TERNARY_HELPURL = "https://en.wikipedia.org/wiki/%3F:";
+Blockly.Msg.LOGIC_TERNARY_IF_FALSE = "εάν είναι ψευδής";
+Blockly.Msg.LOGIC_TERNARY_IF_TRUE = "εάν είναι αληθής";
+Blockly.Msg.LOGIC_TERNARY_TOOLTIP = "Ελέγχει την κατάσταση/συνθήκη στον «έλεγχο». Αν η κατάσταση/συνθήκη είναι αληθής, επιστρέφει την τιμή «εάν αληθής», διαφορετικά επιστρέφει την τιμή «εάν ψευδής».";
+Blockly.Msg.MATH_ADDITION_SYMBOL = "+";
+Blockly.Msg.MATH_ARITHMETIC_HELPURL = "https://el.wikipedia.org/wiki/%CE%91%CF%81%CE%B9%CE%B8%CE%BC%CE%B7%CF%84%CE%B9%CE%BA%CE%AE";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_ADD = "Επιστρέφει το άθροισμα των δύο αριθμών.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE = "Επιστρέφει το πηλίκο των δύο αριθμών.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MINUS = "Επιστρέφει τη διαφορά των δύο αριθμών.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MULTIPLY = "Επιστρέφει το γινόμενο των δύο αριθμών.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_POWER = "Επιστρέφει τον πρώτο αριθμό υψωμένο στη δύναμη του δεύτερου αριθμού.";
+Blockly.Msg.MATH_CHANGE_HELPURL = "https://el.wikipedia.org/wiki/%CE%A0%CF%81%CF%8C%CF%83%CE%B8%CE%B5%CF%83%CE%B7";
+Blockly.Msg.MATH_CHANGE_TITLE = "άλλαξε %1 από %2";
+Blockly.Msg.MATH_CHANGE_TOOLTIP = "Προσθέτει έναν αριθμό στη μεταβλητή «%1».";
+Blockly.Msg.MATH_CONSTANT_HELPURL = "https://en.wikipedia.org/wiki/Mathematical_constant";
+Blockly.Msg.MATH_CONSTANT_TOOLTIP = "Επιστρέφει μία από τις κοινές σταθερές: π (3.141...), e (2.718...), φ (1.618...), sqrt(2) (1.414...), sqrt(½) (0.707...), ή ∞ (άπειρο).";
+Blockly.Msg.MATH_CONSTRAIN_HELPURL = "https://en.wikipedia.org/wiki/Clamping_%28graphics%29"; // untranslated
+Blockly.Msg.MATH_CONSTRAIN_TITLE = "περιόρισε %1 χαμηλή %2 υψηλή %3";
+Blockly.Msg.MATH_CONSTRAIN_TOOLTIP = "Περιορίζει έναν αριθμό μεταξύ των προβλεπόμενων ορίων (χωρίς αποκλεισμούς).";
+Blockly.Msg.MATH_DIVISION_SYMBOL = "÷";
+Blockly.Msg.MATH_IS_DIVISIBLE_BY = "είναι διαιρετός από το";
+Blockly.Msg.MATH_IS_EVEN = "είναι άρτιος";
+Blockly.Msg.MATH_IS_NEGATIVE = "είναι αρνητικός";
+Blockly.Msg.MATH_IS_ODD = "είναι περιττός";
+Blockly.Msg.MATH_IS_POSITIVE = "είναι θετικός";
+Blockly.Msg.MATH_IS_PRIME = "είναι πρώτος";
+Blockly.Msg.MATH_IS_TOOLTIP = "Ελέγχει αν ένας αριθμός είναι άρτιος, περιττός, πρώτος, ακέραιος, θετικός, αρνητικός, ή αν είναι διαιρετός από έναν ορισμένο αριθμό. Επιστρέφει αληθής ή ψευδής.";
+Blockly.Msg.MATH_IS_WHOLE = "είναι ακέραιος";
+Blockly.Msg.MATH_MODULO_HELPURL = "https://en.wikipedia.org/wiki/Modulo_operation";
+Blockly.Msg.MATH_MODULO_TITLE = "υπόλοιπο της %1 ÷ %2";
+Blockly.Msg.MATH_MODULO_TOOLTIP = "Επιστρέφει το υπόλοιπο της διαίρεσης των δύο αριθμών.";
+Blockly.Msg.MATH_MULTIPLICATION_SYMBOL = "×";
+Blockly.Msg.MATH_NUMBER_HELPURL = "https://el.wikipedia.org/wiki/%CE%91%CF%81%CE%B9%CE%B8%CE%BC%CF%8C%CF%82";
+Blockly.Msg.MATH_NUMBER_TOOLTIP = "Ένας αριθμός.";
+Blockly.Msg.MATH_ONLIST_HELPURL = ""; // untranslated
+Blockly.Msg.MATH_ONLIST_OPERATOR_AVERAGE = "μέσος όρος λίστας";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MAX = "μεγαλύτερος λίστας";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MEDIAN = "διάμεσος λίστας";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MIN = "μικρότερος λίστας";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MODE = "μορφές λίστας";
+Blockly.Msg.MATH_ONLIST_OPERATOR_RANDOM = "τυχαίο στοιχείο λίστας";
+Blockly.Msg.MATH_ONLIST_OPERATOR_STD_DEV = "τυπική απόκλιση λίστας";
+Blockly.Msg.MATH_ONLIST_OPERATOR_SUM = "άθροισμα λίστας";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_AVERAGE = "Επιστρέφει τον αριθμητικό μέσο όρο από τις αριθμητικές τιμές στη λίστα.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MAX = "Επιστρέφει τον μεγαλύτερο αριθμό στη λίστα.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MEDIAN = "Επιστρέφει τον διάμεσο της λίστας.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MIN = "Επιστρέφει τον μικρότερο αριθμό στη λίστα.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MODE = "Επιστρέφει μια λίστα με τα πιο κοινά στοιχεία στη λίστα.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_RANDOM = "Επιστρέφει ένα τυχαίο στοιχείο από τη λίστα.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_STD_DEV = "Επιστρέφει την τυπική απόκλιση της λίστας.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_SUM = "Επιστρέφει το άθροισμα όλων των αριθμών στη λίστα.";
+Blockly.Msg.MATH_POWER_SYMBOL = "^ ύψωση σε δύναμη";
+Blockly.Msg.MATH_RANDOM_FLOAT_HELPURL = "https://el.wikipedia.org/wiki/%CE%93%CE%B5%CE%BD%CE%BD%CE%AE%CF%84%CF%81%CE%B9%CE%B1_%CE%A4%CF%85%CF%87%CE%B1%CE%AF%CF%89%CE%BD_%CE%91%CF%81%CE%B9%CE%B8%CE%BC%CF%8E%CE%BD";
+Blockly.Msg.MATH_RANDOM_FLOAT_TITLE_RANDOM = "τυχαίο κλάσμα";
+Blockly.Msg.MATH_RANDOM_FLOAT_TOOLTIP = "Επιστρέψει ένα τυχαία κλάσμα μεταξύ 0,0 (κλειστό) και 1,0 (ανοικτό).";
+Blockly.Msg.MATH_RANDOM_INT_HELPURL = "https://en.wikipedia.org/wiki/Random_number_generation";
+Blockly.Msg.MATH_RANDOM_INT_TITLE = "τυχαίος ακέραιος από το %1 έως το %2";
+Blockly.Msg.MATH_RANDOM_INT_TOOLTIP = "Επιστρέφει έναν τυχαίο ακέραιο αριθμό μεταξύ δύο συγκεκριμένων ορίων (εντός - συμπεριλαμβανομένων και των ακραίων τιμών).";
+Blockly.Msg.MATH_ROUND_HELPURL = "https://en.wikipedia.org/wiki/Rounding";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUND = "στρογγυλοποίησε";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDDOWN = "στρογγυλοποίησε προς τα κάτω";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDUP = "στρογγυλοποίησε προς τα πάνω";
+Blockly.Msg.MATH_ROUND_TOOLTIP = "Στρογγυλοποιεί έναν αριθμό προς τα πάνω ή προς τα κάτω.";
+Blockly.Msg.MATH_SINGLE_HELPURL = "https://el.wikipedia.org/wiki/%CE%A4%CE%B5%CF%84%CF%81%CE%B1%CE%B3%CF%89%CE%BD%CE%B9%CE%BA%CE%AE_%CF%81%CE%AF%CE%B6%CE%B1";
+Blockly.Msg.MATH_SINGLE_OP_ABSOLUTE = "απόλυτη";
+Blockly.Msg.MATH_SINGLE_OP_ROOT = "τετραγωνική ρίζα";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ABS = "Επιστρέφει την απόλυτη τιμή ενός αριθμού.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_EXP = "Επιστρέφει το e υψωμένο στη δύναμη ενός αριθμού.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LN = "Επιστρέφει τον νεπέρειο λογάριθμο ενός αριθμού.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LOG10 = "Επιστρέφει τον λογάριθμο με βάση το 10 ενός αριθμού.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_NEG = "Επιστρέφει την αρνητική ενός αριθμού.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_POW10 = "Επιστρέφει το 10 υψωμένο στη δύναμη ενός αριθμού.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ROOT = "Επιστρέφει την τετραγωνική ρίζα ενός αριθμού.";
+Blockly.Msg.MATH_SUBTRACTION_SYMBOL = "-";
+Blockly.Msg.MATH_TRIG_ACOS = "acos";
+Blockly.Msg.MATH_TRIG_ASIN = "asin";
+Blockly.Msg.MATH_TRIG_ATAN = "atan";
+Blockly.Msg.MATH_TRIG_COS = "συν";
+Blockly.Msg.MATH_TRIG_HELPURL = "https://el.wikipedia.org/wiki/%CE%A4%CF%81%CE%B9%CE%B3%CF%89%CE%BD%CE%BF%CE%BC%CE%B5%CF%84%CF%81%CE%B9%CE%BA%CE%AE_%CF%83%CF%85%CE%BD%CE%AC%CF%81%CF%84%CE%B7%CF%83%CE%B7";
+Blockly.Msg.MATH_TRIG_SIN = "ημ";
+Blockly.Msg.MATH_TRIG_TAN = "εφ";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ACOS = "Επιστρέφει το τόξο συνημίτονου ενός αριθμού.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ASIN = "Επιστρέφει το τόξο ημίτονου ενός αριθμού.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ATAN = "Επιστρέφει το τόξο εφαπτομένης ενός αριθμού.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_COS = "Επιστρέφει το συνημίτονο ενός βαθμού (όχι ακτινίου).";
+Blockly.Msg.MATH_TRIG_TOOLTIP_SIN = "Επιστρέφει το ημίτονο ενός βαθμού (όχι ακτινίου).";
+Blockly.Msg.MATH_TRIG_TOOLTIP_TAN = "Επιστρέφει την εφαπτομένη ενός βαθμού (όχι ακτινίου).";
+Blockly.Msg.NEW_VARIABLE = "Νέα μεταβλητή...";
+Blockly.Msg.NEW_VARIABLE_TITLE = "Νέο όνομα μεταβλητής:";
+Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; // untranslated
+Blockly.Msg.PROCEDURES_ALLOW_STATEMENTS = "να επιτρέπονται οι δηλώσεις";
+Blockly.Msg.PROCEDURES_BEFORE_PARAMS = "με:";
+Blockly.Msg.PROCEDURES_CALLNORETURN_HELPURL = "https://el.wikipedia.org/wiki/%CE%94%CE%B9%CE%B1%CE%B4%CE%B9%CE%BA%CE%B1%CF%83%CE%AF%CE%B1_%28%CF%85%CF%80%CE%BF%CE%BB%CE%BF%CE%B3%CE%B9%CF%83%CF%84%CE%AD%CF%82%29";
+Blockly.Msg.PROCEDURES_CALLNORETURN_TOOLTIP = "Εκτελεί την ορισμένη από τον χρήστη συνάρτηση «%1».";
+Blockly.Msg.PROCEDURES_CALLRETURN_HELPURL = "https://el.wikipedia.org/wiki/%CE%94%CE%B9%CE%B1%CE%B4%CE%B9%CE%BA%CE%B1%CF%83%CE%AF%CE%B1_%28%CF%85%CF%80%CE%BF%CE%BB%CE%BF%CE%B3%CE%B9%CF%83%CF%84%CE%AD%CF%82%29";
+Blockly.Msg.PROCEDURES_CALLRETURN_TOOLTIP = "Εκτελεί την ορισμένη από τον χρήστη συνάρτηση «%1» και χρησιμοποίησε την έξοδό της.";
+Blockly.Msg.PROCEDURES_CALL_BEFORE_PARAMS = "με:";
+Blockly.Msg.PROCEDURES_CREATE_DO = "Δημιούργησε «%1»";
+Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT = "Describe this function..."; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_DO = ""; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29";
+Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE = "κάνε κάτι";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE = "στο";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TOOLTIP = "Δημιουργεί μια συνάρτηση χωρίς έξοδο.";
+Blockly.Msg.PROCEDURES_DEFRETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29";
+Blockly.Msg.PROCEDURES_DEFRETURN_RETURN = "επέστρεψε";
+Blockly.Msg.PROCEDURES_DEFRETURN_TOOLTIP = "Δημιουργεί μια συνάρτηση με μια έξοδο.";
+Blockly.Msg.PROCEDURES_DEF_DUPLICATE_WARNING = "Προειδοποίηση: Αυτή η συνάρτηση έχει διπλότυπες παραμέτρους.";
+Blockly.Msg.PROCEDURES_HIGHLIGHT_DEF = "Επισημάνετε τον ορισμό συνάρτησης";
+Blockly.Msg.PROCEDURES_IFRETURN_HELPURL = "http://c2.com/cgi/wiki?GuardClause"; // untranslated
+Blockly.Msg.PROCEDURES_IFRETURN_TOOLTIP = "Αν μια τιμή είναι αληθής, τότε επιστρέφει τη δεύτερη τιμή.";
+Blockly.Msg.PROCEDURES_IFRETURN_WARNING = "Προειδοποίηση: Αυτό το μπλοκ μπορεί να χρησιμοποιηθεί μόνο στον ορισμό μιας συνάρτησης.";
+Blockly.Msg.PROCEDURES_MUTATORARG_TITLE = "όνομα εισόδου:";
+Blockly.Msg.PROCEDURES_MUTATORARG_TOOLTIP = "Πρόσθεσε μια είσοδος στη συνάρτηση";
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TITLE = "είσοδοι";
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TOOLTIP = "Προσθέτει, αφαιρεί ή αναδιατάσσει εισόδους σε αυτήν τη λειτουργία";
+Blockly.Msg.REDO = "Ακύρωση αναίρεσης";
+Blockly.Msg.REMOVE_COMMENT = "Αφαίρεσε Το Σχόλιο";
+Blockly.Msg.RENAME_VARIABLE = "Μετονόμασε τη μεταβλητή...";
+Blockly.Msg.RENAME_VARIABLE_TITLE = "Μετονόμασε όλες τις μεταβλητές «%1» σε:";
+Blockly.Msg.TEXT_APPEND_APPENDTEXT = "ανάθεσε κείμενο";
+Blockly.Msg.TEXT_APPEND_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_APPEND_TO = "έως";
+Blockly.Msg.TEXT_APPEND_TOOLTIP = "Αναθέτει κείμενο στη μεταβλητή «%1».";
+Blockly.Msg.TEXT_CHANGECASE_HELPURL = "https://github.com/google/blockly/wiki/Text#adjusting-text-case"; // untranslated
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_LOWERCASE = "σε πεζά";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_TITLECASE = "σε Λέξεις Με Πρώτα Κεφαλαία";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_UPPERCASE = "σε ΚΕΦΑΛΑΙΑ";
+Blockly.Msg.TEXT_CHANGECASE_TOOLTIP = "Επιστρέφει ένα αντίγραφο του κειμένου σε διαφορετική μορφή γραμμάτων.";
+Blockly.Msg.TEXT_CHARAT_FIRST = "πάρε το πρώτο γράμμα";
+Blockly.Msg.TEXT_CHARAT_FROM_END = "πάρε το γράμμα # από το τέλος";
+Blockly.Msg.TEXT_CHARAT_FROM_START = "πάρε το γράμμα #";
+Blockly.Msg.TEXT_CHARAT_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-text"; // untranslated
+Blockly.Msg.TEXT_CHARAT_INPUT_INTEXT = "στο κείμενο";
+Blockly.Msg.TEXT_CHARAT_LAST = "πάρε το τελευταίο γράμμα";
+Blockly.Msg.TEXT_CHARAT_RANDOM = "πάρε τυχαίο γράμμα";
+Blockly.Msg.TEXT_CHARAT_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_CHARAT_TOOLTIP = "Επιστρέφει το γράμμα στην καθορισμένη θέση.";
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TOOLTIP = "Προσθέτει ένα στοιχείο στο κείμενο.";
+Blockly.Msg.TEXT_CREATE_JOIN_TITLE_JOIN = "ένωσε";
+Blockly.Msg.TEXT_CREATE_JOIN_TOOLTIP = "Προσθέτει, αφαιρεί ή αναδιατάσσει τους τομείς για να αναδιαμορφώσει αυτό το μπλοκ κειμένου.";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_END = "μέχρι το # γράμμα από το τέλος";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_START = "μέχρι το # γράμμα";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_LAST = "μέχρι το τελευταίο γράμμα";
+Blockly.Msg.TEXT_GET_SUBSTRING_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_INPUT_IN_TEXT = "στο κείμενο";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FIRST = "πάρε τη δευτερεύουσα συμβολοσειρά από το πρώτο γράμμα";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_END = "πάρε τη δευτερεύουσα συμβολοσειρά από το # γράμμα από το τέλος";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_START = "πάρε τη δευτερεύουσα συμβολοσειρά από το # γράμμα";
+Blockly.Msg.TEXT_GET_SUBSTRING_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_TOOLTIP = "Επιστρέφει ένα συγκεκριμένο τμήμα του κειμένου.";
+Blockly.Msg.TEXT_INDEXOF_HELPURL = "https://github.com/google/blockly/wiki/Text#finding-text"; // untranslated
+Blockly.Msg.TEXT_INDEXOF_INPUT_INTEXT = "στο κείμενο";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_FIRST = "βρες την πρώτη εμφάνιση του κειμένου";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_LAST = "βρες την τελευταία εμφάνιση του κειμένου";
+Blockly.Msg.TEXT_INDEXOF_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_INDEXOF_TOOLTIP = "Επιστρέφει τον δείκτη της πρώτης/τελευταίας εμφάνισης του πρώτου κειμένου στο δεύτερο κείμενο. Επιστρέφει τιμή %1, αν δε βρει το κείμενο.";
+Blockly.Msg.TEXT_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Text#checking-for-empty-text"; // untranslated
+Blockly.Msg.TEXT_ISEMPTY_TITLE = "το %1 είναι κενό";
+Blockly.Msg.TEXT_ISEMPTY_TOOLTIP = "Επιστρέφει αληθής αν το παρεχόμενο κείμενο είναι κενό.";
+Blockly.Msg.TEXT_JOIN_HELPURL = "https://github.com/google/blockly/wiki/Text#text-creation"; // untranslated
+Blockly.Msg.TEXT_JOIN_TITLE_CREATEWITH = "δημιούργησε κείμενο με";
+Blockly.Msg.TEXT_JOIN_TOOLTIP = "Δημιουργεί ένα κομμάτι κειμένου ενώνοντας έναν απεριόριστο αριθμό αντικειμένων.";
+Blockly.Msg.TEXT_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_LENGTH_TITLE = "το μήκος του %1";
+Blockly.Msg.TEXT_LENGTH_TOOLTIP = "Επιστρέφει το πλήθος των γραμμάτων (συμπεριλαμβανομένων και των κενών διαστημάτων) στο παρεχόμενο κείμενο.";
+Blockly.Msg.TEXT_PRINT_HELPURL = "https://github.com/google/blockly/wiki/Text#printing-text"; // untranslated
+Blockly.Msg.TEXT_PRINT_TITLE = "εκτύπωσε %1";
+Blockly.Msg.TEXT_PRINT_TOOLTIP = "Εκτυπώνει το καθορισμένο κείμενο, αριθμό ή άλλη τιμή.";
+Blockly.Msg.TEXT_PROMPT_HELPURL = "https://github.com/google/blockly/wiki/Text#getting-input-from-the-user"; // untranslated
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_NUMBER = "Δημιουργεί προτροπή για τον χρήστη για να δώσει ένα αριθμό.";
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_TEXT = "Δημιουργεί προτροπή για το χρήστη για να δώσει κάποιο κείμενο.";
+Blockly.Msg.TEXT_PROMPT_TYPE_NUMBER = "πρότρεψε με μήνυμα για να δοθεί αριθμός";
+Blockly.Msg.TEXT_PROMPT_TYPE_TEXT = "πρότρεψε με μήνυμα για να δοθεί κείμενο";
+Blockly.Msg.TEXT_TEXT_HELPURL = "https://el.wikipedia.org/wiki/%CE%A3%CF%85%CE%BC%CE%B2%CE%BF%CE%BB%CE%BF%CF%83%CE%B5%CE%B9%CF%81%CE%AC";
+Blockly.Msg.TEXT_TEXT_TOOLTIP = "Ένα γράμμα, μια λέξη ή μια γραμμή κειμένου.";
+Blockly.Msg.TEXT_TRIM_HELPURL = "https://github.com/google/blockly/wiki/Text#trimming-removing-spaces"; // untranslated
+Blockly.Msg.TEXT_TRIM_OPERATOR_BOTH = "περίκοψε τα κενά και από τις δυο πλευρές του";
+Blockly.Msg.TEXT_TRIM_OPERATOR_LEFT = "περίκοψε τα κενά από την αριστερή πλευρά του";
+Blockly.Msg.TEXT_TRIM_OPERATOR_RIGHT = "περίκοψε τα κενά από την δεξιά πλευρά του";
+Blockly.Msg.TEXT_TRIM_TOOLTIP = "Επιστρέφει ένα αντίγραφο του κειμένου με αφαιρεμένα τα κενά από το ένα ή και τα δύο άκρα.";
+Blockly.Msg.TODAY = "Σήμερα";
+Blockly.Msg.UNDO = "Αναίρεση";
+Blockly.Msg.VARIABLES_DEFAULT_NAME = "αντικείμενο";
+Blockly.Msg.VARIABLES_GET_CREATE_SET = "Δημιούργησε «όρισε %1»";
+Blockly.Msg.VARIABLES_GET_HELPURL = "https://github.com/google/blockly/wiki/Variables#get"; // untranslated
+Blockly.Msg.VARIABLES_GET_TOOLTIP = "Επιστρέφει την τιμή αυτής της μεταβλητής.";
+Blockly.Msg.VARIABLES_SET = "όρισε %1 μέχρι το %2";
+Blockly.Msg.VARIABLES_SET_CREATE_GET = "Δημιούργησε «πάρε %1»";
+Blockly.Msg.VARIABLES_SET_HELPURL = "https://github.com/google/blockly/wiki/Variables#set"; // untranslated
+Blockly.Msg.VARIABLES_SET_TOOLTIP = "Ορίζει αυτή τη μεταβλητή να είναι ίση με την είσοδο.";
+Blockly.Msg.VARIABLE_ALREADY_EXISTS = "A variable named '%1' already exists."; // untranslated
+Blockly.Msg.PROCEDURES_DEFRETURN_TITLE = Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE;
+Blockly.Msg.CONTROLS_IF_IF_TITLE_IF = Blockly.Msg.CONTROLS_IF_MSG_IF;
+Blockly.Msg.CONTROLS_WHILEUNTIL_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_MSG_THEN = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_ELSE_TITLE_ELSE = Blockly.Msg.CONTROLS_IF_MSG_ELSE;
+Blockly.Msg.PROCEDURES_DEFRETURN_PROCEDURE = Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE;
+Blockly.Msg.LISTS_GET_SUBLIST_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.LISTS_GET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.PROCEDURES_DEFRETURN_DO = Blockly.Msg.PROCEDURES_DEFNORETURN_DO;
+Blockly.Msg.CONTROLS_IF_ELSEIF_TITLE_ELSEIF = Blockly.Msg.CONTROLS_IF_MSG_ELSEIF;
+Blockly.Msg.LISTS_GET_INDEX_HELPURL = Blockly.Msg.LISTS_INDEX_OF_HELPURL;
+Blockly.Msg.CONTROLS_FOREACH_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_SET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TITLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_APPEND_VARIABLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.LISTS_INDEX_OF_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.PROCEDURES_DEFRETURN_COMMENT = Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT; \ No newline at end of file
diff --git a/blockly/msg/js/en-gb.js b/blockly/msg/js/en-gb.js
new file mode 100644
index 0000000..7690dfd
--- /dev/null
+++ b/blockly/msg/js/en-gb.js
@@ -0,0 +1,391 @@
+// This file was automatically generated. Do not modify.
+
+'use strict';
+
+goog.provide('Blockly.Msg.en.gb');
+
+goog.require('Blockly.Msg');
+
+Blockly.Msg.ADD_COMMENT = "Add Comment";
+Blockly.Msg.CHANGE_VALUE_TITLE = "Change value:";
+Blockly.Msg.CLEAN_UP = "Clean up Blocks";
+Blockly.Msg.COLLAPSE_ALL = "Collapse Blocks";
+Blockly.Msg.COLLAPSE_BLOCK = "Collapse Block";
+Blockly.Msg.COLOUR_BLEND_COLOUR1 = "colour 1";
+Blockly.Msg.COLOUR_BLEND_COLOUR2 = "colour 2";
+Blockly.Msg.COLOUR_BLEND_HELPURL = "http://meyerweb.com/eric/tools/color-blend/"; // untranslated
+Blockly.Msg.COLOUR_BLEND_RATIO = "ratio";
+Blockly.Msg.COLOUR_BLEND_TITLE = "blend";
+Blockly.Msg.COLOUR_BLEND_TOOLTIP = "Blends two colours together with a given ratio (0.0 - 1.0).";
+Blockly.Msg.COLOUR_PICKER_HELPURL = "https://en.wikipedia.org/wiki/Colour";
+Blockly.Msg.COLOUR_PICKER_TOOLTIP = "Choose a colour from the palette.";
+Blockly.Msg.COLOUR_RANDOM_HELPURL = "http://randomcolour.com"; // untranslated
+Blockly.Msg.COLOUR_RANDOM_TITLE = "random colour";
+Blockly.Msg.COLOUR_RANDOM_TOOLTIP = "Choose a colour at random.";
+Blockly.Msg.COLOUR_RGB_BLUE = "blue";
+Blockly.Msg.COLOUR_RGB_GREEN = "green";
+Blockly.Msg.COLOUR_RGB_HELPURL = "http://www.december.com/html/spec/colorper.html"; // untranslated
+Blockly.Msg.COLOUR_RGB_RED = "red";
+Blockly.Msg.COLOUR_RGB_TITLE = "colour with";
+Blockly.Msg.COLOUR_RGB_TOOLTIP = "Create a colour with the specified amount of red, green, and blue. All values must be between 0 and 100.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_HELPURL = "https://github.com/google/blockly/wiki/Loops#loop-termination-blocks"; // untranslated
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK = "break out of loop";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE = "continue with next iteration of loop";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK = "Break out of the containing loop.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE = "Skip the rest of this loop, and continue with the next iteration.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_WARNING = "Warning: This block may only be used within a loop.";
+Blockly.Msg.CONTROLS_FOREACH_HELPURL = "https://github.com/google/blockly/wiki/Loops#for-each"; // untranslated
+Blockly.Msg.CONTROLS_FOREACH_TITLE = "for each item %1 in list %2";
+Blockly.Msg.CONTROLS_FOREACH_TOOLTIP = "For each item in a list, set the variable '%1' to the item, and then do some statements.";
+Blockly.Msg.CONTROLS_FOR_HELPURL = "https://github.com/google/blockly/wiki/Loops#count-with"; // untranslated
+Blockly.Msg.CONTROLS_FOR_TITLE = "count with %1 from %2 to %3 by %4";
+Blockly.Msg.CONTROLS_FOR_TOOLTIP = "Have the variable '%1' take on the values from the start number to the end number, counting by the specified interval, and do the specified blocks.";
+Blockly.Msg.CONTROLS_IF_ELSEIF_TOOLTIP = "Add a condition to the if block.";
+Blockly.Msg.CONTROLS_IF_ELSE_TOOLTIP = "Add a final, catch-all condition to the if block.";
+Blockly.Msg.CONTROLS_IF_HELPURL = "https://github.com/google/blockly/wiki/IfElse"; // untranslated
+Blockly.Msg.CONTROLS_IF_IF_TOOLTIP = "Add, remove, or reorder sections to reconfigure this if block.";
+Blockly.Msg.CONTROLS_IF_MSG_ELSE = "else";
+Blockly.Msg.CONTROLS_IF_MSG_ELSEIF = "else if";
+Blockly.Msg.CONTROLS_IF_MSG_IF = "if";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_1 = "If a value is true, then do some statements.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_2 = "If a value is true, then do the first block of statements. Otherwise, do the second block of statements.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_3 = "If the first value is true, then do the first block of statements. Otherwise, if the second value is true, do the second block of statements.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_4 = "If the first value is true, then do the first block of statements. Otherwise, if the second value is true, do the second block of statements. If none of the values are true, do the last block of statements.";
+Blockly.Msg.CONTROLS_REPEAT_HELPURL = "https://en.wikipedia.org/wiki/For_loop";
+Blockly.Msg.CONTROLS_REPEAT_INPUT_DO = "do";
+Blockly.Msg.CONTROLS_REPEAT_TITLE = "repeat %1 times";
+Blockly.Msg.CONTROLS_REPEAT_TOOLTIP = "Do some statements several times.";
+Blockly.Msg.CONTROLS_WHILEUNTIL_HELPURL = "https://github.com/google/blockly/wiki/Loops#repeat"; // untranslated
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "repeat until";
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "repeat while";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "While a value is false, then do some statements.";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "While a value is true, then do some statements.";
+Blockly.Msg.DELETE_ALL_BLOCKS = "Delete all %1 blocks?";
+Blockly.Msg.DELETE_BLOCK = "Delete Block";
+Blockly.Msg.DELETE_VARIABLE = "Delete the '%1' variable"; // untranslated
+Blockly.Msg.DELETE_VARIABLE_CONFIRMATION = "Delete %1 uses of the '%2' variable?"; // untranslated
+Blockly.Msg.DELETE_X_BLOCKS = "Delete %1 Blocks";
+Blockly.Msg.DISABLE_BLOCK = "Disable Block";
+Blockly.Msg.DUPLICATE_BLOCK = "Duplicate";
+Blockly.Msg.ENABLE_BLOCK = "Enable Block";
+Blockly.Msg.EXPAND_ALL = "Expand Blocks";
+Blockly.Msg.EXPAND_BLOCK = "Expand Block";
+Blockly.Msg.EXTERNAL_INPUTS = "External Inputs";
+Blockly.Msg.HELP = "Help";
+Blockly.Msg.INLINE_INPUTS = "Inline Inputs";
+Blockly.Msg.LISTS_CREATE_EMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-empty-list"; // untranslated
+Blockly.Msg.LISTS_CREATE_EMPTY_TITLE = "create empty list"; // untranslated
+Blockly.Msg.LISTS_CREATE_EMPTY_TOOLTIP = "Returns a list, of length 0, containing no data records"; // untranslated
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TITLE_ADD = "list"; // untranslated
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TOOLTIP = "Add, remove, or reorder sections to reconfigure this list block."; // untranslated
+Blockly.Msg.LISTS_CREATE_WITH_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
+Blockly.Msg.LISTS_CREATE_WITH_INPUT_WITH = "create list with"; // untranslated
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TOOLTIP = "Add an item to the list."; // untranslated
+Blockly.Msg.LISTS_CREATE_WITH_TOOLTIP = "Create a list with any number of items."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_FIRST = "first"; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_FROM_END = "# from end"; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_FROM_START = "#"; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_GET = "get"; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_GET_REMOVE = "get and remove"; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_LAST = "last"; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_RANDOM = "random"; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_REMOVE = "remove"; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TAIL = ""; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FIRST = "Returns the first item in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FROM = "Returns the item at the specified position in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_LAST = "Returns the last item in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_RANDOM = "Returns a random item in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST = "Removes and returns the first item in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM = "Removes and returns the item at the specified position in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST = "Removes and returns the last item in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM = "Removes and returns a random item in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST = "Removes the first item in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM = "Removes the item at the specified position in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST = "Removes the last item in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM = "Removes a random item in a list."; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_END = "to # from end"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_START = "to #"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_END_LAST = "to last"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-a-sublist"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_START_FIRST = "get sub-list from first"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_END = "get sub-list from # from end"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_START = "get sub-list from #"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_TAIL = ""; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_TOOLTIP = "Creates a copy of the specified portion of a list."; // untranslated
+Blockly.Msg.LISTS_INDEX_FROM_END_TOOLTIP = "%1 is the last item."; // untranslated
+Blockly.Msg.LISTS_INDEX_FROM_START_TOOLTIP = "%1 is the first item."; // untranslated
+Blockly.Msg.LISTS_INDEX_OF_FIRST = "find first occurrence of item"; // untranslated
+Blockly.Msg.LISTS_INDEX_OF_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-items-from-a-list"; // untranslated
+Blockly.Msg.LISTS_INDEX_OF_LAST = "find last occurrence of item"; // untranslated
+Blockly.Msg.LISTS_INDEX_OF_TOOLTIP = "Returns the index of the first/last occurrence of the item in the list. Returns %1 if item is not found."; // untranslated
+Blockly.Msg.LISTS_INLIST = "in list"; // untranslated
+Blockly.Msg.LISTS_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#is-empty"; // untranslated
+Blockly.Msg.LISTS_ISEMPTY_TITLE = "%1 is empty"; // untranslated
+Blockly.Msg.LISTS_ISEMPTY_TOOLTIP = "Returns true if the list is empty."; // untranslated
+Blockly.Msg.LISTS_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Lists#length-of"; // untranslated
+Blockly.Msg.LISTS_LENGTH_TITLE = "length of %1"; // untranslated
+Blockly.Msg.LISTS_LENGTH_TOOLTIP = "Returns the length of a list."; // untranslated
+Blockly.Msg.LISTS_REPEAT_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
+Blockly.Msg.LISTS_REPEAT_TITLE = "create list with item %1 repeated %2 times"; // untranslated
+Blockly.Msg.LISTS_REPEAT_TOOLTIP = "Creates a list consisting of the given value repeated the specified number of times."; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_HELPURL = "https://github.com/google/blockly/wiki/Lists#in-list--set"; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_INPUT_TO = "as"; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_INSERT = "insert at"; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_SET = "set"; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST = "Inserts the item at the start of a list."; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FROM = "Inserts the item at the specified position in a list."; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_LAST = "Append the item to the end of a list."; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM = "Inserts the item randomly in a list."; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FIRST = "Sets the first item in a list."; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FROM = "Sets the item at the specified position in a list."; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_LAST = "Sets the last item in a list."; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_RANDOM = "Sets a random item in a list."; // untranslated
+Blockly.Msg.LISTS_SORT_HELPURL = "https://github.com/google/blockly/wiki/Lists#sorting-a-list"; // untranslated
+Blockly.Msg.LISTS_SORT_ORDER_ASCENDING = "ascending"; // untranslated
+Blockly.Msg.LISTS_SORT_ORDER_DESCENDING = "descendente";
+Blockly.Msg.LISTS_SORT_TITLE = "sort %1 %2 %3"; // untranslated
+Blockly.Msg.LISTS_SORT_TOOLTIP = "Sort a copy of a list."; // untranslated
+Blockly.Msg.LISTS_SORT_TYPE_IGNORECASE = "alphabetic, ignore case"; // untranslated
+Blockly.Msg.LISTS_SORT_TYPE_NUMERIC = "numeric"; // untranslated
+Blockly.Msg.LISTS_SORT_TYPE_TEXT = "alphabetic"; // untranslated
+Blockly.Msg.LISTS_SPLIT_HELPURL = "https://github.com/google/blockly/wiki/Lists#splitting-strings-and-joining-lists"; // untranslated
+Blockly.Msg.LISTS_SPLIT_LIST_FROM_TEXT = "make list from text"; // untranslated
+Blockly.Msg.LISTS_SPLIT_TEXT_FROM_LIST = "make text from list"; // untranslated
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_JOIN = "Join a list of texts into one text, separated by a delimiter."; // untranslated
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_SPLIT = "Split text into a list of texts, breaking at each delimiter."; // untranslated
+Blockly.Msg.LISTS_SPLIT_WITH_DELIMITER = "with delimiter"; // untranslated
+Blockly.Msg.LOGIC_BOOLEAN_FALSE = "false";
+Blockly.Msg.LOGIC_BOOLEAN_HELPURL = "https://github.com/google/blockly/wiki/Logic#values"; // untranslated
+Blockly.Msg.LOGIC_BOOLEAN_TOOLTIP = "Returns either true or false.";
+Blockly.Msg.LOGIC_BOOLEAN_TRUE = "true";
+Blockly.Msg.LOGIC_COMPARE_HELPURL = "https://en.wikipedia.org/wiki/Inequality_(mathematics)";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_EQ = "Return true if both inputs equal each other.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GT = "Return true if the first input is greater than the second input.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GTE = "Return true if the first input is greater than or equal to the second input.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LT = "Return true if the first input is smaller than the second input.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LTE = "Return true if the first input is smaller than or equal to the second input.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_NEQ = "Return true if both inputs are not equal to each other.";
+Blockly.Msg.LOGIC_NEGATE_HELPURL = "https://github.com/google/blockly/wiki/Logic#not"; // untranslated
+Blockly.Msg.LOGIC_NEGATE_TITLE = "not %1";
+Blockly.Msg.LOGIC_NEGATE_TOOLTIP = "Returns true if the input is false. Returns false if the input is true.";
+Blockly.Msg.LOGIC_NULL = "null";
+Blockly.Msg.LOGIC_NULL_HELPURL = "https://en.wikipedia.org/wiki/Nullable_type"; // untranslated
+Blockly.Msg.LOGIC_NULL_TOOLTIP = "Returns null.";
+Blockly.Msg.LOGIC_OPERATION_AND = "and";
+Blockly.Msg.LOGIC_OPERATION_HELPURL = "https://github.com/google/blockly/wiki/Logic#logical-operations"; // untranslated
+Blockly.Msg.LOGIC_OPERATION_OR = "or";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_AND = "Return true if both inputs are true.";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_OR = "Return true if at least one of the inputs is true.";
+Blockly.Msg.LOGIC_TERNARY_CONDITION = "test";
+Blockly.Msg.LOGIC_TERNARY_HELPURL = "https://en.wikipedia.org/wiki/%3F:"; // untranslated
+Blockly.Msg.LOGIC_TERNARY_IF_FALSE = "if false";
+Blockly.Msg.LOGIC_TERNARY_IF_TRUE = "if true";
+Blockly.Msg.LOGIC_TERNARY_TOOLTIP = "Check the condition in 'test'. If the condition is true, returns the 'if true' value; otherwise returns the 'if false' value.";
+Blockly.Msg.MATH_ADDITION_SYMBOL = "+"; // untranslated
+Blockly.Msg.MATH_ARITHMETIC_HELPURL = "https://en.wikipedia.org/wiki/Arithmetic";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_ADD = "Return the sum of the two numbers.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE = "Return the quotient of the two numbers.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MINUS = "Return the difference of the two numbers.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MULTIPLY = "Return the product of the two numbers.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_POWER = "Return the first number raised to the power of the second number.";
+Blockly.Msg.MATH_CHANGE_HELPURL = "https://en.wikipedia.org/wiki/Programming_idiom#Incrementing_a_counter";
+Blockly.Msg.MATH_CHANGE_TITLE = "change %1 by %2";
+Blockly.Msg.MATH_CHANGE_TOOLTIP = "Add a number to variable '%1'.";
+Blockly.Msg.MATH_CONSTANT_HELPURL = "https://en.wikipedia.org/wiki/Mathematical_constant";
+Blockly.Msg.MATH_CONSTANT_TOOLTIP = "Return one of the common constants: π (3.141…), e (2.718…), φ (1.618…), sqrt(2) (1.414…), sqrt(½) (0.707…), or ∞ (infinity).";
+Blockly.Msg.MATH_CONSTRAIN_HELPURL = "https://en.wikipedia.org/wiki/Clamping_%28graphics%29"; // untranslated
+Blockly.Msg.MATH_CONSTRAIN_TITLE = "constrain %1 low %2 high %3"; // untranslated
+Blockly.Msg.MATH_CONSTRAIN_TOOLTIP = "Constrain a number to be between the specified limits (inclusive)."; // untranslated
+Blockly.Msg.MATH_DIVISION_SYMBOL = "÷"; // untranslated
+Blockly.Msg.MATH_IS_DIVISIBLE_BY = "is divisible by";
+Blockly.Msg.MATH_IS_EVEN = "is even";
+Blockly.Msg.MATH_IS_NEGATIVE = "is negative";
+Blockly.Msg.MATH_IS_ODD = "is odd";
+Blockly.Msg.MATH_IS_POSITIVE = "is positive";
+Blockly.Msg.MATH_IS_PRIME = "is prime";
+Blockly.Msg.MATH_IS_TOOLTIP = "Check if a number is an even, odd, prime, whole, positive, negative, or if it is divisible by certain number. Returns true or false.";
+Blockly.Msg.MATH_IS_WHOLE = "is whole";
+Blockly.Msg.MATH_MODULO_HELPURL = "https://en.wikipedia.org/wiki/Modulo_operation"; // untranslated
+Blockly.Msg.MATH_MODULO_TITLE = "remainder of %1 ÷ %2"; // untranslated
+Blockly.Msg.MATH_MODULO_TOOLTIP = "Return the remainder from dividing the two numbers."; // untranslated
+Blockly.Msg.MATH_MULTIPLICATION_SYMBOL = "×"; // untranslated
+Blockly.Msg.MATH_NUMBER_HELPURL = "https://en.wikipedia.org/wiki/Number";
+Blockly.Msg.MATH_NUMBER_TOOLTIP = "A number.";
+Blockly.Msg.MATH_ONLIST_HELPURL = ""; // untranslated
+Blockly.Msg.MATH_ONLIST_OPERATOR_AVERAGE = "average of list"; // untranslated
+Blockly.Msg.MATH_ONLIST_OPERATOR_MAX = "max of list"; // untranslated
+Blockly.Msg.MATH_ONLIST_OPERATOR_MEDIAN = "median of list"; // untranslated
+Blockly.Msg.MATH_ONLIST_OPERATOR_MIN = "min of list"; // untranslated
+Blockly.Msg.MATH_ONLIST_OPERATOR_MODE = "modes of list"; // untranslated
+Blockly.Msg.MATH_ONLIST_OPERATOR_RANDOM = "random item of list"; // untranslated
+Blockly.Msg.MATH_ONLIST_OPERATOR_STD_DEV = "standard deviation of list"; // untranslated
+Blockly.Msg.MATH_ONLIST_OPERATOR_SUM = "sum of list"; // untranslated
+Blockly.Msg.MATH_ONLIST_TOOLTIP_AVERAGE = "Return the average (arithmetic mean) of the numeric values in the list."; // untranslated
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MAX = "Return the largest number in the list."; // untranslated
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MEDIAN = "Return the median number in the list."; // untranslated
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MIN = "Return the smallest number in the list."; // untranslated
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MODE = "Return a list of the most common item(s) in the list."; // untranslated
+Blockly.Msg.MATH_ONLIST_TOOLTIP_RANDOM = "Return a random element from the list."; // untranslated
+Blockly.Msg.MATH_ONLIST_TOOLTIP_STD_DEV = "Return the standard deviation of the list."; // untranslated
+Blockly.Msg.MATH_ONLIST_TOOLTIP_SUM = "Return the sum of all the numbers in the list."; // untranslated
+Blockly.Msg.MATH_POWER_SYMBOL = "^"; // untranslated
+Blockly.Msg.MATH_RANDOM_FLOAT_HELPURL = "https://en.wikipedia.org/wiki/Random_number_generation"; // untranslated
+Blockly.Msg.MATH_RANDOM_FLOAT_TITLE_RANDOM = "random fraction"; // untranslated
+Blockly.Msg.MATH_RANDOM_FLOAT_TOOLTIP = "Return a random fraction between 0.0 (inclusive) and 1.0 (exclusive)."; // untranslated
+Blockly.Msg.MATH_RANDOM_INT_HELPURL = "https://en.wikipedia.org/wiki/Random_number_generation"; // untranslated
+Blockly.Msg.MATH_RANDOM_INT_TITLE = "random integer from %1 to %2"; // untranslated
+Blockly.Msg.MATH_RANDOM_INT_TOOLTIP = "Return a random integer between the two specified limits, inclusive."; // untranslated
+Blockly.Msg.MATH_ROUND_HELPURL = "https://en.wikipedia.org/wiki/Rounding";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUND = "round";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDDOWN = "round down"; // untranslated
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDUP = "round up"; // untranslated
+Blockly.Msg.MATH_ROUND_TOOLTIP = "Round a number up or down.";
+Blockly.Msg.MATH_SINGLE_HELPURL = "https://en.wikipedia.org/wiki/Square_root";
+Blockly.Msg.MATH_SINGLE_OP_ABSOLUTE = "absolute";
+Blockly.Msg.MATH_SINGLE_OP_ROOT = "square root";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ABS = "Return the absolute value of a number.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_EXP = "Return e to the power of a number.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LN = "Return the natural logarithm of a number.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LOG10 = "Return the base 10 logarithm of a number.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_NEG = "Return the negation of a number.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_POW10 = "Return 10 to the power of a number.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ROOT = "Return the square root of a number.";
+Blockly.Msg.MATH_SUBTRACTION_SYMBOL = "-"; // untranslated
+Blockly.Msg.MATH_TRIG_ACOS = "acos"; // untranslated
+Blockly.Msg.MATH_TRIG_ASIN = "asin"; // untranslated
+Blockly.Msg.MATH_TRIG_ATAN = "atan"; // untranslated
+Blockly.Msg.MATH_TRIG_COS = "cos"; // untranslated
+Blockly.Msg.MATH_TRIG_HELPURL = "https://en.wikipedia.org/wiki/Trigonometric_functions";
+Blockly.Msg.MATH_TRIG_SIN = "sin"; // untranslated
+Blockly.Msg.MATH_TRIG_TAN = "tan"; // untranslated
+Blockly.Msg.MATH_TRIG_TOOLTIP_ACOS = "Return the arccosine of a number.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ASIN = "Return the arcsine of a number.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ATAN = "Return the arctangent of a number.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_COS = "Return the cosine of a degree (not radian).";
+Blockly.Msg.MATH_TRIG_TOOLTIP_SIN = "Return the sine of a degree (not radian).";
+Blockly.Msg.MATH_TRIG_TOOLTIP_TAN = "Return the tangent of a degree (not radian).";
+Blockly.Msg.NEW_VARIABLE = "New variable...";
+Blockly.Msg.NEW_VARIABLE_TITLE = "New variable name:";
+Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; // untranslated
+Blockly.Msg.PROCEDURES_ALLOW_STATEMENTS = "allow statements"; // untranslated
+Blockly.Msg.PROCEDURES_BEFORE_PARAMS = "with:"; // untranslated
+Blockly.Msg.PROCEDURES_CALLNORETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_CALLNORETURN_TOOLTIP = "Run the user-defined function '%1'."; // untranslated
+Blockly.Msg.PROCEDURES_CALLRETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_CALLRETURN_TOOLTIP = "Run the user-defined function '%1' and use its output."; // untranslated
+Blockly.Msg.PROCEDURES_CALL_BEFORE_PARAMS = "with:"; // untranslated
+Blockly.Msg.PROCEDURES_CREATE_DO = "Create '%1'"; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT = "Describe this function..."; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_DO = ""; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE = "do something"; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE = "to"; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_TOOLTIP = "Creates a function with no output."; // untranslated
+Blockly.Msg.PROCEDURES_DEFRETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_DEFRETURN_RETURN = "return"; // untranslated
+Blockly.Msg.PROCEDURES_DEFRETURN_TOOLTIP = "Creates a function with an output."; // untranslated
+Blockly.Msg.PROCEDURES_DEF_DUPLICATE_WARNING = "Warning: This function has duplicate parameters."; // untranslated
+Blockly.Msg.PROCEDURES_HIGHLIGHT_DEF = "Highlight function definition"; // untranslated
+Blockly.Msg.PROCEDURES_IFRETURN_HELPURL = "http://c2.com/cgi/wiki?GuardClause"; // untranslated
+Blockly.Msg.PROCEDURES_IFRETURN_TOOLTIP = "If a value is true, then return a second value."; // untranslated
+Blockly.Msg.PROCEDURES_IFRETURN_WARNING = "Warning: This block may be used only within a function definition."; // untranslated
+Blockly.Msg.PROCEDURES_MUTATORARG_TITLE = "input name:"; // untranslated
+Blockly.Msg.PROCEDURES_MUTATORARG_TOOLTIP = "Add an input to the function."; // untranslated
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TITLE = "inputs"; // untranslated
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TOOLTIP = "Add, remove, or reorder inputs to this function."; // untranslated
+Blockly.Msg.REDO = "Redo";
+Blockly.Msg.REMOVE_COMMENT = "Remove Comment";
+Blockly.Msg.RENAME_VARIABLE = "Rename variable...";
+Blockly.Msg.RENAME_VARIABLE_TITLE = "Rename all '%1' variables to:";
+Blockly.Msg.TEXT_APPEND_APPENDTEXT = "append text"; // untranslated
+Blockly.Msg.TEXT_APPEND_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_APPEND_TO = "to"; // untranslated
+Blockly.Msg.TEXT_APPEND_TOOLTIP = "Append some text to variable '%1'."; // untranslated
+Blockly.Msg.TEXT_CHANGECASE_HELPURL = "https://github.com/google/blockly/wiki/Text#adjusting-text-case"; // untranslated
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_LOWERCASE = "to lower case"; // untranslated
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_TITLECASE = "to Title Case"; // untranslated
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_UPPERCASE = "to UPPER CASE"; // untranslated
+Blockly.Msg.TEXT_CHANGECASE_TOOLTIP = "Return a copy of the text in a different case."; // untranslated
+Blockly.Msg.TEXT_CHARAT_FIRST = "get first letter"; // untranslated
+Blockly.Msg.TEXT_CHARAT_FROM_END = "get letter # from end"; // untranslated
+Blockly.Msg.TEXT_CHARAT_FROM_START = "get letter #"; // untranslated
+Blockly.Msg.TEXT_CHARAT_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-text"; // untranslated
+Blockly.Msg.TEXT_CHARAT_INPUT_INTEXT = "in text"; // untranslated
+Blockly.Msg.TEXT_CHARAT_LAST = "get last letter"; // untranslated
+Blockly.Msg.TEXT_CHARAT_RANDOM = "get random letter"; // untranslated
+Blockly.Msg.TEXT_CHARAT_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_CHARAT_TOOLTIP = "Returns the letter at the specified position."; // untranslated
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TOOLTIP = "Add an item to the text."; // untranslated
+Blockly.Msg.TEXT_CREATE_JOIN_TITLE_JOIN = "join"; // untranslated
+Blockly.Msg.TEXT_CREATE_JOIN_TOOLTIP = "Add, remove, or reorder sections to reconfigure this text block."; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_END = "to letter # from end"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_START = "to letter #"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_END_LAST = "to last letter"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_INPUT_IN_TEXT = "in text"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FIRST = "get substring from first letter"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_END = "get substring from letter # from end"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_START = "get substring from letter #"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_TOOLTIP = "Returns a specified portion of the text."; // untranslated
+Blockly.Msg.TEXT_INDEXOF_HELPURL = "https://github.com/google/blockly/wiki/Text#finding-text"; // untranslated
+Blockly.Msg.TEXT_INDEXOF_INPUT_INTEXT = "in text"; // untranslated
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_FIRST = "find first occurrence of text"; // untranslated
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_LAST = "find last occurrence of text"; // untranslated
+Blockly.Msg.TEXT_INDEXOF_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_INDEXOF_TOOLTIP = "Returns the index of the first/last occurrence of the first text in the second text. Returns %1 if text is not found."; // untranslated
+Blockly.Msg.TEXT_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Text#checking-for-empty-text"; // untranslated
+Blockly.Msg.TEXT_ISEMPTY_TITLE = "%1 is empty"; // untranslated
+Blockly.Msg.TEXT_ISEMPTY_TOOLTIP = "Returns true if the provided text is empty."; // untranslated
+Blockly.Msg.TEXT_JOIN_HELPURL = "https://github.com/google/blockly/wiki/Text#text-creation"; // untranslated
+Blockly.Msg.TEXT_JOIN_TITLE_CREATEWITH = "create text with"; // untranslated
+Blockly.Msg.TEXT_JOIN_TOOLTIP = "Create a piece of text by joining together any number of items."; // untranslated
+Blockly.Msg.TEXT_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_LENGTH_TITLE = "length of %1"; // untranslated
+Blockly.Msg.TEXT_LENGTH_TOOLTIP = "Returns the number of letters (including spaces) in the provided text."; // untranslated
+Blockly.Msg.TEXT_PRINT_HELPURL = "https://github.com/google/blockly/wiki/Text#printing-text"; // untranslated
+Blockly.Msg.TEXT_PRINT_TITLE = "print %1"; // untranslated
+Blockly.Msg.TEXT_PRINT_TOOLTIP = "Print the specified text, number or other value."; // untranslated
+Blockly.Msg.TEXT_PROMPT_HELPURL = "https://github.com/google/blockly/wiki/Text#getting-input-from-the-user"; // untranslated
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_NUMBER = "Prompt for user for a number."; // untranslated
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_TEXT = "Prompt for user for some text."; // untranslated
+Blockly.Msg.TEXT_PROMPT_TYPE_NUMBER = "prompt for number with message"; // untranslated
+Blockly.Msg.TEXT_PROMPT_TYPE_TEXT = "prompt for text with message"; // untranslated
+Blockly.Msg.TEXT_TEXT_HELPURL = "https://en.wikipedia.org/wiki/String_(computer_science)"; // untranslated
+Blockly.Msg.TEXT_TEXT_TOOLTIP = "A letter, word, or line of text."; // untranslated
+Blockly.Msg.TEXT_TRIM_HELPURL = "https://github.com/google/blockly/wiki/Text#trimming-removing-spaces"; // untranslated
+Blockly.Msg.TEXT_TRIM_OPERATOR_BOTH = "trim spaces from both sides of"; // untranslated
+Blockly.Msg.TEXT_TRIM_OPERATOR_LEFT = "trim spaces from left side of"; // untranslated
+Blockly.Msg.TEXT_TRIM_OPERATOR_RIGHT = "trim spaces from right side of"; // untranslated
+Blockly.Msg.TEXT_TRIM_TOOLTIP = "Return a copy of the text with spaces removed from one or both ends."; // untranslated
+Blockly.Msg.TODAY = "Today";
+Blockly.Msg.UNDO = "Undo";
+Blockly.Msg.VARIABLES_DEFAULT_NAME = "item";
+Blockly.Msg.VARIABLES_GET_CREATE_SET = "Create 'set %1'"; // untranslated
+Blockly.Msg.VARIABLES_GET_HELPURL = "https://github.com/google/blockly/wiki/Variables#get"; // untranslated
+Blockly.Msg.VARIABLES_GET_TOOLTIP = "Returns the value of this variable."; // untranslated
+Blockly.Msg.VARIABLES_SET = "set %1 to %2"; // untranslated
+Blockly.Msg.VARIABLES_SET_CREATE_GET = "Create 'get %1'"; // untranslated
+Blockly.Msg.VARIABLES_SET_HELPURL = "https://github.com/google/blockly/wiki/Variables#set"; // untranslated
+Blockly.Msg.VARIABLES_SET_TOOLTIP = "Sets this variable to be equal to the input."; // untranslated
+Blockly.Msg.VARIABLE_ALREADY_EXISTS = "A variable named '%1' already exists."; // untranslated
+Blockly.Msg.PROCEDURES_DEFRETURN_TITLE = Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE;
+Blockly.Msg.CONTROLS_IF_IF_TITLE_IF = Blockly.Msg.CONTROLS_IF_MSG_IF;
+Blockly.Msg.CONTROLS_WHILEUNTIL_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_MSG_THEN = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_ELSE_TITLE_ELSE = Blockly.Msg.CONTROLS_IF_MSG_ELSE;
+Blockly.Msg.PROCEDURES_DEFRETURN_PROCEDURE = Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE;
+Blockly.Msg.LISTS_GET_SUBLIST_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.LISTS_GET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.PROCEDURES_DEFRETURN_DO = Blockly.Msg.PROCEDURES_DEFNORETURN_DO;
+Blockly.Msg.CONTROLS_IF_ELSEIF_TITLE_ELSEIF = Blockly.Msg.CONTROLS_IF_MSG_ELSEIF;
+Blockly.Msg.LISTS_GET_INDEX_HELPURL = Blockly.Msg.LISTS_INDEX_OF_HELPURL;
+Blockly.Msg.CONTROLS_FOREACH_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_SET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TITLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_APPEND_VARIABLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.LISTS_INDEX_OF_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.PROCEDURES_DEFRETURN_COMMENT = Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT; \ No newline at end of file
diff --git a/blockly/msg/js/en.js b/blockly/msg/js/en.js
new file mode 100644
index 0000000..1020c64
--- /dev/null
+++ b/blockly/msg/js/en.js
@@ -0,0 +1,391 @@
+// This file was automatically generated. Do not modify.
+
+'use strict';
+
+goog.provide('Blockly.Msg.en');
+
+goog.require('Blockly.Msg');
+
+Blockly.Msg.ADD_COMMENT = "Add Comment";
+Blockly.Msg.CHANGE_VALUE_TITLE = "Change value:";
+Blockly.Msg.CLEAN_UP = "Clean up Blocks";
+Blockly.Msg.COLLAPSE_ALL = "Collapse Blocks";
+Blockly.Msg.COLLAPSE_BLOCK = "Collapse Block";
+Blockly.Msg.COLOUR_BLEND_COLOUR1 = "colour 1";
+Blockly.Msg.COLOUR_BLEND_COLOUR2 = "colour 2";
+Blockly.Msg.COLOUR_BLEND_HELPURL = "http://meyerweb.com/eric/tools/color-blend/";
+Blockly.Msg.COLOUR_BLEND_RATIO = "ratio";
+Blockly.Msg.COLOUR_BLEND_TITLE = "blend";
+Blockly.Msg.COLOUR_BLEND_TOOLTIP = "Blends two colours together with a given ratio (0.0 - 1.0).";
+Blockly.Msg.COLOUR_PICKER_HELPURL = "https://en.wikipedia.org/wiki/Color";
+Blockly.Msg.COLOUR_PICKER_TOOLTIP = "Choose a colour from the palette.";
+Blockly.Msg.COLOUR_RANDOM_HELPURL = "http://randomcolour.com";
+Blockly.Msg.COLOUR_RANDOM_TITLE = "random colour";
+Blockly.Msg.COLOUR_RANDOM_TOOLTIP = "Choose a colour at random.";
+Blockly.Msg.COLOUR_RGB_BLUE = "blue";
+Blockly.Msg.COLOUR_RGB_GREEN = "green";
+Blockly.Msg.COLOUR_RGB_HELPURL = "http://www.december.com/html/spec/colorper.html";
+Blockly.Msg.COLOUR_RGB_RED = "red";
+Blockly.Msg.COLOUR_RGB_TITLE = "colour with";
+Blockly.Msg.COLOUR_RGB_TOOLTIP = "Create a colour with the specified amount of red, green, and blue. All values must be between 0 and 100.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_HELPURL = "https://github.com/google/blockly/wiki/Loops#loop-termination-blocks";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK = "break out of loop";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE = "continue with next iteration of loop";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK = "Break out of the containing loop.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE = "Skip the rest of this loop, and continue with the next iteration.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_WARNING = "Warning: This block may only be used within a loop.";
+Blockly.Msg.CONTROLS_FOREACH_HELPURL = "https://github.com/google/blockly/wiki/Loops#for-each";
+Blockly.Msg.CONTROLS_FOREACH_TITLE = "for each item %1 in list %2";
+Blockly.Msg.CONTROLS_FOREACH_TOOLTIP = "For each item in a list, set the variable '%1' to the item, and then do some statements.";
+Blockly.Msg.CONTROLS_FOR_HELPURL = "https://github.com/google/blockly/wiki/Loops#count-with";
+Blockly.Msg.CONTROLS_FOR_TITLE = "count with %1 from %2 to %3 by %4";
+Blockly.Msg.CONTROLS_FOR_TOOLTIP = "Have the variable '%1' take on the values from the start number to the end number, counting by the specified interval, and do the specified blocks.";
+Blockly.Msg.CONTROLS_IF_ELSEIF_TOOLTIP = "Add a condition to the if block.";
+Blockly.Msg.CONTROLS_IF_ELSE_TOOLTIP = "Add a final, catch-all condition to the if block.";
+Blockly.Msg.CONTROLS_IF_HELPURL = "https://github.com/google/blockly/wiki/IfElse";
+Blockly.Msg.CONTROLS_IF_IF_TOOLTIP = "Add, remove, or reorder sections to reconfigure this if block.";
+Blockly.Msg.CONTROLS_IF_MSG_ELSE = "else";
+Blockly.Msg.CONTROLS_IF_MSG_ELSEIF = "else if";
+Blockly.Msg.CONTROLS_IF_MSG_IF = "if";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_1 = "If a value is true, then do some statements.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_2 = "If a value is true, then do the first block of statements. Otherwise, do the second block of statements.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_3 = "If the first value is true, then do the first block of statements. Otherwise, if the second value is true, do the second block of statements.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_4 = "If the first value is true, then do the first block of statements. Otherwise, if the second value is true, do the second block of statements. If none of the values are true, do the last block of statements.";
+Blockly.Msg.CONTROLS_REPEAT_HELPURL = "https://en.wikipedia.org/wiki/For_loop";
+Blockly.Msg.CONTROLS_REPEAT_INPUT_DO = "do";
+Blockly.Msg.CONTROLS_REPEAT_TITLE = "repeat %1 times";
+Blockly.Msg.CONTROLS_REPEAT_TOOLTIP = "Do some statements several times.";
+Blockly.Msg.CONTROLS_WHILEUNTIL_HELPURL = "https://github.com/google/blockly/wiki/Loops#repeat";
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "repeat until";
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "repeat while";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "While a value is false, then do some statements.";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "While a value is true, then do some statements.";
+Blockly.Msg.DELETE_ALL_BLOCKS = "Delete all %1 blocks?";
+Blockly.Msg.DELETE_BLOCK = "Delete Block";
+Blockly.Msg.DELETE_VARIABLE = "Delete the '%1' variable";
+Blockly.Msg.DELETE_VARIABLE_CONFIRMATION = "Delete %1 uses of the '%2' variable?";
+Blockly.Msg.DELETE_X_BLOCKS = "Delete %1 Blocks";
+Blockly.Msg.DISABLE_BLOCK = "Disable Block";
+Blockly.Msg.DUPLICATE_BLOCK = "Duplicate";
+Blockly.Msg.ENABLE_BLOCK = "Enable Block";
+Blockly.Msg.EXPAND_ALL = "Expand Blocks";
+Blockly.Msg.EXPAND_BLOCK = "Expand Block";
+Blockly.Msg.EXTERNAL_INPUTS = "External Inputs";
+Blockly.Msg.HELP = "Help";
+Blockly.Msg.INLINE_INPUTS = "Inline Inputs";
+Blockly.Msg.LISTS_CREATE_EMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-empty-list";
+Blockly.Msg.LISTS_CREATE_EMPTY_TITLE = "create empty list";
+Blockly.Msg.LISTS_CREATE_EMPTY_TOOLTIP = "Returns a list, of length 0, containing no data records";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TITLE_ADD = "list";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TOOLTIP = "Add, remove, or reorder sections to reconfigure this list block.";
+Blockly.Msg.LISTS_CREATE_WITH_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with";
+Blockly.Msg.LISTS_CREATE_WITH_INPUT_WITH = "create list with";
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TOOLTIP = "Add an item to the list.";
+Blockly.Msg.LISTS_CREATE_WITH_TOOLTIP = "Create a list with any number of items.";
+Blockly.Msg.LISTS_GET_INDEX_FIRST = "first";
+Blockly.Msg.LISTS_GET_INDEX_FROM_END = "# from end";
+Blockly.Msg.LISTS_GET_INDEX_FROM_START = "#";
+Blockly.Msg.LISTS_GET_INDEX_GET = "get";
+Blockly.Msg.LISTS_GET_INDEX_GET_REMOVE = "get and remove";
+Blockly.Msg.LISTS_GET_INDEX_LAST = "last";
+Blockly.Msg.LISTS_GET_INDEX_RANDOM = "random";
+Blockly.Msg.LISTS_GET_INDEX_REMOVE = "remove";
+Blockly.Msg.LISTS_GET_INDEX_TAIL = "";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FIRST = "Returns the first item in a list.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FROM = "Returns the item at the specified position in a list.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_LAST = "Returns the last item in a list.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_RANDOM = "Returns a random item in a list.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST = "Removes and returns the first item in a list.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM = "Removes and returns the item at the specified position in a list.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST = "Removes and returns the last item in a list.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM = "Removes and returns a random item in a list.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST = "Removes the first item in a list.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM = "Removes the item at the specified position in a list.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST = "Removes the last item in a list.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM = "Removes a random item in a list.";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_END = "to # from end";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_START = "to #";
+Blockly.Msg.LISTS_GET_SUBLIST_END_LAST = "to last";
+Blockly.Msg.LISTS_GET_SUBLIST_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-a-sublist";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FIRST = "get sub-list from first";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_END = "get sub-list from # from end";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_START = "get sub-list from #";
+Blockly.Msg.LISTS_GET_SUBLIST_TAIL = "";
+Blockly.Msg.LISTS_GET_SUBLIST_TOOLTIP = "Creates a copy of the specified portion of a list.";
+Blockly.Msg.LISTS_INDEX_FROM_END_TOOLTIP = "%1 is the last item.";
+Blockly.Msg.LISTS_INDEX_FROM_START_TOOLTIP = "%1 is the first item.";
+Blockly.Msg.LISTS_INDEX_OF_FIRST = "find first occurrence of item";
+Blockly.Msg.LISTS_INDEX_OF_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-items-from-a-list";
+Blockly.Msg.LISTS_INDEX_OF_LAST = "find last occurrence of item";
+Blockly.Msg.LISTS_INDEX_OF_TOOLTIP = "Returns the index of the first/last occurrence of the item in the list. Returns %1 if item is not found.";
+Blockly.Msg.LISTS_INLIST = "in list";
+Blockly.Msg.LISTS_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#is-empty";
+Blockly.Msg.LISTS_ISEMPTY_TITLE = "%1 is empty";
+Blockly.Msg.LISTS_ISEMPTY_TOOLTIP = "Returns true if the list is empty.";
+Blockly.Msg.LISTS_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Lists#length-of";
+Blockly.Msg.LISTS_LENGTH_TITLE = "length of %1";
+Blockly.Msg.LISTS_LENGTH_TOOLTIP = "Returns the length of a list.";
+Blockly.Msg.LISTS_REPEAT_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with";
+Blockly.Msg.LISTS_REPEAT_TITLE = "create list with item %1 repeated %2 times";
+Blockly.Msg.LISTS_REPEAT_TOOLTIP = "Creates a list consisting of the given value repeated the specified number of times.";
+Blockly.Msg.LISTS_SET_INDEX_HELPURL = "https://github.com/google/blockly/wiki/Lists#in-list--set";
+Blockly.Msg.LISTS_SET_INDEX_INPUT_TO = "as";
+Blockly.Msg.LISTS_SET_INDEX_INSERT = "insert at";
+Blockly.Msg.LISTS_SET_INDEX_SET = "set";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST = "Inserts the item at the start of a list.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FROM = "Inserts the item at the specified position in a list.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_LAST = "Append the item to the end of a list.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM = "Inserts the item randomly in a list.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FIRST = "Sets the first item in a list.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FROM = "Sets the item at the specified position in a list.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_LAST = "Sets the last item in a list.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_RANDOM = "Sets a random item in a list.";
+Blockly.Msg.LISTS_SORT_HELPURL = "https://github.com/google/blockly/wiki/Lists#sorting-a-list";
+Blockly.Msg.LISTS_SORT_ORDER_ASCENDING = "ascending";
+Blockly.Msg.LISTS_SORT_ORDER_DESCENDING = "descending";
+Blockly.Msg.LISTS_SORT_TITLE = "sort %1 %2 %3";
+Blockly.Msg.LISTS_SORT_TOOLTIP = "Sort a copy of a list.";
+Blockly.Msg.LISTS_SORT_TYPE_IGNORECASE = "alphabetic, ignore case";
+Blockly.Msg.LISTS_SORT_TYPE_NUMERIC = "numeric";
+Blockly.Msg.LISTS_SORT_TYPE_TEXT = "alphabetic";
+Blockly.Msg.LISTS_SPLIT_HELPURL = "https://github.com/google/blockly/wiki/Lists#splitting-strings-and-joining-lists";
+Blockly.Msg.LISTS_SPLIT_LIST_FROM_TEXT = "make list from text";
+Blockly.Msg.LISTS_SPLIT_TEXT_FROM_LIST = "make text from list";
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_JOIN = "Join a list of texts into one text, separated by a delimiter.";
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_SPLIT = "Split text into a list of texts, breaking at each delimiter.";
+Blockly.Msg.LISTS_SPLIT_WITH_DELIMITER = "with delimiter";
+Blockly.Msg.LOGIC_BOOLEAN_FALSE = "false";
+Blockly.Msg.LOGIC_BOOLEAN_HELPURL = "https://github.com/google/blockly/wiki/Logic#values";
+Blockly.Msg.LOGIC_BOOLEAN_TOOLTIP = "Returns either true or false.";
+Blockly.Msg.LOGIC_BOOLEAN_TRUE = "true";
+Blockly.Msg.LOGIC_COMPARE_HELPURL = "https://en.wikipedia.org/wiki/Inequality_(mathematics)";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_EQ = "Return true if both inputs equal each other.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GT = "Return true if the first input is greater than the second input.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GTE = "Return true if the first input is greater than or equal to the second input.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LT = "Return true if the first input is smaller than the second input.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LTE = "Return true if the first input is smaller than or equal to the second input.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_NEQ = "Return true if both inputs are not equal to each other.";
+Blockly.Msg.LOGIC_NEGATE_HELPURL = "https://github.com/google/blockly/wiki/Logic#not";
+Blockly.Msg.LOGIC_NEGATE_TITLE = "not %1";
+Blockly.Msg.LOGIC_NEGATE_TOOLTIP = "Returns true if the input is false. Returns false if the input is true.";
+Blockly.Msg.LOGIC_NULL = "null";
+Blockly.Msg.LOGIC_NULL_HELPURL = "https://en.wikipedia.org/wiki/Nullable_type";
+Blockly.Msg.LOGIC_NULL_TOOLTIP = "Returns null.";
+Blockly.Msg.LOGIC_OPERATION_AND = "and";
+Blockly.Msg.LOGIC_OPERATION_HELPURL = "https://github.com/google/blockly/wiki/Logic#logical-operations";
+Blockly.Msg.LOGIC_OPERATION_OR = "or";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_AND = "Return true if both inputs are true.";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_OR = "Return true if at least one of the inputs is true.";
+Blockly.Msg.LOGIC_TERNARY_CONDITION = "test";
+Blockly.Msg.LOGIC_TERNARY_HELPURL = "https://en.wikipedia.org/wiki/%3F:";
+Blockly.Msg.LOGIC_TERNARY_IF_FALSE = "if false";
+Blockly.Msg.LOGIC_TERNARY_IF_TRUE = "if true";
+Blockly.Msg.LOGIC_TERNARY_TOOLTIP = "Check the condition in 'test'. If the condition is true, returns the 'if true' value; otherwise returns the 'if false' value.";
+Blockly.Msg.MATH_ADDITION_SYMBOL = "+";
+Blockly.Msg.MATH_ARITHMETIC_HELPURL = "https://en.wikipedia.org/wiki/Arithmetic";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_ADD = "Return the sum of the two numbers.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE = "Return the quotient of the two numbers.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MINUS = "Return the difference of the two numbers.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MULTIPLY = "Return the product of the two numbers.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_POWER = "Return the first number raised to the power of the second number.";
+Blockly.Msg.MATH_CHANGE_HELPURL = "https://en.wikipedia.org/wiki/Programming_idiom#Incrementing_a_counter";
+Blockly.Msg.MATH_CHANGE_TITLE = "change %1 by %2";
+Blockly.Msg.MATH_CHANGE_TOOLTIP = "Add a number to variable '%1'.";
+Blockly.Msg.MATH_CONSTANT_HELPURL = "https://en.wikipedia.org/wiki/Mathematical_constant";
+Blockly.Msg.MATH_CONSTANT_TOOLTIP = "Return one of the common constants: π (3.141…), e (2.718…), φ (1.618…), sqrt(2) (1.414…), sqrt(½) (0.707…), or ∞ (infinity).";
+Blockly.Msg.MATH_CONSTRAIN_HELPURL = "https://en.wikipedia.org/wiki/Clamping_%28graphics%29";
+Blockly.Msg.MATH_CONSTRAIN_TITLE = "constrain %1 low %2 high %3";
+Blockly.Msg.MATH_CONSTRAIN_TOOLTIP = "Constrain a number to be between the specified limits (inclusive).";
+Blockly.Msg.MATH_DIVISION_SYMBOL = "÷";
+Blockly.Msg.MATH_IS_DIVISIBLE_BY = "is divisible by";
+Blockly.Msg.MATH_IS_EVEN = "is even";
+Blockly.Msg.MATH_IS_NEGATIVE = "is negative";
+Blockly.Msg.MATH_IS_ODD = "is odd";
+Blockly.Msg.MATH_IS_POSITIVE = "is positive";
+Blockly.Msg.MATH_IS_PRIME = "is prime";
+Blockly.Msg.MATH_IS_TOOLTIP = "Check if a number is an even, odd, prime, whole, positive, negative, or if it is divisible by certain number. Returns true or false.";
+Blockly.Msg.MATH_IS_WHOLE = "is whole";
+Blockly.Msg.MATH_MODULO_HELPURL = "https://en.wikipedia.org/wiki/Modulo_operation";
+Blockly.Msg.MATH_MODULO_TITLE = "remainder of %1 ÷ %2";
+Blockly.Msg.MATH_MODULO_TOOLTIP = "Return the remainder from dividing the two numbers.";
+Blockly.Msg.MATH_MULTIPLICATION_SYMBOL = "×";
+Blockly.Msg.MATH_NUMBER_HELPURL = "https://en.wikipedia.org/wiki/Number";
+Blockly.Msg.MATH_NUMBER_TOOLTIP = "A number.";
+Blockly.Msg.MATH_ONLIST_HELPURL = "";
+Blockly.Msg.MATH_ONLIST_OPERATOR_AVERAGE = "average of list";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MAX = "max of list";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MEDIAN = "median of list";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MIN = "min of list";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MODE = "modes of list";
+Blockly.Msg.MATH_ONLIST_OPERATOR_RANDOM = "random item of list";
+Blockly.Msg.MATH_ONLIST_OPERATOR_STD_DEV = "standard deviation of list";
+Blockly.Msg.MATH_ONLIST_OPERATOR_SUM = "sum of list";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_AVERAGE = "Return the average (arithmetic mean) of the numeric values in the list.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MAX = "Return the largest number in the list.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MEDIAN = "Return the median number in the list.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MIN = "Return the smallest number in the list.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MODE = "Return a list of the most common item(s) in the list.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_RANDOM = "Return a random element from the list.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_STD_DEV = "Return the standard deviation of the list.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_SUM = "Return the sum of all the numbers in the list.";
+Blockly.Msg.MATH_POWER_SYMBOL = "^";
+Blockly.Msg.MATH_RANDOM_FLOAT_HELPURL = "https://en.wikipedia.org/wiki/Random_number_generation";
+Blockly.Msg.MATH_RANDOM_FLOAT_TITLE_RANDOM = "random fraction";
+Blockly.Msg.MATH_RANDOM_FLOAT_TOOLTIP = "Return a random fraction between 0.0 (inclusive) and 1.0 (exclusive).";
+Blockly.Msg.MATH_RANDOM_INT_HELPURL = "https://en.wikipedia.org/wiki/Random_number_generation";
+Blockly.Msg.MATH_RANDOM_INT_TITLE = "random integer from %1 to %2";
+Blockly.Msg.MATH_RANDOM_INT_TOOLTIP = "Return a random integer between the two specified limits, inclusive.";
+Blockly.Msg.MATH_ROUND_HELPURL = "https://en.wikipedia.org/wiki/Rounding";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUND = "round";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDDOWN = "round down";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDUP = "round up";
+Blockly.Msg.MATH_ROUND_TOOLTIP = "Round a number up or down.";
+Blockly.Msg.MATH_SINGLE_HELPURL = "https://en.wikipedia.org/wiki/Square_root";
+Blockly.Msg.MATH_SINGLE_OP_ABSOLUTE = "absolute";
+Blockly.Msg.MATH_SINGLE_OP_ROOT = "square root";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ABS = "Return the absolute value of a number.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_EXP = "Return e to the power of a number.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LN = "Return the natural logarithm of a number.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LOG10 = "Return the base 10 logarithm of a number.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_NEG = "Return the negation of a number.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_POW10 = "Return 10 to the power of a number.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ROOT = "Return the square root of a number.";
+Blockly.Msg.MATH_SUBTRACTION_SYMBOL = "-";
+Blockly.Msg.MATH_TRIG_ACOS = "acos";
+Blockly.Msg.MATH_TRIG_ASIN = "asin";
+Blockly.Msg.MATH_TRIG_ATAN = "atan";
+Blockly.Msg.MATH_TRIG_COS = "cos";
+Blockly.Msg.MATH_TRIG_HELPURL = "https://en.wikipedia.org/wiki/Trigonometric_functions";
+Blockly.Msg.MATH_TRIG_SIN = "sin";
+Blockly.Msg.MATH_TRIG_TAN = "tan";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ACOS = "Return the arccosine of a number.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ASIN = "Return the arcsine of a number.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ATAN = "Return the arctangent of a number.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_COS = "Return the cosine of a degree (not radian).";
+Blockly.Msg.MATH_TRIG_TOOLTIP_SIN = "Return the sine of a degree (not radian).";
+Blockly.Msg.MATH_TRIG_TOOLTIP_TAN = "Return the tangent of a degree (not radian).";
+Blockly.Msg.NEW_VARIABLE = "Create variable...";
+Blockly.Msg.NEW_VARIABLE_TITLE = "New variable name:";
+Blockly.Msg.ORDINAL_NUMBER_SUFFIX = "";
+Blockly.Msg.PROCEDURES_ALLOW_STATEMENTS = "allow statements";
+Blockly.Msg.PROCEDURES_BEFORE_PARAMS = "with:";
+Blockly.Msg.PROCEDURES_CALLNORETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29";
+Blockly.Msg.PROCEDURES_CALLNORETURN_TOOLTIP = "Run the user-defined function '%1'.";
+Blockly.Msg.PROCEDURES_CALLRETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29";
+Blockly.Msg.PROCEDURES_CALLRETURN_TOOLTIP = "Run the user-defined function '%1' and use its output.";
+Blockly.Msg.PROCEDURES_CALL_BEFORE_PARAMS = "with:";
+Blockly.Msg.PROCEDURES_CREATE_DO = "Create '%1'";
+Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT = "Describe this function...";
+Blockly.Msg.PROCEDURES_DEFNORETURN_DO = "";
+Blockly.Msg.PROCEDURES_DEFNORETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29";
+Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE = "do something";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE = "to";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TOOLTIP = "Creates a function with no output.";
+Blockly.Msg.PROCEDURES_DEFRETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29";
+Blockly.Msg.PROCEDURES_DEFRETURN_RETURN = "return";
+Blockly.Msg.PROCEDURES_DEFRETURN_TOOLTIP = "Creates a function with an output.";
+Blockly.Msg.PROCEDURES_DEF_DUPLICATE_WARNING = "Warning: This function has duplicate parameters.";
+Blockly.Msg.PROCEDURES_HIGHLIGHT_DEF = "Highlight function definition";
+Blockly.Msg.PROCEDURES_IFRETURN_HELPURL = "http://c2.com/cgi/wiki?GuardClause";
+Blockly.Msg.PROCEDURES_IFRETURN_TOOLTIP = "If a value is true, then return a second value.";
+Blockly.Msg.PROCEDURES_IFRETURN_WARNING = "Warning: This block may be used only within a function definition.";
+Blockly.Msg.PROCEDURES_MUTATORARG_TITLE = "input name:";
+Blockly.Msg.PROCEDURES_MUTATORARG_TOOLTIP = "Add an input to the function.";
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TITLE = "inputs";
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TOOLTIP = "Add, remove, or reorder inputs to this function.";
+Blockly.Msg.REDO = "Redo";
+Blockly.Msg.REMOVE_COMMENT = "Remove Comment";
+Blockly.Msg.RENAME_VARIABLE = "Rename variable...";
+Blockly.Msg.RENAME_VARIABLE_TITLE = "Rename all '%1' variables to:";
+Blockly.Msg.TEXT_APPEND_APPENDTEXT = "append text";
+Blockly.Msg.TEXT_APPEND_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification";
+Blockly.Msg.TEXT_APPEND_TO = "to";
+Blockly.Msg.TEXT_APPEND_TOOLTIP = "Append some text to variable '%1'.";
+Blockly.Msg.TEXT_CHANGECASE_HELPURL = "https://github.com/google/blockly/wiki/Text#adjusting-text-case";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_LOWERCASE = "to lower case";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_TITLECASE = "to Title Case";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_UPPERCASE = "to UPPER CASE";
+Blockly.Msg.TEXT_CHANGECASE_TOOLTIP = "Return a copy of the text in a different case.";
+Blockly.Msg.TEXT_CHARAT_FIRST = "get first letter";
+Blockly.Msg.TEXT_CHARAT_FROM_END = "get letter # from end";
+Blockly.Msg.TEXT_CHARAT_FROM_START = "get letter #";
+Blockly.Msg.TEXT_CHARAT_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-text";
+Blockly.Msg.TEXT_CHARAT_INPUT_INTEXT = "in text";
+Blockly.Msg.TEXT_CHARAT_LAST = "get last letter";
+Blockly.Msg.TEXT_CHARAT_RANDOM = "get random letter";
+Blockly.Msg.TEXT_CHARAT_TAIL = "";
+Blockly.Msg.TEXT_CHARAT_TOOLTIP = "Returns the letter at the specified position.";
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TOOLTIP = "Add an item to the text.";
+Blockly.Msg.TEXT_CREATE_JOIN_TITLE_JOIN = "join";
+Blockly.Msg.TEXT_CREATE_JOIN_TOOLTIP = "Add, remove, or reorder sections to reconfigure this text block.";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_END = "to letter # from end";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_START = "to letter #";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_LAST = "to last letter";
+Blockly.Msg.TEXT_GET_SUBSTRING_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text";
+Blockly.Msg.TEXT_GET_SUBSTRING_INPUT_IN_TEXT = "in text";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FIRST = "get substring from first letter";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_END = "get substring from letter # from end";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_START = "get substring from letter #";
+Blockly.Msg.TEXT_GET_SUBSTRING_TAIL = "";
+Blockly.Msg.TEXT_GET_SUBSTRING_TOOLTIP = "Returns a specified portion of the text.";
+Blockly.Msg.TEXT_INDEXOF_HELPURL = "https://github.com/google/blockly/wiki/Text#finding-text";
+Blockly.Msg.TEXT_INDEXOF_INPUT_INTEXT = "in text";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_FIRST = "find first occurrence of text";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_LAST = "find last occurrence of text";
+Blockly.Msg.TEXT_INDEXOF_TAIL = "";
+Blockly.Msg.TEXT_INDEXOF_TOOLTIP = "Returns the index of the first/last occurrence of the first text in the second text. Returns %1 if text is not found.";
+Blockly.Msg.TEXT_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Text#checking-for-empty-text";
+Blockly.Msg.TEXT_ISEMPTY_TITLE = "%1 is empty";
+Blockly.Msg.TEXT_ISEMPTY_TOOLTIP = "Returns true if the provided text is empty.";
+Blockly.Msg.TEXT_JOIN_HELPURL = "https://github.com/google/blockly/wiki/Text#text-creation";
+Blockly.Msg.TEXT_JOIN_TITLE_CREATEWITH = "create text with";
+Blockly.Msg.TEXT_JOIN_TOOLTIP = "Create a piece of text by joining together any number of items.";
+Blockly.Msg.TEXT_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification";
+Blockly.Msg.TEXT_LENGTH_TITLE = "length of %1";
+Blockly.Msg.TEXT_LENGTH_TOOLTIP = "Returns the number of letters (including spaces) in the provided text.";
+Blockly.Msg.TEXT_PRINT_HELPURL = "https://github.com/google/blockly/wiki/Text#printing-text";
+Blockly.Msg.TEXT_PRINT_TITLE = "print %1";
+Blockly.Msg.TEXT_PRINT_TOOLTIP = "Print the specified text, number or other value.";
+Blockly.Msg.TEXT_PROMPT_HELPURL = "https://github.com/google/blockly/wiki/Text#getting-input-from-the-user";
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_NUMBER = "Prompt for user for a number.";
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_TEXT = "Prompt for user for some text.";
+Blockly.Msg.TEXT_PROMPT_TYPE_NUMBER = "prompt for number with message";
+Blockly.Msg.TEXT_PROMPT_TYPE_TEXT = "prompt for text with message";
+Blockly.Msg.TEXT_TEXT_HELPURL = "https://en.wikipedia.org/wiki/String_(computer_science)";
+Blockly.Msg.TEXT_TEXT_TOOLTIP = "A letter, word, or line of text.";
+Blockly.Msg.TEXT_TRIM_HELPURL = "https://github.com/google/blockly/wiki/Text#trimming-removing-spaces";
+Blockly.Msg.TEXT_TRIM_OPERATOR_BOTH = "trim spaces from both sides of";
+Blockly.Msg.TEXT_TRIM_OPERATOR_LEFT = "trim spaces from left side of";
+Blockly.Msg.TEXT_TRIM_OPERATOR_RIGHT = "trim spaces from right side of";
+Blockly.Msg.TEXT_TRIM_TOOLTIP = "Return a copy of the text with spaces removed from one or both ends.";
+Blockly.Msg.TODAY = "Today";
+Blockly.Msg.UNDO = "Undo";
+Blockly.Msg.VARIABLES_DEFAULT_NAME = "item";
+Blockly.Msg.VARIABLES_GET_CREATE_SET = "Create 'set %1'";
+Blockly.Msg.VARIABLES_GET_HELPURL = "https://github.com/google/blockly/wiki/Variables#get";
+Blockly.Msg.VARIABLES_GET_TOOLTIP = "Returns the value of this variable.";
+Blockly.Msg.VARIABLES_SET = "set %1 to %2";
+Blockly.Msg.VARIABLES_SET_CREATE_GET = "Create 'get %1'";
+Blockly.Msg.VARIABLES_SET_HELPURL = "https://github.com/google/blockly/wiki/Variables#set";
+Blockly.Msg.VARIABLES_SET_TOOLTIP = "Sets this variable to be equal to the input.";
+Blockly.Msg.VARIABLE_ALREADY_EXISTS = "A variable named '%1' already exists.";
+Blockly.Msg.PROCEDURES_DEFRETURN_TITLE = Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE;
+Blockly.Msg.CONTROLS_IF_IF_TITLE_IF = Blockly.Msg.CONTROLS_IF_MSG_IF;
+Blockly.Msg.CONTROLS_WHILEUNTIL_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_MSG_THEN = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_ELSE_TITLE_ELSE = Blockly.Msg.CONTROLS_IF_MSG_ELSE;
+Blockly.Msg.PROCEDURES_DEFRETURN_PROCEDURE = Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE;
+Blockly.Msg.LISTS_GET_SUBLIST_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.LISTS_GET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.PROCEDURES_DEFRETURN_DO = Blockly.Msg.PROCEDURES_DEFNORETURN_DO;
+Blockly.Msg.CONTROLS_IF_ELSEIF_TITLE_ELSEIF = Blockly.Msg.CONTROLS_IF_MSG_ELSEIF;
+Blockly.Msg.LISTS_GET_INDEX_HELPURL = Blockly.Msg.LISTS_INDEX_OF_HELPURL;
+Blockly.Msg.CONTROLS_FOREACH_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_SET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TITLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_APPEND_VARIABLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.LISTS_INDEX_OF_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.PROCEDURES_DEFRETURN_COMMENT = Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT; \ No newline at end of file
diff --git a/blockly/msg/js/es.js b/blockly/msg/js/es.js
new file mode 100644
index 0000000..399f4fd
--- /dev/null
+++ b/blockly/msg/js/es.js
@@ -0,0 +1,391 @@
+// This file was automatically generated. Do not modify.
+
+'use strict';
+
+goog.provide('Blockly.Msg.es');
+
+goog.require('Blockly.Msg');
+
+Blockly.Msg.ADD_COMMENT = "Añadir comentario";
+Blockly.Msg.CHANGE_VALUE_TITLE = "Cambiar el valor:";
+Blockly.Msg.CLEAN_UP = "Limpiar los bloques";
+Blockly.Msg.COLLAPSE_ALL = "Contraer bloques";
+Blockly.Msg.COLLAPSE_BLOCK = "Contraer bloque";
+Blockly.Msg.COLOUR_BLEND_COLOUR1 = "color 1";
+Blockly.Msg.COLOUR_BLEND_COLOUR2 = "color 2";
+Blockly.Msg.COLOUR_BLEND_HELPURL = "http://meyerweb.com/eric/tools/color-blend/"; // untranslated
+Blockly.Msg.COLOUR_BLEND_RATIO = "proporción";
+Blockly.Msg.COLOUR_BLEND_TITLE = "combinar";
+Blockly.Msg.COLOUR_BLEND_TOOLTIP = "Combina dos colores con una proporción determinada (0,0–1,0).";
+Blockly.Msg.COLOUR_PICKER_HELPURL = "https://es.wikipedia.org/wiki/Color";
+Blockly.Msg.COLOUR_PICKER_TOOLTIP = "Elige un color de la paleta.";
+Blockly.Msg.COLOUR_RANDOM_HELPURL = "http://randomcolour.com"; // untranslated
+Blockly.Msg.COLOUR_RANDOM_TITLE = "color aleatorio";
+Blockly.Msg.COLOUR_RANDOM_TOOLTIP = "Elige un color al azar.";
+Blockly.Msg.COLOUR_RGB_BLUE = "azul";
+Blockly.Msg.COLOUR_RGB_GREEN = "verde";
+Blockly.Msg.COLOUR_RGB_HELPURL = "http://www.december.com/html/spec/colorper.html"; // untranslated
+Blockly.Msg.COLOUR_RGB_RED = "rojo";
+Blockly.Msg.COLOUR_RGB_TITLE = "colorear con";
+Blockly.Msg.COLOUR_RGB_TOOLTIP = "Crea un color con cantidades específicas de rojo, verde y azul. Todos los valores deben encontrarse entre 0 y 100.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_HELPURL = "https://github.com/google/blockly/wiki/Loops#loop-termination-blocks"; // untranslated
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK = "romper el bucle";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE = "continuar con la siguiente iteración del bucle";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK = "Romper el bucle que lo contiene.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE = "Saltar el resto de este bucle, y continuar con la siguiente iteración.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_WARNING = "ADVERTENCIA: Este bloque puede usarse sólo dentro de un bucle.";
+Blockly.Msg.CONTROLS_FOREACH_HELPURL = "https://es.wikipedia.org/wiki/Foreach";
+Blockly.Msg.CONTROLS_FOREACH_TITLE = "para cada elemento %1 en la lista %2";
+Blockly.Msg.CONTROLS_FOREACH_TOOLTIP = "Para cada elemento en una lista, establecer la variable '%1' al elemento y luego hacer algunas declaraciones.";
+Blockly.Msg.CONTROLS_FOR_HELPURL = "https://github.com/google/blockly/wiki/Loops#count-with"; // untranslated
+Blockly.Msg.CONTROLS_FOR_TITLE = "contar con %1 desde %2 hasta %3 de a %4";
+Blockly.Msg.CONTROLS_FOR_TOOLTIP = "Hacer que la variable \"%1\" tome los valores desde el número de inicio hasta el número final, contando con el intervalo especificado, y hacer los bloques especificados.";
+Blockly.Msg.CONTROLS_IF_ELSEIF_TOOLTIP = "Agregar una condición a este bloque.";
+Blockly.Msg.CONTROLS_IF_ELSE_TOOLTIP = "Agregar una condición general final a este bloque.";
+Blockly.Msg.CONTROLS_IF_HELPURL = "https://github.com/google/blockly/wiki/IfElse"; // untranslated
+Blockly.Msg.CONTROLS_IF_IF_TOOLTIP = "Agregar, eliminar o reordenar las secciones para reconfigurar este bloque.";
+Blockly.Msg.CONTROLS_IF_MSG_ELSE = "sino";
+Blockly.Msg.CONTROLS_IF_MSG_ELSEIF = "sino si";
+Blockly.Msg.CONTROLS_IF_MSG_IF = "si";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_1 = "Si un valor es verdadero, entonces hacer algunas declaraciones.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_2 = "Si un valor es verdadero, entonces hacer el primer bloque de declaraciones. De lo contrario, hacer el segundo bloque de declaraciones.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_3 = "Si el primer valor es verdadero, entonces hacer el primer bloque de declaraciones. De lo contrario, si el segundo valor es verdadero, hacer el segundo bloque de declaraciones.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_4 = "Si el primer valor es verdadero, entonces hacer el primer bloque de declaraciones. De lo contrario, si el segundo valor es verdadero, hacer el segundo bloque de declaraciones. Si ninguno de los valores son verdaderos, hacer el último bloque de declaraciones.";
+Blockly.Msg.CONTROLS_REPEAT_HELPURL = "https://es.wikipedia.org/wiki/Bucle_for";
+Blockly.Msg.CONTROLS_REPEAT_INPUT_DO = "hacer";
+Blockly.Msg.CONTROLS_REPEAT_TITLE = "repetir %1 veces";
+Blockly.Msg.CONTROLS_REPEAT_TOOLTIP = "Hacer algunas declaraciones varias veces.";
+Blockly.Msg.CONTROLS_WHILEUNTIL_HELPURL = "https://github.com/google/blockly/wiki/Loops#repeat"; // untranslated
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "repetir hasta";
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "repetir mientras";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "Mientras un valor sea falso, entonces hacer algunas declaraciones.";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "Mientras un valor sea verdadero, entonces hacer algunas declaraciones.";
+Blockly.Msg.DELETE_ALL_BLOCKS = "¿Eliminar todos los %1 bloques?";
+Blockly.Msg.DELETE_BLOCK = "Eliminar bloque";
+Blockly.Msg.DELETE_VARIABLE = "Borrar la variable \"%1\"";
+Blockly.Msg.DELETE_VARIABLE_CONFIRMATION = "¿Borrar %1 usos de la variable \"%2\"?";
+Blockly.Msg.DELETE_X_BLOCKS = "Eliminar %1 bloques";
+Blockly.Msg.DISABLE_BLOCK = "Desactivar bloque";
+Blockly.Msg.DUPLICATE_BLOCK = "Duplicar";
+Blockly.Msg.ENABLE_BLOCK = "Activar bloque";
+Blockly.Msg.EXPAND_ALL = "Expandir bloques";
+Blockly.Msg.EXPAND_BLOCK = "Expandir bloque";
+Blockly.Msg.EXTERNAL_INPUTS = "Entradas externas";
+Blockly.Msg.HELP = "Ayuda";
+Blockly.Msg.INLINE_INPUTS = "Entradas en línea";
+Blockly.Msg.LISTS_CREATE_EMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-empty-list"; // untranslated
+Blockly.Msg.LISTS_CREATE_EMPTY_TITLE = "crear lista vacía";
+Blockly.Msg.LISTS_CREATE_EMPTY_TOOLTIP = "Devuelve una lista, de longitud 0, sin ningún dato";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TITLE_ADD = "lista";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TOOLTIP = "Agregar, eliminar o reorganizar las secciones para reconfigurar este bloque de lista.";
+Blockly.Msg.LISTS_CREATE_WITH_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with";
+Blockly.Msg.LISTS_CREATE_WITH_INPUT_WITH = "crear lista con";
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TOOLTIP = "Agregar un elemento a la lista.";
+Blockly.Msg.LISTS_CREATE_WITH_TOOLTIP = "Crear una lista con cualquier número de elementos.";
+Blockly.Msg.LISTS_GET_INDEX_FIRST = "primero";
+Blockly.Msg.LISTS_GET_INDEX_FROM_END = "# del final";
+Blockly.Msg.LISTS_GET_INDEX_FROM_START = "#"; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_GET = "obtener";
+Blockly.Msg.LISTS_GET_INDEX_GET_REMOVE = "obtener y eliminar";
+Blockly.Msg.LISTS_GET_INDEX_LAST = "último";
+Blockly.Msg.LISTS_GET_INDEX_RANDOM = "aleatorio";
+Blockly.Msg.LISTS_GET_INDEX_REMOVE = "eliminar";
+Blockly.Msg.LISTS_GET_INDEX_TAIL = ""; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FIRST = "Devuelve el primer elemento de una lista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FROM = "Devuelve el elemento en la posición especificada en una lista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_LAST = "Devuelve el último elemento de una lista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_RANDOM = "Devuelve un elemento aleatorio en una lista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST = "Elimina y devuelve el primer elemento de una lista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM = "Elimina y devuelve el elemento en la posición especificada en una lista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST = "Elimina y devuelve el último elemento de una lista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM = "Elimina y devuelve un elemento aleatorio en una lista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST = "Elimina el primer elemento de una lista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM = "Elimina el elemento en la posición especificada en una lista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST = "Elimina el último elemento de una lista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM = "Elimina un elemento aleatorio en una lista.";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_END = "hasta # del final";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_START = "hasta #";
+Blockly.Msg.LISTS_GET_SUBLIST_END_LAST = "hasta el último";
+Blockly.Msg.LISTS_GET_SUBLIST_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-a-sublist"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_START_FIRST = "obtener sublista desde el primero";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_END = "obtener sublista desde # del final";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_START = "obtener sublista desde #";
+Blockly.Msg.LISTS_GET_SUBLIST_TAIL = ""; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_TOOLTIP = "Crea una copia de la parte especificada de una lista.";
+Blockly.Msg.LISTS_INDEX_FROM_END_TOOLTIP = "%1 es el último elemento.";
+Blockly.Msg.LISTS_INDEX_FROM_START_TOOLTIP = "%1 es el primer elemento.";
+Blockly.Msg.LISTS_INDEX_OF_FIRST = "encontrar la primera aparición del elemento";
+Blockly.Msg.LISTS_INDEX_OF_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-items-from-a-list"; // untranslated
+Blockly.Msg.LISTS_INDEX_OF_LAST = "encontrar la última aparición del elemento";
+Blockly.Msg.LISTS_INDEX_OF_TOOLTIP = "Devuelve el índice de la primera/última aparición del elemento en la lista. Devuelve %1 si el elemento no se encuentra.";
+Blockly.Msg.LISTS_INLIST = "en la lista";
+Blockly.Msg.LISTS_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#is-empty"; // untranslated
+Blockly.Msg.LISTS_ISEMPTY_TITLE = "%1 está vacía";
+Blockly.Msg.LISTS_ISEMPTY_TOOLTIP = "Devuelve verdadero si la lista está vacía.";
+Blockly.Msg.LISTS_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Lists#length-of"; // untranslated
+Blockly.Msg.LISTS_LENGTH_TITLE = "longitud de %1";
+Blockly.Msg.LISTS_LENGTH_TOOLTIP = "Devuelve la longitud de una lista.";
+Blockly.Msg.LISTS_REPEAT_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
+Blockly.Msg.LISTS_REPEAT_TITLE = "crear lista con el elemento %1 repetido %2 veces";
+Blockly.Msg.LISTS_REPEAT_TOOLTIP = "Crea una lista que consta de un valor dado repetido el número de veces especificado.";
+Blockly.Msg.LISTS_SET_INDEX_HELPURL = "https://github.com/google/blockly/wiki/Lists#in-list--set"; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_INPUT_TO = "como";
+Blockly.Msg.LISTS_SET_INDEX_INSERT = "insertar en";
+Blockly.Msg.LISTS_SET_INDEX_SET = "establecer";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST = "Inserta el elemento al inicio de una lista.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FROM = "Inserta el elemento en la posición especificada en una lista.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_LAST = "Añade el elemento al final de una lista.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM = "Inserta el elemento aleatoriamente en una lista.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FIRST = "Establece el primer elemento de una lista.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FROM = "Establece el elemento en la posición especificada en una lista.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_LAST = "Establece el último elemento de una lista.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_RANDOM = "Establece un elemento aleatorio en una lista.";
+Blockly.Msg.LISTS_SORT_HELPURL = "https://github.com/google/blockly/wiki/Lists#sorting-a-list";
+Blockly.Msg.LISTS_SORT_ORDER_ASCENDING = "ascendente";
+Blockly.Msg.LISTS_SORT_ORDER_DESCENDING = "descendente";
+Blockly.Msg.LISTS_SORT_TITLE = "orden %1 %2 %3";
+Blockly.Msg.LISTS_SORT_TOOLTIP = "Ordenar una copia de una lista.";
+Blockly.Msg.LISTS_SORT_TYPE_IGNORECASE = "alfabético, ignorar mayúscula/minúscula";
+Blockly.Msg.LISTS_SORT_TYPE_NUMERIC = "numérico";
+Blockly.Msg.LISTS_SORT_TYPE_TEXT = "alfabético";
+Blockly.Msg.LISTS_SPLIT_HELPURL = "https://github.com/google/blockly/wiki/Lists#splitting-strings-and-joining-lists";
+Blockly.Msg.LISTS_SPLIT_LIST_FROM_TEXT = "hacer lista a partir de texto";
+Blockly.Msg.LISTS_SPLIT_TEXT_FROM_LIST = "hacer texto a partir de lista";
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_JOIN = "Unir una lista de textos en un solo texto, separado por un delimitador.";
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_SPLIT = "Dividir el texto en una lista de textos, separando en cada delimitador.";
+Blockly.Msg.LISTS_SPLIT_WITH_DELIMITER = "con delimitador";
+Blockly.Msg.LOGIC_BOOLEAN_FALSE = "falso";
+Blockly.Msg.LOGIC_BOOLEAN_HELPURL = "https://github.com/google/blockly/wiki/Logic#values"; // untranslated
+Blockly.Msg.LOGIC_BOOLEAN_TOOLTIP = "Devuelve verdadero o falso.";
+Blockly.Msg.LOGIC_BOOLEAN_TRUE = "verdadero";
+Blockly.Msg.LOGIC_COMPARE_HELPURL = "https://es.wikipedia.org/wiki/Desigualdad_matemática";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_EQ = "Devuelve verdadero si ambas entradas son iguales.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GT = "Devuelve verdadero si la primera entrada es mayor que la segunda entrada.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GTE = "Devuelve verdadero si la primera entrada es mayor o igual a la segunda entrada.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LT = "Devuelve verdadero si la primera entrada es menor que la segunda entrada.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LTE = "Devuelve verdadero si la primera entrada es menor que o igual a la segunda entrada.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_NEQ = "Devuelve verdadero si ambas entradas son distintas.";
+Blockly.Msg.LOGIC_NEGATE_HELPURL = "https://github.com/google/blockly/wiki/Logic#not"; // untranslated
+Blockly.Msg.LOGIC_NEGATE_TITLE = "no %1";
+Blockly.Msg.LOGIC_NEGATE_TOOLTIP = "Devuelve verdadero si la entrada es falsa. Devuelve falso si la entrada es verdadera.";
+Blockly.Msg.LOGIC_NULL = "nulo";
+Blockly.Msg.LOGIC_NULL_HELPURL = "https://en.wikipedia.org/wiki/Nullable_type"; // untranslated
+Blockly.Msg.LOGIC_NULL_TOOLTIP = "Devuelve nulo.";
+Blockly.Msg.LOGIC_OPERATION_AND = "y";
+Blockly.Msg.LOGIC_OPERATION_HELPURL = "https://github.com/google/blockly/wiki/Logic#logical-operations"; // untranslated
+Blockly.Msg.LOGIC_OPERATION_OR = "o";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_AND = "Devuelve verdadero si ambas entradas son verdaderas.";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_OR = "Devuelve verdadero si al menos una de las entradas es verdadera.";
+Blockly.Msg.LOGIC_TERNARY_CONDITION = "prueba";
+Blockly.Msg.LOGIC_TERNARY_HELPURL = "https://en.wikipedia.org/wiki/%3F:"; // untranslated
+Blockly.Msg.LOGIC_TERNARY_IF_FALSE = "si es falso";
+Blockly.Msg.LOGIC_TERNARY_IF_TRUE = "si es verdadero";
+Blockly.Msg.LOGIC_TERNARY_TOOLTIP = "Comprueba la condición en \"prueba\". Si la condición es verdadera, devuelve el valor \"si es verdadero\"; de lo contrario, devuelve el valor \"si es falso\".";
+Blockly.Msg.MATH_ADDITION_SYMBOL = "+"; // untranslated
+Blockly.Msg.MATH_ARITHMETIC_HELPURL = "https://es.wikipedia.org/wiki/Aritmética";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_ADD = "Devuelve la suma de ambos números.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE = "Devuelve el cociente de ambos números.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MINUS = "Devuelve la diferencia de ambos números.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MULTIPLY = "Devuelve el producto de ambos números.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_POWER = "Devuelve el primer número elevado a la potencia del segundo.";
+Blockly.Msg.MATH_CHANGE_HELPURL = "https://en.wikipedia.org/wiki/Programming_idiom#Incrementing_a_counter";
+Blockly.Msg.MATH_CHANGE_TITLE = "añadir %2 a %1";
+Blockly.Msg.MATH_CHANGE_TOOLTIP = "Añadir un número a la variable «%1».";
+Blockly.Msg.MATH_CONSTANT_HELPURL = "https://es.wikipedia.org/wiki/Anexo:Constantes_matemáticas";
+Blockly.Msg.MATH_CONSTANT_TOOLTIP = "Devuelve una de las constantes comunes: π (3.141…), e (2.718…), φ (1.618…), sqrt(2) (1.414…), sqrt(½) (0.707…) o ∞ (infinito).";
+Blockly.Msg.MATH_CONSTRAIN_HELPURL = "https://en.wikipedia.org/wiki/Clamping_%28graphics%29"; // untranslated
+Blockly.Msg.MATH_CONSTRAIN_TITLE = "limitar %1 entre %2 y %3";
+Blockly.Msg.MATH_CONSTRAIN_TOOLTIP = "Limitar un número entre los límites especificados (inclusive).";
+Blockly.Msg.MATH_DIVISION_SYMBOL = "÷"; // untranslated
+Blockly.Msg.MATH_IS_DIVISIBLE_BY = "es divisible por";
+Blockly.Msg.MATH_IS_EVEN = "es par";
+Blockly.Msg.MATH_IS_NEGATIVE = "es negativo";
+Blockly.Msg.MATH_IS_ODD = "es impar";
+Blockly.Msg.MATH_IS_POSITIVE = "es positivo";
+Blockly.Msg.MATH_IS_PRIME = "es primo";
+Blockly.Msg.MATH_IS_TOOLTIP = "Comprueba si un número es par, impar, primo, entero, positivo, negativo, o si es divisible por un número determinado. Devuelve verdadero o falso.";
+Blockly.Msg.MATH_IS_WHOLE = "es entero";
+Blockly.Msg.MATH_MODULO_HELPURL = "https://en.wikipedia.org/wiki/Modulo_operation";
+Blockly.Msg.MATH_MODULO_TITLE = "resto de %1 ÷ %2";
+Blockly.Msg.MATH_MODULO_TOOLTIP = "Devuelve el resto al dividir los dos números.";
+Blockly.Msg.MATH_MULTIPLICATION_SYMBOL = "×"; // untranslated
+Blockly.Msg.MATH_NUMBER_HELPURL = "https://es.wikipedia.org/wiki/Número";
+Blockly.Msg.MATH_NUMBER_TOOLTIP = "Un número.";
+Blockly.Msg.MATH_ONLIST_HELPURL = ""; // untranslated
+Blockly.Msg.MATH_ONLIST_OPERATOR_AVERAGE = "promedio de la lista";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MAX = "máximo de la lista";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MEDIAN = "mediana de la lista";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MIN = "mínimo de la lista";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MODE = "modas de la lista";
+Blockly.Msg.MATH_ONLIST_OPERATOR_RANDOM = "elemento aleatorio de la lista";
+Blockly.Msg.MATH_ONLIST_OPERATOR_STD_DEV = "desviación estándar de la lista";
+Blockly.Msg.MATH_ONLIST_OPERATOR_SUM = "suma de la lista";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_AVERAGE = "Devuelve el promedio (media aritmética) de los valores numéricos en la lista.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MAX = "Devuelve el número más grande en la lista.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MEDIAN = "Devuelve la mediana en la lista.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MIN = "Devuelve el número más pequeño en la lista.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MODE = "Devuelve una lista de los elementos más comunes en la lista.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_RANDOM = "Devuelve un elemento aleatorio de la lista.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_STD_DEV = "Devuelve la desviación estándar de la lista.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_SUM = "Devuelve la suma de todos los números en la lista.";
+Blockly.Msg.MATH_POWER_SYMBOL = "^"; // untranslated
+Blockly.Msg.MATH_RANDOM_FLOAT_HELPURL = "https://es.wikipedia.org/wiki/Generador_de_números_aleatorios";
+Blockly.Msg.MATH_RANDOM_FLOAT_TITLE_RANDOM = "fracción aleatoria";
+Blockly.Msg.MATH_RANDOM_FLOAT_TOOLTIP = "Devuelve una fracción aleatoria entre 0,0 (ambos inclusive) y 1.0 (exclusivo).";
+Blockly.Msg.MATH_RANDOM_INT_HELPURL = "https://es.wikipedia.org/wiki/Generador_de_números_aleatorios";
+Blockly.Msg.MATH_RANDOM_INT_TITLE = "entero aleatorio de %1 a %2";
+Blockly.Msg.MATH_RANDOM_INT_TOOLTIP = "Devuelve un entero aleatorio entre los dos límites especificados, inclusive.";
+Blockly.Msg.MATH_ROUND_HELPURL = "https://es.wikipedia.org/wiki/Redondeo";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUND = "redondear";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDDOWN = "redondear hacia abajo";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDUP = "redondear hacia arriba";
+Blockly.Msg.MATH_ROUND_TOOLTIP = "Redondear un número hacia arriba o hacia abajo.";
+Blockly.Msg.MATH_SINGLE_HELPURL = "https://es.wikipedia.org/wiki/Ra%C3%ADz_cuadrada";
+Blockly.Msg.MATH_SINGLE_OP_ABSOLUTE = "absoluto";
+Blockly.Msg.MATH_SINGLE_OP_ROOT = "raíz cuadrada";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ABS = "Devuelve el valor absoluto de un número.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_EXP = "Devuelve e a la potencia de un número.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LN = "Devuelve el logaritmo natural de un número.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LOG10 = "Devuelve el logaritmo base 10 de un número.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_NEG = "Devuelve la negación de un número.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_POW10 = "Devuelve 10 a la potencia de un número.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ROOT = "Devuelve la raíz cuadrada de un número.";
+Blockly.Msg.MATH_SUBTRACTION_SYMBOL = "-"; // untranslated
+Blockly.Msg.MATH_TRIG_ACOS = "acos"; // untranslated
+Blockly.Msg.MATH_TRIG_ASIN = "asin"; // untranslated
+Blockly.Msg.MATH_TRIG_ATAN = "atan"; // untranslated
+Blockly.Msg.MATH_TRIG_COS = "cos"; // untranslated
+Blockly.Msg.MATH_TRIG_HELPURL = "https://es.wikipedia.org/wiki/Función_trigonométrica";
+Blockly.Msg.MATH_TRIG_SIN = "sin"; // untranslated
+Blockly.Msg.MATH_TRIG_TAN = "tan"; // untranslated
+Blockly.Msg.MATH_TRIG_TOOLTIP_ACOS = "Devuelve el arcocoseno de un número.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ASIN = "Devuelve el arcoseno de un número.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ATAN = "Devuelve el arcotangente de un número.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_COS = "Devuelve el coseno de un grado (no radián).";
+Blockly.Msg.MATH_TRIG_TOOLTIP_SIN = "Devuelve el seno de un grado (no radián).";
+Blockly.Msg.MATH_TRIG_TOOLTIP_TAN = "Devuelve la tangente de un grado (no radián).";
+Blockly.Msg.NEW_VARIABLE = "Crear variable…";
+Blockly.Msg.NEW_VARIABLE_TITLE = "Nombre de variable nueva:";
+Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; // untranslated
+Blockly.Msg.PROCEDURES_ALLOW_STATEMENTS = "permitir declaraciones";
+Blockly.Msg.PROCEDURES_BEFORE_PARAMS = "con:";
+Blockly.Msg.PROCEDURES_CALLNORETURN_HELPURL = "https://es.wikipedia.org/wiki/Subrutina";
+Blockly.Msg.PROCEDURES_CALLNORETURN_TOOLTIP = "Ejecuta la función definida por el usuario '%1'.";
+Blockly.Msg.PROCEDURES_CALLRETURN_HELPURL = "https://es.wikipedia.org/wiki/Subrutina";
+Blockly.Msg.PROCEDURES_CALLRETURN_TOOLTIP = "Ejecuta la función definida por el usuario '%1' y usa su salida.";
+Blockly.Msg.PROCEDURES_CALL_BEFORE_PARAMS = "con:";
+Blockly.Msg.PROCEDURES_CREATE_DO = "Crear '%1'";
+Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT = "Describe esta función...";
+Blockly.Msg.PROCEDURES_DEFNORETURN_DO = ""; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE = "hacer algo";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE = "para";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TOOLTIP = "Crea una función sin salida.";
+Blockly.Msg.PROCEDURES_DEFRETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_DEFRETURN_RETURN = "devuelve";
+Blockly.Msg.PROCEDURES_DEFRETURN_TOOLTIP = "Crea una función con una salida.";
+Blockly.Msg.PROCEDURES_DEF_DUPLICATE_WARNING = "Advertencia: Esta función tiene parámetros duplicados.";
+Blockly.Msg.PROCEDURES_HIGHLIGHT_DEF = "Destacar definición de la función";
+Blockly.Msg.PROCEDURES_IFRETURN_HELPURL = "http://c2.com/cgi/wiki?GuardClause"; // untranslated
+Blockly.Msg.PROCEDURES_IFRETURN_TOOLTIP = "Si un valor es verdadero, entonces devuelve un segundo valor.";
+Blockly.Msg.PROCEDURES_IFRETURN_WARNING = "Advertencia: Este bloque solo puede ser utilizado dentro de la definición de una función.";
+Blockly.Msg.PROCEDURES_MUTATORARG_TITLE = "nombre de entrada:";
+Blockly.Msg.PROCEDURES_MUTATORARG_TOOLTIP = "Añadir una entrada a la función.";
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TITLE = "entradas";
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TOOLTIP = "Añadir, eliminar o reordenar entradas para esta función.";
+Blockly.Msg.REDO = "Rehacer";
+Blockly.Msg.REMOVE_COMMENT = "Eliminar comentario";
+Blockly.Msg.RENAME_VARIABLE = "Renombrar la variable…";
+Blockly.Msg.RENAME_VARIABLE_TITLE = "Renombrar todas las variables «%1» a:";
+Blockly.Msg.TEXT_APPEND_APPENDTEXT = "añadir texto";
+Blockly.Msg.TEXT_APPEND_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_APPEND_TO = "a";
+Blockly.Msg.TEXT_APPEND_TOOLTIP = "Añadir texto a la variable '%1'.";
+Blockly.Msg.TEXT_CHANGECASE_HELPURL = "https://github.com/google/blockly/wiki/Text#adjusting-text-case"; // untranslated
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_LOWERCASE = "a minúsculas";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_TITLECASE = "a Mayúsculas Cada Palabra";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_UPPERCASE = "a MAYÚSCULAS";
+Blockly.Msg.TEXT_CHANGECASE_TOOLTIP = "Devuelve una copia del texto en un caso diferente.";
+Blockly.Msg.TEXT_CHARAT_FIRST = "obtener la primera letra";
+Blockly.Msg.TEXT_CHARAT_FROM_END = "obtener la letra # del final";
+Blockly.Msg.TEXT_CHARAT_FROM_START = "obtener la letra #";
+Blockly.Msg.TEXT_CHARAT_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-text"; // untranslated
+Blockly.Msg.TEXT_CHARAT_INPUT_INTEXT = "en el texto";
+Blockly.Msg.TEXT_CHARAT_LAST = "obtener la última letra";
+Blockly.Msg.TEXT_CHARAT_RANDOM = "obtener letra aleatoria";
+Blockly.Msg.TEXT_CHARAT_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_CHARAT_TOOLTIP = "Devuelve la letra en la posición especificada.";
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TOOLTIP = "Agregar un elemento al texto.";
+Blockly.Msg.TEXT_CREATE_JOIN_TITLE_JOIN = "unir";
+Blockly.Msg.TEXT_CREATE_JOIN_TOOLTIP = "Agregar, eliminar o reordenar las secciones para reconfigurar este bloque de texto.";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_END = "hasta la letra # del final";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_START = "hasta la letra #";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_LAST = "hasta la última letra";
+Blockly.Msg.TEXT_GET_SUBSTRING_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_INPUT_IN_TEXT = "en el texto";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FIRST = "obtener subcadena desde la primera letra";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_END = "obtener subcadena desde la letra # del final";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_START = "obtener subcadena desde la letra #";
+Blockly.Msg.TEXT_GET_SUBSTRING_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_TOOLTIP = "Devuelve una porción determinada del texto.";
+Blockly.Msg.TEXT_INDEXOF_HELPURL = "https://github.com/google/blockly/wiki/Text#finding-text"; // untranslated
+Blockly.Msg.TEXT_INDEXOF_INPUT_INTEXT = "en el texto";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_FIRST = "encontrar la primera aparición del texto";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_LAST = "encontrar la última aparición del texto";
+Blockly.Msg.TEXT_INDEXOF_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_INDEXOF_TOOLTIP = "Devuelve el índice de la primera/última aparición del primer texto en el segundo texto. Devuelve %1 si el texto no se encuentra.";
+Blockly.Msg.TEXT_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Text#checking-for-empty-text"; // untranslated
+Blockly.Msg.TEXT_ISEMPTY_TITLE = "%1 está vacío";
+Blockly.Msg.TEXT_ISEMPTY_TOOLTIP = "Devuelve verdadero si el texto proporcionado está vacío.";
+Blockly.Msg.TEXT_JOIN_HELPURL = "https://github.com/google/blockly/wiki/Text#text-creation"; // untranslated
+Blockly.Msg.TEXT_JOIN_TITLE_CREATEWITH = "crear texto con";
+Blockly.Msg.TEXT_JOIN_TOOLTIP = "Crear un fragmento de texto al unir cualquier número de elementos.";
+Blockly.Msg.TEXT_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_LENGTH_TITLE = "longitud de %1";
+Blockly.Msg.TEXT_LENGTH_TOOLTIP = "Devuelve el número de letras (incluyendo espacios) en el texto proporcionado.";
+Blockly.Msg.TEXT_PRINT_HELPURL = "https://github.com/google/blockly/wiki/Text#printing-text"; // untranslated
+Blockly.Msg.TEXT_PRINT_TITLE = "imprimir %1";
+Blockly.Msg.TEXT_PRINT_TOOLTIP = "Imprimir el texto, número u otro valor especificado.";
+Blockly.Msg.TEXT_PROMPT_HELPURL = "https://github.com/google/blockly/wiki/Text#getting-input-from-the-user"; // untranslated
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_NUMBER = "Solicitar al usuario un número.";
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_TEXT = "Solicitar al usuario un texto.";
+Blockly.Msg.TEXT_PROMPT_TYPE_NUMBER = "solicitar número con el mensaje";
+Blockly.Msg.TEXT_PROMPT_TYPE_TEXT = "solicitar texto con el mensaje";
+Blockly.Msg.TEXT_TEXT_HELPURL = "https://es.wikipedia.org/wiki/Cadena_de_caracteres";
+Blockly.Msg.TEXT_TEXT_TOOLTIP = "Una letra, palabra o línea de texto.";
+Blockly.Msg.TEXT_TRIM_HELPURL = "https://github.com/google/blockly/wiki/Text#trimming-removing-spaces"; // untranslated
+Blockly.Msg.TEXT_TRIM_OPERATOR_BOTH = "quitar espacios de ambos lados de";
+Blockly.Msg.TEXT_TRIM_OPERATOR_LEFT = "quitar espacios iniciales de";
+Blockly.Msg.TEXT_TRIM_OPERATOR_RIGHT = "quitar espacios finales de";
+Blockly.Msg.TEXT_TRIM_TOOLTIP = "Devuelve una copia del texto sin los espacios de uno o ambos extremos.";
+Blockly.Msg.TODAY = "Hoy";
+Blockly.Msg.UNDO = "Deshacer";
+Blockly.Msg.VARIABLES_DEFAULT_NAME = "elemento";
+Blockly.Msg.VARIABLES_GET_CREATE_SET = "Crear 'establecer %1'";
+Blockly.Msg.VARIABLES_GET_HELPURL = "https://github.com/google/blockly/wiki/Variables#get"; // untranslated
+Blockly.Msg.VARIABLES_GET_TOOLTIP = "Devuelve el valor de esta variable.";
+Blockly.Msg.VARIABLES_SET = "establecer %1 a %2";
+Blockly.Msg.VARIABLES_SET_CREATE_GET = "Crear 'obtener %1'";
+Blockly.Msg.VARIABLES_SET_HELPURL = "https://github.com/google/blockly/wiki/Variables#set"; // untranslated
+Blockly.Msg.VARIABLES_SET_TOOLTIP = "Establece esta variable para que sea igual a la entrada.";
+Blockly.Msg.VARIABLE_ALREADY_EXISTS = "Ya existe una variable llamada \"%1\".";
+Blockly.Msg.PROCEDURES_DEFRETURN_TITLE = Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE;
+Blockly.Msg.CONTROLS_IF_IF_TITLE_IF = Blockly.Msg.CONTROLS_IF_MSG_IF;
+Blockly.Msg.CONTROLS_WHILEUNTIL_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_MSG_THEN = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_ELSE_TITLE_ELSE = Blockly.Msg.CONTROLS_IF_MSG_ELSE;
+Blockly.Msg.PROCEDURES_DEFRETURN_PROCEDURE = Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE;
+Blockly.Msg.LISTS_GET_SUBLIST_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.LISTS_GET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.PROCEDURES_DEFRETURN_DO = Blockly.Msg.PROCEDURES_DEFNORETURN_DO;
+Blockly.Msg.CONTROLS_IF_ELSEIF_TITLE_ELSEIF = Blockly.Msg.CONTROLS_IF_MSG_ELSEIF;
+Blockly.Msg.LISTS_GET_INDEX_HELPURL = Blockly.Msg.LISTS_INDEX_OF_HELPURL;
+Blockly.Msg.CONTROLS_FOREACH_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_SET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TITLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_APPEND_VARIABLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.LISTS_INDEX_OF_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.PROCEDURES_DEFRETURN_COMMENT = Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT; \ No newline at end of file
diff --git a/blockly/msg/js/et.js b/blockly/msg/js/et.js
new file mode 100644
index 0000000..d5e8f3e
--- /dev/null
+++ b/blockly/msg/js/et.js
@@ -0,0 +1,391 @@
+// This file was automatically generated. Do not modify.
+
+'use strict';
+
+goog.provide('Blockly.Msg.et');
+
+goog.require('Blockly.Msg');
+
+Blockly.Msg.ADD_COMMENT = "Lisa kommentaar";
+Blockly.Msg.CHANGE_VALUE_TITLE = "Muuda väärtust:";
+Blockly.Msg.CLEAN_UP = "Korista plokid kokku";
+Blockly.Msg.COLLAPSE_ALL = "Tõmba plokid kokku";
+Blockly.Msg.COLLAPSE_BLOCK = "Tõmba plokk kokku";
+Blockly.Msg.COLOUR_BLEND_COLOUR1 = "1. värvist";
+Blockly.Msg.COLOUR_BLEND_COLOUR2 = "2. värvist";
+Blockly.Msg.COLOUR_BLEND_HELPURL = "http://meyerweb.com/eric/tools/color-blend/"; // untranslated
+Blockly.Msg.COLOUR_BLEND_RATIO = "suhtega";
+Blockly.Msg.COLOUR_BLEND_TITLE = "segu";
+Blockly.Msg.COLOUR_BLEND_TOOLTIP = "Segab kaks värvi määratud suhtega (0.0 - 1.0) kokku.";
+Blockly.Msg.COLOUR_PICKER_HELPURL = "https://en.wikipedia.org/wiki/Color";
+Blockly.Msg.COLOUR_PICKER_TOOLTIP = "Valitud värv paletist.";
+Blockly.Msg.COLOUR_RANDOM_HELPURL = "http://randomcolour.com"; // untranslated
+Blockly.Msg.COLOUR_RANDOM_TITLE = "juhuslik värv";
+Blockly.Msg.COLOUR_RANDOM_TOOLTIP = "Juhuslikult valitud värv.";
+Blockly.Msg.COLOUR_RGB_BLUE = "sinisest";
+Blockly.Msg.COLOUR_RGB_GREEN = "rohelisest";
+Blockly.Msg.COLOUR_RGB_HELPURL = "http://www.december.com/html/spec/colorper.html"; // untranslated
+Blockly.Msg.COLOUR_RGB_RED = "punasest";
+Blockly.Msg.COLOUR_RGB_TITLE = "segu";
+Blockly.Msg.COLOUR_RGB_TOOLTIP = "Tekitab värvi määratud hulgast punasest, rohelisest ja sinisest. Kõik väärtused peavad olema 0 ja 100 vahel.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_HELPURL = "https://github.com/google/blockly/wiki/Loops#loop-termination-blocks"; // untranslated
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK = "katkesta kordus";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE = "liigu järgmisele kordusele";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK = "Katkestab korduse ja liigub edasi korduse järel oleva koodi käivitamisele.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE = "Katkestab korduse sees oleva koodi käivitamise ja käivitab järgmise korduse.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_WARNING = "Hoiatus: Seda plokki saab kasutada ainult korduse sees.";
+Blockly.Msg.CONTROLS_FOREACH_HELPURL = "https://github.com/google/blockly/wiki/Loops#for-each"; // untranslated
+Blockly.Msg.CONTROLS_FOREACH_TITLE = "iga elemendiga %1 loendis %2";
+Blockly.Msg.CONTROLS_FOREACH_TOOLTIP = "Iga elemendiga loendis anna muutujale '%1' elemendi väärtus ja kõivita plokis olevad käsud.";
+Blockly.Msg.CONTROLS_FOR_HELPURL = "https://github.com/google/blockly/wiki/Loops#count-with"; // untranslated
+Blockly.Msg.CONTROLS_FOR_TITLE = "loenda muutujaga %1 alates %2 kuni %3 %4 kaupa";
+Blockly.Msg.CONTROLS_FOR_TOOLTIP = "Annab muutujale '%1' väärtused ühest numbrist teiseni, muutes seda intervalli kaupa ja käivitab igal muudatusel ploki sees oleva koodi.";
+Blockly.Msg.CONTROLS_IF_ELSEIF_TOOLTIP = "Lisab „kui“ plokile tingimuse.";
+Blockly.Msg.CONTROLS_IF_ELSE_TOOLTIP = "Lisab „kui“ plokile lõpliku tingimuseta koodiploki.";
+Blockly.Msg.CONTROLS_IF_HELPURL = "https://github.com/google/blockly/wiki/IfElse"; // untranslated
+Blockly.Msg.CONTROLS_IF_IF_TOOLTIP = "Selle „kui“ ploki muutmine sektsioonide lisamise, eemaldamise ja järjestamisega.";
+Blockly.Msg.CONTROLS_IF_MSG_ELSE = "vastasel juhul";
+Blockly.Msg.CONTROLS_IF_MSG_ELSEIF = "vastasel juhul, kui";
+Blockly.Msg.CONTROLS_IF_MSG_IF = "kui";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_1 = "Kui avaldis on tõene, käivita ploki sees olevad käsud.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_2 = "Kui avaldis on tõene, käivita käsud esimesest plokist. Vastasel juhul käivita käsud teisest plokist.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_3 = "Kui esimene avaldis on tõene, käivita käsud esimesest plokist. Vastasel juhul, kui teine avaldis on tõene, käivita käsud teisest plokist.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_4 = "Kui esimene avaldis on tõene, käivita käsud esimesest plokist. Vastasel juhul, kui teine avaldis on tõene, käivita käsud teisest plokist. Kui ükski avaldistest pole tõene, käivita käsud viimasest plokist.";
+Blockly.Msg.CONTROLS_REPEAT_HELPURL = "https://en.wikipedia.org/wiki/For_loop";
+Blockly.Msg.CONTROLS_REPEAT_INPUT_DO = "käivita";
+Blockly.Msg.CONTROLS_REPEAT_TITLE = "kordus %1 korda";
+Blockly.Msg.CONTROLS_REPEAT_TOOLTIP = "Plokis olevate käskude käivitamine mitu korda.";
+Blockly.Msg.CONTROLS_WHILEUNTIL_HELPURL = "https://github.com/google/blockly/wiki/Loops#repeat"; // untranslated
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "kordus kuni pole";
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "kordus kuni on";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "Kuni avaldis pole tõene, korda plokis olevaid käske.";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "Kuni avaldis on tõene, korda plokis olevaid käske.";
+Blockly.Msg.DELETE_ALL_BLOCKS = "Kas kustutada kõik %1 plokki?";
+Blockly.Msg.DELETE_BLOCK = "Kustuta plokk";
+Blockly.Msg.DELETE_VARIABLE = "Delete the '%1' variable"; // untranslated
+Blockly.Msg.DELETE_VARIABLE_CONFIRMATION = "Delete %1 uses of the '%2' variable?"; // untranslated
+Blockly.Msg.DELETE_X_BLOCKS = "Kustuta %1 plokki";
+Blockly.Msg.DISABLE_BLOCK = "Keela ploki kasutamine";
+Blockly.Msg.DUPLICATE_BLOCK = "Tekita duplikaat";
+Blockly.Msg.ENABLE_BLOCK = "Luba ploki kasutamine";
+Blockly.Msg.EXPAND_ALL = "Laota plokid laiali";
+Blockly.Msg.EXPAND_BLOCK = "Laota plokk laiali";
+Blockly.Msg.EXTERNAL_INPUTS = "Sisendid ploki taga";
+Blockly.Msg.HELP = "Abi";
+Blockly.Msg.INLINE_INPUTS = "Sisendid ploki sees";
+Blockly.Msg.LISTS_CREATE_EMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-empty-list"; // untranslated
+Blockly.Msg.LISTS_CREATE_EMPTY_TITLE = "tühi loend";
+Blockly.Msg.LISTS_CREATE_EMPTY_TOOLTIP = "Tagastab loendi, mille pikkus on 0 ja milles pole ühtegi elementi.";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TITLE_ADD = "loend";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TOOLTIP = "Loendiploki elementide lisamine, eemaldamine või järjestuse muutmine.";
+Blockly.Msg.LISTS_CREATE_WITH_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
+Blockly.Msg.LISTS_CREATE_WITH_INPUT_WITH = "loend elementidest";
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TOOLTIP = "Elemendi lisamine loendisse.";
+Blockly.Msg.LISTS_CREATE_WITH_TOOLTIP = "Tekitab mistahes arvust elementidest loendi.";
+Blockly.Msg.LISTS_GET_INDEX_FIRST = "esimene element";
+Blockly.Msg.LISTS_GET_INDEX_FROM_END = "# lõpust";
+Blockly.Msg.LISTS_GET_INDEX_FROM_START = "#"; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_GET = "võta";
+Blockly.Msg.LISTS_GET_INDEX_GET_REMOVE = "võta ja eemalda";
+Blockly.Msg.LISTS_GET_INDEX_LAST = "viimane element";
+Blockly.Msg.LISTS_GET_INDEX_RANDOM = "juhuslik element";
+Blockly.Msg.LISTS_GET_INDEX_REMOVE = "eemalda";
+Blockly.Msg.LISTS_GET_INDEX_TAIL = ""; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FIRST = "Tagastab loendi esimese elemendi.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FROM = "Tagastab loendis määratud asukohal oleva elemendi.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_LAST = "Tagastab loendi viimase elemendi.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_RANDOM = "Tagastab loendi juhusliku elemendi.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST = "Tagastab ja eemaldab loendist esimese elemendi.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM = "Tagastab ja eemaldab loendist määratud asukohal oleva elemendi.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST = "Tagastab ja eemaldab loendist viimase elemendi.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM = "Tagastab ja eemaldab loendist juhusliku elemendi.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST = "Eemaldab loendist esimese elemendi.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM = "Eemaldab loendist määratud asukohal oleva elemendi.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST = "Eemaldab loendist viimase elemendi.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM = "Eemaldab loendist juhusliku elemendi.";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_END = "elemendini # (lõpust)";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_START = "elemendini #";
+Blockly.Msg.LISTS_GET_SUBLIST_END_LAST = "lõpuni";
+Blockly.Msg.LISTS_GET_SUBLIST_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-a-sublist"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_START_FIRST = "alamloend algusest";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_END = "alamloend elemendist # (lõpust)";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_START = "alamloend elemendist #";
+Blockly.Msg.LISTS_GET_SUBLIST_TAIL = ""; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_TOOLTIP = "Tekitab loendi määratud osast koopia.";
+Blockly.Msg.LISTS_INDEX_FROM_END_TOOLTIP = "Viimane element on %1.";
+Blockly.Msg.LISTS_INDEX_FROM_START_TOOLTIP = "Esimene element on %1.";
+Blockly.Msg.LISTS_INDEX_OF_FIRST = "esimene leitud element";
+Blockly.Msg.LISTS_INDEX_OF_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-items-from-a-list"; // untranslated
+Blockly.Msg.LISTS_INDEX_OF_LAST = "viimane leitud element";
+Blockly.Msg.LISTS_INDEX_OF_TOOLTIP = "Tagastab esimese/viimase loendist leitud elemendi asukoha (järjekorranumbri). Kui elementi ei leita, tagastab %1.";
+Blockly.Msg.LISTS_INLIST = "loendis";
+Blockly.Msg.LISTS_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#is-empty"; // untranslated
+Blockly.Msg.LISTS_ISEMPTY_TITLE = "%1 on tühi";
+Blockly.Msg.LISTS_ISEMPTY_TOOLTIP = "Tagastab „tõene“ kui loend on tühi.";
+Blockly.Msg.LISTS_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Lists#length-of"; // untranslated
+Blockly.Msg.LISTS_LENGTH_TITLE = "%1 pikkus";
+Blockly.Msg.LISTS_LENGTH_TOOLTIP = "Tagastab loendi pikkuse.";
+Blockly.Msg.LISTS_REPEAT_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
+Blockly.Msg.LISTS_REPEAT_TITLE = "loend pikkusega %2 elemendist %1";
+Blockly.Msg.LISTS_REPEAT_TOOLTIP = "Tekitab uue loendi, millesse lisatakse ühte elementi pikkusega määratud arv kordi.";
+Blockly.Msg.LISTS_SET_INDEX_HELPURL = "https://github.com/google/blockly/wiki/Lists#in-list--set"; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_INPUT_TO = "väärtus:";
+Blockly.Msg.LISTS_SET_INDEX_INSERT = "lisa asukohale";
+Blockly.Msg.LISTS_SET_INDEX_SET = "asenda";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST = "Lisab loendi algusesse uue elemendi.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FROM = "Lisab määratud asukohale loendis uue elemendi.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_LAST = "Lisab loendi lõppu uue elemendi.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM = "Lisab juhuslikule kohale loendis uue elemendi.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FIRST = "Asendab loendis esimese elemendi.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FROM = "Asendab loendis määratud kohal oleva elemendi.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_LAST = "Asendab loendis viimase elemendi.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_RANDOM = "Asendab loendis juhusliku elemendi.";
+Blockly.Msg.LISTS_SORT_HELPURL = "https://github.com/google/blockly/wiki/Lists#sorting-a-list";
+Blockly.Msg.LISTS_SORT_ORDER_ASCENDING = "kasvavalt";
+Blockly.Msg.LISTS_SORT_ORDER_DESCENDING = "kahanevalt";
+Blockly.Msg.LISTS_SORT_TITLE = "%1 %2 sorteeritud %3";
+Blockly.Msg.LISTS_SORT_TOOLTIP = "Loendi koopia sorteerimine.";
+Blockly.Msg.LISTS_SORT_TYPE_IGNORECASE = "tähestiku järgi (tähesuurust eirates)";
+Blockly.Msg.LISTS_SORT_TYPE_NUMERIC = "arvväärtuste järgi";
+Blockly.Msg.LISTS_SORT_TYPE_TEXT = "tähestiku järgi";
+Blockly.Msg.LISTS_SPLIT_HELPURL = "https://github.com/google/blockly/wiki/Lists#splitting-strings-and-joining-lists"; // untranslated
+Blockly.Msg.LISTS_SPLIT_LIST_FROM_TEXT = "loend, tekitatud tekstist";
+Blockly.Msg.LISTS_SPLIT_TEXT_FROM_LIST = "tekst, tekitatud loendist";
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_JOIN = "Ühendab tekstide loendis olevad tükid üheks tekstiks, asetades tükkide vahele eraldaja.";
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_SPLIT = "Tükeldab teksti eraldajade kohalt ja asetab tükid tekstide loendisse.";
+Blockly.Msg.LISTS_SPLIT_WITH_DELIMITER = "eraldajaga";
+Blockly.Msg.LOGIC_BOOLEAN_FALSE = "väär";
+Blockly.Msg.LOGIC_BOOLEAN_HELPURL = "https://github.com/google/blockly/wiki/Logic#values"; // untranslated
+Blockly.Msg.LOGIC_BOOLEAN_TOOLTIP = "Tagastab tõeväärtuse – kas „tõene“ või „väär“.";
+Blockly.Msg.LOGIC_BOOLEAN_TRUE = "tõene";
+Blockly.Msg.LOGIC_COMPARE_HELPURL = "https://en.wikipedia.org/wiki/Inequality_(mathematics)";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_EQ = "Tagastab „tõene“, kui avaldiste väärtused on võrdsed.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GT = "Tagastab „tõene“, kui esimese avaldise väärtus on suurem kui teise väärtus.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GTE = "Tagastab „tõene“, kui esimese avaldise väärtus on suurem või võrdne teise väärtusega.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LT = "Tagastab „tõene“, kui esimese avaldise väärtus on väiksem kui teise väärtus.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LTE = "Tagastab „tõene“, kui esimese avaldise väärtus on väiksem või võrdne teise väärtusega.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_NEQ = "Tagastab „tõene“, kui avaldiste väärtused pole võrdsed.";
+Blockly.Msg.LOGIC_NEGATE_HELPURL = "https://github.com/google/blockly/wiki/Logic#not"; // untranslated
+Blockly.Msg.LOGIC_NEGATE_TITLE = "pole %1";
+Blockly.Msg.LOGIC_NEGATE_TOOLTIP = "Tagastab „tõene“, kui avaldis on väär. Tagastab „väär“, kui avaldis on tõene.";
+Blockly.Msg.LOGIC_NULL = "null";
+Blockly.Msg.LOGIC_NULL_HELPURL = "https://en.wikipedia.org/wiki/Nullable_type"; // untranslated
+Blockly.Msg.LOGIC_NULL_TOOLTIP = "Tagastab nulli.";
+Blockly.Msg.LOGIC_OPERATION_AND = "ja";
+Blockly.Msg.LOGIC_OPERATION_HELPURL = "https://github.com/google/blockly/wiki/Logic#logical-operations"; // untranslated
+Blockly.Msg.LOGIC_OPERATION_OR = "või";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_AND = "Tagastab „tõene“, kui mõlemad avaldised on tõesed.";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_OR = "Tagastab „tõene“, kui vähemalt üks avaldistest on tõene.";
+Blockly.Msg.LOGIC_TERNARY_CONDITION = "tingimus";
+Blockly.Msg.LOGIC_TERNARY_HELPURL = "https://en.wikipedia.org/wiki/%3F:"; // untranslated
+Blockly.Msg.LOGIC_TERNARY_IF_FALSE = "kui väär";
+Blockly.Msg.LOGIC_TERNARY_IF_TRUE = "kui tõene";
+Blockly.Msg.LOGIC_TERNARY_TOOLTIP = "Kui tingimuse väärtus on tõene, tagastab „kui tõene“ väärtuse, vastasel juhul „kui väär“ väärtuse.";
+Blockly.Msg.MATH_ADDITION_SYMBOL = "+"; // untranslated
+Blockly.Msg.MATH_ARITHMETIC_HELPURL = "https://et.wikipedia.org/wiki/Aritmeetika";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_ADD = "Tagastab kahe arvu summa.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE = "Tagastab kahe arvu jagatise.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MINUS = "Tagastab kahe arvu vahe.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MULTIPLY = "Tagastab kahe arvu korrutise.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_POWER = "Tagastab esimese arvu teise arvu astmes.";
+Blockly.Msg.MATH_CHANGE_HELPURL = "https://en.wikipedia.org/wiki/Programming_idiom#Incrementing_a_counter";
+Blockly.Msg.MATH_CHANGE_TITLE = "muuda %1 %2 võrra";
+Blockly.Msg.MATH_CHANGE_TOOLTIP = "Lisab arvu muutujale '%1'.";
+Blockly.Msg.MATH_CONSTANT_HELPURL = "https://en.wikipedia.org/wiki/Mathematical_constant";
+Blockly.Msg.MATH_CONSTANT_TOOLTIP = "Tagastab ühe konstantidest: π (3,141…), e (2,718…), φ (1.618…), √2) (1,414…), √½ (0,707…), või ∞ (infinity).";
+Blockly.Msg.MATH_CONSTRAIN_HELPURL = "https://en.wikipedia.org/wiki/Clamping_%28graphics%29"; // untranslated
+Blockly.Msg.MATH_CONSTRAIN_TITLE = "%1 piirang %2 ja %3 vahele";
+Blockly.Msg.MATH_CONSTRAIN_TOOLTIP = "Piirab arvu väärtuse toodud piiridesse (piirarvud kaasa arvatud).";
+Blockly.Msg.MATH_DIVISION_SYMBOL = "÷"; // untranslated
+Blockly.Msg.MATH_IS_DIVISIBLE_BY = "jagub arvuga";
+Blockly.Msg.MATH_IS_EVEN = "on paarisarv";
+Blockly.Msg.MATH_IS_NEGATIVE = "on negatiivne arv";
+Blockly.Msg.MATH_IS_ODD = "on paaritu arv";
+Blockly.Msg.MATH_IS_POSITIVE = "on positiivne arv";
+Blockly.Msg.MATH_IS_PRIME = "on algarv";
+Blockly.Msg.MATH_IS_TOOLTIP = "Kontrollib kas arv on paarisarv, paaritu arv, algarv, täisarv, positiivne, negatiivne või jagub kindla arvuga. Tagastab „tõene“ või „väär“.";
+Blockly.Msg.MATH_IS_WHOLE = "on täisarv";
+Blockly.Msg.MATH_MODULO_HELPURL = "https://en.wikipedia.org/wiki/Modulo_operation";
+Blockly.Msg.MATH_MODULO_TITLE = "%1 ÷ %2 jääk";
+Blockly.Msg.MATH_MODULO_TOOLTIP = "Tagastab esimese numbri teisega jagamisel tekkiva jäägi.";
+Blockly.Msg.MATH_MULTIPLICATION_SYMBOL = "×"; // untranslated
+Blockly.Msg.MATH_NUMBER_HELPURL = "https://et.wikipedia.org/wiki/Arv";
+Blockly.Msg.MATH_NUMBER_TOOLTIP = "Arv.";
+Blockly.Msg.MATH_ONLIST_HELPURL = ""; // untranslated
+Blockly.Msg.MATH_ONLIST_OPERATOR_AVERAGE = "loendi keskmine";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MAX = "loendi maksimum";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MEDIAN = "loendi mediaan";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MIN = "loendi miinimum";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MODE = "loendi moodid";
+Blockly.Msg.MATH_ONLIST_OPERATOR_RANDOM = "juhuslik element loendist";
+Blockly.Msg.MATH_ONLIST_OPERATOR_STD_DEV = "loendi standardhälve";
+Blockly.Msg.MATH_ONLIST_OPERATOR_SUM = "loendi summa";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_AVERAGE = "Tagastab loendis olevate arvväärtuste aritmeetilise keskmise.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MAX = "Tagastab suurima loendis oleva arvu.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MEDIAN = "Return the median number in the list.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MIN = "Tagastab väikseima loendis oleva arvu.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MODE = "Tagastab loendi kõige sagedamini esinevate loendi liikmetega.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_RANDOM = "Tagastab juhusliku elemendi loendist.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_STD_DEV = "Tagastab loendi standardhälbe.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_SUM = "Tagastab kõigi loendis olevate arvude summa.";
+Blockly.Msg.MATH_POWER_SYMBOL = "^"; // untranslated
+Blockly.Msg.MATH_RANDOM_FLOAT_HELPURL = "https://en.wikipedia.org/wiki/Random_number_generation";
+Blockly.Msg.MATH_RANDOM_FLOAT_TITLE_RANDOM = "juhuslik murdosa";
+Blockly.Msg.MATH_RANDOM_FLOAT_TOOLTIP = "Tagastab juhusliku murdosa 0.0 (kaasa arvatud) and 1.0 (välja arvatud) vahel.";
+Blockly.Msg.MATH_RANDOM_INT_HELPURL = "https://en.wikipedia.org/wiki/Random_number_generation";
+Blockly.Msg.MATH_RANDOM_INT_TITLE = "juhuslik täisarv %1 ja %2 vahel";
+Blockly.Msg.MATH_RANDOM_INT_TOOLTIP = "Tagastab juhusliku täisarvu toodud piiride vahel (piirarvud kaasa arvatud).";
+Blockly.Msg.MATH_ROUND_HELPURL = "https://en.wikipedia.org/wiki/Rounding";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUND = "ümarda";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDDOWN = "ümarda alla";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDUP = "ümarda üles";
+Blockly.Msg.MATH_ROUND_TOOLTIP = "Ümardab arvu üles või alla.";
+Blockly.Msg.MATH_SINGLE_HELPURL = "https://et.wikipedia.org/wiki/Ruutjuur";
+Blockly.Msg.MATH_SINGLE_OP_ABSOLUTE = "absoluutväärtus";
+Blockly.Msg.MATH_SINGLE_OP_ROOT = "ruutjuur";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ABS = "Tagastab arvu absoluutväärtuse.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_EXP = "Tagasta e arvu astmes.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LN = "Tagastab arvu naturaallogaritmi.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LOG10 = "Tagastab arvu kümnendlogaritm.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_NEG = "Tagastab arvu vastandväärtuse.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_POW10 = "Tagastab 10 arvu astmes.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ROOT = "Tagastab arvu ruutjuure.";
+Blockly.Msg.MATH_SUBTRACTION_SYMBOL = "-"; // untranslated
+Blockly.Msg.MATH_TRIG_ACOS = "acos"; // untranslated
+Blockly.Msg.MATH_TRIG_ASIN = "asin"; // untranslated
+Blockly.Msg.MATH_TRIG_ATAN = "atan"; // untranslated
+Blockly.Msg.MATH_TRIG_COS = "cos"; // untranslated
+Blockly.Msg.MATH_TRIG_HELPURL = "https://et.wikipedia.org/wiki/Trigonomeetrilised_funktsioonid";
+Blockly.Msg.MATH_TRIG_SIN = "sin"; // untranslated
+Blockly.Msg.MATH_TRIG_TAN = "tan"; // untranslated
+Blockly.Msg.MATH_TRIG_TOOLTIP_ACOS = "Tagastab arvu arkuskoosiinuse.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ASIN = "Tagastab arvu arkussiinuse.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ATAN = "Tagastab arvu arkustangensi.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_COS = "Tagastab arvu (kraadid) kosiinuse.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_SIN = "Tagastab arvu (kraadid) siinuse.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_TAN = "Tagastab arvu (kraadid) tangensi.";
+Blockly.Msg.NEW_VARIABLE = "Uus muutuja ...";
+Blockly.Msg.NEW_VARIABLE_TITLE = "Uue muutuja nimi:";
+Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; // untranslated
+Blockly.Msg.PROCEDURES_ALLOW_STATEMENTS = "kood plokis";
+Blockly.Msg.PROCEDURES_BEFORE_PARAMS = "sisenditega:";
+Blockly.Msg.PROCEDURES_CALLNORETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29";
+Blockly.Msg.PROCEDURES_CALLNORETURN_TOOLTIP = "Käivitab kasutaja defineeritud funktsiooni '%1'.";
+Blockly.Msg.PROCEDURES_CALLRETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29";
+Blockly.Msg.PROCEDURES_CALLRETURN_TOOLTIP = "Run the user-defined function '%1' and use its output.";
+Blockly.Msg.PROCEDURES_CALL_BEFORE_PARAMS = "sisenditega:";
+Blockly.Msg.PROCEDURES_CREATE_DO = "Tekita '%1' plokk";
+Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT = "Funktsiooni kirjeldus ...";
+Blockly.Msg.PROCEDURES_DEFNORETURN_DO = ""; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE = "teeme midagi";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE = "funktsioon";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TOOLTIP = "Tekitab funktsiooni, mis ei tagasta midagi.";
+Blockly.Msg.PROCEDURES_DEFRETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_DEFRETURN_RETURN = "tagasta";
+Blockly.Msg.PROCEDURES_DEFRETURN_TOOLTIP = "Tekitab funktsiooni, mis tagastab midagi.";
+Blockly.Msg.PROCEDURES_DEF_DUPLICATE_WARNING = "Hoiatus: Sel funktsioonil on mitu sama nimega sisendit.";
+Blockly.Msg.PROCEDURES_HIGHLIGHT_DEF = "Tõsta funktsiooni definitsioon esile";
+Blockly.Msg.PROCEDURES_IFRETURN_HELPURL = "http://c2.com/cgi/wiki?GuardClause"; // untranslated
+Blockly.Msg.PROCEDURES_IFRETURN_TOOLTIP = "Kui väärtus on tõene, tagastatakse teine väärtus.";
+Blockly.Msg.PROCEDURES_IFRETURN_WARNING = "Hoiatus: Seda plokki saab kasutada ainult funktsiooni definitsioonis.";
+Blockly.Msg.PROCEDURES_MUTATORARG_TITLE = "sisend nimega:";
+Blockly.Msg.PROCEDURES_MUTATORARG_TOOLTIP = "Lisab funktsioonile sisendi.";
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TITLE = "sisendid";
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TOOLTIP = "Funktsiooni sisendite lisamine, eemaldamine või järjestuse muutmine.";
+Blockly.Msg.REDO = "Tee uuesti";
+Blockly.Msg.REMOVE_COMMENT = "Eemalda kommentaar";
+Blockly.Msg.RENAME_VARIABLE = "Nimeta muutuja ümber ...";
+Blockly.Msg.RENAME_VARIABLE_TITLE = "Muutuja „%1“ uus nimi:";
+Blockly.Msg.TEXT_APPEND_APPENDTEXT = "lõppu tekst";
+Blockly.Msg.TEXT_APPEND_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_APPEND_TO = "lisa muutuja";
+Blockly.Msg.TEXT_APPEND_TOOLTIP = "Lisab teksti muutuja „%1“ väärtuse lõppu.";
+Blockly.Msg.TEXT_CHANGECASE_HELPURL = "https://github.com/google/blockly/wiki/Text#adjusting-text-case"; // untranslated
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_LOWERCASE = "väikeste tähtedega";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_TITLECASE = "Suurte Esitähtedega";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_UPPERCASE = "SUURTE TÄHTEDEGA";
+Blockly.Msg.TEXT_CHANGECASE_TOOLTIP = "Tagastab muudetud tähesuurusega teksti koopia.";
+Blockly.Msg.TEXT_CHARAT_FIRST = "esimene sümbol";
+Blockly.Msg.TEXT_CHARAT_FROM_END = "lõpust sümbol #";
+Blockly.Msg.TEXT_CHARAT_FROM_START = "sümbol #";
+Blockly.Msg.TEXT_CHARAT_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-text"; // untranslated
+Blockly.Msg.TEXT_CHARAT_INPUT_INTEXT = "tekstist";
+Blockly.Msg.TEXT_CHARAT_LAST = "viimane sümbol";
+Blockly.Msg.TEXT_CHARAT_RANDOM = "juhuslik sümbol";
+Blockly.Msg.TEXT_CHARAT_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_CHARAT_TOOLTIP = "Tagastab tekstis määratud asukohal oleva sümboli.";
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TOOLTIP = "Objekti lisamine tekstile.";
+Blockly.Msg.TEXT_CREATE_JOIN_TITLE_JOIN = "ühenda";
+Blockly.Msg.TEXT_CREATE_JOIN_TOOLTIP = "Tekstiploki muutmine sektsioonide lisamise, eemaldamise või järjestuse muutmisega.";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_END = "kuni (lõpust) sümbolini #";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_START = "kuni sümbolini #";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_LAST = "kuni viimase sümbolini";
+Blockly.Msg.TEXT_GET_SUBSTRING_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_INPUT_IN_TEXT = "tekstist";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FIRST = "alates esimesest sümbolist";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_END = "alates (lõpust) sümbolist #";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_START = "alates sümbolist #";
+Blockly.Msg.TEXT_GET_SUBSTRING_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_TOOLTIP = "Tagastab määratud tüki tekstist.";
+Blockly.Msg.TEXT_INDEXOF_HELPURL = "https://github.com/google/blockly/wiki/Text#finding-text"; // untranslated
+Blockly.Msg.TEXT_INDEXOF_INPUT_INTEXT = "tekstist";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_FIRST = "esimese leitud tekstitüki";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_LAST = "viimase leitud tekstitüki";
+Blockly.Msg.TEXT_INDEXOF_TAIL = "asukoht";
+Blockly.Msg.TEXT_INDEXOF_TOOLTIP = "Tagastab esimesest tekstist esimese/viimase leitud teise teksti asukoha (indeksi). Kui teksti ei leita, tagastab %1.";
+Blockly.Msg.TEXT_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Text#checking-for-empty-text"; // untranslated
+Blockly.Msg.TEXT_ISEMPTY_TITLE = "%1 on tühi";
+Blockly.Msg.TEXT_ISEMPTY_TOOLTIP = "Tagastab „tõene“, kui tekstis pole ühtegi sümbolit.";
+Blockly.Msg.TEXT_JOIN_HELPURL = "https://github.com/google/blockly/wiki/Text#text-creation"; // untranslated
+Blockly.Msg.TEXT_JOIN_TITLE_CREATEWITH = "tekita tekst";
+Blockly.Msg.TEXT_JOIN_TOOLTIP = "Tekitab teksti ühendades mistahes arvu elemente.";
+Blockly.Msg.TEXT_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_LENGTH_TITLE = "%1 pikkus";
+Blockly.Msg.TEXT_LENGTH_TOOLTIP = "Tagastab sümbolite aru (ka tühikud) toodud tekstis.";
+Blockly.Msg.TEXT_PRINT_HELPURL = "https://github.com/google/blockly/wiki/Text#printing-text"; // untranslated
+Blockly.Msg.TEXT_PRINT_TITLE = "trüki %1";
+Blockly.Msg.TEXT_PRINT_TOOLTIP = "Trükib määratud teksti, numbri või mõne muu objekti väärtuse.";
+Blockly.Msg.TEXT_PROMPT_HELPURL = "https://github.com/google/blockly/wiki/Text#getting-input-from-the-user"; // untranslated
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_NUMBER = "Küsib kasutajalt teadet näidates mingit arvu.";
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_TEXT = "Küsib kasutajalt teadet näidates mingit teksti.";
+Blockly.Msg.TEXT_PROMPT_TYPE_NUMBER = "kasutajalt küsitud arv teatega";
+Blockly.Msg.TEXT_PROMPT_TYPE_TEXT = "kasutajalt küsitud tekst teatega";
+Blockly.Msg.TEXT_TEXT_HELPURL = "https://en.wikipedia.org/wiki/String_(computer_science)";
+Blockly.Msg.TEXT_TEXT_TOOLTIP = "Täht, sõna või rida teksti.";
+Blockly.Msg.TEXT_TRIM_HELPURL = "https://github.com/google/blockly/wiki/Text#trimming-removing-spaces"; // untranslated
+Blockly.Msg.TEXT_TRIM_OPERATOR_BOTH = "mõlemalt poolt eemaldatud tühikutega";
+Blockly.Msg.TEXT_TRIM_OPERATOR_LEFT = "algusest eemaldatud tühikutega";
+Blockly.Msg.TEXT_TRIM_OPERATOR_RIGHT = "lõpust eemaldatud tühikutega";
+Blockly.Msg.TEXT_TRIM_TOOLTIP = "Tagastab koopia tekstist, millel on tühikud ühelt või mõlemalt poolt eemaldatud.";
+Blockly.Msg.TODAY = "Täna";
+Blockly.Msg.UNDO = "Võta tagasi";
+Blockly.Msg.VARIABLES_DEFAULT_NAME = "objekt";
+Blockly.Msg.VARIABLES_GET_CREATE_SET = "Tekita 'määra „%1“ väärtuseks' plokk";
+Blockly.Msg.VARIABLES_GET_HELPURL = "https://github.com/google/blockly/wiki/Variables#get"; // untranslated
+Blockly.Msg.VARIABLES_GET_TOOLTIP = "Tagastab selle muutuja väärtuse.";
+Blockly.Msg.VARIABLES_SET = "\"määra %1 väärtuseks %2";
+Blockly.Msg.VARIABLES_SET_CREATE_GET = "Tekita '„%1“ väärtus' plokk";
+Blockly.Msg.VARIABLES_SET_HELPURL = "https://github.com/google/blockly/wiki/Variables#set"; // untranslated
+Blockly.Msg.VARIABLES_SET_TOOLTIP = "Määrab selle muutuja väärtuse võrdseks sisendi väärtusega.";
+Blockly.Msg.VARIABLE_ALREADY_EXISTS = "A variable named '%1' already exists."; // untranslated
+Blockly.Msg.PROCEDURES_DEFRETURN_TITLE = Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE;
+Blockly.Msg.CONTROLS_IF_IF_TITLE_IF = Blockly.Msg.CONTROLS_IF_MSG_IF;
+Blockly.Msg.CONTROLS_WHILEUNTIL_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_MSG_THEN = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_ELSE_TITLE_ELSE = Blockly.Msg.CONTROLS_IF_MSG_ELSE;
+Blockly.Msg.PROCEDURES_DEFRETURN_PROCEDURE = Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE;
+Blockly.Msg.LISTS_GET_SUBLIST_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.LISTS_GET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.PROCEDURES_DEFRETURN_DO = Blockly.Msg.PROCEDURES_DEFNORETURN_DO;
+Blockly.Msg.CONTROLS_IF_ELSEIF_TITLE_ELSEIF = Blockly.Msg.CONTROLS_IF_MSG_ELSEIF;
+Blockly.Msg.LISTS_GET_INDEX_HELPURL = Blockly.Msg.LISTS_INDEX_OF_HELPURL;
+Blockly.Msg.CONTROLS_FOREACH_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_SET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TITLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_APPEND_VARIABLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.LISTS_INDEX_OF_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.PROCEDURES_DEFRETURN_COMMENT = Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT; \ No newline at end of file
diff --git a/blockly/msg/js/fa.js b/blockly/msg/js/fa.js
new file mode 100644
index 0000000..399e043
--- /dev/null
+++ b/blockly/msg/js/fa.js
@@ -0,0 +1,391 @@
+// This file was automatically generated. Do not modify.
+
+'use strict';
+
+goog.provide('Blockly.Msg.fa');
+
+goog.require('Blockly.Msg');
+
+Blockly.Msg.ADD_COMMENT = "افزودن نظر";
+Blockly.Msg.CHANGE_VALUE_TITLE = "تغییر مقدار:";
+Blockly.Msg.CLEAN_UP = "تمیز کردن بلوک‌ها";
+Blockly.Msg.COLLAPSE_ALL = "فروپاشی بلوک‌ها";
+Blockly.Msg.COLLAPSE_BLOCK = "فروپاشی بلوک";
+Blockly.Msg.COLOUR_BLEND_COLOUR1 = "رنگ ۱";
+Blockly.Msg.COLOUR_BLEND_COLOUR2 = "رنگ ۲";
+Blockly.Msg.COLOUR_BLEND_HELPURL = "http://meyerweb.com/eric/tools/color-blend/"; // untranslated
+Blockly.Msg.COLOUR_BLEND_RATIO = "نسبت";
+Blockly.Msg.COLOUR_BLEND_TITLE = "مخلوط";
+Blockly.Msg.COLOUR_BLEND_TOOLTIP = "دو رنگ را با نسبت مشخص‌شده مخلوط می‌کند (۰٫۰ - ۱٫۰)";
+Blockly.Msg.COLOUR_PICKER_HELPURL = "https://fa.wikipedia.org/wiki/%D8%B1%D9%86%DA%AF";
+Blockly.Msg.COLOUR_PICKER_TOOLTIP = "انتخاب یک رنگ از تخته‌رنگ.";
+Blockly.Msg.COLOUR_RANDOM_HELPURL = "http://randomcolour.com"; // untranslated
+Blockly.Msg.COLOUR_RANDOM_TITLE = "رنگ تصادفی";
+Blockly.Msg.COLOUR_RANDOM_TOOLTIP = "انتخاب یک رنگ به شکل تصادفی.";
+Blockly.Msg.COLOUR_RGB_BLUE = "آبی";
+Blockly.Msg.COLOUR_RGB_GREEN = "سبز";
+Blockly.Msg.COLOUR_RGB_HELPURL = "http://www.december.com/html/spec/colorper.html"; // untranslated
+Blockly.Msg.COLOUR_RGB_RED = "قرمز";
+Blockly.Msg.COLOUR_RGB_TITLE = "رنگ با";
+Blockly.Msg.COLOUR_RGB_TOOLTIP = "ساخت یک رنگ با مقدار مشخص‌شده‌ای از قرمز، سبز و آبی. همهٔ مقادیر باید بین ۰ تا ۱۰۰ باشند.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_HELPURL = "https://github.com/google/blockly/wiki/Loops#loop-termination-blocks"; // untranslated
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK = "شکستن حلقه";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE = "ادامه با تکرار بعدی حلقه";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK = "شکستن حلقهٔ شامل.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE = "پریدن از بقیهٔ حلقه و ادامه با تکرار بعدی.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_WARNING = "اخطار: این بلوک ممکن است فقط داخل یک حلقه استفاده شود.";
+Blockly.Msg.CONTROLS_FOREACH_HELPURL = "https://github.com/google/blockly/wiki/Loops#for-each"; // untranslated
+Blockly.Msg.CONTROLS_FOREACH_TITLE = "برای هر مورد %1 در فهرست %2";
+Blockly.Msg.CONTROLS_FOREACH_TOOLTIP = "برای هر مورد در این فهرست، تنظیم متغیر «%1» به مورد و انجام تعدادی عبارت.";
+Blockly.Msg.CONTROLS_FOR_HELPURL = "https://github.com/google/blockly/wiki/Loops#count-with"; // untranslated
+Blockly.Msg.CONTROLS_FOR_TITLE = "با تعداد %1 از %2 به %3 با گام‌های %4";
+Blockly.Msg.CONTROLS_FOR_TOOLTIP = "متغیر %1 را در مقادیر شروع‌شده از عدد انتهای به عدد انتهایی را دارد، با فواصل مشخص‌شده می‌شمارد و این بلوک مشخص‌شده را انجام می‌دهد.";
+Blockly.Msg.CONTROLS_IF_ELSEIF_TOOLTIP = "افزودن یک شرط به بلوک اگر.";
+Blockly.Msg.CONTROLS_IF_ELSE_TOOLTIP = "اضافه کردن نهایی، گرفتن همهٔ شرایط به بلوک اگر.";
+Blockly.Msg.CONTROLS_IF_HELPURL = "https://github.com/google/blockly/wiki/IfElse"; // untranslated
+Blockly.Msg.CONTROLS_IF_IF_TOOLTIP = "افزودن، حذف یا بازمرتب‌سازی قسمت‌ها برای پیکربندی دوبارهٔ این بلوک اگر.";
+Blockly.Msg.CONTROLS_IF_MSG_ELSE = "آنگاه";
+Blockly.Msg.CONTROLS_IF_MSG_ELSEIF = "اگر آنگاه";
+Blockly.Msg.CONTROLS_IF_MSG_IF = "اگر";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_1 = "اگر یک مقدار صحیح است، سپس چند عبارت را انجام بده.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_2 = "اگر یک مقدار صحیح است، اول بلوک اول عبارات را انجام بده. در غیر این صورت بلوک دوم عبارات انجام بده.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_3 = "اگر مقدار اول صحیح بود، از آن بلوک اول عبارات را انجام بده. در غیر این صورت، اگر مقدار دوم صحیح است، بلوک دوم عبارات را انجام بده.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_4 = "اگر مقدار اول درست است، بلوک اول عبارات را انجام بده. در غیر این صورت، اگر مقدار دوم درست باشد بلوک دوم عبارات را انجام بده. اگر هیچ از مقادیر درست نبود، آخرین بلوک عبارات را انجام بده.";
+Blockly.Msg.CONTROLS_REPEAT_HELPURL = "https://fa.wikipedia.org/wiki/%D8%AD%D9%84%D9%82%D9%87_%D9%81%D9%88%D8%B1";
+Blockly.Msg.CONTROLS_REPEAT_INPUT_DO = "انحام";
+Blockly.Msg.CONTROLS_REPEAT_TITLE = "%1 بار تکرار";
+Blockly.Msg.CONTROLS_REPEAT_TOOLTIP = "انجام چند عبارت چندین بار.";
+Blockly.Msg.CONTROLS_WHILEUNTIL_HELPURL = "https://github.com/google/blockly/wiki/Loops#repeat"; // untranslated
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "تکرار تا زمانی که";
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "تکرار در حالی که";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "تا زمانی که یک مقدار ناصحیح است، چند عبارت را انجام بده.";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "تا زمانی که یک مقدار صحیح است، چند عبارت را انجام بده.";
+Blockly.Msg.DELETE_ALL_BLOCKS = "حذف همهٔ بلاک‌های %1؟";
+Blockly.Msg.DELETE_BLOCK = "حذف بلوک";
+Blockly.Msg.DELETE_VARIABLE = "Delete the '%1' variable"; // untranslated
+Blockly.Msg.DELETE_VARIABLE_CONFIRMATION = "Delete %1 uses of the '%2' variable?"; // untranslated
+Blockly.Msg.DELETE_X_BLOCKS = "حذف بلوک‌های %1";
+Blockly.Msg.DISABLE_BLOCK = "غیرفعال‌سازی بلوک";
+Blockly.Msg.DUPLICATE_BLOCK = "تکراری";
+Blockly.Msg.ENABLE_BLOCK = "فعال‌سازی بلوک";
+Blockly.Msg.EXPAND_ALL = "گسترش بلوک‌ها";
+Blockly.Msg.EXPAND_BLOCK = "گسترش بلوک";
+Blockly.Msg.EXTERNAL_INPUTS = "ورودی‌های خارجی";
+Blockly.Msg.HELP = "راهنما";
+Blockly.Msg.INLINE_INPUTS = "ورودی‌های درون خطی";
+Blockly.Msg.LISTS_CREATE_EMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-empty-list"; // untranslated
+Blockly.Msg.LISTS_CREATE_EMPTY_TITLE = "ایجاد فهرست خالی";
+Blockly.Msg.LISTS_CREATE_EMPTY_TOOLTIP = "فهرستی با طول صفر شامل هیچ رکورد داده‌ای بر می‌گرداند.";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TITLE_ADD = "فهرست";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TOOLTIP = "اضافه کردن، حذف کردن یا ترتیب‌سازی مجدد بخش‌ها این بلوک فهرستی.";
+Blockly.Msg.LISTS_CREATE_WITH_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
+Blockly.Msg.LISTS_CREATE_WITH_INPUT_WITH = "ایجاد فهرست با";
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TOOLTIP = "اضافه کردن یک مورد به فهرست.";
+Blockly.Msg.LISTS_CREATE_WITH_TOOLTIP = "فهرستی از هر عددی از موارد می‌سازد.";
+Blockly.Msg.LISTS_GET_INDEX_FIRST = "اولین";
+Blockly.Msg.LISTS_GET_INDEX_FROM_END = "# از انتها";
+Blockly.Msg.LISTS_GET_INDEX_FROM_START = "#"; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_GET = "گرفتن";
+Blockly.Msg.LISTS_GET_INDEX_GET_REMOVE = "گرفتن و حذف‌کردن";
+Blockly.Msg.LISTS_GET_INDEX_LAST = "آخرین";
+Blockly.Msg.LISTS_GET_INDEX_RANDOM = "تصادفی";
+Blockly.Msg.LISTS_GET_INDEX_REMOVE = "حذف‌کردن";
+Blockly.Msg.LISTS_GET_INDEX_TAIL = ""; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FIRST = "اولین مورد یک فهرست را بر می‌گرداند.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FROM = "موردی در محل مشخص‌شده بر می‌گرداند.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_LAST = "آخرین مورد در یک فهرست را بر می‌گرداند.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_RANDOM = "یک مورد تصادفی در یک فهرست بر می‌گرداند.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST = "اولین مورد مشخص‌شده در فهرست را حذف و بر می‌گرداند.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM = "مورد در محل مشخص‌شده در فهرست را حذف و بر می‌گرداند.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST = "آخرین مورد مشخص‌شده در فهرست را حذف و بر می‌گرداند.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM = "مورد تصادفی‌ای را در فهرست حذف و بر می‌گرداند.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST = "اولین مورد را در یک فهرست حذف می‌کند.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM = "مورد مشخص‌شده در موقعیت مشخص در یک فهرست را حذف و بر می‌گرداند.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST = "آخرین مورد را در یک فهرست حذف می‌کند.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM = "یک مورد تصادفی را یک فهرست حذف می‌کند.";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_END = "به # از انتها";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_START = "به #";
+Blockly.Msg.LISTS_GET_SUBLIST_END_LAST = "به آخرین";
+Blockly.Msg.LISTS_GET_SUBLIST_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-a-sublist"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_START_FIRST = "گرفتن زیرمجموعه‌ای از ابتدا";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_END = "گرفتن زیرمجموعه‌ای از # از انتها";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_START = "گرفتن زیرمجموعه‌ای از #";
+Blockly.Msg.LISTS_GET_SUBLIST_TAIL = ""; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_TOOLTIP = "کپی از قسمت مشخص‌شدهٔ لیست درست می‌کند.";
+Blockly.Msg.LISTS_INDEX_FROM_END_TOOLTIP = "%1 آخرین مورد است.";
+Blockly.Msg.LISTS_INDEX_FROM_START_TOOLTIP = "%1 اولین مورد است.";
+Blockly.Msg.LISTS_INDEX_OF_FIRST = "یافتن اولین رخ‌داد مورد";
+Blockly.Msg.LISTS_INDEX_OF_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-items-from-a-list"; // untranslated
+Blockly.Msg.LISTS_INDEX_OF_LAST = "یافتن آخرین رخ‌داد مورد";
+Blockly.Msg.LISTS_INDEX_OF_TOOLTIP = "شاخصی از اولین/آخرین رخ‌داد مورد در فهرست را بر می‌گرداند. %1 بر می‌گرداند اگر آیتم موجود نبود.";
+Blockly.Msg.LISTS_INLIST = "در فهرست";
+Blockly.Msg.LISTS_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#is-empty"; // untranslated
+Blockly.Msg.LISTS_ISEMPTY_TITLE = "%1 خالی است";
+Blockly.Msg.LISTS_ISEMPTY_TOOLTIP = "اگر فهرست خالی است مقدار صجیج بر می‌گرداند.";
+Blockly.Msg.LISTS_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Lists#length-of"; // untranslated
+Blockly.Msg.LISTS_LENGTH_TITLE = "طول %1";
+Blockly.Msg.LISTS_LENGTH_TOOLTIP = "طول یک فهرست را برمی‌گرداند.";
+Blockly.Msg.LISTS_REPEAT_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
+Blockly.Msg.LISTS_REPEAT_TITLE = "فهرستی با %1 تکرارشده به اندازهٔ %2 می‌سازد";
+Blockly.Msg.LISTS_REPEAT_TOOLTIP = "فهرستی شامل مقادیر داده‌شدهٔ تکرار شده عدد مشخص‌شده می‌سازد.";
+Blockly.Msg.LISTS_SET_INDEX_HELPURL = "https://github.com/google/blockly/wiki/Lists#in-list--set"; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_INPUT_TO = "به عنوان";
+Blockly.Msg.LISTS_SET_INDEX_INSERT = "درج در";
+Blockly.Msg.LISTS_SET_INDEX_SET = "مجموعه";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST = "موردی به ته فهرست اضافه می‌کند.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FROM = "موردی در موقعیت مشخص‌شده در یک فهرست اضافه می‌کند.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_LAST = "موردی به ته فهرست الحاق می‌کند.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM = "مورد را به صورت تصادفی در یک فهرست می‌افزاید.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FIRST = "اولین مورد در یک فهرست را تعیین می‌کند.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FROM = "مورد مشخص‌شده در یک فهرست را قرار می‌دهد.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_LAST = "آخرین مورد در یک فهرست را تعیین می‌کند.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_RANDOM = "یک مورد تصادفی در یک فهرست را تعیین می‌کند.";
+Blockly.Msg.LISTS_SORT_HELPURL = "https://github.com/google/blockly/wiki/Lists#sorting-a-list"; // untranslated
+Blockly.Msg.LISTS_SORT_ORDER_ASCENDING = "صعودی";
+Blockly.Msg.LISTS_SORT_ORDER_DESCENDING = "نزولی";
+Blockly.Msg.LISTS_SORT_TITLE = "sort %1 %2 %3"; // untranslated
+Blockly.Msg.LISTS_SORT_TOOLTIP = "Sort a copy of a list."; // untranslated
+Blockly.Msg.LISTS_SORT_TYPE_IGNORECASE = "حروفی ، رد کردن مورد";
+Blockly.Msg.LISTS_SORT_TYPE_NUMERIC = "عددی";
+Blockly.Msg.LISTS_SORT_TYPE_TEXT = "حروفی ، الفبایی";
+Blockly.Msg.LISTS_SPLIT_HELPURL = "https://github.com/google/blockly/wiki/Lists#splitting-strings-and-joining-lists"; // untranslated
+Blockly.Msg.LISTS_SPLIT_LIST_FROM_TEXT = "ایجاد فهرست از متن";
+Blockly.Msg.LISTS_SPLIT_TEXT_FROM_LIST = "ایجاد متن از فهرست";
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_JOIN = "Join a list of texts into one text, separated by a delimiter."; // untranslated
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_SPLIT = "Split text into a list of texts, breaking at each delimiter."; // untranslated
+Blockly.Msg.LISTS_SPLIT_WITH_DELIMITER = "همراه جداساز";
+Blockly.Msg.LOGIC_BOOLEAN_FALSE = "ناصحیح";
+Blockly.Msg.LOGIC_BOOLEAN_HELPURL = "https://github.com/google/blockly/wiki/Logic#values"; // untranslated
+Blockly.Msg.LOGIC_BOOLEAN_TOOLTIP = "بازگرداندن یکی از صحیح یا ناصحیح.";
+Blockly.Msg.LOGIC_BOOLEAN_TRUE = "صحیح";
+Blockly.Msg.LOGIC_COMPARE_HELPURL = "https://fa.wikipedia.org/wiki/%D9%86%D8%A7%D8%A8%D8%B1%D8%A7%D8%A8%D8%B1%DB%8C";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_EQ = "بازگشت صحیح اگر هر دو ورودی با یکدیگر برابر باشد.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GT = "بازگرداندن صحیح اگر ورودی اول بزرگتر از ورودی دوم باشد.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GTE = "بازگرداندن صحیح اگر ورودی اول بزرگتر یا مساوی یا ورودی دوم باشد.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LT = "بازگرداندن صحیح اگر ورودی اول کوچکتر از ورودی دوم باشد.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LTE = "بازگرداندن صحیح اگر ورودی اول کوچکتر یا مساوی با ورودی دوم باشد.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_NEQ = "برگرداندن صحیح اگر هر دو ورودی با یکدیگر برابر نباشند.";
+Blockly.Msg.LOGIC_NEGATE_HELPURL = "https://github.com/google/blockly/wiki/Logic#not"; // untranslated
+Blockly.Msg.LOGIC_NEGATE_TITLE = "نه %1";
+Blockly.Msg.LOGIC_NEGATE_TOOLTIP = "صجیج باز می‌گرداند اگر ورودی نا صحیح باشند. ناصحیح بازمی‌گرداند اگر ورودی صحیح باشد.";
+Blockly.Msg.LOGIC_NULL = "تهی";
+Blockly.Msg.LOGIC_NULL_HELPURL = "https://en.wikipedia.org/wiki/Nullable_type"; // untranslated
+Blockly.Msg.LOGIC_NULL_TOOLTIP = "تهی بازمی‌گرداند.";
+Blockly.Msg.LOGIC_OPERATION_AND = "و";
+Blockly.Msg.LOGIC_OPERATION_HELPURL = "https://github.com/google/blockly/wiki/Logic#logical-operations"; // untranslated
+Blockly.Msg.LOGIC_OPERATION_OR = "یا";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_AND = "بازگرداندن صحیح اگر هر دو ورودی صحیح باشد.";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_OR = "بازگرداندن صحیح اگر یکی از دو ورودی صحیح باشد.";
+Blockly.Msg.LOGIC_TERNARY_CONDITION = "آزمایش";
+Blockly.Msg.LOGIC_TERNARY_HELPURL = "https://en.wikipedia.org/wiki/%3F:"; // untranslated
+Blockly.Msg.LOGIC_TERNARY_IF_FALSE = "اگر ناصحیح";
+Blockly.Msg.LOGIC_TERNARY_IF_TRUE = "اگر صحیح";
+Blockly.Msg.LOGIC_TERNARY_TOOLTIP = "بررسی وضعیت در «آزمایش». اگر وضعیت صحیح باشد، مقدار «اگر صحیح» را بر می‌گرداند در غیر اینصورت مقدار «اگر ناصحیح» را.";
+Blockly.Msg.MATH_ADDITION_SYMBOL = "+"; // untranslated
+Blockly.Msg.MATH_ARITHMETIC_HELPURL = "https://fa.wikipedia.org/wiki/%D8%AD%D8%B3%D8%A7%D8%A8";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_ADD = "بازگرداندن مقدار جمع دو عدد.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE = "بازگرداندن باقی‌ماندهٔ دو عدد.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MINUS = "بازگرداندن تفاوت دو عدد.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MULTIPLY = "بازگرداندن حاصلضرب دو عدد.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_POWER = "بازگرداندن اولین عددی که از توان عدد دوم حاصل شده باشد.";
+Blockly.Msg.MATH_CHANGE_HELPURL = "https://fa.wikipedia.org/wiki/%D8%A7%D8%B5%D8%B7%D9%84%D8%A7%D8%AD_%D8%A8%D8%B1%D9%86%D8%A7%D9%85%D9%87%E2%80%8C%D9%86%D9%88%DB%8C%D8%B3%DB%8C#.D8.A7.D9.81.D8.B2.D8.A7.DB.8C.D8.B4_.D8.B4.D9.85.D8.A7.D8.B1.D9.86.D8.AF.D9.87";
+Blockly.Msg.MATH_CHANGE_TITLE = "تغییر %1 با %2";
+Blockly.Msg.MATH_CHANGE_TOOLTIP = "افزودن یک عدد به متغیر '%1'.";
+Blockly.Msg.MATH_CONSTANT_HELPURL = "https://fa.wikipedia.org/wiki/%D8%AB%D8%A7%D8%A8%D8%AA_%D8%B1%DB%8C%D8%A7%D8%B6%DB%8C";
+Blockly.Msg.MATH_CONSTANT_TOOLTIP = "یکی از مقادیر مشترک را برمی‌گرداند: π (۳٫۱۴۱…)، e (۲٫۷۱۸...)، φ (۱٫۶۱۸)، sqrt(۲) (۱٫۴۱۴)، sqrt(۱/۲) (۰٫۷۰۷...) و یا ∞ (بی‌نهایت).";
+Blockly.Msg.MATH_CONSTRAIN_HELPURL = "https://en.wikipedia.org/wiki/Clamping_%28graphics%29"; // untranslated
+Blockly.Msg.MATH_CONSTRAIN_TITLE = "محدودکردن %1 پایین %2 بالا %3";
+Blockly.Msg.MATH_CONSTRAIN_TOOLTIP = "محدودکردن یک عدد بین محدودیت‌های مشخص‌شده (بسته).";
+Blockly.Msg.MATH_DIVISION_SYMBOL = "÷"; // untranslated
+Blockly.Msg.MATH_IS_DIVISIBLE_BY = "تقسیم شده بر";
+Blockly.Msg.MATH_IS_EVEN = "زوج است";
+Blockly.Msg.MATH_IS_NEGATIVE = "منفی است";
+Blockly.Msg.MATH_IS_ODD = "فرد است";
+Blockly.Msg.MATH_IS_POSITIVE = "مثبت است";
+Blockly.Msg.MATH_IS_PRIME = "عدد اول است";
+Blockly.Msg.MATH_IS_TOOLTIP = "بررسی می‌کند که آیا یک عدد زوج، فرد، اول، کامل، مثبت، منفی یا بخش‌پذیر عدد خاصی باشد را بررسی می‌کند. درست یا نادرست باز می‌گرداند.";
+Blockly.Msg.MATH_IS_WHOLE = "کامل است";
+Blockly.Msg.MATH_MODULO_HELPURL = "https://fa.wikipedia.org/wiki/%D8%B9%D9%85%D9%84%DB%8C%D8%A7%D8%AA_%D9%BE%DB%8C%D9%85%D8%A7%D9%86%D9%87";
+Blockly.Msg.MATH_MODULO_TITLE = "باقی‌ماندهٔ %1 + %2";
+Blockly.Msg.MATH_MODULO_TOOLTIP = "باقی‌ماندهٔ تقسیم دو عدد را بر می‌گرداند.";
+Blockly.Msg.MATH_MULTIPLICATION_SYMBOL = "×"; // untranslated
+Blockly.Msg.MATH_NUMBER_HELPURL = "https://fa.wikipedia.org/wiki/%D8%B9%D8%AF%D8%AF";
+Blockly.Msg.MATH_NUMBER_TOOLTIP = "یک عدد.";
+Blockly.Msg.MATH_ONLIST_HELPURL = ""; // untranslated
+Blockly.Msg.MATH_ONLIST_OPERATOR_AVERAGE = "میانگین فهرست";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MAX = "بزرگ‌ترین فهرست";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MEDIAN = "میانهٔ فهرست";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MIN = "کوچکترین فهرست";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MODE = "مد فهرست";
+Blockly.Msg.MATH_ONLIST_OPERATOR_RANDOM = "مورد تصادفی از فهرست";
+Blockly.Msg.MATH_ONLIST_OPERATOR_STD_DEV = "انحراف معیار فهرست";
+Blockly.Msg.MATH_ONLIST_OPERATOR_SUM = "جمع فهرست";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_AVERAGE = "میانگین (میانگین ریاضی) مقادیر عددی فهرست را بر می‌گرداند.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MAX = "بزرگ‌ترین عدد در فهرست را باز می‌گرداند.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MEDIAN = "میانهٔ عدد در فهرست را بر می‌گرداند.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MIN = "کوچک‌ترین عدد در فهرست را باز می‌گرداند.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MODE = "شایع‌ترین قلم(های) در فهرست را بر می‌گرداند.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_RANDOM = "موردی تصادفی از فهرست را بر می‌گرداند.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_STD_DEV = "انحراف معیار فهرست را بر می‌گرداند.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_SUM = "جمع همهٔ عددهای فهرست را باز می‌گرداند.";
+Blockly.Msg.MATH_POWER_SYMBOL = "^"; // untranslated
+Blockly.Msg.MATH_RANDOM_FLOAT_HELPURL = "https://fa.wikipedia.org/wiki/%D8%AA%D9%88%D9%84%DB%8C%D8%AF_%D8%A7%D8%B9%D8%AF%D8%A7%D8%AF_%D8%AA%D8%B5%D8%A7%D8%AF%D9%81%DB%8C";
+Blockly.Msg.MATH_RANDOM_FLOAT_TITLE_RANDOM = "کسر تصادفی";
+Blockly.Msg.MATH_RANDOM_FLOAT_TOOLTIP = "بازگرداندن کسری تصادفی بین ۰٫۰ (بسته) تا ۱٫۰ (باز).";
+Blockly.Msg.MATH_RANDOM_INT_HELPURL = "https://fa.wikipedia.org/wiki/%D8%AA%D9%88%D9%84%DB%8C%D8%AF_%D8%A7%D8%B9%D8%AF%D8%A7%D8%AF_%D8%AA%D8%B5%D8%A7%D8%AF%D9%81%DB%8C";
+Blockly.Msg.MATH_RANDOM_INT_TITLE = "عدد صحیح تصادفی بین %1 تا %2";
+Blockly.Msg.MATH_RANDOM_INT_TOOLTIP = "یک عدد تصادفی بین دو مقدار مشخص‌شده به صورت بسته باز می‌گرداند.";
+Blockly.Msg.MATH_ROUND_HELPURL = "https://fa.wikipedia.org/wiki/%D8%B1%D9%88%DB%8C%D9%87_%28%D8%B9%D9%84%D9%88%D9%85_%D8%B1%D8%A7%DB%8C%D8%A7%D9%86%D9%87%29";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUND = "گردکردن";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDDOWN = "گرد به پایین";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDUP = "گرد به بالا";
+Blockly.Msg.MATH_ROUND_TOOLTIP = "گردکردن یک عدد به بالا یا پایین.";
+Blockly.Msg.MATH_SINGLE_HELPURL = "https://fa.wikipedia.org/wiki/%D8%B1%DB%8C%D8%B4%D9%87_%D8%AF%D9%88%D9%85";
+Blockly.Msg.MATH_SINGLE_OP_ABSOLUTE = "مطلق";
+Blockly.Msg.MATH_SINGLE_OP_ROOT = "ریشهٔ دوم";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ABS = "قدر مطلق یک عدد را بازمی‌گرداند.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_EXP = "بازگرداندن توان e یک عدد.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LN = "لوگاریتم طبیعی یک عدد را باز می‌گرداند.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LOG10 = "بازگرداندن لگاریتم بر پایهٔ ۱۰ یک عدد.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_NEG = "منفی‌شدهٔ یک عدد را باز می‌گرداند.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_POW10 = "بازگرداندن توان ۱۰ یک عدد.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ROOT = "ریشهٔ دوم یک عدد را باز می‌گرداند.";
+Blockly.Msg.MATH_SUBTRACTION_SYMBOL = "-"; // untranslated
+Blockly.Msg.MATH_TRIG_ACOS = "acos"; // untranslated
+Blockly.Msg.MATH_TRIG_ASIN = "asin"; // untranslated
+Blockly.Msg.MATH_TRIG_ATAN = "atan"; // untranslated
+Blockly.Msg.MATH_TRIG_COS = "cos"; // untranslated
+Blockly.Msg.MATH_TRIG_HELPURL = "https://fa.wikipedia.org/wiki/%D8%AA%D8%A7%D8%A8%D8%B9%E2%80%8C%D9%87%D8%A7%DB%8C_%D9%85%D8%AB%D9%84%D8%AB%D8%A7%D8%AA%DB%8C";
+Blockly.Msg.MATH_TRIG_SIN = "sin"; // untranslated
+Blockly.Msg.MATH_TRIG_TAN = "tan"; // untranslated
+Blockly.Msg.MATH_TRIG_TOOLTIP_ACOS = "بازگرداندن آرک‌کسینوس درجه (نه رادیان).";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ASIN = "بازگرداندن آرک‌سینوس درجه (نه رادیان).";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ATAN = "بازگرداندن آرک‌تانژانت درجه (نه رادیان).";
+Blockly.Msg.MATH_TRIG_TOOLTIP_COS = "بازگرداندن کسینوس درجه (نه رادیان).";
+Blockly.Msg.MATH_TRIG_TOOLTIP_SIN = "بازگرداندن سینوس درجه (نه رادیان).";
+Blockly.Msg.MATH_TRIG_TOOLTIP_TAN = "بازگرداندن تانژانت یک درجه (نه رادیان).";
+Blockly.Msg.NEW_VARIABLE = "متغیر تازه...";
+Blockly.Msg.NEW_VARIABLE_TITLE = "نام متغیر تازه:";
+Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; // untranslated
+Blockly.Msg.PROCEDURES_ALLOW_STATEMENTS = "اجازه اظهارات";
+Blockly.Msg.PROCEDURES_BEFORE_PARAMS = "با:";
+Blockly.Msg.PROCEDURES_CALLNORETURN_HELPURL = "https://fa.wikipedia.org/wiki/%D8%B1%D9%88%DB%8C%D9%87_%28%D8%B9%D9%84%D9%88%D9%85_%D8%B1%D8%A7%DB%8C%D8%A7%D9%86%D9%87%29";
+Blockly.Msg.PROCEDURES_CALLNORETURN_TOOLTIP = "اجرای تابع تعریف‌شده توسط کاربر «%1».";
+Blockly.Msg.PROCEDURES_CALLRETURN_HELPURL = "https://fa.wikipedia.org/wiki/%D8%B1%D9%88%DB%8C%D9%87_%28%D8%B9%D9%84%D9%88%D9%85_%D8%B1%D8%A7%DB%8C%D8%A7%D9%86%D9%87%29";
+Blockly.Msg.PROCEDURES_CALLRETURN_TOOLTIP = "اجرای تابع تعریف‌شده توسط کاربر «%1» و استفاده از خروجی آن.";
+Blockly.Msg.PROCEDURES_CALL_BEFORE_PARAMS = "با:";
+Blockly.Msg.PROCEDURES_CREATE_DO = "ساختن «%1»";
+Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT = "توصیف این عملکرد...";
+Blockly.Msg.PROCEDURES_DEFNORETURN_DO = ""; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE = "انجام چیزی";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE = "به";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TOOLTIP = "تابعی می‌سازد بدون هیچ خروجی.";
+Blockly.Msg.PROCEDURES_DEFRETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_DEFRETURN_RETURN = "بازگشت";
+Blockly.Msg.PROCEDURES_DEFRETURN_TOOLTIP = "تابعی با یک خروجی می‌سازد.";
+Blockly.Msg.PROCEDURES_DEF_DUPLICATE_WARNING = "اخطار: این تابعی پارامتر تکراری دارد.";
+Blockly.Msg.PROCEDURES_HIGHLIGHT_DEF = "برجسته‌سازی تعریف تابع";
+Blockly.Msg.PROCEDURES_IFRETURN_HELPURL = "http://c2.com/cgi/wiki?GuardClause"; // untranslated
+Blockly.Msg.PROCEDURES_IFRETURN_TOOLTIP = "اگر یک مقدار صحیح است، مقدار دوم را برگردان.";
+Blockly.Msg.PROCEDURES_IFRETURN_WARNING = "اخطار: این بلوک احتمالاً فقط داخل یک تابع استفاده می‌شود.";
+Blockly.Msg.PROCEDURES_MUTATORARG_TITLE = "نام ورودی:";
+Blockly.Msg.PROCEDURES_MUTATORARG_TOOLTIP = "اضافه کردن ورودی به تابع.";
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TITLE = "ورودی‌ها";
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TOOLTIP = "افزودن، حذف یا دوباره مرتب‌کردن ورودی این تابع.";
+Blockly.Msg.REDO = "واگردانی";
+Blockly.Msg.REMOVE_COMMENT = "حذف نظر";
+Blockly.Msg.RENAME_VARIABLE = "تغییر نام متغیر...";
+Blockly.Msg.RENAME_VARIABLE_TITLE = "تغییر نام همهٔ متغیرهای «%1» به:";
+Blockly.Msg.TEXT_APPEND_APPENDTEXT = "الحاق متن";
+Blockly.Msg.TEXT_APPEND_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_APPEND_TO = "به";
+Blockly.Msg.TEXT_APPEND_TOOLTIP = "الحاق متنی به متغیر «%1».";
+Blockly.Msg.TEXT_CHANGECASE_HELPURL = "https://github.com/google/blockly/wiki/Text#adjusting-text-case"; // untranslated
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_LOWERCASE = "به حروف کوچک";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_TITLECASE = "به حروف بزرگ عنوان";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_UPPERCASE = "به حروف بزرگ";
+Blockly.Msg.TEXT_CHANGECASE_TOOLTIP = "بازگرداندن کپی متن در حالتی متفاوت.";
+Blockly.Msg.TEXT_CHARAT_FIRST = "گرفتن اولین حرف";
+Blockly.Msg.TEXT_CHARAT_FROM_END = "گرفتن حرف # از آخر";
+Blockly.Msg.TEXT_CHARAT_FROM_START = "گرفتن حرف #";
+Blockly.Msg.TEXT_CHARAT_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-text"; // untranslated
+Blockly.Msg.TEXT_CHARAT_INPUT_INTEXT = "در متن";
+Blockly.Msg.TEXT_CHARAT_LAST = "گرفتن آخرین حرف";
+Blockly.Msg.TEXT_CHARAT_RANDOM = "گرفتن حرف تصادفی";
+Blockly.Msg.TEXT_CHARAT_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_CHARAT_TOOLTIP = "حرفی در موقعیت مشخص‌شده بر می‌گرداند.";
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TOOLTIP = "افزودن یک مورد به متن.";
+Blockly.Msg.TEXT_CREATE_JOIN_TITLE_JOIN = "عضویت";
+Blockly.Msg.TEXT_CREATE_JOIN_TOOLTIP = "اضافه کردن، حذف یا مرتب‌سازی بحش‌ها برای تنظیم مجدد این بلوک متنی.";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_END = "به حرف # از انتها";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_START = "به حرف #";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_LAST = "به آخرین حرف";
+Blockly.Msg.TEXT_GET_SUBSTRING_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_INPUT_IN_TEXT = "در متن";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FIRST = "گرفتن زیرمتن از اولین حرف";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_END = "گرفتن زیرمتن از حرف # به انتها";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_START = "گرفتن زیرمتن از حرف #";
+Blockly.Msg.TEXT_GET_SUBSTRING_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_TOOLTIP = "قسمت مشخصی‌شده‌ای از متن را بر می‌گرداند.";
+Blockly.Msg.TEXT_INDEXOF_HELPURL = "https://github.com/google/blockly/wiki/Text#finding-text"; // untranslated
+Blockly.Msg.TEXT_INDEXOF_INPUT_INTEXT = "در متن";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_FIRST = "اولین رخداد متن را بیاب";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_LAST = "آخرین رخداد متن را بیاب";
+Blockly.Msg.TEXT_INDEXOF_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_INDEXOF_TOOLTIP = "شاخصی از اولین آخرین رخ‌داد متن اول در متن دوم بر می‌گرداند. اگر متن یافت نشد %1 باز می‌گرداند.";
+Blockly.Msg.TEXT_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Text#checking-for-empty-text"; // untranslated
+Blockly.Msg.TEXT_ISEMPTY_TITLE = "%1 خالی است";
+Blockly.Msg.TEXT_ISEMPTY_TOOLTIP = "اضافه کردن صحیح اگر متن فراهم‌شده خالی است.";
+Blockly.Msg.TEXT_JOIN_HELPURL = "https://github.com/google/blockly/wiki/Text#text-creation"; // untranslated
+Blockly.Msg.TEXT_JOIN_TITLE_CREATEWITH = "ایجاد متن با";
+Blockly.Msg.TEXT_JOIN_TOOLTIP = "یک تکه‌ای از متن را با چسپاندن همهٔ تعداد از موارد ایجاد می‌کند.";
+Blockly.Msg.TEXT_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_LENGTH_TITLE = "طول %1";
+Blockly.Msg.TEXT_LENGTH_TOOLTIP = "بازگرداندن عددی از حروف (شامل فاصله‌ها) در متن فراهم‌شده.";
+Blockly.Msg.TEXT_PRINT_HELPURL = "https://github.com/google/blockly/wiki/Text#printing-text"; // untranslated
+Blockly.Msg.TEXT_PRINT_TITLE = "چاپ %1";
+Blockly.Msg.TEXT_PRINT_TOOLTIP = "چاپ متن، عدد یا هر مقدار دیگر مشخص‌شده.";
+Blockly.Msg.TEXT_PROMPT_HELPURL = "https://github.com/google/blockly/wiki/Text#getting-input-from-the-user"; // untranslated
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_NUMBER = "اعلان برای کاربر با یک عدد.";
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_TEXT = "اعلان برای کاربر برای یک متن.";
+Blockly.Msg.TEXT_PROMPT_TYPE_NUMBER = "اعلان برای عدد با پیام";
+Blockly.Msg.TEXT_PROMPT_TYPE_TEXT = "اعلان برای متن با پیام";
+Blockly.Msg.TEXT_TEXT_HELPURL = "https://fa.wikipedia.org/wiki/%D8%B1%D8%B4%D8%AA%D9%87_%28%D8%B9%D9%84%D9%88%D9%85_%D8%B1%D8%A7%DB%8C%D8%A7%D9%86%D9%87%29";
+Blockly.Msg.TEXT_TEXT_TOOLTIP = "یک حرف، کلمه یا خطی از متن.";
+Blockly.Msg.TEXT_TRIM_HELPURL = "https://github.com/google/blockly/wiki/Text#trimming-removing-spaces"; // untranslated
+Blockly.Msg.TEXT_TRIM_OPERATOR_BOTH = "تراشیدن فاصله‌ها از هر دو طرف";
+Blockly.Msg.TEXT_TRIM_OPERATOR_LEFT = "تراشیدن فاصله‌ها از طرف چپ";
+Blockly.Msg.TEXT_TRIM_OPERATOR_RIGHT = "تراشیدن فاصله‌ها از طرف چپ";
+Blockly.Msg.TEXT_TRIM_TOOLTIP = "کپی از متن با فاصله‌های حذف‌شده از یک یا هر دو پایان باز می‌گرداند.";
+Blockly.Msg.TODAY = "امروز";
+Blockly.Msg.UNDO = "واگردانی";
+Blockly.Msg.VARIABLES_DEFAULT_NAME = "مورد";
+Blockly.Msg.VARIABLES_GET_CREATE_SET = "درست‌کردن «تنظیم %1»";
+Blockly.Msg.VARIABLES_GET_HELPURL = "https://github.com/google/blockly/wiki/Variables#get"; // untranslated
+Blockly.Msg.VARIABLES_GET_TOOLTIP = "مقدار این متغیر را بر می‌گرداند.";
+Blockly.Msg.VARIABLES_SET = "مجموعه %1 به %2";
+Blockly.Msg.VARIABLES_SET_CREATE_GET = "درست‌کردن «گرفتن %1»";
+Blockly.Msg.VARIABLES_SET_HELPURL = "https://github.com/google/blockly/wiki/Variables#set"; // untranslated
+Blockly.Msg.VARIABLES_SET_TOOLTIP = "متغیر برابر با خروجی را مشخص می‌کند.";
+Blockly.Msg.VARIABLE_ALREADY_EXISTS = "A variable named '%1' already exists."; // untranslated
+Blockly.Msg.PROCEDURES_DEFRETURN_TITLE = Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE;
+Blockly.Msg.CONTROLS_IF_IF_TITLE_IF = Blockly.Msg.CONTROLS_IF_MSG_IF;
+Blockly.Msg.CONTROLS_WHILEUNTIL_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_MSG_THEN = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_ELSE_TITLE_ELSE = Blockly.Msg.CONTROLS_IF_MSG_ELSE;
+Blockly.Msg.PROCEDURES_DEFRETURN_PROCEDURE = Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE;
+Blockly.Msg.LISTS_GET_SUBLIST_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.LISTS_GET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.PROCEDURES_DEFRETURN_DO = Blockly.Msg.PROCEDURES_DEFNORETURN_DO;
+Blockly.Msg.CONTROLS_IF_ELSEIF_TITLE_ELSEIF = Blockly.Msg.CONTROLS_IF_MSG_ELSEIF;
+Blockly.Msg.LISTS_GET_INDEX_HELPURL = Blockly.Msg.LISTS_INDEX_OF_HELPURL;
+Blockly.Msg.CONTROLS_FOREACH_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_SET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TITLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_APPEND_VARIABLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.LISTS_INDEX_OF_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.PROCEDURES_DEFRETURN_COMMENT = Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT; \ No newline at end of file
diff --git a/blockly/msg/js/fi.js b/blockly/msg/js/fi.js
new file mode 100644
index 0000000..bd3bf38
--- /dev/null
+++ b/blockly/msg/js/fi.js
@@ -0,0 +1,391 @@
+// This file was automatically generated. Do not modify.
+
+'use strict';
+
+goog.provide('Blockly.Msg.fi');
+
+goog.require('Blockly.Msg');
+
+Blockly.Msg.ADD_COMMENT = "Lisää kommentti";
+Blockly.Msg.CHANGE_VALUE_TITLE = "Muuta arvoa:";
+Blockly.Msg.CLEAN_UP = "Siivoa lohkot";
+Blockly.Msg.COLLAPSE_ALL = "Sulje lohkot";
+Blockly.Msg.COLLAPSE_BLOCK = "Sulje lohko";
+Blockly.Msg.COLOUR_BLEND_COLOUR1 = "väri 1";
+Blockly.Msg.COLOUR_BLEND_COLOUR2 = "väri 2";
+Blockly.Msg.COLOUR_BLEND_HELPURL = "http://meyerweb.com/eric/tools/color-blend/"; // untranslated
+Blockly.Msg.COLOUR_BLEND_RATIO = "suhde";
+Blockly.Msg.COLOUR_BLEND_TITLE = "sekoitus";
+Blockly.Msg.COLOUR_BLEND_TOOLTIP = "Sekoittaa kaksi väriä keskenään annetussa suhteessa (0.0 - 1.0).";
+Blockly.Msg.COLOUR_PICKER_HELPURL = "https://fi.wikipedia.org/wiki/V%C3%A4ri";
+Blockly.Msg.COLOUR_PICKER_TOOLTIP = "Valitse väri paletista.";
+Blockly.Msg.COLOUR_RANDOM_HELPURL = "http://randomcolour.com"; // untranslated
+Blockly.Msg.COLOUR_RANDOM_TITLE = "satunnainen väri";
+Blockly.Msg.COLOUR_RANDOM_TOOLTIP = "Valitse väri sattumanvaraisesti.";
+Blockly.Msg.COLOUR_RGB_BLUE = "sininen";
+Blockly.Msg.COLOUR_RGB_GREEN = "vihreä";
+Blockly.Msg.COLOUR_RGB_HELPURL = "http://www.december.com/html/spec/colorper.html";
+Blockly.Msg.COLOUR_RGB_RED = "punainen";
+Blockly.Msg.COLOUR_RGB_TITLE = "väri, jossa on";
+Blockly.Msg.COLOUR_RGB_TOOLTIP = "Luo väri, jossa on tietty määrä punaista, vihreää ja sinistä. Kaikkien arvojen tulee olla välillä 0 - 100.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_HELPURL = "https://github.com/google/blockly/wiki/Loops#loop-termination-blocks"; // untranslated
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK = "poistu silmukasta";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE = "jatka silmukan seuraavaan toistoon";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK = "Poistu sisemmästä silmukasta.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE = "Ohita loput tästä silmukasta ja siirry seuraavaan toistoon.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_WARNING = "Varoitus: Tätä lohkoa voi käyttää vain silmukan sisällä.";
+Blockly.Msg.CONTROLS_FOREACH_HELPURL = "https://github.com/google/blockly/wiki/Loops#for-each"; // untranslated
+Blockly.Msg.CONTROLS_FOREACH_TITLE = "kullekin kohteelle %1 listassa %2";
+Blockly.Msg.CONTROLS_FOREACH_TOOLTIP = "Aseta muuttujan %1 arvoksi kukin listan kohde vuorollaan ja suorita joukko lausekkeita.";
+Blockly.Msg.CONTROLS_FOR_HELPURL = "https://github.com/google/blockly/wiki/Loops#count-with"; // untranslated
+Blockly.Msg.CONTROLS_FOR_TITLE = "laske %1 Väli %2-%3 %4:n välein";
+Blockly.Msg.CONTROLS_FOR_TOOLTIP = "Aseta muuttujaan \"%1\" arvot alkuarvosta loppuarvoon annetun askeleen välein ja suorita joka askeleella annettu koodilohko.";
+Blockly.Msg.CONTROLS_IF_ELSEIF_TOOLTIP = "Lisää ehto \"jos\" lohkoon.";
+Blockly.Msg.CONTROLS_IF_ELSE_TOOLTIP = "Lisää lopullinen \"muuten\" lohko \"jos\" lohkoon.";
+Blockly.Msg.CONTROLS_IF_HELPURL = "https://github.com/google/blockly/wiki/IfElse"; // untranslated
+Blockly.Msg.CONTROLS_IF_IF_TOOLTIP = "Lisää, poista tai järjestele osioita tässä \"jos\" lohkossa.";
+Blockly.Msg.CONTROLS_IF_MSG_ELSE = "muuten";
+Blockly.Msg.CONTROLS_IF_MSG_ELSEIF = "muuten jos";
+Blockly.Msg.CONTROLS_IF_MSG_IF = "jos";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_1 = "Jos arvo on tosi, suorita lauseke.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_2 = "Jos arvo on tosi, suorita ensimmäinen lohko lausekkeita. Muuten suorita toinen lohko lausekkeita.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_3 = "Jos ensimmäinen arvo on tosi, suorita ensimmäinen lohko lausekkeita. Muuten, jos toinen arvo on tosi, suorita toinen lohko lausekkeita.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_4 = "Jos ensimmäinen arvo on tosi, suorita ensimmäinen lohko lausekkeita. Muuten, jos toinen arvo on tosi, suorita toinen lohko lausekkeita. Jos mikään arvoista ei ole tosi, suorita viimeinen lohko lausekkeita.";
+Blockly.Msg.CONTROLS_REPEAT_HELPURL = "https://en.wikipedia.org/wiki/For_loop";
+Blockly.Msg.CONTROLS_REPEAT_INPUT_DO = "tee";
+Blockly.Msg.CONTROLS_REPEAT_TITLE = "toista %1 kertaa";
+Blockly.Msg.CONTROLS_REPEAT_TOOLTIP = "Suorita joukko lausekkeita useampi kertaa.";
+Blockly.Msg.CONTROLS_WHILEUNTIL_HELPURL = "https://github.com/google/blockly/wiki/Loops#repeat"; // untranslated
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "toista kunnes";
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "toista niin kauan kuin";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "Niin kauan kuin arvo on epätosi, suorita joukko lausekkeita.";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "Niin kauan kuin arvo on tosi, suorita joukko lausekkeita.";
+Blockly.Msg.DELETE_ALL_BLOCKS = "Poistetaanko kaikki %1 lohkoa?";
+Blockly.Msg.DELETE_BLOCK = "Poista lohko";
+Blockly.Msg.DELETE_VARIABLE = "Delete the '%1' variable"; // untranslated
+Blockly.Msg.DELETE_VARIABLE_CONFIRMATION = "Delete %1 uses of the '%2' variable?"; // untranslated
+Blockly.Msg.DELETE_X_BLOCKS = "Poista %1 lohkoa";
+Blockly.Msg.DISABLE_BLOCK = "Passivoi lohko";
+Blockly.Msg.DUPLICATE_BLOCK = "Kopioi";
+Blockly.Msg.ENABLE_BLOCK = "Aktivoi lohko";
+Blockly.Msg.EXPAND_ALL = "Laajenna lohkot";
+Blockly.Msg.EXPAND_BLOCK = "Laajenna lohko";
+Blockly.Msg.EXTERNAL_INPUTS = "Ulkoiset syötteet";
+Blockly.Msg.HELP = "Apua";
+Blockly.Msg.INLINE_INPUTS = "Tuo syötteet";
+Blockly.Msg.LISTS_CREATE_EMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-empty-list"; // untranslated
+Blockly.Msg.LISTS_CREATE_EMPTY_TITLE = "Luo tyhjä lista";
+Blockly.Msg.LISTS_CREATE_EMPTY_TOOLTIP = "Palauta tyhjä lista, pituus 0";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TITLE_ADD = "lista";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TOOLTIP = "Listää, poista tai järjestele uudestaan osioita tässä lohkossa.";
+Blockly.Msg.LISTS_CREATE_WITH_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
+Blockly.Msg.LISTS_CREATE_WITH_INPUT_WITH = "luo lista";
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TOOLTIP = "Lisää kohde listaan.";
+Blockly.Msg.LISTS_CREATE_WITH_TOOLTIP = "Luo lista, jossa on mikä tahansa määrä kohteita.";
+Blockly.Msg.LISTS_GET_INDEX_FIRST = "ensimmäinen";
+Blockly.Msg.LISTS_GET_INDEX_FROM_END = "nro (lopusta laskien)";
+Blockly.Msg.LISTS_GET_INDEX_FROM_START = "nro";
+Blockly.Msg.LISTS_GET_INDEX_GET = "hae";
+Blockly.Msg.LISTS_GET_INDEX_GET_REMOVE = "hae ja poista";
+Blockly.Msg.LISTS_GET_INDEX_LAST = "viimeinen";
+Blockly.Msg.LISTS_GET_INDEX_RANDOM = "satunnainen";
+Blockly.Msg.LISTS_GET_INDEX_REMOVE = "poista";
+Blockly.Msg.LISTS_GET_INDEX_TAIL = ""; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FIRST = "Palauta ensimmäinen kohde listalta.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FROM = "Palauta kohde annetusta kohdasta listaa.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_LAST = "Palauttaa listan viimeisen kohteen.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_RANDOM = "Palauttaa satunnaisen kohteen listalta.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST = "Poistaa ja palauttaa ensimmäisen kohteen listalta.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM = "Poistaa ja palauttaa kohteen listan annetusta kohdasta.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST = "Poistaa ja palauttaa viimeisen kohteen listalta.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM = "Poistaa ja palauttaa satunnaisen kohteen listalta.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST = "Poistaa ensimmäisen kohteen listalta.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM = "Poistaa kohteen listalta annetusta kohtaa.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST = "Poistaa viimeisen kohteen listalta.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM = "Poistaa satunnaisen kohteen listalta.";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_END = "päättyen kohtaan (lopusta laskien)";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_START = "päättyen kohtaan";
+Blockly.Msg.LISTS_GET_SUBLIST_END_LAST = "viimeinen";
+Blockly.Msg.LISTS_GET_SUBLIST_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-a-sublist"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_START_FIRST = "hae osalista alkaen alusta";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_END = "hae osalista alkaen kohdasta (lopusta laskien)";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_START = "hae osalista alkaen kohdasta";
+Blockly.Msg.LISTS_GET_SUBLIST_TAIL = ""; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_TOOLTIP = "Luo kopio määrätystä kohden listaa.";
+Blockly.Msg.LISTS_INDEX_FROM_END_TOOLTIP = "Numero %1 tarkoittaa listan viimeistä kohdetta.";
+Blockly.Msg.LISTS_INDEX_FROM_START_TOOLTIP = "Numero %1 tarkoittaa listan ensimmäistä kohdetta.";
+Blockly.Msg.LISTS_INDEX_OF_FIRST = "etsi ensimmäinen esiintymä kohteelle";
+Blockly.Msg.LISTS_INDEX_OF_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-items-from-a-list"; // untranslated
+Blockly.Msg.LISTS_INDEX_OF_LAST = "etsi viimeinen esiintymä kohteelle";
+Blockly.Msg.LISTS_INDEX_OF_TOOLTIP = "Palauttaa kohteen ensimmäisen/viimeisen esiintymän kohdan listassa. Palauttaa %1 jos kohdetta ei löydy.";
+Blockly.Msg.LISTS_INLIST = "listassa";
+Blockly.Msg.LISTS_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#is-empty"; // untranslated
+Blockly.Msg.LISTS_ISEMPTY_TITLE = "%1 on tyhjä";
+Blockly.Msg.LISTS_ISEMPTY_TOOLTIP = "Palauttaa tosi, jos lista on tyhjä.";
+Blockly.Msg.LISTS_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Lists#length-of"; // untranslated
+Blockly.Msg.LISTS_LENGTH_TITLE = "%1:n pituus";
+Blockly.Msg.LISTS_LENGTH_TOOLTIP = "Palauttaa listan pituuden.";
+Blockly.Msg.LISTS_REPEAT_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
+Blockly.Msg.LISTS_REPEAT_TITLE = "luo lista, jossa kohde %1 toistuu %2 kertaa";
+Blockly.Msg.LISTS_REPEAT_TOOLTIP = "Luo listan, jossa annettu arvo toistuu määrätyn monta kertaa.";
+Blockly.Msg.LISTS_SET_INDEX_HELPURL = "https://github.com/google/blockly/wiki/Lists#in-list--set"; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_INPUT_TO = "kohteeksi";
+Blockly.Msg.LISTS_SET_INDEX_INSERT = "lisää kohtaan";
+Blockly.Msg.LISTS_SET_INDEX_SET = "aseta";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST = "Lisää kohteen listan kärkeen.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FROM = "Lisää kohteen annettuun kohtaan listassa.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_LAST = "Lisää kohteen listan loppuun.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM = "Lisää kohteen satunnaiseen kohtaan listassa.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FIRST = "Asettaa listan ensimmäisen kohteen.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FROM = "Asettaa kohteen annettuun kohtaan listassa.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_LAST = "Asettaa listan viimeisen kohteen.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_RANDOM = "Asettaa satunnaisen kohteen listassa.";
+Blockly.Msg.LISTS_SORT_HELPURL = "https://github.com/google/blockly/wiki/Lists#sorting-a-list";
+Blockly.Msg.LISTS_SORT_ORDER_ASCENDING = "nouseva";
+Blockly.Msg.LISTS_SORT_ORDER_DESCENDING = "laskeva";
+Blockly.Msg.LISTS_SORT_TITLE = "lajittele %1 %2 %3";
+Blockly.Msg.LISTS_SORT_TOOLTIP = "Lajittele kopio luettelosta.";
+Blockly.Msg.LISTS_SORT_TYPE_IGNORECASE = "aakkosjärjestyksessä, ohita kapitaalit";
+Blockly.Msg.LISTS_SORT_TYPE_NUMERIC = "numeerinen";
+Blockly.Msg.LISTS_SORT_TYPE_TEXT = "aakkosjärjestys";
+Blockly.Msg.LISTS_SPLIT_HELPURL = "https://github.com/google/blockly/wiki/Lists#splitting-strings-and-joining-lists"; // untranslated
+Blockly.Msg.LISTS_SPLIT_LIST_FROM_TEXT = "tee lista tekstistä";
+Blockly.Msg.LISTS_SPLIT_TEXT_FROM_LIST = "tee listasta teksti";
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_JOIN = "Yhdistä luettelon tekstit yhdeksi tekstiksi, erotettuina välimerkillä.";
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_SPLIT = "Jaa teksti osiin erotinmerkin perusteella ja järjestä osat listaksi.";
+Blockly.Msg.LISTS_SPLIT_WITH_DELIMITER = "erottimen kanssa";
+Blockly.Msg.LOGIC_BOOLEAN_FALSE = "epätosi";
+Blockly.Msg.LOGIC_BOOLEAN_HELPURL = "https://github.com/google/blockly/wiki/Logic#values"; // untranslated
+Blockly.Msg.LOGIC_BOOLEAN_TOOLTIP = "Palauttaa joko tosi tai epätosi.";
+Blockly.Msg.LOGIC_BOOLEAN_TRUE = "tosi";
+Blockly.Msg.LOGIC_COMPARE_HELPURL = "https://fi.wikipedia.org/wiki/Ep%C3%A4yht%C3%A4l%C3%B6";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_EQ = "Palauta tosi, jos syötteet ovat keskenään samat.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GT = "Palauttaa tosi, jos ensimmäinen syöte on suurempi, kuin toinen.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GTE = "Palauttaa tosi, jos ensimmäinen syöte on suurempi tai yhtä suuri, kuin toinen.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LT = "Palauttaa tosi, jos ensimmäinen syöte on pienempi, kuin toinen.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LTE = "Palauttaa tosi, jos ensimmäinen syöte on pienempi tai yhtä suuri, kuin toinen.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_NEQ = "Palauttaa tosi, jos syötteet eivät ole keskenään samoja.";
+Blockly.Msg.LOGIC_NEGATE_HELPURL = "https://github.com/google/blockly/wiki/Logic#not"; // untranslated
+Blockly.Msg.LOGIC_NEGATE_TITLE = "ei %1";
+Blockly.Msg.LOGIC_NEGATE_TOOLTIP = "Palauttaa tosi, jos syöte on epätosi. Palauttaa epätosi, jos syöte on tosi.";
+Blockly.Msg.LOGIC_NULL = "ei mitään";
+Blockly.Msg.LOGIC_NULL_HELPURL = "https://en.wikipedia.org/wiki/Nullable_type"; // untranslated
+Blockly.Msg.LOGIC_NULL_TOOLTIP = "Palauttaa \"ei mitään\"-arvon.";
+Blockly.Msg.LOGIC_OPERATION_AND = "ja";
+Blockly.Msg.LOGIC_OPERATION_HELPURL = "https://github.com/google/blockly/wiki/Logic#logical-operations"; // untranslated
+Blockly.Msg.LOGIC_OPERATION_OR = "tai";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_AND = "Palauttaa tosi, jos kummatkin syötteet ovat tosia.";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_OR = "Palauttaa tosi, jos ainakin yksi syötteistä on tosi.";
+Blockly.Msg.LOGIC_TERNARY_CONDITION = "testi";
+Blockly.Msg.LOGIC_TERNARY_HELPURL = "https://en.wikipedia.org/wiki/%3F:"; // untranslated
+Blockly.Msg.LOGIC_TERNARY_IF_FALSE = "jos epätosi";
+Blockly.Msg.LOGIC_TERNARY_IF_TRUE = "jos tosi";
+Blockly.Msg.LOGIC_TERNARY_TOOLTIP = "Tarkistaa testin ehdon. Jos ehto on tosi, palauttaa \"jos tosi\" arvon, muuten palauttaa \"jos epätosi\" arvon.";
+Blockly.Msg.MATH_ADDITION_SYMBOL = "+";
+Blockly.Msg.MATH_ARITHMETIC_HELPURL = "http://fi.wikipedia.org/wiki/Aritmetiikka";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_ADD = "Palauttaa kahden luvun summan.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE = "Palauttaa jakolaskun osamäärän.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MINUS = "Palauttaa kahden luvun erotuksen.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MULTIPLY = "Palauttaa kertolaskun tulon.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_POWER = "Palauttaa ensimmäisen luvun korotettuna toisen luvun potenssiin.";
+Blockly.Msg.MATH_CHANGE_HELPURL = "https://fi.wikipedia.org/wiki/Yhteenlasku";
+Blockly.Msg.MATH_CHANGE_TITLE = "muuta %1 arvolla %2";
+Blockly.Msg.MATH_CHANGE_TOOLTIP = "Lisää arvo muuttujaan '%1'.";
+Blockly.Msg.MATH_CONSTANT_HELPURL = "https://en.wikipedia.org/wiki/Mathematical_constant";
+Blockly.Msg.MATH_CONSTANT_TOOLTIP = "Palauttaa jonkin seuraavista vakioista: π (3.141…), e (2.718…), φ (1.618…), neliöjuuri(2) (1.414…), neliöjuuri(½) (0.707…), or ∞ (ääretön).";
+Blockly.Msg.MATH_CONSTRAIN_HELPURL = "https://en.wikipedia.org/wiki/Clamping_%28graphics%29"; // untranslated
+Blockly.Msg.MATH_CONSTRAIN_TITLE = "rajoita %1 vähintään %2 enintään %3";
+Blockly.Msg.MATH_CONSTRAIN_TOOLTIP = "Rajoittaa arvon annetulle suljetulle välille.";
+Blockly.Msg.MATH_DIVISION_SYMBOL = "÷";
+Blockly.Msg.MATH_IS_DIVISIBLE_BY = "on jaollinen luvulla";
+Blockly.Msg.MATH_IS_EVEN = "on parillinen";
+Blockly.Msg.MATH_IS_NEGATIVE = "on negatiivinen";
+Blockly.Msg.MATH_IS_ODD = "on pariton";
+Blockly.Msg.MATH_IS_POSITIVE = "on positiivinen";
+Blockly.Msg.MATH_IS_PRIME = "on alkuluku";
+Blockly.Msg.MATH_IS_TOOLTIP = "Tarkistaa onko numero parillinen, pariton, alkuluku, kokonaisluku, positiivinen, negatiivinen, tai jos se on jaollinen toisella luvulla. Palauttaa tosi tai epätosi.";
+Blockly.Msg.MATH_IS_WHOLE = "on kokonaisluku";
+Blockly.Msg.MATH_MODULO_HELPURL = "https://en.wikipedia.org/wiki/Modulo_operation";
+Blockly.Msg.MATH_MODULO_TITLE = "%1 ÷ %2 jakojäännös";
+Blockly.Msg.MATH_MODULO_TOOLTIP = "Palauttaa jakolaskun jakojäännöksen.";
+Blockly.Msg.MATH_MULTIPLICATION_SYMBOL = "⋅";
+Blockly.Msg.MATH_NUMBER_HELPURL = "https://fi.wikipedia.org/wiki/Luku";
+Blockly.Msg.MATH_NUMBER_TOOLTIP = "Luku.";
+Blockly.Msg.MATH_ONLIST_HELPURL = ""; // untranslated
+Blockly.Msg.MATH_ONLIST_OPERATOR_AVERAGE = "keskiarvo luvuista";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MAX = "suurin luvuista";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MEDIAN = "keskiluku luvuista";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MIN = "pienin luvuista";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MODE = "tyyppiarvo luvuista";
+Blockly.Msg.MATH_ONLIST_OPERATOR_RANDOM = "satunnainen valinta luvuista";
+Blockly.Msg.MATH_ONLIST_OPERATOR_STD_DEV = "keskihajonta luvuista";
+Blockly.Msg.MATH_ONLIST_OPERATOR_SUM = "summa luvuista";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_AVERAGE = "Palauttaa aritmeettisen keskiarvon annetuista luvuista.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MAX = "Palauttaa suurimman annetuista luvuista.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MEDIAN = "Palauttaa annettujen lukujen keskiluvun.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MIN = "Palauttaa pienimmän annetuista luvuista.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MODE = "Palauttaa luettelon yleisimmistä luvuista annetussa listassa.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_RANDOM = "Palauttaa satunnaisesti valitun luvun annetuista luvuista.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_STD_DEV = "Palauttaa annettujen lukujen keskihajonnan.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_SUM = "Palauttaa kaikkien annettujen lukujen summan.";
+Blockly.Msg.MATH_POWER_SYMBOL = "^";
+Blockly.Msg.MATH_RANDOM_FLOAT_HELPURL = "https://fi.wikipedia.org/wiki/Satunnaisluku";
+Blockly.Msg.MATH_RANDOM_FLOAT_TITLE_RANDOM = "satunnainen murtoluku";
+Blockly.Msg.MATH_RANDOM_FLOAT_TOOLTIP = "Palauttaa satunnaisen luvun oikealta puoliavoimesta välistä [0.0, 1.0).";
+Blockly.Msg.MATH_RANDOM_INT_HELPURL = "https://fi.wikipedia.org/wiki/Satunnaisluku";
+Blockly.Msg.MATH_RANDOM_INT_TITLE = "Palauttaa satunnaisen kokonaisluvun väliltä %1-%2";
+Blockly.Msg.MATH_RANDOM_INT_TOOLTIP = "Palauttaa satunnaisen kokonaisluvun kahden annetun arvon suljetulta väliltä.";
+Blockly.Msg.MATH_ROUND_HELPURL = "https://fi.wikipedia.org/wiki/Py%C3%B6rist%C3%A4minen";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUND = "pyöristä";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDDOWN = "pyöristä alaspäin";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDUP = "pyöristä ylöspäin";
+Blockly.Msg.MATH_ROUND_TOOLTIP = "Pyöristää luvun ylös- tai alaspäin.";
+Blockly.Msg.MATH_SINGLE_HELPURL = "https://fi.wikipedia.org/wiki/Neli%C3%B6juuri";
+Blockly.Msg.MATH_SINGLE_OP_ABSOLUTE = "itseisarvo";
+Blockly.Msg.MATH_SINGLE_OP_ROOT = "neliöjuuri";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ABS = "Palauttaa luvun itseisarvon.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_EXP = "Palauttaa e potenssiin luku.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LN = "Palauttaa luvun luonnollisen logaritmin.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LOG10 = "Palauttaa luvun kymmenkantaisen logaritmin.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_NEG = "Palauttaa numeron vastaluvun.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_POW10 = "Palauttaa 10 potenssiin luku.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ROOT = "Palauttaa luvun neliöjuuren.";
+Blockly.Msg.MATH_SUBTRACTION_SYMBOL = "-";
+Blockly.Msg.MATH_TRIG_ACOS = "acos";
+Blockly.Msg.MATH_TRIG_ASIN = "asin";
+Blockly.Msg.MATH_TRIG_ATAN = "atan";
+Blockly.Msg.MATH_TRIG_COS = "cos";
+Blockly.Msg.MATH_TRIG_HELPURL = "https://fi.wikipedia.org/wiki/Trigonometrinen_funktio";
+Blockly.Msg.MATH_TRIG_SIN = "sin";
+Blockly.Msg.MATH_TRIG_TAN = "tan";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ACOS = "Palauttaa luvun arkuskosinin.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ASIN = "Palauttaa luvun arkussinin.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ATAN = "Palauttaa luvun arkustangentin.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_COS = "Palauttaa asteluvun (ei radiaanin) kosinin.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_SIN = "Palauttaa asteluvun (ei radiaanin) sinin.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_TAN = "Palauttaa asteluvun (ei radiaanin) tangentin.";
+Blockly.Msg.NEW_VARIABLE = "Uusi muuttuja...";
+Blockly.Msg.NEW_VARIABLE_TITLE = "Uuden muuttujan nimi:";
+Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; // untranslated
+Blockly.Msg.PROCEDURES_ALLOW_STATEMENTS = "salli kommentit";
+Blockly.Msg.PROCEDURES_BEFORE_PARAMS = "parametrit:";
+Blockly.Msg.PROCEDURES_CALLNORETURN_HELPURL = "https://fi.wikipedia.org/wiki/Aliohjelma";
+Blockly.Msg.PROCEDURES_CALLNORETURN_TOOLTIP = "Suorittaa käyttäjän määrittelemä funktio '%1'.";
+Blockly.Msg.PROCEDURES_CALLRETURN_HELPURL = "https://fi.wikipedia.org/wiki/Aliohjelma";
+Blockly.Msg.PROCEDURES_CALLRETURN_TOOLTIP = "Suorittaa käyttäjän määrittelemän funktion '%1' ja käyttää sen tuotosta.";
+Blockly.Msg.PROCEDURES_CALL_BEFORE_PARAMS = "parametrit:";
+Blockly.Msg.PROCEDURES_CREATE_DO = "Luo '%1'";
+Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT = "Kuvaile tämä funktio...";
+Blockly.Msg.PROCEDURES_DEFNORETURN_DO = ""; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE = "tee jotain";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE = "tehdäksesi";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TOOLTIP = "Luo funktio, jolla ei ole tuotosta.";
+Blockly.Msg.PROCEDURES_DEFRETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_DEFRETURN_RETURN = "palauta";
+Blockly.Msg.PROCEDURES_DEFRETURN_TOOLTIP = "Luo funktio, jolla ei ole tuotosta.";
+Blockly.Msg.PROCEDURES_DEF_DUPLICATE_WARNING = "Varoitus: tällä funktiolla on sama parametri useamman kerran.";
+Blockly.Msg.PROCEDURES_HIGHLIGHT_DEF = "Korosta funktion määritelmä";
+Blockly.Msg.PROCEDURES_IFRETURN_HELPURL = "http://c2.com/cgi/wiki?GuardClause";
+Blockly.Msg.PROCEDURES_IFRETURN_TOOLTIP = "Jos arvo on tosi, palauta toinen arvo.";
+Blockly.Msg.PROCEDURES_IFRETURN_WARNING = "Varoitus: tätä lohkoa voi käyttää vain funktion määrityksessä.";
+Blockly.Msg.PROCEDURES_MUTATORARG_TITLE = "syötteen nimi:";
+Blockly.Msg.PROCEDURES_MUTATORARG_TOOLTIP = "Lisää sisääntulon funktioon.";
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TITLE = "syötteet";
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TOOLTIP = "Lisää, poista tai järjestele uudelleen tämän toiminnon tulot.";
+Blockly.Msg.REDO = "Tee uudelleen";
+Blockly.Msg.REMOVE_COMMENT = "Poista kommentti";
+Blockly.Msg.RENAME_VARIABLE = "Nimeä uudelleen muuttuja...";
+Blockly.Msg.RENAME_VARIABLE_TITLE = "Nimeä uudelleen kaikki '%1' muuttujaa:";
+Blockly.Msg.TEXT_APPEND_APPENDTEXT = "lisää teksti";
+Blockly.Msg.TEXT_APPEND_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_APPEND_TO = "muuttujaan";
+Blockly.Msg.TEXT_APPEND_TOOLTIP = "Lisää tekstiä muuttujaan '%1'.";
+Blockly.Msg.TEXT_CHANGECASE_HELPURL = "https://github.com/google/blockly/wiki/Text#adjusting-text-case"; // untranslated
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_LOWERCASE = "pienet kirjaimet";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_TITLECASE = "isot alkukirjaimet";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_UPPERCASE = "isot kirjaimet";
+Blockly.Msg.TEXT_CHANGECASE_TOOLTIP = "Palauttaa kopion tekstistä eri kirjainkoossa.";
+Blockly.Msg.TEXT_CHARAT_FIRST = "hae ensimmäinen kirjain";
+Blockly.Msg.TEXT_CHARAT_FROM_END = "Hae kirjain nro (lopusta laskien)";
+Blockly.Msg.TEXT_CHARAT_FROM_START = "Hae kirjain nro";
+Blockly.Msg.TEXT_CHARAT_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-text"; // untranslated
+Blockly.Msg.TEXT_CHARAT_INPUT_INTEXT = "tekstistä";
+Blockly.Msg.TEXT_CHARAT_LAST = "hae viimeinen kirjain";
+Blockly.Msg.TEXT_CHARAT_RANDOM = "hae satunnainen kirjain";
+Blockly.Msg.TEXT_CHARAT_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_CHARAT_TOOLTIP = "Palauttaa annetussa kohdassa olevan kirjaimen.";
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TOOLTIP = "Lisää kohteen tekstiin.";
+Blockly.Msg.TEXT_CREATE_JOIN_TITLE_JOIN = "liitä";
+Blockly.Msg.TEXT_CREATE_JOIN_TOOLTIP = "Lisää, poista tai uudelleen järjestä osioita tässä lohkossa.";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_END = "kirjaimeen nro (lopusta laskien)";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_START = "kirjaimeen nro";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_LAST = "viimeiseen kirjaimeen";
+Blockly.Msg.TEXT_GET_SUBSTRING_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_INPUT_IN_TEXT = "merkkijonosta";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FIRST = "hae osa alkaen ensimmäisestä kirjaimesta";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_END = "hae osa alkaen kirjaimesta nro (lopusta laskien)";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_START = "hae osa alkaen kirjaimesta nro";
+Blockly.Msg.TEXT_GET_SUBSTRING_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_TOOLTIP = "Palauttaa määrätyn osan tekstistä.";
+Blockly.Msg.TEXT_INDEXOF_HELPURL = "https://github.com/google/blockly/wiki/Text#finding-text"; // untranslated
+Blockly.Msg.TEXT_INDEXOF_INPUT_INTEXT = "tekstistä";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_FIRST = "etsi ensimmäinen esiintymä merkkijonolle";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_LAST = "etsi viimeinen esiintymä merkkijonolle";
+Blockly.Msg.TEXT_INDEXOF_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_INDEXOF_TOOLTIP = "Palauttaa ensin annetun tekstin ensimmäisen/viimeisen esiintymän osoitteen toisessa tekstissä. Palauttaa osoitteen %1 jos tekstiä ei löytynyt.";
+Blockly.Msg.TEXT_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Text#checking-for-empty-text"; // untranslated
+Blockly.Msg.TEXT_ISEMPTY_TITLE = "%1 on tyhjä";
+Blockly.Msg.TEXT_ISEMPTY_TOOLTIP = "Palauttaa tosi, jos annettu teksti on tyhjä.";
+Blockly.Msg.TEXT_JOIN_HELPURL = "https://github.com/google/blockly/wiki/Text#text-creation"; // untranslated
+Blockly.Msg.TEXT_JOIN_TITLE_CREATEWITH = "luo teksti";
+Blockly.Msg.TEXT_JOIN_TOOLTIP = "Luo merkkijonon liittämällä yhteen minkä tahansa määrän kohteita.";
+Blockly.Msg.TEXT_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_LENGTH_TITLE = "%1:n pituus";
+Blockly.Msg.TEXT_LENGTH_TOOLTIP = "Palauttaa annetussa tekstissä olevien merkkien määrän (välilyönnit mukaan lukien).";
+Blockly.Msg.TEXT_PRINT_HELPURL = "https://github.com/google/blockly/wiki/Text#printing-text"; // untranslated
+Blockly.Msg.TEXT_PRINT_TITLE = "tulosta %1";
+Blockly.Msg.TEXT_PRINT_TOOLTIP = "Tulostaa annetun tekstin, numeron tai muun arvon.";
+Blockly.Msg.TEXT_PROMPT_HELPURL = "https://github.com/google/blockly/wiki/Text#getting-input-from-the-user"; // untranslated
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_NUMBER = "Kehottaa käyttäjää syöttämään numeron.";
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_TEXT = "Kehottaa käyttäjää syöttämään tekstiä.";
+Blockly.Msg.TEXT_PROMPT_TYPE_NUMBER = "käyttäen annettua viestiä, kehottaa syöttämään numeron";
+Blockly.Msg.TEXT_PROMPT_TYPE_TEXT = "käyttäen annettua viestiä, kehottaa syöttämään tekstiä";
+Blockly.Msg.TEXT_TEXT_HELPURL = "https://fi.wikipedia.org/wiki/Merkkijono";
+Blockly.Msg.TEXT_TEXT_TOOLTIP = "Kirjain, sana tai rivi tekstiä.";
+Blockly.Msg.TEXT_TRIM_HELPURL = "https://github.com/google/blockly/wiki/Text#trimming-removing-spaces"; // untranslated
+Blockly.Msg.TEXT_TRIM_OPERATOR_BOTH = "poistaa välilyönnit kummaltakin puolelta";
+Blockly.Msg.TEXT_TRIM_OPERATOR_LEFT = "poistaa välilyönnit vasemmalta puolelta";
+Blockly.Msg.TEXT_TRIM_OPERATOR_RIGHT = "poistaa välilyönnit oikealta puolelta";
+Blockly.Msg.TEXT_TRIM_TOOLTIP = "Palauttaa kopion tekstistä siten, että välilyönnit on poistettu yhdestä tai molemmista päistä.";
+Blockly.Msg.TODAY = "Tänään";
+Blockly.Msg.UNDO = "Kumoa";
+Blockly.Msg.VARIABLES_DEFAULT_NAME = "kohde";
+Blockly.Msg.VARIABLES_GET_CREATE_SET = "Luo 'aseta %1'";
+Blockly.Msg.VARIABLES_GET_HELPURL = "https://github.com/google/blockly/wiki/Variables#get"; // untranslated
+Blockly.Msg.VARIABLES_GET_TOOLTIP = "Palauttaa muuttujan arvon.";
+Blockly.Msg.VARIABLES_SET = "aseta %1 arvoksi %2";
+Blockly.Msg.VARIABLES_SET_CREATE_GET = "Luo 'hae %1'";
+Blockly.Msg.VARIABLES_SET_HELPURL = "https://github.com/google/blockly/wiki/Variables#set"; // untranslated
+Blockly.Msg.VARIABLES_SET_TOOLTIP = "Asettaa muutujan arvoksi annetun syötteen.";
+Blockly.Msg.VARIABLE_ALREADY_EXISTS = "A variable named '%1' already exists."; // untranslated
+Blockly.Msg.PROCEDURES_DEFRETURN_TITLE = Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE;
+Blockly.Msg.CONTROLS_IF_IF_TITLE_IF = Blockly.Msg.CONTROLS_IF_MSG_IF;
+Blockly.Msg.CONTROLS_WHILEUNTIL_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_MSG_THEN = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_ELSE_TITLE_ELSE = Blockly.Msg.CONTROLS_IF_MSG_ELSE;
+Blockly.Msg.PROCEDURES_DEFRETURN_PROCEDURE = Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE;
+Blockly.Msg.LISTS_GET_SUBLIST_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.LISTS_GET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.PROCEDURES_DEFRETURN_DO = Blockly.Msg.PROCEDURES_DEFNORETURN_DO;
+Blockly.Msg.CONTROLS_IF_ELSEIF_TITLE_ELSEIF = Blockly.Msg.CONTROLS_IF_MSG_ELSEIF;
+Blockly.Msg.LISTS_GET_INDEX_HELPURL = Blockly.Msg.LISTS_INDEX_OF_HELPURL;
+Blockly.Msg.CONTROLS_FOREACH_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_SET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TITLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_APPEND_VARIABLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.LISTS_INDEX_OF_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.PROCEDURES_DEFRETURN_COMMENT = Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT; \ No newline at end of file
diff --git a/blockly/msg/js/fr.js b/blockly/msg/js/fr.js
new file mode 100644
index 0000000..b26eb85
--- /dev/null
+++ b/blockly/msg/js/fr.js
@@ -0,0 +1,391 @@
+// This file was automatically generated. Do not modify.
+
+'use strict';
+
+goog.provide('Blockly.Msg.fr');
+
+goog.require('Blockly.Msg');
+
+Blockly.Msg.ADD_COMMENT = "Ajouter un commentaire";
+Blockly.Msg.CHANGE_VALUE_TITLE = "Modifier la valeur :";
+Blockly.Msg.CLEAN_UP = "Nettoyer les blocs";
+Blockly.Msg.COLLAPSE_ALL = "Réduire les blocs";
+Blockly.Msg.COLLAPSE_BLOCK = "Réduire le bloc";
+Blockly.Msg.COLOUR_BLEND_COLOUR1 = "couleur 1";
+Blockly.Msg.COLOUR_BLEND_COLOUR2 = "couleur 2";
+Blockly.Msg.COLOUR_BLEND_HELPURL = "http://meyerweb.com/eric/tools/color-blend/";
+Blockly.Msg.COLOUR_BLEND_RATIO = "taux";
+Blockly.Msg.COLOUR_BLEND_TITLE = "mélanger";
+Blockly.Msg.COLOUR_BLEND_TOOLTIP = "Mélange deux couleurs dans une proportion donnée (de 0.0 à 1.0).";
+Blockly.Msg.COLOUR_PICKER_HELPURL = "https://fr.wikipedia.org/wiki/Couleur";
+Blockly.Msg.COLOUR_PICKER_TOOLTIP = "Choisir une couleur dans la palette.";
+Blockly.Msg.COLOUR_RANDOM_HELPURL = "http://randomcolour.com"; // untranslated
+Blockly.Msg.COLOUR_RANDOM_TITLE = "couleur aléatoire";
+Blockly.Msg.COLOUR_RANDOM_TOOLTIP = "Choisir une couleur au hasard.";
+Blockly.Msg.COLOUR_RGB_BLUE = "bleu";
+Blockly.Msg.COLOUR_RGB_GREEN = "vert";
+Blockly.Msg.COLOUR_RGB_HELPURL = "http://www.december.com/html/spec/colorper.html";
+Blockly.Msg.COLOUR_RGB_RED = "rouge";
+Blockly.Msg.COLOUR_RGB_TITLE = "colorier avec";
+Blockly.Msg.COLOUR_RGB_TOOLTIP = "Créer une couleur avec la quantité spécifiée de rouge, vert et bleu. Les valeurs doivent être comprises entre 0 et 100.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_HELPURL = "https://github.com/google/blockly/wiki/Loops#loop-termination-blocks"; // untranslated
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK = "quitter la boucle";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE = "passer à l’itération de boucle suivante";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK = "Sortir de la boucle englobante.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE = "Sauter le reste de cette boucle, et poursuivre avec l’itération suivante.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_WARNING = "Attention : Ce bloc ne devrait être utilisé que dans une boucle.";
+Blockly.Msg.CONTROLS_FOREACH_HELPURL = "https://github.com/google/blockly/wiki/Loops#for-each"; // untranslated
+Blockly.Msg.CONTROLS_FOREACH_TITLE = "pour chaque élément %1 dans la liste %2";
+Blockly.Msg.CONTROLS_FOREACH_TOOLTIP = "Pour chaque élément d’une liste, assigner la valeur de l’élément à la variable '%1', puis exécuter des instructions.";
+Blockly.Msg.CONTROLS_FOR_HELPURL = "https://github.com/google/blockly/wiki/Loops#count-with"; // untranslated
+Blockly.Msg.CONTROLS_FOR_TITLE = "compter avec %1 de %2 à %3 par %4";
+Blockly.Msg.CONTROLS_FOR_TOOLTIP = "Faire prendre à la variable « %1 » les valeurs depuis le nombre de début jusqu’au nombre de fin, en s’incrémentant du pas spécifié, et exécuter les instructions spécifiées.";
+Blockly.Msg.CONTROLS_IF_ELSEIF_TOOLTIP = "Ajouter une condition au bloc si.";
+Blockly.Msg.CONTROLS_IF_ELSE_TOOLTIP = "Ajouter une condition finale fourre-tout au bloc si.";
+Blockly.Msg.CONTROLS_IF_HELPURL = "https://github.com/google/blockly/wiki/IfElse"; // untranslated
+Blockly.Msg.CONTROLS_IF_IF_TOOLTIP = "Ajouter, supprimer ou réordonner les sections pour reconfigurer ce bloc si.";
+Blockly.Msg.CONTROLS_IF_MSG_ELSE = "sinon";
+Blockly.Msg.CONTROLS_IF_MSG_ELSEIF = "sinon si";
+Blockly.Msg.CONTROLS_IF_MSG_IF = "si";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_1 = "Si une valeur est vraie, alors exécuter certains ordres.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_2 = "Si une valeur est vraie, alors exécuter le premier bloc d’ordres. Sinon, exécuter le second bloc d’ordres.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_3 = "Si la première valeur est vraie, alors exécuter le premier bloc d’ordres. Sinon, si la seconde valeur est vraie, exécuter le second bloc d’ordres.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_4 = "Si la première valeur est vraie, alors exécuter le premier bloc d’ordres. Sinon, si la seconde valeur est vraie, exécuter le second bloc d’ordres. Si aucune des valeurs n’est vraie, exécuter le dernier bloc d’ordres.";
+Blockly.Msg.CONTROLS_REPEAT_HELPURL = "http://fr.wikipedia.org/wiki/Boucle_for";
+Blockly.Msg.CONTROLS_REPEAT_INPUT_DO = "faire";
+Blockly.Msg.CONTROLS_REPEAT_TITLE = "répéter %1 fois";
+Blockly.Msg.CONTROLS_REPEAT_TOOLTIP = "Exécuter des instructions plusieurs fois.";
+Blockly.Msg.CONTROLS_WHILEUNTIL_HELPURL = "https://github.com/google/blockly/wiki/Loops#repeat"; // untranslated
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "répéter jusqu’à";
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "répéter tant que";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "Tant qu’une valeur est fausse, alors exécuter des instructions.";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "Tant qu’une valeur est vraie, alors exécuter des instructions.";
+Blockly.Msg.DELETE_ALL_BLOCKS = "Supprimer ces %1 blocs ?";
+Blockly.Msg.DELETE_BLOCK = "Supprimer le bloc";
+Blockly.Msg.DELETE_VARIABLE = "Supprimer la variable '%1'";
+Blockly.Msg.DELETE_VARIABLE_CONFIRMATION = "Supprimer %1 utilisations de la variable '%2' ?";
+Blockly.Msg.DELETE_X_BLOCKS = "Supprimer %1 blocs";
+Blockly.Msg.DISABLE_BLOCK = "Désactiver le bloc";
+Blockly.Msg.DUPLICATE_BLOCK = "Dupliquer";
+Blockly.Msg.ENABLE_BLOCK = "Activer le bloc";
+Blockly.Msg.EXPAND_ALL = "Développer les blocs";
+Blockly.Msg.EXPAND_BLOCK = "Développer le bloc";
+Blockly.Msg.EXTERNAL_INPUTS = "Entrées externes";
+Blockly.Msg.HELP = "Aide";
+Blockly.Msg.INLINE_INPUTS = "Entrées en ligne";
+Blockly.Msg.LISTS_CREATE_EMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-empty-list"; // untranslated
+Blockly.Msg.LISTS_CREATE_EMPTY_TITLE = "créer une liste vide";
+Blockly.Msg.LISTS_CREATE_EMPTY_TOOLTIP = "Renvoyer une liste, de longueur 0, ne contenant aucun enregistrement";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TITLE_ADD = "liste";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TOOLTIP = "Ajouter, supprimer, ou réordonner les sections pour reconfigurer ce bloc de liste.";
+Blockly.Msg.LISTS_CREATE_WITH_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with";
+Blockly.Msg.LISTS_CREATE_WITH_INPUT_WITH = "créer une liste avec";
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TOOLTIP = "Ajouter un élément à la liste.";
+Blockly.Msg.LISTS_CREATE_WITH_TOOLTIP = "Créer une liste avec un nombre quelconque d’éléments.";
+Blockly.Msg.LISTS_GET_INDEX_FIRST = "premier";
+Blockly.Msg.LISTS_GET_INDEX_FROM_END = "# depuis la fin";
+Blockly.Msg.LISTS_GET_INDEX_FROM_START = "#"; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_GET = "obtenir";
+Blockly.Msg.LISTS_GET_INDEX_GET_REMOVE = "obtenir et supprimer";
+Blockly.Msg.LISTS_GET_INDEX_LAST = "dernier";
+Blockly.Msg.LISTS_GET_INDEX_RANDOM = "aléatoire";
+Blockly.Msg.LISTS_GET_INDEX_REMOVE = "supprimer";
+Blockly.Msg.LISTS_GET_INDEX_TAIL = ""; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FIRST = "Renvoie le premier élément dans une liste.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FROM = "Renvoie l’élément à la position indiquée dans une liste.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_LAST = "Renvoie le dernier élément dans une liste.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_RANDOM = "Renvoie un élément au hasard dans une liste.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST = "Supprime et renvoie le premier élément dans une liste.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM = "Supprime et renvoie l’élément à la position indiquée dans une liste.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST = "Supprime et renvoie le dernier élément dans une liste.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM = "Supprime et renvoie un élément au hasard dans une liste.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST = "Supprime le premier élément dans une liste.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM = "Supprime l’élément à la position indiquée dans une liste.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST = "Supprime le dernier élément dans une liste.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM = "Supprime un élément au hasard dans une liste.";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_END = "jusqu’à # depuis la fin";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_START = "jusqu’à #";
+Blockly.Msg.LISTS_GET_SUBLIST_END_LAST = "jusqu’à la fin";
+Blockly.Msg.LISTS_GET_SUBLIST_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-a-sublist"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_START_FIRST = "obtenir la sous-liste depuis le début";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_END = "obtenir la sous-liste depuis # depuis la fin";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_START = "obtenir la sous-liste depuis #";
+Blockly.Msg.LISTS_GET_SUBLIST_TAIL = ""; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_TOOLTIP = "Crée une copie de la partie spécifiée d’une liste.";
+Blockly.Msg.LISTS_INDEX_FROM_END_TOOLTIP = "%1 est le dernier élément.";
+Blockly.Msg.LISTS_INDEX_FROM_START_TOOLTIP = "%1 est le premier élément.";
+Blockly.Msg.LISTS_INDEX_OF_FIRST = "trouver la première occurrence de l’élément";
+Blockly.Msg.LISTS_INDEX_OF_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-items-from-a-list"; // untranslated
+Blockly.Msg.LISTS_INDEX_OF_LAST = "trouver la dernière occurrence de l’élément";
+Blockly.Msg.LISTS_INDEX_OF_TOOLTIP = "Renvoie l’index de la première/dernière occurrence de l’élément dans la liste. Renvoie %1 si l'élément n'est pas trouvé.";
+Blockly.Msg.LISTS_INLIST = "dans la liste";
+Blockly.Msg.LISTS_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#is-empty"; // untranslated
+Blockly.Msg.LISTS_ISEMPTY_TITLE = "%1 est vide";
+Blockly.Msg.LISTS_ISEMPTY_TOOLTIP = "Renvoie vrai si la liste est vide.";
+Blockly.Msg.LISTS_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Lists#length-of"; // untranslated
+Blockly.Msg.LISTS_LENGTH_TITLE = "longueur de %1";
+Blockly.Msg.LISTS_LENGTH_TOOLTIP = "Renvoie la longueur d’une liste.";
+Blockly.Msg.LISTS_REPEAT_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
+Blockly.Msg.LISTS_REPEAT_TITLE = "créer une liste avec l’élément %1 répété %2 fois";
+Blockly.Msg.LISTS_REPEAT_TOOLTIP = "Crée une liste consistant en la valeur fournie répétée le nombre de fois indiqué.";
+Blockly.Msg.LISTS_SET_INDEX_HELPURL = "https://github.com/google/blockly/wiki/Lists#in-list--set"; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_INPUT_TO = "comme";
+Blockly.Msg.LISTS_SET_INDEX_INSERT = "insérer en";
+Blockly.Msg.LISTS_SET_INDEX_SET = "mettre";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST = "Insère l’élément au début d’une liste.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FROM = "Insère l’élément à la position indiquée dans une liste.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_LAST = "Ajouter l’élément à la fin d’une liste.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM = "Insère l’élément au hasard dans une liste.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FIRST = "Fixe le premier élément dans une liste.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FROM = "Met à jour l’élément à la position indiquée dans une liste.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_LAST = "Fixe le dernier élément dans une liste.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_RANDOM = "Fixe un élément au hasard dans une liste.";
+Blockly.Msg.LISTS_SORT_HELPURL = "https://github.com/google/blockly/wiki/Lists#sorting-a-list";
+Blockly.Msg.LISTS_SORT_ORDER_ASCENDING = "croissant";
+Blockly.Msg.LISTS_SORT_ORDER_DESCENDING = "décroissant";
+Blockly.Msg.LISTS_SORT_TITLE = "trier %1 %2 %3";
+Blockly.Msg.LISTS_SORT_TOOLTIP = "Trier une copie d’une liste.";
+Blockly.Msg.LISTS_SORT_TYPE_IGNORECASE = "alphabétique, en ignorant la casse";
+Blockly.Msg.LISTS_SORT_TYPE_NUMERIC = "numérique";
+Blockly.Msg.LISTS_SORT_TYPE_TEXT = "alphabétique";
+Blockly.Msg.LISTS_SPLIT_HELPURL = "https://github.com/google/blockly/wiki/Lists#splitting-strings-and-joining-lists";
+Blockly.Msg.LISTS_SPLIT_LIST_FROM_TEXT = "créer une liste depuis le texte";
+Blockly.Msg.LISTS_SPLIT_TEXT_FROM_LIST = "créer un texte depuis la liste";
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_JOIN = "Réunir une liste de textes en un seul, en les séparant par un séparateur.";
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_SPLIT = "Couper un texte en une liste de textes, en coupant à chaque séparateur.";
+Blockly.Msg.LISTS_SPLIT_WITH_DELIMITER = "avec le séparateur";
+Blockly.Msg.LOGIC_BOOLEAN_FALSE = "faux";
+Blockly.Msg.LOGIC_BOOLEAN_HELPURL = "https://github.com/google/blockly/wiki/Logic#values"; // untranslated
+Blockly.Msg.LOGIC_BOOLEAN_TOOLTIP = "Renvoie soit vrai soit faux.";
+Blockly.Msg.LOGIC_BOOLEAN_TRUE = "vrai";
+Blockly.Msg.LOGIC_COMPARE_HELPURL = "https://fr.wikipedia.org/wiki/Inegalite_(mathematiques)";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_EQ = "Renvoyer vrai si les deux entrées sont égales.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GT = "Renvoyer vrai si la première entrée est plus grande que la seconde.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GTE = "Renvoyer vrai si la première entrée est plus grande ou égale à la seconde.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LT = "Renvoyer vrai si la première entrée est plus petite que la seconde.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LTE = "Renvoyer vrai si la première entrée est plus petite ou égale à la seconde.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_NEQ = "Renvoyer vrai si les deux entrées sont différentes.";
+Blockly.Msg.LOGIC_NEGATE_HELPURL = "https://github.com/google/blockly/wiki/Logic#not"; // untranslated
+Blockly.Msg.LOGIC_NEGATE_TITLE = "pas %1";
+Blockly.Msg.LOGIC_NEGATE_TOOLTIP = "Renvoie vrai si l’entrée est fausse. Renvoie faux si l’entrée est vraie.";
+Blockly.Msg.LOGIC_NULL = "nul";
+Blockly.Msg.LOGIC_NULL_HELPURL = "https://en.wikipedia.org/wiki/Nullable_type";
+Blockly.Msg.LOGIC_NULL_TOOLTIP = "Renvoie nul.";
+Blockly.Msg.LOGIC_OPERATION_AND = "et";
+Blockly.Msg.LOGIC_OPERATION_HELPURL = "https://github.com/google/blockly/wiki/Logic#logical-operations"; // untranslated
+Blockly.Msg.LOGIC_OPERATION_OR = "ou";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_AND = "Renvoyer vrai si les deux entrées sont vraies.";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_OR = "Renvoyer vrai si au moins une des entrées est vraie.";
+Blockly.Msg.LOGIC_TERNARY_CONDITION = "test";
+Blockly.Msg.LOGIC_TERNARY_HELPURL = "https://en.wikipedia.org/wiki/%3F:";
+Blockly.Msg.LOGIC_TERNARY_IF_FALSE = "si faux";
+Blockly.Msg.LOGIC_TERNARY_IF_TRUE = "si vrai";
+Blockly.Msg.LOGIC_TERNARY_TOOLTIP = "Vérifier la condition dans 'test'. Si elle est vraie, renvoie la valeur 'si vrai' ; sinon renvoie la valeur 'si faux'.";
+Blockly.Msg.MATH_ADDITION_SYMBOL = "+"; // untranslated
+Blockly.Msg.MATH_ARITHMETIC_HELPURL = "https://fr.wikipedia.org/wiki/Arithmetique";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_ADD = "Renvoie la somme des deux nombres.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE = "Renvoie le quotient des deux nombres.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MINUS = "Renvoie la différence des deux nombres.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MULTIPLY = "Renvoie le produit des deux nombres.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_POWER = "Renvoie le premier nombre élevé à la puissance du second.";
+Blockly.Msg.MATH_CHANGE_HELPURL = "https://en.wikipedia.org/wiki/Programming_idiom#Incrementing_a_counter";
+Blockly.Msg.MATH_CHANGE_TITLE = "incrémenter %1 de %2";
+Blockly.Msg.MATH_CHANGE_TOOLTIP = "Ajouter un nombre à la variable '%1'.";
+Blockly.Msg.MATH_CONSTANT_HELPURL = "https://en.wikipedia.org/wiki/Mathematical_constant";
+Blockly.Msg.MATH_CONSTANT_TOOLTIP = "Renvoie une des constantes courantes : π (3.141…), e (2.718…), φ (1.618…), sqrt(2) (1.414…), sqrt(½) (0.707…), ou ∞ (infini).";
+Blockly.Msg.MATH_CONSTRAIN_HELPURL = "https://en.wikipedia.org/wiki/Clamping_%28graphics%29"; // untranslated
+Blockly.Msg.MATH_CONSTRAIN_TITLE = "contraindre %1 entre %2 et %3";
+Blockly.Msg.MATH_CONSTRAIN_TOOLTIP = "Contraindre un nombre à être entre les limites spécifiées (incluses).";
+Blockly.Msg.MATH_DIVISION_SYMBOL = "÷"; // untranslated
+Blockly.Msg.MATH_IS_DIVISIBLE_BY = "est divisible par";
+Blockly.Msg.MATH_IS_EVEN = "est pair";
+Blockly.Msg.MATH_IS_NEGATIVE = "est négatif";
+Blockly.Msg.MATH_IS_ODD = "est impair";
+Blockly.Msg.MATH_IS_POSITIVE = "est positif";
+Blockly.Msg.MATH_IS_PRIME = "est premier";
+Blockly.Msg.MATH_IS_TOOLTIP = "Vérifier si un nombre est pair, impair, premier, entier, positif, négatif, ou s’il est divisible par un certain nombre. Renvoie vrai ou faux.";
+Blockly.Msg.MATH_IS_WHOLE = "est entier";
+Blockly.Msg.MATH_MODULO_HELPURL = "https://en.wikipedia.org/wiki/Modulo_operation";
+Blockly.Msg.MATH_MODULO_TITLE = "reste de %1 ÷ %2";
+Blockly.Msg.MATH_MODULO_TOOLTIP = "Renvoyer le reste de la division euclidienne des deux nombres.";
+Blockly.Msg.MATH_MULTIPLICATION_SYMBOL = "×"; // untranslated
+Blockly.Msg.MATH_NUMBER_HELPURL = "https://fr.wikipedia.org/wiki/Nombre";
+Blockly.Msg.MATH_NUMBER_TOOLTIP = "Un nombre.";
+Blockly.Msg.MATH_ONLIST_HELPURL = ""; // untranslated
+Blockly.Msg.MATH_ONLIST_OPERATOR_AVERAGE = "moyenne de la liste";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MAX = "maximum de la liste";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MEDIAN = "médiane de la liste";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MIN = "minimum de la liste";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MODE = "majoritaires de la liste";
+Blockly.Msg.MATH_ONLIST_OPERATOR_RANDOM = "élément aléatoire de la liste";
+Blockly.Msg.MATH_ONLIST_OPERATOR_STD_DEV = "écart-type de la liste";
+Blockly.Msg.MATH_ONLIST_OPERATOR_SUM = "somme de la liste";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_AVERAGE = "Renvoyer la moyenne (arithmétique) des valeurs numériques dans la liste.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MAX = "Renvoyer le plus grand nombre dans la liste.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MEDIAN = "Renvoyer le nombre médian de la liste.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MIN = "Renvoyer le plus petit nombre dans la liste.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MODE = "Renvoyer une liste des élément(s) le(s) plus courant(s) dans la liste.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_RANDOM = "Renvoyer un élément dans la liste au hasard.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_STD_DEV = "Renvoyer l’écart-type de la liste.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_SUM = "Renvoyer la somme de tous les nombres dans la liste.";
+Blockly.Msg.MATH_POWER_SYMBOL = "^"; // untranslated
+Blockly.Msg.MATH_RANDOM_FLOAT_HELPURL = "https://en.wikipedia.org/wiki/Random_number_generation";
+Blockly.Msg.MATH_RANDOM_FLOAT_TITLE_RANDOM = "fraction aléatoire";
+Blockly.Msg.MATH_RANDOM_FLOAT_TOOLTIP = "Renvoyer une fraction aléatoire entre 0.0 (inclus) et 1.0 (exclus).";
+Blockly.Msg.MATH_RANDOM_INT_HELPURL = "https://en.wikipedia.org/wiki/Random_number_generation";
+Blockly.Msg.MATH_RANDOM_INT_TITLE = "entier aléatoire entre %1 et %2";
+Blockly.Msg.MATH_RANDOM_INT_TOOLTIP = "Renvoyer un entier aléatoire entre les deux limites spécifiées, incluses.";
+Blockly.Msg.MATH_ROUND_HELPURL = "https://en.wikipedia.org/wiki/Rounding";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUND = "arrondir";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDDOWN = "arrondir par défaut";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDUP = "arrondir par excès";
+Blockly.Msg.MATH_ROUND_TOOLTIP = "Arrondir un nombre au-dessus ou au-dessous.";
+Blockly.Msg.MATH_SINGLE_HELPURL = "https://fr.wikipedia.org/wiki/Racine_carree";
+Blockly.Msg.MATH_SINGLE_OP_ABSOLUTE = "valeur absolue";
+Blockly.Msg.MATH_SINGLE_OP_ROOT = "racine carrée";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ABS = "Renvoie la valeur absolue d’un nombre.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_EXP = "Renvoie e à la puissance d’un nombre.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LN = "Renvoie le logarithme naturel d’un nombre.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LOG10 = "Renvoie le logarithme base 10 d’un nombre.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_NEG = "Renvoie l’opposé d’un nombre";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_POW10 = "Renvoie 10 à la puissance d’un nombre.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ROOT = "Renvoie la racine carrée d’un nombre.";
+Blockly.Msg.MATH_SUBTRACTION_SYMBOL = "-"; // untranslated
+Blockly.Msg.MATH_TRIG_ACOS = "acos"; // untranslated
+Blockly.Msg.MATH_TRIG_ASIN = "asin"; // untranslated
+Blockly.Msg.MATH_TRIG_ATAN = "atan"; // untranslated
+Blockly.Msg.MATH_TRIG_COS = "cos"; // untranslated
+Blockly.Msg.MATH_TRIG_HELPURL = "https://en.wikipedia.org/wiki/Trigonometric_functions";
+Blockly.Msg.MATH_TRIG_SIN = "sin"; // untranslated
+Blockly.Msg.MATH_TRIG_TAN = "tan"; // untranslated
+Blockly.Msg.MATH_TRIG_TOOLTIP_ACOS = "Renvoie l’arccosinus d’un nombre.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ASIN = "Renvoie l’arcsinus d’un nombre.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ATAN = "Renvoie l’arctangente d’un nombre.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_COS = "Renvoie le cosinus d’un angle en degrés (pas en radians).";
+Blockly.Msg.MATH_TRIG_TOOLTIP_SIN = "Renvoie le sinus d’un angle en degrés (pas en radians).";
+Blockly.Msg.MATH_TRIG_TOOLTIP_TAN = "Renvoie la tangente d’un angle en degrés (pas en radians).";
+Blockly.Msg.NEW_VARIABLE = "Créer une variable...";
+Blockly.Msg.NEW_VARIABLE_TITLE = "Nouveau nom de la variable :";
+Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; // untranslated
+Blockly.Msg.PROCEDURES_ALLOW_STATEMENTS = "autoriser les ordres";
+Blockly.Msg.PROCEDURES_BEFORE_PARAMS = "avec :";
+Blockly.Msg.PROCEDURES_CALLNORETURN_HELPURL = "http://fr.wikipedia.org/wiki/Proc%C3%A9dure_%28informatique%29";
+Blockly.Msg.PROCEDURES_CALLNORETURN_TOOLTIP = "Exécuter la fonction '%1' définie par l’utilisateur.";
+Blockly.Msg.PROCEDURES_CALLRETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29";
+Blockly.Msg.PROCEDURES_CALLRETURN_TOOLTIP = "Exécuter la fonction '%1' définie par l’utilisateur et utiliser son résultat.";
+Blockly.Msg.PROCEDURES_CALL_BEFORE_PARAMS = "avec :";
+Blockly.Msg.PROCEDURES_CREATE_DO = "Créer '%1'";
+Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT = "Décrire cette fonction…";
+Blockly.Msg.PROCEDURES_DEFNORETURN_DO = ""; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE = "faire quelque chose";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE = "pour";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TOOLTIP = "Crée une fonction sans sortie.";
+Blockly.Msg.PROCEDURES_DEFRETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_DEFRETURN_RETURN = "retour";
+Blockly.Msg.PROCEDURES_DEFRETURN_TOOLTIP = "Crée une fonction avec une sortie.";
+Blockly.Msg.PROCEDURES_DEF_DUPLICATE_WARNING = "Attention : Cette fonction a des paramètres en double.";
+Blockly.Msg.PROCEDURES_HIGHLIGHT_DEF = "Surligner la définition de la fonction";
+Blockly.Msg.PROCEDURES_IFRETURN_HELPURL = "http://c2.com/cgi/wiki?GuardClause";
+Blockly.Msg.PROCEDURES_IFRETURN_TOOLTIP = "Si une valeur est vraie, alors renvoyer une seconde valeur.";
+Blockly.Msg.PROCEDURES_IFRETURN_WARNING = "Attention : Ce bloc pourrait n’être utilisé que dans une définition de fonction.";
+Blockly.Msg.PROCEDURES_MUTATORARG_TITLE = "nom de l’entrée :";
+Blockly.Msg.PROCEDURES_MUTATORARG_TOOLTIP = "Ajouter une entrée à la fonction.";
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TITLE = "entrées";
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TOOLTIP = "Ajouter, supprimer, ou réarranger les entrées de cette fonction.";
+Blockly.Msg.REDO = "Refaire";
+Blockly.Msg.REMOVE_COMMENT = "Supprimer un commentaire";
+Blockly.Msg.RENAME_VARIABLE = "Renommer la variable…";
+Blockly.Msg.RENAME_VARIABLE_TITLE = "Renommer toutes les variables « %1 » en :";
+Blockly.Msg.TEXT_APPEND_APPENDTEXT = "ajouter le texte";
+Blockly.Msg.TEXT_APPEND_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_APPEND_TO = "à";
+Blockly.Msg.TEXT_APPEND_TOOLTIP = "Ajouter du texte à la variable '%1'.";
+Blockly.Msg.TEXT_CHANGECASE_HELPURL = "https://github.com/google/blockly/wiki/Text#adjusting-text-case"; // untranslated
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_LOWERCASE = "en minuscules";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_TITLECASE = "en Majuscule Au Début De Chaque Mot";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_UPPERCASE = "en MAJUSCULES";
+Blockly.Msg.TEXT_CHANGECASE_TOOLTIP = "Renvoyer une copie du texte dans une autre casse.";
+Blockly.Msg.TEXT_CHARAT_FIRST = "obtenir la première lettre";
+Blockly.Msg.TEXT_CHARAT_FROM_END = "obtenir la lettre # depuis la fin";
+Blockly.Msg.TEXT_CHARAT_FROM_START = "obtenir la lettre #";
+Blockly.Msg.TEXT_CHARAT_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-text"; // untranslated
+Blockly.Msg.TEXT_CHARAT_INPUT_INTEXT = "dans le texte";
+Blockly.Msg.TEXT_CHARAT_LAST = "obtenir la dernière lettre";
+Blockly.Msg.TEXT_CHARAT_RANDOM = "obtenir une lettre au hasard";
+Blockly.Msg.TEXT_CHARAT_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_CHARAT_TOOLTIP = "Renvoie la lettre à la position indiquée.";
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TOOLTIP = "Ajouter un élément au texte.";
+Blockly.Msg.TEXT_CREATE_JOIN_TITLE_JOIN = "joindre";
+Blockly.Msg.TEXT_CREATE_JOIN_TOOLTIP = "Ajouter, supprimer, ou réordonner des sections pour reconfigurer ce bloc de texte.";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_END = "jusqu’à la lettre # depuis la fin";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_START = "jusqu’à la lettre #";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_LAST = "jusqu’à la dernière lettre";
+Blockly.Msg.TEXT_GET_SUBSTRING_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_INPUT_IN_TEXT = "dans le texte";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FIRST = "obtenir la sous-chaîne depuis la première lettre";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_END = "obtenir la sous-chaîne depuis la lettre # depuis la fin";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_START = "obtenir la sous-chaîne depuis la lettre #";
+Blockly.Msg.TEXT_GET_SUBSTRING_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_TOOLTIP = "Renvoie une partie indiquée du texte.";
+Blockly.Msg.TEXT_INDEXOF_HELPURL = "https://github.com/google/blockly/wiki/Text#finding-text"; // untranslated
+Blockly.Msg.TEXT_INDEXOF_INPUT_INTEXT = "dans le texte";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_FIRST = "trouver la première occurrence de la chaîne";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_LAST = "trouver la dernière occurrence de la chaîne";
+Blockly.Msg.TEXT_INDEXOF_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_INDEXOF_TOOLTIP = "Renvoie l’index de la première/dernière occurrence de la première chaîne dans la seconde. Renvoie %1 si la chaîne n’est pas trouvée.";
+Blockly.Msg.TEXT_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Text#checking-for-empty-text"; // untranslated
+Blockly.Msg.TEXT_ISEMPTY_TITLE = "%1 est vide";
+Blockly.Msg.TEXT_ISEMPTY_TOOLTIP = "Renvoie vrai si le texte fourni est vide.";
+Blockly.Msg.TEXT_JOIN_HELPURL = "https://github.com/google/blockly/wiki/Text#text-creation"; // untranslated
+Blockly.Msg.TEXT_JOIN_TITLE_CREATEWITH = "créer un texte avec";
+Blockly.Msg.TEXT_JOIN_TOOLTIP = "Créer un morceau de texte en agrégeant un nombre quelconque d’éléments.";
+Blockly.Msg.TEXT_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_LENGTH_TITLE = "longueur de %1";
+Blockly.Msg.TEXT_LENGTH_TOOLTIP = "Renvoie le nombre de lettres (espaces compris) dans le texte fourni.";
+Blockly.Msg.TEXT_PRINT_HELPURL = "https://github.com/google/blockly/wiki/Text#printing-text"; // untranslated
+Blockly.Msg.TEXT_PRINT_TITLE = "afficher %1";
+Blockly.Msg.TEXT_PRINT_TOOLTIP = "Afficher le texte, le nombre ou une autre valeur spécifié.";
+Blockly.Msg.TEXT_PROMPT_HELPURL = "https://github.com/google/blockly/wiki/Text#getting-input-from-the-user"; // untranslated
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_NUMBER = "Demander un nombre à l’utilisateur.";
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_TEXT = "Demander un texte à l’utilisateur.";
+Blockly.Msg.TEXT_PROMPT_TYPE_NUMBER = "invite pour un nombre avec un message";
+Blockly.Msg.TEXT_PROMPT_TYPE_TEXT = "invite pour un texte avec un message";
+Blockly.Msg.TEXT_TEXT_HELPURL = "https://en.wikipedia.org/wiki/String_(computer_science)";
+Blockly.Msg.TEXT_TEXT_TOOLTIP = "Une lettre, un mot ou une ligne de texte.";
+Blockly.Msg.TEXT_TRIM_HELPURL = "https://github.com/google/blockly/wiki/Text#trimming-removing-spaces"; // untranslated
+Blockly.Msg.TEXT_TRIM_OPERATOR_BOTH = "supprimer les espaces des deux côtés";
+Blockly.Msg.TEXT_TRIM_OPERATOR_LEFT = "supprimer les espaces du côté gauche";
+Blockly.Msg.TEXT_TRIM_OPERATOR_RIGHT = "supprimer les espaces du côté droit";
+Blockly.Msg.TEXT_TRIM_TOOLTIP = "Renvoyer une copie du texte avec les espaces supprimés d’un bout ou des deux.";
+Blockly.Msg.TODAY = "Aujourd'hui";
+Blockly.Msg.UNDO = "Annuler";
+Blockly.Msg.VARIABLES_DEFAULT_NAME = "élément";
+Blockly.Msg.VARIABLES_GET_CREATE_SET = "Créer 'fixer %1'";
+Blockly.Msg.VARIABLES_GET_HELPURL = "https://github.com/google/blockly/wiki/Variables#get"; // untranslated
+Blockly.Msg.VARIABLES_GET_TOOLTIP = "Renvoie la valeur de cette variable.";
+Blockly.Msg.VARIABLES_SET = "fixer %1 à %2";
+Blockly.Msg.VARIABLES_SET_CREATE_GET = "Créer 'obtenir %1'";
+Blockly.Msg.VARIABLES_SET_HELPURL = "https://github.com/google/blockly/wiki/Variables#set"; // untranslated
+Blockly.Msg.VARIABLES_SET_TOOLTIP = "Fixe cette variable pour qu’elle soit égale à la valeur de l’entrée.";
+Blockly.Msg.VARIABLE_ALREADY_EXISTS = "Une variable appelée '%1' existe déjà.";
+Blockly.Msg.PROCEDURES_DEFRETURN_TITLE = Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE;
+Blockly.Msg.CONTROLS_IF_IF_TITLE_IF = Blockly.Msg.CONTROLS_IF_MSG_IF;
+Blockly.Msg.CONTROLS_WHILEUNTIL_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_MSG_THEN = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_ELSE_TITLE_ELSE = Blockly.Msg.CONTROLS_IF_MSG_ELSE;
+Blockly.Msg.PROCEDURES_DEFRETURN_PROCEDURE = Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE;
+Blockly.Msg.LISTS_GET_SUBLIST_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.LISTS_GET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.PROCEDURES_DEFRETURN_DO = Blockly.Msg.PROCEDURES_DEFNORETURN_DO;
+Blockly.Msg.CONTROLS_IF_ELSEIF_TITLE_ELSEIF = Blockly.Msg.CONTROLS_IF_MSG_ELSEIF;
+Blockly.Msg.LISTS_GET_INDEX_HELPURL = Blockly.Msg.LISTS_INDEX_OF_HELPURL;
+Blockly.Msg.CONTROLS_FOREACH_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_SET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TITLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_APPEND_VARIABLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.LISTS_INDEX_OF_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.PROCEDURES_DEFRETURN_COMMENT = Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT; \ No newline at end of file
diff --git a/blockly/msg/js/he.js b/blockly/msg/js/he.js
new file mode 100644
index 0000000..4bbd18b
--- /dev/null
+++ b/blockly/msg/js/he.js
@@ -0,0 +1,391 @@
+// This file was automatically generated. Do not modify.
+
+'use strict';
+
+goog.provide('Blockly.Msg.he');
+
+goog.require('Blockly.Msg');
+
+Blockly.Msg.ADD_COMMENT = "הוסף תגובה";
+Blockly.Msg.CHANGE_VALUE_TITLE = "שנה ערך:";
+Blockly.Msg.CLEAN_UP = "סידור בלוקים";
+Blockly.Msg.COLLAPSE_ALL = "צמצם קטעי קוד";
+Blockly.Msg.COLLAPSE_BLOCK = "צמצם קטע קוד";
+Blockly.Msg.COLOUR_BLEND_COLOUR1 = "צבע 1";
+Blockly.Msg.COLOUR_BLEND_COLOUR2 = "צבע 2";
+Blockly.Msg.COLOUR_BLEND_HELPURL = "http://meyerweb.com/eric/tools/color-blend/"; // untranslated
+Blockly.Msg.COLOUR_BLEND_RATIO = "יחס";
+Blockly.Msg.COLOUR_BLEND_TITLE = "ערבב";
+Blockly.Msg.COLOUR_BLEND_TOOLTIP = "מערבב שני צבעים יחד עם יחס נתון(0.0 - 1.0).";
+Blockly.Msg.COLOUR_PICKER_HELPURL = "http://he.wikipedia.org/wiki/%D7%A6%D7%91%D7%A2";
+Blockly.Msg.COLOUR_PICKER_TOOLTIP = "בחר צבע מן הצבעים.";
+Blockly.Msg.COLOUR_RANDOM_HELPURL = "http://randomcolour.com"; // untranslated
+Blockly.Msg.COLOUR_RANDOM_TITLE = "צבע אקראי";
+Blockly.Msg.COLOUR_RANDOM_TOOLTIP = "בחר צבא אקראי.";
+Blockly.Msg.COLOUR_RGB_BLUE = "כחול";
+Blockly.Msg.COLOUR_RGB_GREEN = "ירוק";
+Blockly.Msg.COLOUR_RGB_HELPURL = "http://www.december.com/html/spec/colorper.html"; // untranslated
+Blockly.Msg.COLOUR_RGB_RED = "אדום";
+Blockly.Msg.COLOUR_RGB_TITLE = "צבע עם";
+Blockly.Msg.COLOUR_RGB_TOOLTIP = "צור צבע עם הסכום המצוין של אדום, ירוק וכחול. כל הערכים חייבים להיות בין 0 ל100.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_HELPURL = "https://github.com/google/blockly/wiki/Loops#loop-termination-blocks"; // untranslated
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK = "צא מהלולאה";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE = "המשך עם האיטרציה הבאה של הלולאה";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK = "צא אל מחוץ ללולאה הכוללת.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE = "דלג על שאר הלולאה והמשך עם האיטרציה הבאה.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_WARNING = "אזהרה: בלוק זה עשוי לשמש רק בתוך לולאה.";
+Blockly.Msg.CONTROLS_FOREACH_HELPURL = "https://github.com/google/blockly/wiki/Loops#for-each"; // untranslated
+Blockly.Msg.CONTROLS_FOREACH_TITLE = "לכל פריט %1 ברשימה %2";
+Blockly.Msg.CONTROLS_FOREACH_TOOLTIP = "לכל פריט ברשימה, להגדיר את המשתנה '%1' לפריט הזה, ולאחר מכן לעשות כמה פעולות.";
+Blockly.Msg.CONTROLS_FOR_HELPURL = "https://github.com/google/blockly/wiki/Loops#count-with"; // untranslated
+Blockly.Msg.CONTROLS_FOR_TITLE = "תספור עם %1 מ- %2 ל- %3 עד- %4";
+Blockly.Msg.CONTROLS_FOR_TOOLTIP = "Have the variable '%1' take on the values from the start number to the end number, counting by the specified interval, and do the specified blocks."; // untranslated
+Blockly.Msg.CONTROLS_IF_ELSEIF_TOOLTIP = "תוסיף תנאי לבלוק If.";
+Blockly.Msg.CONTROLS_IF_ELSE_TOOLTIP = "לסיום, כל התנאים תקפים לגבי בלוק If.";
+Blockly.Msg.CONTROLS_IF_HELPURL = "https://github.com/google/blockly/wiki/IfElse"; // untranslated
+Blockly.Msg.CONTROLS_IF_IF_TOOLTIP = "תוסיף, תמחק, או תסדר מחדש כדי להגדיר מחדש את הבלוק If.";
+Blockly.Msg.CONTROLS_IF_MSG_ELSE = "אחרת";
+Blockly.Msg.CONTROLS_IF_MSG_ELSEIF = "אחרת אם";
+Blockly.Msg.CONTROLS_IF_MSG_IF = "אם";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_1 = "אם ערך נכון, לבצע כמה פעולות.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_2 = "אם הערך הוא אמת, לבצע את הבלוק הראשון של הפעולות. אחרת, לבצע את הבלוק השני של הפעולות.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_3 = "אם הערך הראשון הוא אמת, לבצע את הבלוק הראשון של הפעולות. אחרת, אם הערך השני הוא אמת, לבצע את הבלוק השני של הפעולות.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_4 = "אם הערך הראשון הוא אמת, לבצע את הבלוק הראשון של הפעולות. אחרת, אם הערך השני הוא אמת, לבצע את הבלוק השני של הפעולות. אם אף אחד מהם אינו נכון, לבצע את הבלוק האחרון של הפעולות.";
+Blockly.Msg.CONTROLS_REPEAT_HELPURL = "http://he.wikipedia.org/wiki/בקרת_זרימה";
+Blockly.Msg.CONTROLS_REPEAT_INPUT_DO = "תעשה";
+Blockly.Msg.CONTROLS_REPEAT_TITLE = "חזור על הפעולה %1 פעמים";
+Blockly.Msg.CONTROLS_REPEAT_TOOLTIP = "לעשות כמה פעולות מספר פעמים.";
+Blockly.Msg.CONTROLS_WHILEUNTIL_HELPURL = "https://github.com/google/blockly/wiki/Loops#repeat"; // untranslated
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "חזור עד ש...";
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "חזור כל עוד";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "בזמן שהערך שווה לשגוי, תעשה מספר חישובים.";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "כל עוד הערך הוא אמת, לעשות כמה פעולות.";
+Blockly.Msg.DELETE_ALL_BLOCKS = "האם למחוק את כל %1 קטעי הקוד?";
+Blockly.Msg.DELETE_BLOCK = "מחק קטע קוד";
+Blockly.Msg.DELETE_VARIABLE = "Delete the '%1' variable"; // untranslated
+Blockly.Msg.DELETE_VARIABLE_CONFIRMATION = "Delete %1 uses of the '%2' variable?"; // untranslated
+Blockly.Msg.DELETE_X_BLOCKS = "מחק %1 קטעי קוד";
+Blockly.Msg.DISABLE_BLOCK = "נטרל קטע קוד";
+Blockly.Msg.DUPLICATE_BLOCK = "שכפל";
+Blockly.Msg.ENABLE_BLOCK = "הפעל קטע קוד";
+Blockly.Msg.EXPAND_ALL = "הרחב קטעי קוד";
+Blockly.Msg.EXPAND_BLOCK = "הרחב קטע קוד";
+Blockly.Msg.EXTERNAL_INPUTS = "קלטים חיצוניים";
+Blockly.Msg.HELP = "עזרה";
+Blockly.Msg.INLINE_INPUTS = "קלטים פנימיים";
+Blockly.Msg.LISTS_CREATE_EMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-empty-list"; // untranslated
+Blockly.Msg.LISTS_CREATE_EMPTY_TITLE = "צור רשימה ריקה";
+Blockly.Msg.LISTS_CREATE_EMPTY_TOOLTIP = "החזר רשימה,באורך 0, המכילה רשומות נתונים";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TITLE_ADD = "רשימה";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TOOLTIP = "תוסיף, תמחק, או תסדר מחדש כדי להגדיר מחדש את הבלוק If.";
+Blockly.Msg.LISTS_CREATE_WITH_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
+Blockly.Msg.LISTS_CREATE_WITH_INPUT_WITH = "צור רשימה עם";
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TOOLTIP = "הוסף פריט לרשימה.";
+Blockly.Msg.LISTS_CREATE_WITH_TOOLTIP = "צור רשימה עם כל מספר של פריטים.";
+Blockly.Msg.LISTS_GET_INDEX_FIRST = "ראשון";
+Blockly.Msg.LISTS_GET_INDEX_FROM_END = "# מהסוף";
+Blockly.Msg.LISTS_GET_INDEX_FROM_START = "#";
+Blockly.Msg.LISTS_GET_INDEX_GET = "לקבל";
+Blockly.Msg.LISTS_GET_INDEX_GET_REMOVE = "קבל ומחק";
+Blockly.Msg.LISTS_GET_INDEX_LAST = "אחרון";
+Blockly.Msg.LISTS_GET_INDEX_RANDOM = "אקראי";
+Blockly.Msg.LISTS_GET_INDEX_REMOVE = "הסרה";
+Blockly.Msg.LISTS_GET_INDEX_TAIL = ""; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FIRST = "מחזיר את הפריט הראשון ברשימה.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FROM = "מחזיר פריט במיקום שצוין ברשימה.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_LAST = "מחזיר את הפריט האחרון ברשימה.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_RANDOM = "מחזיר פריט אקראי מהרשימה.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST = "מסיר ומחזיר את הפריט הראשון ברשימה.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM = "מסיר ומחזיר את הפריט במיקום שצוין ברשימה.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST = "מסיר ומחזיר את הפריט האחרון ברשימה.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM = "מחק והחזר פריט אקראי מהרשימה.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST = "הסר את הפריט הראשון ברשימה.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM = "מחזיר פריט במיקום שצוין ברשימה.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST = "הסר את הפריט הראשון ברשימה.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM = "הסר פריט אקראי ברשימה.";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_END = "ל # מהסוף";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_START = "ל #";
+Blockly.Msg.LISTS_GET_SUBLIST_END_LAST = "לאחרון";
+Blockly.Msg.LISTS_GET_SUBLIST_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-a-sublist"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_START_FIRST = "לקבל חלק מהרשימה החל מהתחלה";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_END = "לקבל חלק מהרשימה החל מ-# עד הסוף";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_START = "לקבל חלק מהרשימה החל מ-#";
+Blockly.Msg.LISTS_GET_SUBLIST_TAIL = ""; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_TOOLTIP = "יוצרת עותק של חלק מסוים מהרשימה.";
+Blockly.Msg.LISTS_INDEX_FROM_END_TOOLTIP = "%1 הוא הפריט האחרון.";
+Blockly.Msg.LISTS_INDEX_FROM_START_TOOLTIP = "%1 הוא הפריט הראשון.";
+Blockly.Msg.LISTS_INDEX_OF_FIRST = "מחזירה את המיקום הראשון של פריט ברשימה";
+Blockly.Msg.LISTS_INDEX_OF_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-items-from-a-list"; // untranslated
+Blockly.Msg.LISTS_INDEX_OF_LAST = "מחזירה את המיקום האחרון של פריט ברשימה";
+Blockly.Msg.LISTS_INDEX_OF_TOOLTIP = "מחזירה את האינדקס של המופע הראשון/האחרון של הפריט ברשימה. מחזירה %1 אם הפריט אינו נמצא.";
+Blockly.Msg.LISTS_INLIST = "ברשימה";
+Blockly.Msg.LISTS_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#is-empty"; // untranslated
+Blockly.Msg.LISTS_ISEMPTY_TITLE = "%1 הוא ריק";
+Blockly.Msg.LISTS_ISEMPTY_TOOLTIP = "מחזיר אמת אם הרשימה ריקה.";
+Blockly.Msg.LISTS_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Lists#length-of"; // untranslated
+Blockly.Msg.LISTS_LENGTH_TITLE = "אורכו של %1";
+Blockly.Msg.LISTS_LENGTH_TOOLTIP = "מחזירה את האורך של רשימה.";
+Blockly.Msg.LISTS_REPEAT_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
+Blockly.Msg.LISTS_REPEAT_TITLE = "ליצור רשימה עם הפריט %1 %2 פעמים";
+Blockly.Msg.LISTS_REPEAT_TOOLTIP = "יוצר רשימה המורכבת מהערך נתון חוזר מספר פעמים שצוין.";
+Blockly.Msg.LISTS_SET_INDEX_HELPURL = "https://github.com/google/blockly/wiki/Lists#in-list--set"; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_INPUT_TO = "כמו";
+Blockly.Msg.LISTS_SET_INDEX_INSERT = "הכנס ב";
+Blockly.Msg.LISTS_SET_INDEX_SET = "הגדר";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST = "מכניס את הפריט בתחילת רשימה.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FROM = "מכניס את הפריט במיקום שצוין ברשימה.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_LAST = "מוסיף את הפריט בסוף רשימה.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM = "הוסף פריט באופן אקראי ברשימה.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FIRST = "מגדיר את הפריט הראשון ברשימה.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FROM = "מגדיר את הפריט במיקום שצוין ברשימה.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_LAST = "מגדיר את הפריט האחרון ברשימה.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_RANDOM = "מגדיר פריט אקראי ברשימה.";
+Blockly.Msg.LISTS_SORT_HELPURL = "https://github.com/google/blockly/wiki/Lists#sorting-a-list";
+Blockly.Msg.LISTS_SORT_ORDER_ASCENDING = "סדר עולה";
+Blockly.Msg.LISTS_SORT_ORDER_DESCENDING = "סדר יורד";
+Blockly.Msg.LISTS_SORT_TITLE = "sort %1 %2 %3"; // untranslated
+Blockly.Msg.LISTS_SORT_TOOLTIP = "Sort a copy of a list."; // untranslated
+Blockly.Msg.LISTS_SORT_TYPE_IGNORECASE = "סדר אלפביתי, לא תלוי רישיות";
+Blockly.Msg.LISTS_SORT_TYPE_NUMERIC = "numeric"; // untranslated
+Blockly.Msg.LISTS_SORT_TYPE_TEXT = "סדר אלפביתי";
+Blockly.Msg.LISTS_SPLIT_HELPURL = "https://github.com/google/blockly/wiki/Lists#splitting-strings-and-joining-lists"; // untranslated
+Blockly.Msg.LISTS_SPLIT_LIST_FROM_TEXT = "יצירת רשימה מטקסט";
+Blockly.Msg.LISTS_SPLIT_TEXT_FROM_LIST = "יצירת טקסט מרשימה";
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_JOIN = "Join a list of texts into one text, separated by a delimiter."; // untranslated
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_SPLIT = "Split text into a list of texts, breaking at each delimiter."; // untranslated
+Blockly.Msg.LISTS_SPLIT_WITH_DELIMITER = "with delimiter"; // untranslated
+Blockly.Msg.LOGIC_BOOLEAN_FALSE = "שגוי";
+Blockly.Msg.LOGIC_BOOLEAN_HELPURL = "https://github.com/google/blockly/wiki/Logic#values"; // untranslated
+Blockly.Msg.LOGIC_BOOLEAN_TOOLTIP = "תחזיר אם נכון או אם שגוי.";
+Blockly.Msg.LOGIC_BOOLEAN_TRUE = "נכון";
+Blockly.Msg.LOGIC_COMPARE_HELPURL = "https://en.wikipedia.org/wiki/Inequality_(mathematics)"; // untranslated
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_EQ = "תחזיר נכון אם שני הקלטים שווים אחד לשני.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GT = "תחזיר נכון אם הקלט הראשון גדול יותר מהקלט השני.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GTE = "תחזיר נכון אם הקלט הראשון גדול יותר או שווה לכניסה השנייה.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LT = "תחזיר אמת (true) אם הקלט הראשון הוא קטן יותר מאשר הקלט השני.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LTE = "תחזיר אמת אם הקלט הראשון הוא קטן יותר או שווה לקלט השני.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_NEQ = "תחזיר אמת אם שני הקלטים אינם שווים זה לזה.";
+Blockly.Msg.LOGIC_NEGATE_HELPURL = "https://github.com/google/blockly/wiki/Logic#not"; // untranslated
+Blockly.Msg.LOGIC_NEGATE_TITLE = "לא %1";
+Blockly.Msg.LOGIC_NEGATE_TOOLTIP = "החזר אמת אם הקלט הוא שקר. החזר שקר אם הקלט אמת.";
+Blockly.Msg.LOGIC_NULL = "null";
+Blockly.Msg.LOGIC_NULL_HELPURL = "https://en.wikipedia.org/wiki/Nullable_type"; // untranslated
+Blockly.Msg.LOGIC_NULL_TOOLTIP = "תחזיר ריק.";
+Blockly.Msg.LOGIC_OPERATION_AND = "ו";
+Blockly.Msg.LOGIC_OPERATION_HELPURL = "https://github.com/google/blockly/wiki/Logic#logical-operations"; // untranslated
+Blockly.Msg.LOGIC_OPERATION_OR = "או";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_AND = "תחזיר נכון אם שני הקלטים נכונים.";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_OR = "תחזיר נכון אם מתקיים לפחות אחד מהקלטים נכונים.";
+Blockly.Msg.LOGIC_TERNARY_CONDITION = "בדיקה";
+Blockly.Msg.LOGIC_TERNARY_HELPURL = "https://en.wikipedia.org/wiki/%3F:"; // untranslated
+Blockly.Msg.LOGIC_TERNARY_IF_FALSE = "אם שגוי";
+Blockly.Msg.LOGIC_TERNARY_IF_TRUE = "אם נכון";
+Blockly.Msg.LOGIC_TERNARY_TOOLTIP = "בדוק את התנאי ב'מבחן'. אם התנאי נכון, תחזיר את הערך 'אם נכון'; אחרת תחזיר את הערך 'אם שגוי'.";
+Blockly.Msg.MATH_ADDITION_SYMBOL = "+";
+Blockly.Msg.MATH_ARITHMETIC_HELPURL = "https://he.wikipedia.org/wiki/ארבע_פעולות_החשבון";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_ADD = "תחזיר את סכום שני המספרים.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE = "החזרת המנה של שני המספרים.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MINUS = "החזרת ההפרש בין שני מספרים.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MULTIPLY = "החזרת תוצאת הכפל בין שני מספרים.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_POWER = "החזרת המספר הראשון בחזקת המספר השני.";
+Blockly.Msg.MATH_CHANGE_HELPURL = "https://en.wikipedia.org/wiki/Programming_idiom#Incrementing_a_counter"; // untranslated
+Blockly.Msg.MATH_CHANGE_TITLE = "שינוי %1 על־ידי %2";
+Blockly.Msg.MATH_CHANGE_TOOLTIP = "הוסף מספר למשתנה '%1'.";
+Blockly.Msg.MATH_CONSTANT_HELPURL = "https://en.wikipedia.org/wiki/Mathematical_constant"; // untranslated
+Blockly.Msg.MATH_CONSTANT_TOOLTIP = "Return one of the common constants: π (3.141…), e (2.718…), φ (1.618…), sqrt(2) (1.414…), sqrt(½) (0.707…), or ∞ (infinity)."; // untranslated
+Blockly.Msg.MATH_CONSTRAIN_HELPURL = "https://en.wikipedia.org/wiki/Clamping_%28graphics%29"; // untranslated
+Blockly.Msg.MATH_CONSTRAIN_TITLE = "constrain %1 low %2 high %3"; // untranslated
+Blockly.Msg.MATH_CONSTRAIN_TOOLTIP = "Constrain a number to be between the specified limits (inclusive)."; // untranslated
+Blockly.Msg.MATH_DIVISION_SYMBOL = "÷";
+Blockly.Msg.MATH_IS_DIVISIBLE_BY = "מתחלק ב";
+Blockly.Msg.MATH_IS_EVEN = "זוגי";
+Blockly.Msg.MATH_IS_NEGATIVE = "שלילי";
+Blockly.Msg.MATH_IS_ODD = "אי-זוגי";
+Blockly.Msg.MATH_IS_POSITIVE = "חיובי";
+Blockly.Msg.MATH_IS_PRIME = "ראשוני";
+Blockly.Msg.MATH_IS_TOOLTIP = "Check if a number is an even, odd, prime, whole, positive, negative, or if it is divisible by certain number. Returns true or false."; // untranslated
+Blockly.Msg.MATH_IS_WHOLE = "שלם";
+Blockly.Msg.MATH_MODULO_HELPURL = "https://en.wikipedia.org/wiki/Modulo_operation"; // untranslated
+Blockly.Msg.MATH_MODULO_TITLE = "שארית החילוק %1 ÷ %2";
+Blockly.Msg.MATH_MODULO_TOOLTIP = "החזרת השארית מחלוקת שני המספרים.";
+Blockly.Msg.MATH_MULTIPLICATION_SYMBOL = "×";
+Blockly.Msg.MATH_NUMBER_HELPURL = "https://he.wikipedia.org/wiki/מספר_ממשי";
+Blockly.Msg.MATH_NUMBER_TOOLTIP = "מספר.";
+Blockly.Msg.MATH_ONLIST_HELPURL = ""; // untranslated
+Blockly.Msg.MATH_ONLIST_OPERATOR_AVERAGE = "ממוצע של רשימה";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MAX = "מקסימום של רשימה";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MEDIAN = "חציון של רשימה";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MIN = "מינימום של רשימה";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MODE = "שכיחי הרשימה";
+Blockly.Msg.MATH_ONLIST_OPERATOR_RANDOM = "פריט אקראי מרשימה";
+Blockly.Msg.MATH_ONLIST_OPERATOR_STD_DEV = "standard deviation of list"; // untranslated
+Blockly.Msg.MATH_ONLIST_OPERATOR_SUM = "סכום של רשימה";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_AVERAGE = "Return the average (arithmetic mean) of the numeric values in the list."; // untranslated
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MAX = "תחזיר את המספר הגדול ביותר ברשימה.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MEDIAN = "תחזיר את המספר החיצוני ביותר ברשימה.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MIN = "תחזיר את המספר הקטן ביותר ברשימה.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MODE = "החזרת רשימה של הפריטים הנפוצים ביותר ברשימה";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_RANDOM = "תחזיר רכיב אקראי מרשימה.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_STD_DEV = "Return the standard deviation of the list."; // untranslated
+Blockly.Msg.MATH_ONLIST_TOOLTIP_SUM = "החזרת הסכום של המספרים ברשימה.";
+Blockly.Msg.MATH_POWER_SYMBOL = "^";
+Blockly.Msg.MATH_RANDOM_FLOAT_HELPURL = "https://en.wikipedia.org/wiki/Random_number_generation"; // untranslated
+Blockly.Msg.MATH_RANDOM_FLOAT_TITLE_RANDOM = "שבר אקראי";
+Blockly.Msg.MATH_RANDOM_FLOAT_TOOLTIP = "Return a random fraction between 0.0 (inclusive) and 1.0 (exclusive)."; // untranslated
+Blockly.Msg.MATH_RANDOM_INT_HELPURL = "https://en.wikipedia.org/wiki/Random_number_generation"; // untranslated
+Blockly.Msg.MATH_RANDOM_INT_TITLE = "random integer from %1 to %2"; // untranslated
+Blockly.Msg.MATH_RANDOM_INT_TOOLTIP = "Return a random integer between the two specified limits, inclusive."; // untranslated
+Blockly.Msg.MATH_ROUND_HELPURL = "https://he.wikipedia.org/wiki/עיגול_(אריתמטיקה)";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUND = "עיגול";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDDOWN = "עיגול למטה";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDUP = "עיגול למעלה";
+Blockly.Msg.MATH_ROUND_TOOLTIP = "עיגול מספר למעלה או למטה.";
+Blockly.Msg.MATH_SINGLE_HELPURL = "https://he.wikipedia.org/wiki/שורש_ריבועי";
+Blockly.Msg.MATH_SINGLE_OP_ABSOLUTE = "ערך מוחלט";
+Blockly.Msg.MATH_SINGLE_OP_ROOT = "שורש ריבועי";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ABS = "החזרת הערך המוחלט של מספר.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_EXP = "החזרת e בחזקת מספר.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LN = "החזרת הלוגריתם הטבעי של מספר.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LOG10 = "החזרת הלוגריתם לפי בסיס עשר של מספר.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_NEG = "החזרת הערך הנגדי של מספר.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_POW10 = "החזרת 10 בחזקת מספר.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ROOT = "החזרת השורש הריבועי של מספר.";
+Blockly.Msg.MATH_SUBTRACTION_SYMBOL = "-";
+Blockly.Msg.MATH_TRIG_ACOS = "acos";
+Blockly.Msg.MATH_TRIG_ASIN = "asin";
+Blockly.Msg.MATH_TRIG_ATAN = "atan";
+Blockly.Msg.MATH_TRIG_COS = "cos";
+Blockly.Msg.MATH_TRIG_HELPURL = "https://he.wikipedia.org/wiki/פונקציות_טריגונומטריות";
+Blockly.Msg.MATH_TRIG_SIN = "sin";
+Blockly.Msg.MATH_TRIG_TAN = "tan";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ACOS = "Return the arccosine of a number."; // untranslated
+Blockly.Msg.MATH_TRIG_TOOLTIP_ASIN = "Return the arcsine of a number."; // untranslated
+Blockly.Msg.MATH_TRIG_TOOLTIP_ATAN = "Return the arctangent of a number."; // untranslated
+Blockly.Msg.MATH_TRIG_TOOLTIP_COS = "החזרת הקוסינוס של מעלה (לא רדיאן).";
+Blockly.Msg.MATH_TRIG_TOOLTIP_SIN = "החזרת הסינוס של מעלה (לא רדיאן).";
+Blockly.Msg.MATH_TRIG_TOOLTIP_TAN = "החזרת הטנגס של מעלה (לא רדיאן).";
+Blockly.Msg.NEW_VARIABLE = "משתנה חדש...";
+Blockly.Msg.NEW_VARIABLE_TITLE = "שם המשתנה החדש:";
+Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; // untranslated
+Blockly.Msg.PROCEDURES_ALLOW_STATEMENTS = "לאפשר פעולות";
+Blockly.Msg.PROCEDURES_BEFORE_PARAMS = "עם:";
+Blockly.Msg.PROCEDURES_CALLNORETURN_HELPURL = "https://he.wikipedia.org/wiki/שגרה_(תכנות)";
+Blockly.Msg.PROCEDURES_CALLNORETURN_TOOLTIP = "להפעיל את הפונקציה המוגדרת על-ידי המשתמש '%1'.";
+Blockly.Msg.PROCEDURES_CALLRETURN_HELPURL = "https://he.wikipedia.org/wiki/שגרה_(תכנות)";
+Blockly.Msg.PROCEDURES_CALLRETURN_TOOLTIP = "להפעיל את הפונקציה המוגדרת על-ידי המשתמש '%1' ולהשתמש הפלט שלה.";
+Blockly.Msg.PROCEDURES_CALL_BEFORE_PARAMS = "עם:";
+Blockly.Msg.PROCEDURES_CREATE_DO = "ליצור '%1'";
+Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT = "Describe this function..."; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_DO = ""; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE = "לעשות משהו";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE = "לביצוע:";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TOOLTIP = "יצירת פונקציה ללא פלט.";
+Blockly.Msg.PROCEDURES_DEFRETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_DEFRETURN_RETURN = "להחזיר";
+Blockly.Msg.PROCEDURES_DEFRETURN_TOOLTIP = "יצירת פונקציה עם פלט.";
+Blockly.Msg.PROCEDURES_DEF_DUPLICATE_WARNING = "אזהרה: לפונקציה זו יש פרמטרים כפולים.";
+Blockly.Msg.PROCEDURES_HIGHLIGHT_DEF = "הדגש הגדרה של פונקציה";
+Blockly.Msg.PROCEDURES_IFRETURN_HELPURL = "http://c2.com/cgi/wiki?GuardClause"; // untranslated
+Blockly.Msg.PROCEDURES_IFRETURN_TOOLTIP = "אם ערך נכון, אז להחזיר ערך שני.";
+Blockly.Msg.PROCEDURES_IFRETURN_WARNING = "אזהרה: בלוק זה עשוי לשמש רק בתוך הגדרה של פונקציה.";
+Blockly.Msg.PROCEDURES_MUTATORARG_TITLE = "שם הקלט:";
+Blockly.Msg.PROCEDURES_MUTATORARG_TOOLTIP = "הוסף קלט לפונקציה";
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TITLE = "מקורות קלט";
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TOOLTIP = "הוסף, הסר או סדר מחדש קלטים לפונקציה זו";
+Blockly.Msg.REDO = "ביצוע חוזר";
+Blockly.Msg.REMOVE_COMMENT = "הסר תגובה";
+Blockly.Msg.RENAME_VARIABLE = "שנה את שם המשתנה...";
+Blockly.Msg.RENAME_VARIABLE_TITLE = "שנה את שם כל '%1' המשתנים ל:";
+Blockly.Msg.TEXT_APPEND_APPENDTEXT = "הוספת טקסט";
+Blockly.Msg.TEXT_APPEND_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_APPEND_TO = "אל";
+Blockly.Msg.TEXT_APPEND_TOOLTIP = "Append some text to variable '%1'."; // untranslated
+Blockly.Msg.TEXT_CHANGECASE_HELPURL = "https://github.com/google/blockly/wiki/Text#adjusting-text-case"; // untranslated
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_LOWERCASE = "לאותיות קטנות (עבור טקסט באנגלית)";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_TITLECASE = "לאותיות גדולות בתחילת כל מילה (עבור טקסט באנגלית)";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_UPPERCASE = "לאותיות גדולות (עבור טקסט באנגלית)";
+Blockly.Msg.TEXT_CHANGECASE_TOOLTIP = "Return a copy of the text in a different case."; // untranslated
+Blockly.Msg.TEXT_CHARAT_FIRST = "get first letter"; // untranslated
+Blockly.Msg.TEXT_CHARAT_FROM_END = "get letter # from end"; // untranslated
+Blockly.Msg.TEXT_CHARAT_FROM_START = "get letter #"; // untranslated
+Blockly.Msg.TEXT_CHARAT_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-text"; // untranslated
+Blockly.Msg.TEXT_CHARAT_INPUT_INTEXT = "in text"; // untranslated
+Blockly.Msg.TEXT_CHARAT_LAST = "get last letter"; // untranslated
+Blockly.Msg.TEXT_CHARAT_RANDOM = "get random letter"; // untranslated
+Blockly.Msg.TEXT_CHARAT_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_CHARAT_TOOLTIP = "Returns the letter at the specified position."; // untranslated
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TOOLTIP = "Add an item to the text."; // untranslated
+Blockly.Msg.TEXT_CREATE_JOIN_TITLE_JOIN = "צירוף";
+Blockly.Msg.TEXT_CREATE_JOIN_TOOLTIP = "Add, remove, or reorder sections to reconfigure this text block."; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_END = "לאות # מהסוף";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_START = "לאות #";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_LAST = "to last letter"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_INPUT_IN_TEXT = "in text"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FIRST = "get substring from first letter"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_END = "get substring from letter # from end"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_START = "get substring from letter #"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_TOOLTIP = "Returns a specified portion of the text."; // untranslated
+Blockly.Msg.TEXT_INDEXOF_HELPURL = "https://github.com/google/blockly/wiki/Text#finding-text"; // untranslated
+Blockly.Msg.TEXT_INDEXOF_INPUT_INTEXT = "in text"; // untranslated
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_FIRST = "find first occurrence of text"; // untranslated
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_LAST = "find last occurrence of text"; // untranslated
+Blockly.Msg.TEXT_INDEXOF_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_INDEXOF_TOOLTIP = "מחזירה את האינדקס של המופע הראשון/האחרון בטקסט הראשון לתוך הטקסט השני. מחזירה %1 אם הטקסט אינו נמצא.";
+Blockly.Msg.TEXT_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Text#checking-for-empty-text"; // untranslated
+Blockly.Msg.TEXT_ISEMPTY_TITLE = "%1 is empty"; // untranslated
+Blockly.Msg.TEXT_ISEMPTY_TOOLTIP = "Returns true if the provided text is empty."; // untranslated
+Blockly.Msg.TEXT_JOIN_HELPURL = "https://github.com/google/blockly/wiki/Text#text-creation"; // untranslated
+Blockly.Msg.TEXT_JOIN_TITLE_CREATEWITH = "יצירת טקסט עם";
+Blockly.Msg.TEXT_JOIN_TOOLTIP = "Create a piece of text by joining together any number of items."; // untranslated
+Blockly.Msg.TEXT_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_LENGTH_TITLE = "length of %1"; // untranslated
+Blockly.Msg.TEXT_LENGTH_TOOLTIP = "Returns the number of letters (including spaces) in the provided text."; // untranslated
+Blockly.Msg.TEXT_PRINT_HELPURL = "https://github.com/google/blockly/wiki/Text#printing-text"; // untranslated
+Blockly.Msg.TEXT_PRINT_TITLE = "הדפס %1";
+Blockly.Msg.TEXT_PRINT_TOOLTIP = "להדפיס טקסט, מספר או ערך אחר שצוין";
+Blockly.Msg.TEXT_PROMPT_HELPURL = "https://github.com/google/blockly/wiki/Text#getting-input-from-the-user"; // untranslated
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_NUMBER = "בקש מהמשתמש מספר.";
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_TEXT = "בקשה למשתמש להזין טקסט כלשהו.";
+Blockly.Msg.TEXT_PROMPT_TYPE_NUMBER = "בקשה למספר עם הודעה";
+Blockly.Msg.TEXT_PROMPT_TYPE_TEXT = "בקשה להזנת טקסט עם הודעה";
+Blockly.Msg.TEXT_TEXT_HELPURL = "https://en.wikipedia.org/wiki/String_(computer_science)"; // untranslated
+Blockly.Msg.TEXT_TEXT_TOOLTIP = "אות, מילה, או שורת טקסט.";
+Blockly.Msg.TEXT_TRIM_HELPURL = "https://github.com/google/blockly/wiki/Text#trimming-removing-spaces"; // untranslated
+Blockly.Msg.TEXT_TRIM_OPERATOR_BOTH = "למחוק רווחים משני הקצוות";
+Blockly.Msg.TEXT_TRIM_OPERATOR_LEFT = "למחוק רווחים מימין";
+Blockly.Msg.TEXT_TRIM_OPERATOR_RIGHT = "למחוק רווחים משמאל";
+Blockly.Msg.TEXT_TRIM_TOOLTIP = "להחזיר עותק של הטקסט לאחר מחיקת רווחים מאחד או משני הקצוות.";
+Blockly.Msg.TODAY = "היום";
+Blockly.Msg.UNDO = "ביטול";
+Blockly.Msg.VARIABLES_DEFAULT_NAME = "פריט";
+Blockly.Msg.VARIABLES_GET_CREATE_SET = "ליצור 'הגדר %1'";
+Blockly.Msg.VARIABLES_GET_HELPURL = "https://github.com/google/blockly/wiki/Variables#get"; // untranslated
+Blockly.Msg.VARIABLES_GET_TOOLTIP = "להחזיר את הערך של משתנה זה.";
+Blockly.Msg.VARIABLES_SET = "הגדר %1 ל- %2";
+Blockly.Msg.VARIABLES_SET_CREATE_GET = "ליצור 'קרא %1'";
+Blockly.Msg.VARIABLES_SET_HELPURL = "https://github.com/google/blockly/wiki/Variables#set"; // untranslated
+Blockly.Msg.VARIABLES_SET_TOOLTIP = "מגדיר משתנה זה להיות שווה לקלט.";
+Blockly.Msg.VARIABLE_ALREADY_EXISTS = "A variable named '%1' already exists."; // untranslated
+Blockly.Msg.PROCEDURES_DEFRETURN_TITLE = Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE;
+Blockly.Msg.CONTROLS_IF_IF_TITLE_IF = Blockly.Msg.CONTROLS_IF_MSG_IF;
+Blockly.Msg.CONTROLS_WHILEUNTIL_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_MSG_THEN = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_ELSE_TITLE_ELSE = Blockly.Msg.CONTROLS_IF_MSG_ELSE;
+Blockly.Msg.PROCEDURES_DEFRETURN_PROCEDURE = Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE;
+Blockly.Msg.LISTS_GET_SUBLIST_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.LISTS_GET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.PROCEDURES_DEFRETURN_DO = Blockly.Msg.PROCEDURES_DEFNORETURN_DO;
+Blockly.Msg.CONTROLS_IF_ELSEIF_TITLE_ELSEIF = Blockly.Msg.CONTROLS_IF_MSG_ELSEIF;
+Blockly.Msg.LISTS_GET_INDEX_HELPURL = Blockly.Msg.LISTS_INDEX_OF_HELPURL;
+Blockly.Msg.CONTROLS_FOREACH_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_SET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TITLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_APPEND_VARIABLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.LISTS_INDEX_OF_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.PROCEDURES_DEFRETURN_COMMENT = Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT; \ No newline at end of file
diff --git a/blockly/msg/js/hi.js b/blockly/msg/js/hi.js
new file mode 100644
index 0000000..261a69c
--- /dev/null
+++ b/blockly/msg/js/hi.js
@@ -0,0 +1,391 @@
+// This file was automatically generated. Do not modify.
+
+'use strict';
+
+goog.provide('Blockly.Msg.hi');
+
+goog.require('Blockly.Msg');
+
+Blockly.Msg.ADD_COMMENT = "टिप्पणी छोड़ें";
+Blockly.Msg.CHANGE_VALUE_TITLE = "मान परिवर्तित करें:";
+Blockly.Msg.CLEAN_UP = "Clean up Blocks"; // untranslated
+Blockly.Msg.COLLAPSE_ALL = "ब्लॉक संक्षिप्त करें";
+Blockly.Msg.COLLAPSE_BLOCK = "ब्लॉक को संक्षिप्त करें";
+Blockly.Msg.COLOUR_BLEND_COLOUR1 = "रंग 1";
+Blockly.Msg.COLOUR_BLEND_COLOUR2 = "रंग 2";
+Blockly.Msg.COLOUR_BLEND_HELPURL = "http://meyerweb.com/eric/tools/color-blend/"; // untranslated
+Blockly.Msg.COLOUR_BLEND_RATIO = "अनुपात";
+Blockly.Msg.COLOUR_BLEND_TITLE = "मिश्रण करें";
+Blockly.Msg.COLOUR_BLEND_TOOLTIP = "दिए गए अनुपात (0.0 - 1.0) के साथ दो रंगों का मिश्रण करता है।";
+Blockly.Msg.COLOUR_PICKER_HELPURL = "https://en.wikipedia.org/wiki/Color";
+Blockly.Msg.COLOUR_PICKER_TOOLTIP = "पैलेट से एक रंग चुनें।";
+Blockly.Msg.COLOUR_RANDOM_HELPURL = "http://randomcolour.com"; // untranslated
+Blockly.Msg.COLOUR_RANDOM_TITLE = "रैन्डम रंग";
+Blockly.Msg.COLOUR_RANDOM_TOOLTIP = "रैन्डम्ली एक रंग चयन करें।";
+Blockly.Msg.COLOUR_RGB_BLUE = "नीला";
+Blockly.Msg.COLOUR_RGB_GREEN = "हरा";
+Blockly.Msg.COLOUR_RGB_HELPURL = "http://www.december.com/html/spec/colorper.html"; // untranslated
+Blockly.Msg.COLOUR_RGB_RED = "लाल";
+Blockly.Msg.COLOUR_RGB_TITLE = "इसके साथ रंग करें";
+Blockly.Msg.COLOUR_RGB_TOOLTIP = "लाल, हरा और नीले की निर्दिष्ट मात्रा के साथ एक रंग बनायें। सभी मान ० से १०० के बीच होने चाहिए।";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_HELPURL = "https://github.com/google/blockly/wiki/Loops#loop-termination-blocks"; // untranslated
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK = "लूप से बाहर निकलें";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE = "लूप का अगला आईटरेशन जारी रखें";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK = "भीतरी लूप से बाहर निकलें।";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE = "बाकी बचे लूप को छोड़ें, और अगला आईटरेशन जारी रखें।";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_WARNING = "सावधान: ये ब्लॉक केवल लूप के अंदर इस्तेमाल किया जा सकता है।";
+Blockly.Msg.CONTROLS_FOREACH_HELPURL = "https://github.com/google/blockly/wiki/Loops#for-each"; // untranslated
+Blockly.Msg.CONTROLS_FOREACH_TITLE = "प्रत्येक आइटम के लिए %1 सूची में %2";
+Blockly.Msg.CONTROLS_FOREACH_TOOLTIP = "सूची के प्रत्येक आयटम के लिए, आयटम में चर का मान '%1' रखें और बाद में कुछ कथन लिखें।";
+Blockly.Msg.CONTROLS_FOR_HELPURL = "https://github.com/google/blockly/wiki/Loops#count-with"; // untranslated
+Blockly.Msg.CONTROLS_FOR_TITLE = "काउंट करें";
+Blockly.Msg.CONTROLS_FOR_TOOLTIP = "Have the variable '%1' take on the values from the start number to the end number, counting by the specified interval, and do the specified blocks."; // untranslated
+Blockly.Msg.CONTROLS_IF_ELSEIF_TOOLTIP = "यदि ब्लॉक मे एक शर्त जोड़ें।";
+Blockly.Msg.CONTROLS_IF_ELSE_TOOLTIP = "Add a final, catch-all condition to the if block."; // untranslated
+Blockly.Msg.CONTROLS_IF_HELPURL = "https://github.com/google/blockly/wiki/IfElse"; // untranslated
+Blockly.Msg.CONTROLS_IF_IF_TOOLTIP = "Add, remove, or reorder sections to reconfigure this if block."; // untranslated
+Blockly.Msg.CONTROLS_IF_MSG_ELSE = "एल्स";
+Blockly.Msg.CONTROLS_IF_MSG_ELSEIF = "एल्स इफ";
+Blockly.Msg.CONTROLS_IF_MSG_IF = "इफ";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_1 = "यदी मान ट्रू है, तो कुछ स्टेट्मेंट्स चलाएँ।";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_2 = "यदि एक मान सत्य है तो कथनों का प्रथम खण्ड बनायें। अन्यथा कथनों का दूसरा भाग निर्मित करें।";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_3 = "If the first value is true, then do the first block of statements. Otherwise, if the second value is true, do the second block of statements."; // untranslated
+Blockly.Msg.CONTROLS_IF_TOOLTIP_4 = "If the first value is true, then do the first block of statements. Otherwise, if the second value is true, do the second block of statements. If none of the values are true, do the last block of statements."; // untranslated
+Blockly.Msg.CONTROLS_REPEAT_HELPURL = "https://en.wikipedia.org/wiki/For_loop";
+Blockly.Msg.CONTROLS_REPEAT_INPUT_DO = "डू";
+Blockly.Msg.CONTROLS_REPEAT_TITLE = "%1 बार दोहराएँ";
+Blockly.Msg.CONTROLS_REPEAT_TOOLTIP = "कुछ स्टेट्मन्ट कई बार चलाएँ।";
+Blockly.Msg.CONTROLS_WHILEUNTIL_HELPURL = "https://github.com/google/blockly/wiki/Loops#repeat"; // untranslated
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "दोहराएँ जब तक";
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "दोहराएँ जब कि";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "जब तक मान फॉल्स है, तब तक कुछ स्टेट्मेंट्स चलाएँ।";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "जब तक मान ट्रू है, तब तक कुछ स्टेट्मेंट्स चलाएँ।";
+Blockly.Msg.DELETE_ALL_BLOCKS = "Delete all %1 blocks?"; // untranslated
+Blockly.Msg.DELETE_BLOCK = "ब्लॉक हटाएँ";
+Blockly.Msg.DELETE_VARIABLE = "Delete the '%1' variable"; // untranslated
+Blockly.Msg.DELETE_VARIABLE_CONFIRMATION = "Delete %1 uses of the '%2' variable?"; // untranslated
+Blockly.Msg.DELETE_X_BLOCKS = "%1 ब्लॉक हटाएँ";
+Blockly.Msg.DISABLE_BLOCK = "ब्लॉक को अक्षम करें";
+Blockly.Msg.DUPLICATE_BLOCK = "कॉपी करें";
+Blockly.Msg.ENABLE_BLOCK = "ब्लॉक को सक्षम करें";
+Blockly.Msg.EXPAND_ALL = "ब्लॉक विस्तार करें";
+Blockly.Msg.EXPAND_BLOCK = "ब्लॉक का विस्तार करें";
+Blockly.Msg.EXTERNAL_INPUTS = "बाहरी इनपुट";
+Blockly.Msg.HELP = "सहायता";
+Blockly.Msg.INLINE_INPUTS = "इनलाइन इनपुट";
+Blockly.Msg.LISTS_CREATE_EMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-empty-list"; // untranslated
+Blockly.Msg.LISTS_CREATE_EMPTY_TITLE = "खाली सूची बनाएँ";
+Blockly.Msg.LISTS_CREATE_EMPTY_TOOLTIP = "Returns a list, of length 0, containing no data records"; // untranslated
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TITLE_ADD = "सूची";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TOOLTIP = "Add, remove, or reorder sections to reconfigure this list block."; // untranslated
+Blockly.Msg.LISTS_CREATE_WITH_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
+Blockly.Msg.LISTS_CREATE_WITH_INPUT_WITH = "इसके सूची बनाएँ";
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TOOLTIP = "सूची मे एक आइटम जोड़ें।";
+Blockly.Msg.LISTS_CREATE_WITH_TOOLTIP = "कितने भी आइटम वाली एक सूची बनाएँ।";
+Blockly.Msg.LISTS_GET_INDEX_FIRST = "%1 पहला आइटम है।";
+Blockly.Msg.LISTS_GET_INDEX_FROM_END = "अंत से #";
+Blockly.Msg.LISTS_GET_INDEX_FROM_START = "#"; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_GET = "प्राप्त";
+Blockly.Msg.LISTS_GET_INDEX_GET_REMOVE = "प्राप्त करे और हटाए";
+Blockly.Msg.LISTS_GET_INDEX_LAST = "%1 आखरी आइटम है।";
+Blockly.Msg.LISTS_GET_INDEX_RANDOM = "रैन्डम";
+Blockly.Msg.LISTS_GET_INDEX_REMOVE = "निकालें";
+Blockly.Msg.LISTS_GET_INDEX_TAIL = ""; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FIRST = "सूची का पहला आइटम रिटर्न करता है।";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FROM = "Returns the item at the specified position in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_LAST = "सूची का आखरी आइटम रिटर्न करता है।";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_RANDOM = "सूची से रैन्डम आइटम रिटर्न करता है।";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST = "सूची का पहला आइटम निकालता है और रिटर्न करता है।";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM = "Removes and returns the item at the specified position in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST = "सूची का आखरी आइटम निकालता है और रिटर्न करता है।";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM = "सूची से रैन्डम आइटम निकालता है और रिटर्न करता है।";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST = "सूची का पहला आइटम निकालता है।";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM = "Removes the item at the specified position in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST = "सूची का आखरी आइटम निकालता है।";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM = "सूची से रैन्डम आइटम निकालता है।";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_END = "to # from end"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_START = "to #"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_END_LAST = "to last"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-a-sublist"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_START_FIRST = "get sub-list from first"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_END = "get sub-list from # from end"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_START = "get sub-list from #"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_TAIL = ""; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_TOOLTIP = "सूची के बताए गये भाग की कॉपी बनता है।";
+Blockly.Msg.LISTS_INDEX_FROM_END_TOOLTIP = "%1 is the last item."; // untranslated
+Blockly.Msg.LISTS_INDEX_FROM_START_TOOLTIP = "%1 is the first item."; // untranslated
+Blockly.Msg.LISTS_INDEX_OF_FIRST = "आइटम पहली बार जहाँ आया है उसे ढूढ़े";
+Blockly.Msg.LISTS_INDEX_OF_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-items-from-a-list"; // untranslated
+Blockly.Msg.LISTS_INDEX_OF_LAST = "आइटम आखरी बार जहाँ आया है उसे ढूढ़े";
+Blockly.Msg.LISTS_INDEX_OF_TOOLTIP = "Returns the index of the first/last occurrence of the item in the list. Returns %1 if item is not found."; // untranslated
+Blockly.Msg.LISTS_INLIST = "सूची में";
+Blockly.Msg.LISTS_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#is-empty"; // untranslated
+Blockly.Msg.LISTS_ISEMPTY_TITLE = "%1 खाली है";
+Blockly.Msg.LISTS_ISEMPTY_TOOLTIP = "यदि सूची खाली है तो ट्रू रिटर्न करता है।";
+Blockly.Msg.LISTS_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Lists#length-of"; // untranslated
+Blockly.Msg.LISTS_LENGTH_TITLE = "%1 की लंबाई";
+Blockly.Msg.LISTS_LENGTH_TOOLTIP = "सूची की लंबाई रिटर्न करता है।";
+Blockly.Msg.LISTS_REPEAT_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
+Blockly.Msg.LISTS_REPEAT_TITLE = "create list with item %1 repeated %2 times"; // untranslated
+Blockly.Msg.LISTS_REPEAT_TOOLTIP = "Creates a list consisting of the given value repeated the specified number of times."; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_HELPURL = "https://github.com/google/blockly/wiki/Lists#in-list--set"; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_INPUT_TO = "as"; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_INSERT = "insert at"; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_SET = "सैट करें";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST = "आइटम को सूची के शुरू में इनसर्ट करता है।";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FROM = "सूची मे बताए गये स्थान में आइटम इनसर्ट करता है।";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_LAST = "आइटम को सूची के अंत में जोड़ता है।";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM = "आइटम को सूची में रैन्डम्ली इनसर्ट करता है।";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FIRST = "सूची में पहला आइटम सैट करता है।";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FROM = "सूची मे बताए गये स्थान में आइटम सैट करता है।";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_LAST = "सूची में आखरी आइटम सैट करता है।";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_RANDOM = "सूची में रैन्डम आइटम सैट करता है।";
+Blockly.Msg.LISTS_SORT_HELPURL = "https://github.com/google/blockly/wiki/Lists#sorting-a-list"; // untranslated
+Blockly.Msg.LISTS_SORT_ORDER_ASCENDING = "ascending"; // untranslated
+Blockly.Msg.LISTS_SORT_ORDER_DESCENDING = "descending"; // untranslated
+Blockly.Msg.LISTS_SORT_TITLE = "sort %1 %2 %3"; // untranslated
+Blockly.Msg.LISTS_SORT_TOOLTIP = "Sort a copy of a list."; // untranslated
+Blockly.Msg.LISTS_SORT_TYPE_IGNORECASE = "alphabetic, ignore case"; // untranslated
+Blockly.Msg.LISTS_SORT_TYPE_NUMERIC = "अंकीय";
+Blockly.Msg.LISTS_SORT_TYPE_TEXT = "alphabetic"; // untranslated
+Blockly.Msg.LISTS_SPLIT_HELPURL = "https://github.com/google/blockly/wiki/Lists#splitting-strings-and-joining-lists"; // untranslated
+Blockly.Msg.LISTS_SPLIT_LIST_FROM_TEXT = "make list from text"; // untranslated
+Blockly.Msg.LISTS_SPLIT_TEXT_FROM_LIST = "make text from list"; // untranslated
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_JOIN = "Join a list of texts into one text, separated by a delimiter."; // untranslated
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_SPLIT = "Split text into a list of texts, breaking at each delimiter."; // untranslated
+Blockly.Msg.LISTS_SPLIT_WITH_DELIMITER = "with delimiter"; // untranslated
+Blockly.Msg.LOGIC_BOOLEAN_FALSE = "फॉल्स";
+Blockly.Msg.LOGIC_BOOLEAN_HELPURL = "https://github.com/google/blockly/wiki/Logic#values"; // untranslated
+Blockly.Msg.LOGIC_BOOLEAN_TOOLTIP = "ट्रू या फॉल्स रिटर्न करता है।";
+Blockly.Msg.LOGIC_BOOLEAN_TRUE = "ट्रू";
+Blockly.Msg.LOGIC_COMPARE_HELPURL = "https://en.wikipedia.org/wiki/Inequality_(mathematics)";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_EQ = "ट्रू रिटर्न करें यदि दोनो इनपुट इक दूसरे के बराबर हों।";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GT = "ट्रू रिटर्न करें यदि पहला इनपुट दूसरे इनपुट से बड़ा हो।";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GTE = "ट्रू रिटर्न करें यदि पहला इनपुट दूसरे इनपुट से बड़ा हो या बराबर हो।";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LT = "ट्रू रिटर्न करें यदि पहला इनपुट दूसरे इनपुट से छोटा हो।";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LTE = "ट्रू रिटर्न करें यदि पहला इनपुट दूसरे इनपुट से छोटा हो या बराबर हो।";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_NEQ = "ट्रू रिटर्न करें यदि दोनो इनपुट इक दूसरे के बराबर नहीं हों।";
+Blockly.Msg.LOGIC_NEGATE_HELPURL = "https://github.com/google/blockly/wiki/Logic#not"; // untranslated
+Blockly.Msg.LOGIC_NEGATE_TITLE = "NOT (पूरक) %1";
+Blockly.Msg.LOGIC_NEGATE_TOOLTIP = "ट्रू रिटर्न करता है यदि इनपुट फॉल्स है। फॉल्स रिटर्न करता है यदि इनपुट ट्रू है।";
+Blockly.Msg.LOGIC_NULL = "NULL (अमान्य)";
+Blockly.Msg.LOGIC_NULL_HELPURL = "https://en.wikipedia.org/wiki/Nullable_type"; // untranslated
+Blockly.Msg.LOGIC_NULL_TOOLTIP = "null (अमान्य) रिटर्न करता है।";
+Blockly.Msg.LOGIC_OPERATION_AND = "AND (तथा)";
+Blockly.Msg.LOGIC_OPERATION_HELPURL = "https://github.com/google/blockly/wiki/Logic#logical-operations"; // untranslated
+Blockly.Msg.LOGIC_OPERATION_OR = "OR (अथवा)";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_AND = "ट्रू रिटर्न करें यदि दोनो इनपुट ट्रू हों।";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_OR = "ट्रू रिटर्न करें यदि दोनो मे से इक इनपुट ट्रू हो।";
+Blockly.Msg.LOGIC_TERNARY_CONDITION = "टेस्ट";
+Blockly.Msg.LOGIC_TERNARY_HELPURL = "https://en.wikipedia.org/wiki/%3F:"; // untranslated
+Blockly.Msg.LOGIC_TERNARY_IF_FALSE = "यदि फॉल्स है";
+Blockly.Msg.LOGIC_TERNARY_IF_TRUE = "यदि ट्रू है";
+Blockly.Msg.LOGIC_TERNARY_TOOLTIP = "Check the condition in 'test'. If the condition is true, returns the 'if true' value; otherwise returns the 'if false' value."; // untranslated
+Blockly.Msg.MATH_ADDITION_SYMBOL = "+"; // untranslated
+Blockly.Msg.MATH_ARITHMETIC_HELPURL = "https://en.wikipedia.org/wiki/Arithmetic";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_ADD = "दो संख्याओं का योग रिटर्न करें।";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE = "दो संख्याओं का भागफल रिटर्न करें।";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MINUS = "दो संख्याओं का अंतर रिटर्न करें।";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MULTIPLY = "दो संख्याओं का गुणन रिटर्न करें।";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_POWER = "Return the first number raised to the power of the second number."; // untranslated
+Blockly.Msg.MATH_CHANGE_HELPURL = "https://en.wikipedia.org/wiki/Programming_idiom#Incrementing_a_counter";
+Blockly.Msg.MATH_CHANGE_TITLE = "change %1 by %2"; // untranslated
+Blockly.Msg.MATH_CHANGE_TOOLTIP = "संख्या को चर '%1' से जोड़ें।";
+Blockly.Msg.MATH_CONSTANT_HELPURL = "https://en.wikipedia.org/wiki/Mathematical_constant";
+Blockly.Msg.MATH_CONSTANT_TOOLTIP = "Return one of the common constants: π (3.141…), e (2.718…), φ (1.618…), sqrt(2) (1.414…), sqrt(½) (0.707…), or ∞ (infinity)."; // untranslated
+Blockly.Msg.MATH_CONSTRAIN_HELPURL = "https://en.wikipedia.org/wiki/Clamping_%28graphics%29"; // untranslated
+Blockly.Msg.MATH_CONSTRAIN_TITLE = "constrain %1 low %2 high %3"; // untranslated
+Blockly.Msg.MATH_CONSTRAIN_TOOLTIP = "Constrain a number to be between the specified limits (inclusive)."; // untranslated
+Blockly.Msg.MATH_DIVISION_SYMBOL = "÷"; // untranslated
+Blockly.Msg.MATH_IS_DIVISIBLE_BY = "इसके द्वारा विभाज्य है";
+Blockly.Msg.MATH_IS_EVEN = "सम है";
+Blockly.Msg.MATH_IS_NEGATIVE = "ऋणात्मक है";
+Blockly.Msg.MATH_IS_ODD = "विषम है";
+Blockly.Msg.MATH_IS_POSITIVE = "धनात्मक है";
+Blockly.Msg.MATH_IS_PRIME = "अभाज्य है";
+Blockly.Msg.MATH_IS_TOOLTIP = "Check if a number is an even, odd, prime, whole, positive, negative, or if it is divisible by certain number. Returns true or false."; // untranslated
+Blockly.Msg.MATH_IS_WHOLE = "पूर्णांक है";
+Blockly.Msg.MATH_MODULO_HELPURL = "https://en.wikipedia.org/wiki/Modulo_operation";
+Blockly.Msg.MATH_MODULO_TITLE = "%1 ÷ %2 का शेषफल";
+Blockly.Msg.MATH_MODULO_TOOLTIP = "दो संख्याओं के भाग का शेषफल रिटर्न करें।";
+Blockly.Msg.MATH_MULTIPLICATION_SYMBOL = "×"; // untranslated
+Blockly.Msg.MATH_NUMBER_HELPURL = "https://en.wikipedia.org/wiki/Number";
+Blockly.Msg.MATH_NUMBER_TOOLTIP = "एक संख्या।";
+Blockly.Msg.MATH_ONLIST_HELPURL = ""; // untranslated
+Blockly.Msg.MATH_ONLIST_OPERATOR_AVERAGE = "सूची का औसत मान";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MAX = "सूची मे अधिकतम";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MEDIAN = "सूची की माध्यिका";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MIN = "सूची मे न्यूनतम";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MODE = "सूची का मोड";
+Blockly.Msg.MATH_ONLIST_OPERATOR_RANDOM = "सूची का रैन्डम आइटम";
+Blockly.Msg.MATH_ONLIST_OPERATOR_STD_DEV = "सूची का मानक विचलन";
+Blockly.Msg.MATH_ONLIST_OPERATOR_SUM = "सूची का योग";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_AVERAGE = "Return the average (arithmetic mean) of the numeric values in the list."; // untranslated
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MAX = "सूची मे सबसे बड़ी संख्या रिटर्न करें।";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MEDIAN = "सूची की माध्यिका संख्या रिटर्न करें।";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MIN = "सूची मे सबसे छोटी संख्या रिटर्न करें।";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MODE = "सूची मे सबसे आम आइटम(s) की सूची रिटर्न करें।";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_RANDOM = "सूची से एक रैन्डम आइटम रिटर्न करें।";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_STD_DEV = "सूची का मानक विचलन रिटर्न करें।";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_SUM = "सूची की सभी संख्याओं का योग रिटर्न करें।";
+Blockly.Msg.MATH_POWER_SYMBOL = "^"; // untranslated
+Blockly.Msg.MATH_RANDOM_FLOAT_HELPURL = "https://en.wikipedia.org/wiki/Random_number_generation";
+Blockly.Msg.MATH_RANDOM_FLOAT_TITLE_RANDOM = "रैन्डम अंश";
+Blockly.Msg.MATH_RANDOM_FLOAT_TOOLTIP = "Return a random fraction between 0.0 (inclusive) and 1.0 (exclusive)."; // untranslated
+Blockly.Msg.MATH_RANDOM_INT_HELPURL = "https://en.wikipedia.org/wiki/Random_number_generation";
+Blockly.Msg.MATH_RANDOM_INT_TITLE = "%1 से %2 तक रैन्डम पूर्णांक";
+Blockly.Msg.MATH_RANDOM_INT_TOOLTIP = "Return a random integer between the two specified limits, inclusive."; // untranslated
+Blockly.Msg.MATH_ROUND_HELPURL = "https://en.wikipedia.org/wiki/Rounding";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUND = "पूर्णांक बनाएँ";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDDOWN = "घटा के पूर्णांक बनाएँ";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDUP = "बड़ा के पूर्णांक बनाएँ";
+Blockly.Msg.MATH_ROUND_TOOLTIP = "संख्या को बड़ा या घटा के पूर्णांक बनाएँ।";
+Blockly.Msg.MATH_SINGLE_HELPURL = "https://en.wikipedia.org/wiki/Square_root";
+Blockly.Msg.MATH_SINGLE_OP_ABSOLUTE = "परम";
+Blockly.Msg.MATH_SINGLE_OP_ROOT = "वर्गमूल";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ABS = "संख्या का परम मान रिटर्न करें।";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_EXP = "Return e to the power of a number."; // untranslated
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LN = "संख्या का प्राकृतिक लघुगणक रिटर्न करें।";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LOG10 = "संख्या का मूल 10 लघुगणक रिटर्न करें।";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_NEG = "संख्या का निषेध मान रिटर्न करें।";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_POW10 = "Return 10 to the power of a number."; // untranslated
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ROOT = "संख्या का वर्गमूल रिटर्न करें।";
+Blockly.Msg.MATH_SUBTRACTION_SYMBOL = "-"; // untranslated
+Blockly.Msg.MATH_TRIG_ACOS = "acos"; // untranslated
+Blockly.Msg.MATH_TRIG_ASIN = "asin"; // untranslated
+Blockly.Msg.MATH_TRIG_ATAN = "atan"; // untranslated
+Blockly.Msg.MATH_TRIG_COS = "cos"; // untranslated
+Blockly.Msg.MATH_TRIG_HELPURL = "https://en.wikipedia.org/wiki/Trigonometric_functions";
+Blockly.Msg.MATH_TRIG_SIN = "sin"; // untranslated
+Blockly.Msg.MATH_TRIG_TAN = "tan"; // untranslated
+Blockly.Msg.MATH_TRIG_TOOLTIP_ACOS = "संख्या का आर्ककोसाइन रिटर्न करें।";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ASIN = "संख्या का आर्कसाइन रिटर्न करें।";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ATAN = "संख्या का आर्कटैन्जन्ट रिटर्न करें।";
+Blockly.Msg.MATH_TRIG_TOOLTIP_COS = "डिग्री का कोसाइन रिटर्न करें (रेडियन नही)";
+Blockly.Msg.MATH_TRIG_TOOLTIP_SIN = "डिग्री का साइन रिटर्न करें (रेडियन नही)";
+Blockly.Msg.MATH_TRIG_TOOLTIP_TAN = "डिग्री का टैन्जन्ट रिटर्न करें (रेडियन नही)";
+Blockly.Msg.NEW_VARIABLE = "नया चर...";
+Blockly.Msg.NEW_VARIABLE_TITLE = "नए चर का नाम:";
+Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; // untranslated
+Blockly.Msg.PROCEDURES_ALLOW_STATEMENTS = "allow statements"; // untranslated
+Blockly.Msg.PROCEDURES_BEFORE_PARAMS = ": के साथ";
+Blockly.Msg.PROCEDURES_CALLNORETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29";
+Blockly.Msg.PROCEDURES_CALLNORETURN_TOOLTIP = "यूज़र द्वारा वर्णन किया गया फ़ंक्शन '%1' चलाएँ।";
+Blockly.Msg.PROCEDURES_CALLRETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29";
+Blockly.Msg.PROCEDURES_CALLRETURN_TOOLTIP = "यूज़र द्वारा वर्णन किया गया फ़ंक्शन '%1' चलाएँ और उसका आउटपुट इस्तेमाल करें।";
+Blockly.Msg.PROCEDURES_CALL_BEFORE_PARAMS = ": के साथ";
+Blockly.Msg.PROCEDURES_CREATE_DO = "'%1' बनाएँ";
+Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT = "Describe this function..."; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_DO = ""; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE = "कुछ करें";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE = "to"; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_TOOLTIP = "बिना आउटपुट वाला एक फ़ंक्शन बनाता है।";
+Blockly.Msg.PROCEDURES_DEFRETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_DEFRETURN_RETURN = "रिटर्न";
+Blockly.Msg.PROCEDURES_DEFRETURN_TOOLTIP = "आउटपुट वाला एक फ़ंक्शन बनाता है।";
+Blockly.Msg.PROCEDURES_DEF_DUPLICATE_WARNING = "सावधान: इस फ़ंक्शन मे डुप्लिकेट पैरामीटर हैं।";
+Blockly.Msg.PROCEDURES_HIGHLIGHT_DEF = "फ़ंक्शन परिभाषा को हाइलाइट करें";
+Blockly.Msg.PROCEDURES_IFRETURN_HELPURL = "http://c2.com/cgi/wiki?GuardClause"; // untranslated
+Blockly.Msg.PROCEDURES_IFRETURN_TOOLTIP = "यदि एक मान ट्रू है तो, दूसरा मान रिटर्न करें।";
+Blockly.Msg.PROCEDURES_IFRETURN_WARNING = "सावधान: ये ब्लॉक फ़ंक्शन परिभाषा के अंदर ही इस्तेमाल किया जा सकता।";
+Blockly.Msg.PROCEDURES_MUTATORARG_TITLE = "इनपुट का नाम:";
+Blockly.Msg.PROCEDURES_MUTATORARG_TOOLTIP = "फंगक्शन को इनपुट प्रदान करें।";
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TITLE = "इनपुट";
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TOOLTIP = "Add, remove, or reorder inputs to this function."; // untranslated
+Blockly.Msg.REDO = "Redo"; // untranslated
+Blockly.Msg.REMOVE_COMMENT = "टिप्पणी हटायें";
+Blockly.Msg.RENAME_VARIABLE = "चर का नाम बदलें...";
+Blockly.Msg.RENAME_VARIABLE_TITLE = "सभी '%1' चरों के नाम बदलें:";
+Blockly.Msg.TEXT_APPEND_APPENDTEXT = "से जोड़ें ये टेक्स्ट";
+Blockly.Msg.TEXT_APPEND_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_APPEND_TO = "इस";
+Blockly.Msg.TEXT_APPEND_TOOLTIP = "कुछ टेक्स्ट इस चर '%1' से जोड़ें।";
+Blockly.Msg.TEXT_CHANGECASE_HELPURL = "https://github.com/google/blockly/wiki/Text#adjusting-text-case"; // untranslated
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_LOWERCASE = "छोटे अक्षर मे";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_TITLECASE = "टाइटल केस मे";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_UPPERCASE = "बड़े अक्षर मे";
+Blockly.Msg.TEXT_CHANGECASE_TOOLTIP = "टेक्स्ट की कॉपी भिन्न केस (अक्षर से संबंधित) मे रिटर्न करें।";
+Blockly.Msg.TEXT_CHARAT_FIRST = "पहला अक्षर पाएँ";
+Blockly.Msg.TEXT_CHARAT_FROM_END = "आखिर से अक्षर # पाएँ";
+Blockly.Msg.TEXT_CHARAT_FROM_START = "अक्षर # पाएँ";
+Blockly.Msg.TEXT_CHARAT_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-text"; // untranslated
+Blockly.Msg.TEXT_CHARAT_INPUT_INTEXT = "इस टेक्स्ट मे";
+Blockly.Msg.TEXT_CHARAT_LAST = "आखरी अक्षर पाएँ";
+Blockly.Msg.TEXT_CHARAT_RANDOM = "रैन्डम अक्षर पाएँ";
+Blockly.Msg.TEXT_CHARAT_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_CHARAT_TOOLTIP = "बताई गयी जगह से अक्षर रिटर्न करता है";
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TOOLTIP = "सूची मे एक आइटम जोड़ें।";
+Blockly.Msg.TEXT_CREATE_JOIN_TITLE_JOIN = "जोड़";
+Blockly.Msg.TEXT_CREATE_JOIN_TOOLTIP = "Add, remove, or reorder sections to reconfigure this text block."; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_END = "आखिर से यहाँ तक अक्षर #";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_START = "यहाँ तक अक्षर #";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_LAST = "यहाँ तक आखरी अक्षर";
+Blockly.Msg.TEXT_GET_SUBSTRING_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_INPUT_IN_TEXT = "इस टेक्स्ट मे";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FIRST = "पहले अक्षर से सबस्ट्रिंग पाएँ";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_END = "आखरी अक्षर # से सबस्ट्रिंग पाएँ";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_START = "अक्षर # से सबस्ट्रिंग पाएँ";
+Blockly.Msg.TEXT_GET_SUBSTRING_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_TOOLTIP = "टेक्स्ट का बताया गया अंश रिटर्न करता है";
+Blockly.Msg.TEXT_INDEXOF_HELPURL = "https://github.com/google/blockly/wiki/Text#finding-text"; // untranslated
+Blockly.Msg.TEXT_INDEXOF_INPUT_INTEXT = "इस टेक्स्ट मे";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_FIRST = "टेक्स्ट पहली बार जहाँ आया है उसे ढूढ़े";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_LAST = "टेक्स्ट आखरी बार जहाँ आया है उसे ढूढ़े";
+Blockly.Msg.TEXT_INDEXOF_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_INDEXOF_TOOLTIP = "Returns the index of the first/last occurrence of the first text in the second text. Returns %1 if text is not found."; // untranslated
+Blockly.Msg.TEXT_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Text#checking-for-empty-text"; // untranslated
+Blockly.Msg.TEXT_ISEMPTY_TITLE = "%1 खाली है";
+Blockly.Msg.TEXT_ISEMPTY_TOOLTIP = "ट्रू रिटर्न करता है यदि दिया गया टेक्स्ट खाली है।";
+Blockly.Msg.TEXT_JOIN_HELPURL = "https://github.com/google/blockly/wiki/Text#text-creation"; // untranslated
+Blockly.Msg.TEXT_JOIN_TITLE_CREATEWITH = "इसके साथ टेक्स्ट बनाएँ";
+Blockly.Msg.TEXT_JOIN_TOOLTIP = "Create a piece of text by joining together any number of items."; // untranslated
+Blockly.Msg.TEXT_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_LENGTH_TITLE = "%1 की लंबाई";
+Blockly.Msg.TEXT_LENGTH_TOOLTIP = "दिए गये टेक्स्ट मे अक्षरों की संख्या रिटर्न करता है (खाली स्थान मिला के)।";
+Blockly.Msg.TEXT_PRINT_HELPURL = "https://github.com/google/blockly/wiki/Text#printing-text"; // untranslated
+Blockly.Msg.TEXT_PRINT_TITLE = "प्रिंट करें %1";
+Blockly.Msg.TEXT_PRINT_TOOLTIP = "दिया गया टेक्स्ट प्रिंट करें, संख्या या अन्य मान।";
+Blockly.Msg.TEXT_PROMPT_HELPURL = "https://github.com/google/blockly/wiki/Text#getting-input-from-the-user"; // untranslated
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_NUMBER = "यूज़र से संख्या के लिए प्रॉम्प्ट करें।";
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_TEXT = "यूज़र से कुछ टेक्स्ट के लिए प्रॉम्प्ट करें।";
+Blockly.Msg.TEXT_PROMPT_TYPE_NUMBER = "सूचना के साथ संख्या के लिए प्रॉम्प्ट करें";
+Blockly.Msg.TEXT_PROMPT_TYPE_TEXT = "सूचना के साथ टेक्स्ट के लिए प्रॉम्प्ट करें";
+Blockly.Msg.TEXT_TEXT_HELPURL = "https://en.wikipedia.org/wiki/String_(computer_science)";
+Blockly.Msg.TEXT_TEXT_TOOLTIP = "एक अक्षर, शब्द, या टेक्स्ट की पंक्ति।";
+Blockly.Msg.TEXT_TRIM_HELPURL = "https://github.com/google/blockly/wiki/Text#trimming-removing-spaces"; // untranslated
+Blockly.Msg.TEXT_TRIM_OPERATOR_BOTH = "रिक्त स्थान को इस टेक्स्ट के दोनों तरफ से निकालें";
+Blockly.Msg.TEXT_TRIM_OPERATOR_LEFT = "रिक्त स्थान को इस टेक्स्ट के बायें तरफ से निकालें";
+Blockly.Msg.TEXT_TRIM_OPERATOR_RIGHT = "रिक्त स्थान को इस टेक्स्ट के दाईं तरफ से निकालें";
+Blockly.Msg.TEXT_TRIM_TOOLTIP = "Return a copy of the text with spaces removed from one or both ends."; // untranslated
+Blockly.Msg.TODAY = "आज";
+Blockly.Msg.UNDO = "Undo"; // untranslated
+Blockly.Msg.VARIABLES_DEFAULT_NAME = "आइटम";
+Blockly.Msg.VARIABLES_GET_CREATE_SET = "सेट '%1' बनाएँ";
+Blockly.Msg.VARIABLES_GET_HELPURL = "https://github.com/google/blockly/wiki/Variables#get"; // untranslated
+Blockly.Msg.VARIABLES_GET_TOOLTIP = "इस चर का मान रिटर्न करता है।";
+Blockly.Msg.VARIABLES_SET = "सेट करें %1 को %2";
+Blockly.Msg.VARIABLES_SET_CREATE_GET = "Create 'get %1'"; // untranslated
+Blockly.Msg.VARIABLES_SET_HELPURL = "https://github.com/google/blockly/wiki/Variables#set"; // untranslated
+Blockly.Msg.VARIABLES_SET_TOOLTIP = "इस चर को इनपुट के बराबर सेट करता है।";
+Blockly.Msg.VARIABLE_ALREADY_EXISTS = "A variable named '%1' already exists."; // untranslated
+Blockly.Msg.PROCEDURES_DEFRETURN_TITLE = Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE;
+Blockly.Msg.CONTROLS_IF_IF_TITLE_IF = Blockly.Msg.CONTROLS_IF_MSG_IF;
+Blockly.Msg.CONTROLS_WHILEUNTIL_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_MSG_THEN = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_ELSE_TITLE_ELSE = Blockly.Msg.CONTROLS_IF_MSG_ELSE;
+Blockly.Msg.PROCEDURES_DEFRETURN_PROCEDURE = Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE;
+Blockly.Msg.LISTS_GET_SUBLIST_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.LISTS_GET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.PROCEDURES_DEFRETURN_DO = Blockly.Msg.PROCEDURES_DEFNORETURN_DO;
+Blockly.Msg.CONTROLS_IF_ELSEIF_TITLE_ELSEIF = Blockly.Msg.CONTROLS_IF_MSG_ELSEIF;
+Blockly.Msg.LISTS_GET_INDEX_HELPURL = Blockly.Msg.LISTS_INDEX_OF_HELPURL;
+Blockly.Msg.CONTROLS_FOREACH_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_SET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TITLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_APPEND_VARIABLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.LISTS_INDEX_OF_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.PROCEDURES_DEFRETURN_COMMENT = Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT; \ No newline at end of file
diff --git a/blockly/msg/js/hrx.js b/blockly/msg/js/hrx.js
new file mode 100644
index 0000000..d251839
--- /dev/null
+++ b/blockly/msg/js/hrx.js
@@ -0,0 +1,391 @@
+// This file was automatically generated. Do not modify.
+
+'use strict';
+
+goog.provide('Blockly.Msg.hrx');
+
+goog.require('Blockly.Msg');
+
+Blockly.Msg.ADD_COMMENT = "Kommentar hinzufüche";
+Blockly.Msg.CHANGE_VALUE_TITLE = "Neie Variable...";
+Blockly.Msg.CLEAN_UP = "Clean up Blocks"; // untranslated
+Blockly.Msg.COLLAPSE_ALL = "Blocke zusammerfalte";
+Blockly.Msg.COLLAPSE_BLOCK = "Block zusammerfalte";
+Blockly.Msg.COLOUR_BLEND_COLOUR1 = "Farreb 1";
+Blockly.Msg.COLOUR_BLEND_COLOUR2 = "mit Farreb 2";
+Blockly.Msg.COLOUR_BLEND_HELPURL = "http://meyerweb.com/eric/tools/color-blend/"; // untranslated
+Blockly.Msg.COLOUR_BLEND_RATIO = "im Verhältniss";
+Blockly.Msg.COLOUR_BLEND_TITLE = "misch";
+Blockly.Msg.COLOUR_BLEND_TOOLTIP = "Vermischt 2 Farwe mit konfigurierbare Farrebverhältniss (0.0 - 1.0).";
+Blockly.Msg.COLOUR_PICKER_HELPURL = "https://hrx.wikipedia.org/wiki/Farreb";
+Blockly.Msg.COLOUR_PICKER_TOOLTIP = "Wähl en Farreb von der Palett.";
+Blockly.Msg.COLOUR_RANDOM_HELPURL = "http://randomcolour.com"; // untranslated
+Blockly.Msg.COLOUR_RANDOM_TITLE = "zufälliche Farwe";
+Blockly.Msg.COLOUR_RANDOM_TOOLTIP = "Wähl en Farreb noh dem Zufallsprinzip.";
+Blockly.Msg.COLOUR_RGB_BLUE = "blau";
+Blockly.Msg.COLOUR_RGB_GREEN = "grün";
+Blockly.Msg.COLOUR_RGB_HELPURL = "http://www.december.com/html/spec/colorper.html"; // untranslated
+Blockly.Msg.COLOUR_RGB_RED = "rot";
+Blockly.Msg.COLOUR_RGB_TITLE = "Färreb mit";
+Blockly.Msg.COLOUR_RGB_TOOLTIP = "Kreiere ene Farreb mit sellrbst definierte rot, grün und blau Wearte. All Wearte müsse zwischich 0 und 100 liehe.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_HELPURL = "https://github.com/google/blockly/wiki/Loops#loop-termination-blocks"; // untranslated
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK = "ausbreche aus der Schleif";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE = "mit der nächste Iteration fortfoohre aus der Schleifa";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK = "Die umgebne Schleif beenne.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE = "Die Oonweisung abbreche und mit der nächste Schleifiteration fortfoohre.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_WARNING = "Warnung: Die block sollt nuar in en Schleif verwennet sin.";
+Blockly.Msg.CONTROLS_FOREACH_HELPURL = "https://github.com/google/blockly/wiki/Loops#for-each"; // untranslated
+Blockly.Msg.CONTROLS_FOREACH_TITLE = "Für Weart %1 aus der List %2";
+Blockly.Msg.CONTROLS_FOREACH_TOOLTIP = "Füahr en Oonweisung für jede Weart in der List aus und setzt dabei die Variable \"%1\" uff den aktuelle List Weart.";
+Blockly.Msg.CONTROLS_FOR_HELPURL = "https://github.com/google/blockly/wiki/Loops#count-with"; // untranslated
+Blockly.Msg.CONTROLS_FOR_TITLE = "Zähl %1 von %2 bis %3 mit %4";
+Blockly.Msg.CONTROLS_FOR_TOOLTIP = "Zähl die Variable \"%1\" von enem Startweart bis zu enem Zielweart und füahrefür jede Weart en Oonweisung aus.";
+Blockly.Msg.CONTROLS_IF_ELSEIF_TOOLTIP = "En weitre Bedingung hinzufüche.";
+Blockly.Msg.CONTROLS_IF_ELSE_TOOLTIP = "En orrer Bedingung hinzufüche, füahrt en Oonweisung aus falls ken Bedingung zutrifft.";
+Blockly.Msg.CONTROLS_IF_HELPURL = "https://github.com/google/blockly/wiki/IfElse"; // untranslated
+Blockly.Msg.CONTROLS_IF_IF_TOOLTIP = "Hinzufüche, entferne orrer sortiere von Sektione";
+Blockly.Msg.CONTROLS_IF_MSG_ELSE = "orrer";
+Blockly.Msg.CONTROLS_IF_MSG_ELSEIF = "orrer wenn";
+Blockly.Msg.CONTROLS_IF_MSG_IF = "wenn";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_1 = "Wenn en Bedingung woahr (true) ist, dann füahr en Oonweisung aus.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_2 = "Wenn en Bedingung woahr (true) ist, dann füahr die earscht Oonweisung aus. Ansonscht füahr die zwooite Oonweisung aus.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_3 = "Wenn der erschte Bedingung woahr (true) ist, dann füahr die erschte Oonweisung aus. Orrer wenn die zwooite Bedingung woahr (true) ist, dann füahr die zwooite Oonweisung aus.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_4 = "Wenn der erscht Bedingung woahr (true) ist, dann füahr die erschte Oonweisung aus. Orrer wenn die zwooite Bedingung woahr (true) ist, dann füahr die zwooite Oonweisung aus. Falls ken der beide Bedingungen woahr (true) ist, dann füahr die dritte Oonweisung aus.";
+Blockly.Msg.CONTROLS_REPEAT_HELPURL = "https://hrx.wikipedia.org/wiki/For-Schleif";
+Blockly.Msg.CONTROLS_REPEAT_INPUT_DO = "mach";
+Blockly.Msg.CONTROLS_REPEAT_TITLE = "wiederhol %1 mol";
+Blockly.Msg.CONTROLS_REPEAT_TOOLTIP = "En Oonweisung meahrfach ausführe.";
+Blockly.Msg.CONTROLS_WHILEUNTIL_HELPURL = "https://github.com/google/blockly/wiki/Loops#repeat"; // untranslated
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "Repetiere bis";
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "Repetier solang";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "Füahr die Oonweisung solang aus wie die Bedingung falsch (false) ist.";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "Füahr die Oonweisung solang aus wie die Bedingung woahr (true) ist.";
+Blockly.Msg.DELETE_ALL_BLOCKS = "All %1 Bausten lösche?";
+Blockly.Msg.DELETE_BLOCK = "Block lösche";
+Blockly.Msg.DELETE_VARIABLE = "Delete the '%1' variable"; // untranslated
+Blockly.Msg.DELETE_VARIABLE_CONFIRMATION = "Delete %1 uses of the '%2' variable?"; // untranslated
+Blockly.Msg.DELETE_X_BLOCKS = "Block %1 lösche";
+Blockly.Msg.DISABLE_BLOCK = "Block deaktivieren";
+Blockly.Msg.DUPLICATE_BLOCK = "Kopieren";
+Blockly.Msg.ENABLE_BLOCK = "Block aktivieren";
+Blockly.Msg.EXPAND_ALL = "Blocke expandiere";
+Blockly.Msg.EXPAND_BLOCK = "Block entfalte";
+Blockly.Msg.EXTERNAL_INPUTS = "External Inputsexterne Ingänge";
+Blockly.Msg.HELP = "Hellef";
+Blockly.Msg.INLINE_INPUTS = "interne Ingänge";
+Blockly.Msg.LISTS_CREATE_EMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-empty-list"; // untranslated
+Blockly.Msg.LISTS_CREATE_EMPTY_TITLE = "Generier/erzeich en leear List";
+Blockly.Msg.LISTS_CREATE_EMPTY_TOOLTIP = "Generier/erzeich en leear List ohne Inhalt.";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TITLE_ADD = "List";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TOOLTIP = "Hinzufüche, entferne und sortiere von Elemente.";
+Blockly.Msg.LISTS_CREATE_WITH_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
+Blockly.Msg.LISTS_CREATE_WITH_INPUT_WITH = "Erzeich List mit";
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TOOLTIP = "En Element zur List hinzufüche.";
+Blockly.Msg.LISTS_CREATE_WITH_TOOLTIP = "Generier/erzeich en List mit konfigurierte Elemente.";
+Blockly.Msg.LISTS_GET_INDEX_FIRST = "earste";
+Blockly.Msg.LISTS_GET_INDEX_FROM_END = "#te von hinne";
+Blockly.Msg.LISTS_GET_INDEX_FROM_START = "#"; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_GET = "Nehm";
+Blockly.Msg.LISTS_GET_INDEX_GET_REMOVE = "Nehm und entfern";
+Blockly.Msg.LISTS_GET_INDEX_LAST = "letzte";
+Blockly.Msg.LISTS_GET_INDEX_RANDOM = "zufälliches";
+Blockly.Msg.LISTS_GET_INDEX_REMOVE = "Entfern";
+Blockly.Msg.LISTS_GET_INDEX_TAIL = ""; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FIRST = "Extrahiert das earste Element von der List.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FROM = "Extrahiert das Element zu en definierte Stell von der List.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_LAST = "Extrahiert das letzte Element von der List.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_RANDOM = "Extrahiert en zufälliches Element von der List.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST = "Extrahiert und entfernt das earste Element von der List.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM = "Extrahiert und entfernt das Element zu en definierte Stell von der List.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST = "Extrahiert und entfernt das letzte Element von der List.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM = "Extrahiert und entfernt en zufälliches Element von der List.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST = "Entfernt das earste Element von der List.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM = "Entfernt das Element zu en definierte Stell von der List.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST = "Entfernt das letzte Element von der List.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM = "Entfernt en zufälliches Element von der List.";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_END = "zu # vom End";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_START = "zu #";
+Blockly.Msg.LISTS_GET_SUBLIST_END_LAST = "zum Letzte";
+Blockly.Msg.LISTS_GET_SUBLIST_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-a-sublist"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_START_FIRST = "hol Unnerliste vom Earste";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_END = "hol Unnerliste von # vom End";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_START = "hol Unnerlist von #";
+Blockly.Msg.LISTS_GET_SUBLIST_TAIL = ""; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_TOOLTIP = "Generiert en Kopie von en definierte Tel von en List.";
+Blockly.Msg.LISTS_INDEX_FROM_END_TOOLTIP = "%1 ist das letzte Element.";
+Blockly.Msg.LISTS_INDEX_FROM_START_TOOLTIP = "%1 ist das earschte Element.";
+Blockly.Msg.LISTS_INDEX_OF_FIRST = "Such earstes Voarkommniss";
+Blockly.Msg.LISTS_INDEX_OF_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-items-from-a-list"; // untranslated
+Blockly.Msg.LISTS_INDEX_OF_LAST = "Such letztes Voarkommniss";
+Blockly.Msg.LISTS_INDEX_OF_TOOLTIP = "Sucht die Position (index) von en Element in der List Gebt %1 zurück wenn nixs gefunn woard.";
+Blockly.Msg.LISTS_INLIST = "in der List";
+Blockly.Msg.LISTS_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#is-empty"; // untranslated
+Blockly.Msg.LISTS_ISEMPTY_TITLE = "%1 ist leear?";
+Blockly.Msg.LISTS_ISEMPTY_TOOLTIP = "Ist woahr (true), wenn die List leear ist.";
+Blockly.Msg.LISTS_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Lists#length-of"; // untranslated
+Blockly.Msg.LISTS_LENGTH_TITLE = "länge %1";
+Blockly.Msg.LISTS_LENGTH_TOOLTIP = "Die Oonzoohl von Elemente in der List.";
+Blockly.Msg.LISTS_REPEAT_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
+Blockly.Msg.LISTS_REPEAT_TITLE = "Erzich List mit Element %1 wiederhol das %2 mol";
+Blockly.Msg.LISTS_REPEAT_TOOLTIP = "Erzeicht en List mit en variable Oonzoohl von Elemente";
+Blockly.Msg.LISTS_SET_INDEX_HELPURL = "https://github.com/google/blockly/wiki/Lists#in-list--set"; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_INPUT_TO = "uff";
+Blockly.Msg.LISTS_SET_INDEX_INSERT = "tue ren setz an";
+Blockly.Msg.LISTS_SET_INDEX_SET = "setz";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST = "Tut das Element an en Oonfang von en List ren setze.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FROM = "Tut das Element ren setze an en definierte Stell an en List.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_LAST = "Oonhängt das Element zu en List sei End.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM = "Tut das Element zufällich an en List ren setze.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FIRST = "Sets the first item in a list.Setzt das earschte Element an en list.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FROM = "Setzt das Element zu en definierte Stell in en List.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_LAST = "Setzt das letzte Element an en List.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_RANDOM = "Setzt en zufälliches Element an en List.";
+Blockly.Msg.LISTS_SORT_HELPURL = "https://github.com/google/blockly/wiki/Lists#sorting-a-list"; // untranslated
+Blockly.Msg.LISTS_SORT_ORDER_ASCENDING = "ascending"; // untranslated
+Blockly.Msg.LISTS_SORT_ORDER_DESCENDING = "descending"; // untranslated
+Blockly.Msg.LISTS_SORT_TITLE = "sort %1 %2 %3"; // untranslated
+Blockly.Msg.LISTS_SORT_TOOLTIP = "Sort a copy of a list."; // untranslated
+Blockly.Msg.LISTS_SORT_TYPE_IGNORECASE = "alphabetic, ignore case"; // untranslated
+Blockly.Msg.LISTS_SORT_TYPE_NUMERIC = "numeric"; // untranslated
+Blockly.Msg.LISTS_SORT_TYPE_TEXT = "alphabetic"; // untranslated
+Blockly.Msg.LISTS_SPLIT_HELPURL = "https://github.com/google/blockly/wiki/Lists#splitting-strings-and-joining-lists"; // untranslated
+Blockly.Msg.LISTS_SPLIT_LIST_FROM_TEXT = "make list from text"; // untranslated
+Blockly.Msg.LISTS_SPLIT_TEXT_FROM_LIST = "make text from list"; // untranslated
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_JOIN = "Join a list of texts into one text, separated by a delimiter."; // untranslated
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_SPLIT = "Split text into a list of texts, breaking at each delimiter."; // untranslated
+Blockly.Msg.LISTS_SPLIT_WITH_DELIMITER = "with delimiter"; // untranslated
+Blockly.Msg.LOGIC_BOOLEAN_FALSE = "falsch";
+Blockly.Msg.LOGIC_BOOLEAN_HELPURL = "https://github.com/google/blockly/wiki/Logic#values"; // untranslated
+Blockly.Msg.LOGIC_BOOLEAN_TOOLTIP = "Ist entweder woahr (true) orrer falsch (false)";
+Blockly.Msg.LOGIC_BOOLEAN_TRUE = "woahr";
+Blockly.Msg.LOGIC_COMPARE_HELPURL = "https://hrx.wikipedia.org/wiki/Vergleich_%28Zahlen%29";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_EQ = "Ist woahr (true) wenn beide Wearte identisch sind.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GT = "Ist woahr (true) wenn der erschte Weart grösser als der zwooite Weart ist.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GTE = "Ist woahr (true) wenn der erschte Weart grösser als orrer gleich gross wie zwooite Weart ist.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LT = "Ist woahr (true) wenn der earschte Weart klener als der zwooite Weart ist.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LTE = "Ist woahr (true) wenn der earscht Weart klener als orrer gleich gross wie zwooite Weart ist.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_NEQ = "Ist woahr (true) wenn beide Wearte unnerschiedlich sind.";
+Blockly.Msg.LOGIC_NEGATE_HELPURL = "https://github.com/google/blockly/wiki/Logic#not"; // untranslated
+Blockly.Msg.LOGIC_NEGATE_TITLE = "net %1";
+Blockly.Msg.LOGIC_NEGATE_TOOLTIP = "Ist woahr (true) wenn der Ingäweweart falsch (false) ist. Ist falsch (false) wenn der Ingäweweart woahr (true) ist.";
+Blockly.Msg.LOGIC_NULL = "null";
+Blockly.Msg.LOGIC_NULL_HELPURL = "https://en.wikipedia.org/wiki/Nullable_type"; // untranslated
+Blockly.Msg.LOGIC_NULL_TOOLTIP = "Is NULL.";
+Blockly.Msg.LOGIC_OPERATION_AND = "und";
+Blockly.Msg.LOGIC_OPERATION_HELPURL = "https://github.com/google/blockly/wiki/Logic#logical-operations"; // untranslated
+Blockly.Msg.LOGIC_OPERATION_OR = "orrer";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_AND = "Ist woahr (true) wenn beide Wearte woahr (true) sind.";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_OR = "Ist woahr (true) wenn en von der beide Wearte woahr (true) ist.";
+Blockly.Msg.LOGIC_TERNARY_CONDITION = "test";
+Blockly.Msg.LOGIC_TERNARY_HELPURL = "https://en.wikipedia.org/wiki/%3F:"; // untranslated
+Blockly.Msg.LOGIC_TERNARY_IF_FALSE = "wenn falsch";
+Blockly.Msg.LOGIC_TERNARY_IF_TRUE = "wenn woahr";
+Blockly.Msg.LOGIC_TERNARY_TOOLTIP = "Üwerprüft en Bedingung \"test\". Wenn die Bedingung woahr ist weerd der \"wenn woahr\" Weart zurückgeb, annerfalls der \"wenn falsch\" Weart";
+Blockly.Msg.MATH_ADDITION_SYMBOL = "+"; // untranslated
+Blockly.Msg.MATH_ARITHMETIC_HELPURL = "https://hrx.wikipedia.org/wiki/Grundrechenoort";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_ADD = "Ist die Summe zwooier Wearte.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE = "Ist der Quotient zwooier Wearte.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MINUS = "Ist die Differenz zwooier Wearte.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MULTIPLY = "Ist das Produkt zwooier Wearte.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_POWER = "Ist der earschte Weart potenziert mit dem zoiten Weart.";
+Blockly.Msg.MATH_CHANGE_HELPURL = "https://hrx.wikipedia.org/wiki/Inkrement_und_Dekrement";
+Blockly.Msg.MATH_CHANGE_TITLE = "mach höcher / erhöhe %1 um %2";
+Blockly.Msg.MATH_CHANGE_TOOLTIP = "Addiert en Weart zur Variable \"%1\" hinzu.";
+Blockly.Msg.MATH_CONSTANT_HELPURL = "https://hrx.wikipedia.org/wiki/Mathematische_Konstante";
+Blockly.Msg.MATH_CONSTANT_TOOLTIP = "Mathematische Konstante wie: π (3.141…), e (2.718…), φ (1.618…), sqrt(2) (1.414…), sqrt(½) (0.707…) oder ∞ (unendlich).";
+Blockly.Msg.MATH_CONSTRAIN_HELPURL = "https://en.wikipedia.org/wiki/Clamping_%28graphics%29"; // untranslated
+Blockly.Msg.MATH_CONSTRAIN_TITLE = "begrenze %1 von %2 bis %3";
+Blockly.Msg.MATH_CONSTRAIN_TOOLTIP = "Begrenzt den Weartebereich mittels von / bis Wearte. (inklusiv)";
+Blockly.Msg.MATH_DIVISION_SYMBOL = "÷"; // untranslated
+Blockly.Msg.MATH_IS_DIVISIBLE_BY = "ist telbar/kann getelt sin doorrich";
+Blockly.Msg.MATH_IS_EVEN = "ist grood";
+Blockly.Msg.MATH_IS_NEGATIVE = "ist negativ";
+Blockly.Msg.MATH_IS_ODD = "ist ungrood";
+Blockly.Msg.MATH_IS_POSITIVE = "ist positiv";
+Blockly.Msg.MATH_IS_PRIME = "ist en Primenzoohl";
+Blockly.Msg.MATH_IS_TOOLTIP = "Üwerprüft ob en Zoohl grood, ungrood, en Primenzoohl, ganzzoohlich, positiv, negativ orrer doorrich en zwooite Zoohl telbar ist. Gebt woahr (true) orrer falsch (false) zurück.";
+Blockly.Msg.MATH_IS_WHOLE = "ganze Zoohl";
+Blockly.Msg.MATH_MODULO_HELPURL = "https://hrx.wikipedia.org/wiki/Modulo";
+Blockly.Msg.MATH_MODULO_TITLE = "Rest von %1 ÷ %2";
+Blockly.Msg.MATH_MODULO_TOOLTIP = "Der Rest noh en Division.";
+Blockly.Msg.MATH_MULTIPLICATION_SYMBOL = "×"; // untranslated
+Blockly.Msg.MATH_NUMBER_HELPURL = "https://hrx.wikipedia.org/wiki/Zoohl";
+Blockly.Msg.MATH_NUMBER_TOOLTIP = "En Zoohl.";
+Blockly.Msg.MATH_ONLIST_HELPURL = ""; // untranslated
+Blockly.Msg.MATH_ONLIST_OPERATOR_AVERAGE = "Mittelweart en List";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MAX = "Maximalweart en List";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MEDIAN = "Median von en List";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MIN = "Minimalweart von en List";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MODE = "Restweart von en List";
+Blockly.Msg.MATH_ONLIST_OPERATOR_RANDOM = "Zufallsweart von en List";
+Blockly.Msg.MATH_ONLIST_OPERATOR_STD_DEV = "Standart/Padrong Abweichung von en List";
+Blockly.Msg.MATH_ONLIST_OPERATOR_SUM = "Summe von en List";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_AVERAGE = "Ist der Doorrichschnittsweart von aller Wearte in en List.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MAX = "Ist der grösste Weart in en List.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MEDIAN = "Ist der Zentralweart von aller Wearte in en List.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MIN = "Ist der klenste Weart in en List.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MODE = "Findt den am häifichste voarkommend Weart in en List. Falls ken Weart öftersch voarkomme als all annre, weard die originale List zurückgeche";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_RANDOM = "Geb en Zufallsweart aus der List zurück.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_STD_DEV = "Ist die standartiesierte/padronisierte Standartabweichung/Padrongabweichung von aller Wearte in der List";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_SUM = "Ist die Summ aller Wearte in en List.";
+Blockly.Msg.MATH_POWER_SYMBOL = "^"; // untranslated
+Blockly.Msg.MATH_RANDOM_FLOAT_HELPURL = "https://hex.wikipedia.org/wiki/Zufallszoohle";
+Blockly.Msg.MATH_RANDOM_FLOAT_TITLE_RANDOM = "Zufallszoohl (0.0 -1.0)";
+Blockly.Msg.MATH_RANDOM_FLOAT_TOOLTIP = "Generier/erzeich en Zufallszoohl zwischich 0.0 (inklusiv) und 1.0 (exklusiv).";
+Blockly.Msg.MATH_RANDOM_INT_HELPURL = "https://hrx.wikipedia.org/wiki/Zufallszahlen";
+Blockly.Msg.MATH_RANDOM_INT_TITLE = "ganzoohlicher Zufallswearte zwischich %1 bis %2";
+Blockly.Msg.MATH_RANDOM_INT_TOOLTIP = "Generier/erzeich en ganzähliche Zufallsweart zwischich zwooi Wearte (inklusiv).";
+Blockly.Msg.MATH_ROUND_HELPURL = "https://hrx.wikipedia.org/wiki/Runden";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUND = "runde";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDDOWN = "ab runde";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDUP = "uff runde";
+Blockly.Msg.MATH_ROUND_TOOLTIP = "En Zoohl uff orrer ab runde.";
+Blockly.Msg.MATH_SINGLE_HELPURL = "https://hrx.wikipedia.org/wiki/Quadratwoorzel";
+Blockly.Msg.MATH_SINGLE_OP_ABSOLUTE = "Absolutweart";
+Blockly.Msg.MATH_SINGLE_OP_ROOT = "Quadratwoorzel";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ABS = "Ist der Absolutweart von en Weart.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_EXP = "Ist Weart von der Exponentialfunktion von en Weart.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LN = "Ist der natüarliche Logarithmus von en Weart.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LOG10 = "Ist der dekoodische Logarithmus von en Weart.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_NEG = "Negiert en Weart.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_POW10 = "Rechnet 10 hoch Ingäbweart.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ROOT = "Ist die Qudratwoorzel von en Weart.";
+Blockly.Msg.MATH_SUBTRACTION_SYMBOL = "-"; // untranslated
+Blockly.Msg.MATH_TRIG_ACOS = "acos"; // untranslated
+Blockly.Msg.MATH_TRIG_ASIN = "asin"; // untranslated
+Blockly.Msg.MATH_TRIG_ATAN = "atan"; // untranslated
+Blockly.Msg.MATH_TRIG_COS = "cos"; // untranslated
+Blockly.Msg.MATH_TRIG_HELPURL = "https://hrx.wikipedia.org/wiki/Trigonometrie";
+Blockly.Msg.MATH_TRIG_SIN = "sin"; // untranslated
+Blockly.Msg.MATH_TRIG_TAN = "tan"; // untranslated
+Blockly.Msg.MATH_TRIG_TOOLTIP_ACOS = "Ist der Arcuscosinus von en Ingabweart.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ASIN = "Ist der Arcussinus von en Ingäbweart.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ATAN = "Ist der Arcustangens von en Ingäbweart.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_COS = "Ist der Cosinus von en Winkel.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_SIN = "Ist der Sinus von en Winkel.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_TAN = "Ist der Tangens von en Winkel.";
+Blockly.Msg.NEW_VARIABLE = "Neie Variable...";
+Blockly.Msg.NEW_VARIABLE_TITLE = "Die neie Variable sei Noome:";
+Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; // untranslated
+Blockly.Msg.PROCEDURES_ALLOW_STATEMENTS = "allow statements"; // untranslated
+Blockly.Msg.PROCEDURES_BEFORE_PARAMS = "mit:";
+Blockly.Msg.PROCEDURES_CALLNORETURN_HELPURL = "https://hrx.wikipedia.org/wiki/Prozedur_%28Programmierung%29";
+Blockly.Msg.PROCEDURES_CALLNORETURN_TOOLTIP = "Ruf en Funktionsblock ohne Rückgäweart uff.";
+Blockly.Msg.PROCEDURES_CALLRETURN_HELPURL = "https://hrx.wikipedia.org/wiki/Prozedur_%28Programmierung%29";
+Blockly.Msg.PROCEDURES_CALLRETURN_TOOLTIP = "Ruf en Funktionsblock mit Rückgäbweart uff.";
+Blockly.Msg.PROCEDURES_CALL_BEFORE_PARAMS = "mit:";
+Blockly.Msg.PROCEDURES_CREATE_DO = "Generier/erzeich \"Uffruf %1\"";
+Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT = "Describe this function..."; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_DO = ""; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE = "Funktionsblock";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE = "zu";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TOOLTIP = "En Funktionsblock ohne Rückgäbweart.";
+Blockly.Msg.PROCEDURES_DEFRETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_DEFRETURN_RETURN = "geb zurück";
+Blockly.Msg.PROCEDURES_DEFRETURN_TOOLTIP = "En Funktionsblock mit Rückgäbweart.";
+Blockly.Msg.PROCEDURES_DEF_DUPLICATE_WARNING = "Warnung: die Funktionsblock hot doppelt Parameter.";
+Blockly.Msg.PROCEDURES_HIGHLIGHT_DEF = "Markiear Funktionsblock";
+Blockly.Msg.PROCEDURES_IFRETURN_HELPURL = "http://c2.com/cgi/wiki?GuardClause"; // untranslated
+Blockly.Msg.PROCEDURES_IFRETURN_TOOLTIP = "Wenn der earste Weart woahr (true) ist, Geb den zwooite Weart zurück.";
+Blockly.Msg.PROCEDURES_IFRETURN_WARNING = "Warnung: Der Block därref nuar innich en Funktionsblock genutzt sin.";
+Blockly.Msg.PROCEDURES_MUTATORARG_TITLE = "Markiear Funktionsblock";
+Blockly.Msg.PROCEDURES_MUTATORARG_TOOLTIP = "Generier/erzeich \"Uffruf %1\"";
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TITLE = "Parameter";
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TOOLTIP = "Variable:";
+Blockly.Msg.REDO = "Redo"; // untranslated
+Blockly.Msg.REMOVE_COMMENT = "Kommentar entferne";
+Blockly.Msg.RENAME_VARIABLE = "Die neie Variable sei Noome:";
+Blockly.Msg.RENAME_VARIABLE_TITLE = "All \"%1\" Variable umbenenne in:";
+Blockly.Msg.TEXT_APPEND_APPENDTEXT = "Text oonhänge";
+Blockly.Msg.TEXT_APPEND_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_APPEND_TO = "An";
+Blockly.Msg.TEXT_APPEND_TOOLTIP = "Text an die Variable \"%1\" oonhänge.";
+Blockly.Msg.TEXT_CHANGECASE_HELPURL = "https://github.com/google/blockly/wiki/Text#adjusting-text-case"; // untranslated
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_LOWERCASE = "umwandle in klenbuchstoobe";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_TITLECASE = "umwandle in Wörter";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_UPPERCASE = "umwandle in GROSSBUCHSTOOBE";
+Blockly.Msg.TEXT_CHANGECASE_TOOLTIP = "Wandelt Schreibweise von Texte um, in Grossbuchstoobe, Klenbuchstoobe orrer den earste Buchstoob von jedes Wort gross und die annre klen.";
+Blockly.Msg.TEXT_CHARAT_FIRST = "hol earschte Buchstoob";
+Blockly.Msg.TEXT_CHARAT_FROM_END = "hol Buchstoob # von End";
+Blockly.Msg.TEXT_CHARAT_FROM_START = "hol Buchstoob #";
+Blockly.Msg.TEXT_CHARAT_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-text"; // untranslated
+Blockly.Msg.TEXT_CHARAT_INPUT_INTEXT = "in Text";
+Blockly.Msg.TEXT_CHARAT_LAST = "hol letztes Wort";
+Blockly.Msg.TEXT_CHARAT_RANDOM = "hol zufälliches Buchstoob";
+Blockly.Msg.TEXT_CHARAT_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_CHARAT_TOOLTIP = "Extrahiear en Buchstoob von en spezifizierte Position.";
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TOOLTIP = "En Element zum Text hinzufüche.";
+Blockly.Msg.TEXT_CREATE_JOIN_TITLE_JOIN = "verbinne";
+Blockly.Msg.TEXT_CREATE_JOIN_TOOLTIP = "Hinzufüche, entfernne und sortiere von Elemente.";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_END = "bis #te Buchstoob von hinne";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_START = "bis Buchstoob #te";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_LAST = "bis letzte Buchstoob";
+Blockly.Msg.TEXT_GET_SUBSTRING_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_INPUT_IN_TEXT = "in Text";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FIRST = "earschte Buchstoob";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_END = "hol #te Buchstoob von hinne";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_START = "hol substring Buchstoob #te";
+Blockly.Msg.TEXT_GET_SUBSTRING_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_TOOLTIP = "Schickt en bestimmstes Tel von dem Text retuar.";
+Blockly.Msg.TEXT_INDEXOF_HELPURL = "https://github.com/google/blockly/wiki/Text#finding-text"; // untranslated
+Blockly.Msg.TEXT_INDEXOF_INPUT_INTEXT = "im Text";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_FIRST = "Such der Begriff sein earstes Voarkommniss";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_LAST = "Suche der Begriff sein letztes Vorkommniss.";
+Blockly.Msg.TEXT_INDEXOF_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_INDEXOF_TOOLTIP = "Findt das earste / letzte Voarkommniss von en Suchbegriffes in enem Text. Gebt die Position von dem Begriff orrer %1 zurück.";
+Blockly.Msg.TEXT_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Text#checking-for-empty-text"; // untranslated
+Blockly.Msg.TEXT_ISEMPTY_TITLE = "%1 ist leer?";
+Blockly.Msg.TEXT_ISEMPTY_TOOLTIP = "Ist woahr (true), wenn der Text leer ist.";
+Blockly.Msg.TEXT_JOIN_HELPURL = "https://github.com/google/blockly/wiki/Text#text-creation"; // untranslated
+Blockly.Msg.TEXT_JOIN_TITLE_CREATEWITH = "Erstell Text aus";
+Blockly.Msg.TEXT_JOIN_TOOLTIP = "Erstellt en Text doorrich das verbinne von mehre Textelemente.";
+Blockly.Msg.TEXT_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_LENGTH_TITLE = "läng %1";
+Blockly.Msg.TEXT_LENGTH_TOOLTIP = "Die Oonzoohl von Zeiche in enem Text. (inkl. Leerzeiche)";
+Blockly.Msg.TEXT_PRINT_HELPURL = "https://github.com/google/blockly/wiki/Text#printing-text"; // untranslated
+Blockly.Msg.TEXT_PRINT_TITLE = "Ausgäb %1";
+Blockly.Msg.TEXT_PRINT_TOOLTIP = "Geb den Inhalt von en Variable aus.";
+Blockly.Msg.TEXT_PROMPT_HELPURL = "https://github.com/google/blockly/wiki/Text#getting-input-from-the-user"; // untranslated
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_NUMBER = "Frocht den Benutzer noh en Zoohl.";
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_TEXT = "Frocht den Benutzer noh enem Text.";
+Blockly.Msg.TEXT_PROMPT_TYPE_NUMBER = "Frächt noh Zoohl mit Hinweis";
+Blockly.Msg.TEXT_PROMPT_TYPE_TEXT = "Frocht noh Text mit Hinweis";
+Blockly.Msg.TEXT_TEXT_HELPURL = "https://en.wikipedia.org/wiki/String_(computer_science)https://hrx.wikipedia.org/wiki/Zeichenkette";
+Blockly.Msg.TEXT_TEXT_TOOLTIP = "En Buchstoob, Text orrer Satz.";
+Blockly.Msg.TEXT_TRIM_HELPURL = "https://github.com/google/blockly/wiki/Text#trimming-removing-spaces"; // untranslated
+Blockly.Msg.TEXT_TRIM_OPERATOR_BOTH = "entfern Leerzeiche von Oonfang und End Seite";
+Blockly.Msg.TEXT_TRIM_OPERATOR_LEFT = "entferne Leerzeiche von Oonfang Seite";
+Blockly.Msg.TEXT_TRIM_OPERATOR_RIGHT = "entferne Leerzeiche von End Seite von";
+Blockly.Msg.TEXT_TRIM_TOOLTIP = "Entfernt Leerzeiche vom Oonfang und / orrer End von en Text.";
+Blockly.Msg.TODAY = "Today"; // untranslated
+Blockly.Msg.UNDO = "Undo"; // untranslated
+Blockly.Msg.VARIABLES_DEFAULT_NAME = "Element";
+Blockly.Msg.VARIABLES_GET_CREATE_SET = "Generier/erzeiche \"Schreibe %1\"";
+Blockly.Msg.VARIABLES_GET_HELPURL = "https://github.com/google/blockly/wiki/Variables#get"; // untranslated
+Blockly.Msg.VARIABLES_GET_TOOLTIP = "Gebt der Variable sein Weart zurück.";
+Blockly.Msg.VARIABLES_SET = "Schreib %1 zu %2";
+Blockly.Msg.VARIABLES_SET_CREATE_GET = "Generier/erzeich \"Lese %1\"";
+Blockly.Msg.VARIABLES_SET_HELPURL = "https://github.com/google/blockly/wiki/Variables#set"; // untranslated
+Blockly.Msg.VARIABLES_SET_TOOLTIP = "Setzt en Variable sei Weart.";
+Blockly.Msg.VARIABLE_ALREADY_EXISTS = "A variable named '%1' already exists."; // untranslated
+Blockly.Msg.PROCEDURES_DEFRETURN_TITLE = Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE;
+Blockly.Msg.CONTROLS_IF_IF_TITLE_IF = Blockly.Msg.CONTROLS_IF_MSG_IF;
+Blockly.Msg.CONTROLS_WHILEUNTIL_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_MSG_THEN = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_ELSE_TITLE_ELSE = Blockly.Msg.CONTROLS_IF_MSG_ELSE;
+Blockly.Msg.PROCEDURES_DEFRETURN_PROCEDURE = Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE;
+Blockly.Msg.LISTS_GET_SUBLIST_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.LISTS_GET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.PROCEDURES_DEFRETURN_DO = Blockly.Msg.PROCEDURES_DEFNORETURN_DO;
+Blockly.Msg.CONTROLS_IF_ELSEIF_TITLE_ELSEIF = Blockly.Msg.CONTROLS_IF_MSG_ELSEIF;
+Blockly.Msg.LISTS_GET_INDEX_HELPURL = Blockly.Msg.LISTS_INDEX_OF_HELPURL;
+Blockly.Msg.CONTROLS_FOREACH_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_SET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TITLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_APPEND_VARIABLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.LISTS_INDEX_OF_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.PROCEDURES_DEFRETURN_COMMENT = Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT; \ No newline at end of file
diff --git a/blockly/msg/js/hu.js b/blockly/msg/js/hu.js
new file mode 100644
index 0000000..90fa37e
--- /dev/null
+++ b/blockly/msg/js/hu.js
@@ -0,0 +1,391 @@
+// This file was automatically generated. Do not modify.
+
+'use strict';
+
+goog.provide('Blockly.Msg.hu');
+
+goog.require('Blockly.Msg');
+
+Blockly.Msg.ADD_COMMENT = "Megjegyzés hozzáadása";
+Blockly.Msg.CHANGE_VALUE_TITLE = "Érték módosítása:";
+Blockly.Msg.CLEAN_UP = "Blokkok kiürítése";
+Blockly.Msg.COLLAPSE_ALL = "Blokkok összecsukása";
+Blockly.Msg.COLLAPSE_BLOCK = "Blokk összecsukása";
+Blockly.Msg.COLOUR_BLEND_COLOUR1 = "szín 1";
+Blockly.Msg.COLOUR_BLEND_COLOUR2 = "szín 2";
+Blockly.Msg.COLOUR_BLEND_HELPURL = "http://meyerweb.com/eric/tools/color-blend/"; // untranslated
+Blockly.Msg.COLOUR_BLEND_RATIO = "arány";
+Blockly.Msg.COLOUR_BLEND_TITLE = "színkeverés";
+Blockly.Msg.COLOUR_BLEND_TOOLTIP = "Két színt kever össze a megadott arányban (0.0 - 1.0).";
+Blockly.Msg.COLOUR_PICKER_HELPURL = "https://hu.wikipedia.org/wiki/Szín";
+Blockly.Msg.COLOUR_PICKER_TOOLTIP = "Válassz színt a palettáról.";
+Blockly.Msg.COLOUR_RANDOM_HELPURL = "http://randomcolour.com"; // untranslated
+Blockly.Msg.COLOUR_RANDOM_TITLE = "véletlen szín";
+Blockly.Msg.COLOUR_RANDOM_TOOLTIP = "Véletlenszerűen kiválasztott szín.";
+Blockly.Msg.COLOUR_RGB_BLUE = "kék";
+Blockly.Msg.COLOUR_RGB_GREEN = "zöld";
+Blockly.Msg.COLOUR_RGB_HELPURL = "http://www.december.com/html/spec/colorper.html"; // untranslated
+Blockly.Msg.COLOUR_RGB_RED = "vörös";
+Blockly.Msg.COLOUR_RGB_TITLE = "Szín";
+Blockly.Msg.COLOUR_RGB_TOOLTIP = "Szín előállítása a megadott vörös, zöld, és kék értékekkel. Minden értéknek 0 és 100 közé kell esnie.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_HELPURL = "https://github.com/google/blockly/wiki/Loops#loop-termination-blocks"; // untranslated
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK = "befejezi az ismétlést";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE = "folytatja a következővel";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK = "Megszakítja az utasítást tartalmazó ciklust.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE = "Kihagyja a ciklus további részét, és elölről kezdi a következő elemmel.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_WARNING = "Figyelem: Ez a blokk csak cikluson belül használható.";
+Blockly.Msg.CONTROLS_FOREACH_HELPURL = "https://github.com/google/blockly/wiki/Loops#for-each"; // untranslated
+Blockly.Msg.CONTROLS_FOREACH_TITLE = "minden %1 elemre a %2 listában";
+Blockly.Msg.CONTROLS_FOREACH_TOOLTIP = "A '%1' változó minden lépésben megkapja a lista adott elemének értékét, és végrehajt vele néhány utasítást.";
+Blockly.Msg.CONTROLS_FOR_HELPURL = "https://github.com/google/blockly/wiki/Loops#count-with"; // untranslated
+Blockly.Msg.CONTROLS_FOR_TITLE = "számolj %1 értékével %2 és %3 között %4 lépésközzel";
+Blockly.Msg.CONTROLS_FOR_TOOLTIP = "A(z) '%1' változó felveszi a kezdőérték és a végérték közötti értékeket a meghatározott lépésközzel. Eközben a meghatározott blokkokat hajtja végre.";
+Blockly.Msg.CONTROLS_IF_ELSEIF_TOOLTIP = "Feltétel hozzáadása a ha blokkhoz.";
+Blockly.Msg.CONTROLS_IF_ELSE_TOOLTIP = "Végső feltétel hozzáadása a ha blokkhoz.";
+Blockly.Msg.CONTROLS_IF_HELPURL = "https://github.com/google/blockly/wiki/IfElse"; // untranslated
+Blockly.Msg.CONTROLS_IF_IF_TOOLTIP = "A ha blokk testreszabásához bővítsd, töröld vagy rendezd át a részeit.";
+Blockly.Msg.CONTROLS_IF_MSG_ELSE = "különben";
+Blockly.Msg.CONTROLS_IF_MSG_ELSEIF = "különben ha";
+Blockly.Msg.CONTROLS_IF_MSG_IF = "ha";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_1 = "Ha a kifejezés igaz, akkor végrehajtja az utasításokat.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_2 = "Ha a kifejezés igaz, akkor végrehajtja az első utasításblokkot. Különben a második utasításblokk kerül végrehajtásra.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_3 = "Ha az első kifejezés igaz, akkor végrehajtja az első utasításblokkot. Különben, ha a második kifejezés igaz, akkor végrehajtja a második utasítás blokkot.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_4 = "Ha az első kifejezés igaz, akkor végrehajtjuk az első utasítás blokkot. Ha a második kifejezés igaz, akkor végrehajtjuk a második utasítás blokkot. Amennyiben egyik kifejezés sem igaz, akkor az utolsó utasítás blokk kerül végrehajtásra.";
+Blockly.Msg.CONTROLS_REPEAT_HELPURL = "https://hu.wikipedia.org/wiki/Ciklus_(programoz%C3%A1s)#Sz.C3.A1ml.C3.A1l.C3.B3s_.28FOR.29_ciklus";
+Blockly.Msg.CONTROLS_REPEAT_INPUT_DO = "";
+Blockly.Msg.CONTROLS_REPEAT_TITLE = "ismételd %1 alkalommal";
+Blockly.Msg.CONTROLS_REPEAT_TOOLTIP = "Megadott kódrészlet ismételt végrehajtása.";
+Blockly.Msg.CONTROLS_WHILEUNTIL_HELPURL = "https://github.com/google/blockly/wiki/Loops#repeat"; // untranslated
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "ismételd amíg nem";
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "ismételd amíg";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "Amíg a feltétel hamis, végrehajtja az utasításokat.";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "Amíg a feltétel igaz, végrehajtja az utasításokat.";
+Blockly.Msg.DELETE_ALL_BLOCKS = "Az összes %1 blokk törlése?";
+Blockly.Msg.DELETE_BLOCK = "Blokk törlése";
+Blockly.Msg.DELETE_VARIABLE = "Delete the '%1' variable"; // untranslated
+Blockly.Msg.DELETE_VARIABLE_CONFIRMATION = "Delete %1 uses of the '%2' variable?"; // untranslated
+Blockly.Msg.DELETE_X_BLOCKS = "%1 blokk törlése";
+Blockly.Msg.DISABLE_BLOCK = "Blokk letiltása";
+Blockly.Msg.DUPLICATE_BLOCK = "Másolat";
+Blockly.Msg.ENABLE_BLOCK = "Blokk engedélyezése";
+Blockly.Msg.EXPAND_ALL = "Blokkok kibontása";
+Blockly.Msg.EXPAND_BLOCK = "Blokk kibontása";
+Blockly.Msg.EXTERNAL_INPUTS = "Külső kapcsolatok";
+Blockly.Msg.HELP = "Súgó";
+Blockly.Msg.INLINE_INPUTS = "Belső kapcsolatok";
+Blockly.Msg.LISTS_CREATE_EMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-empty-list"; // untranslated
+Blockly.Msg.LISTS_CREATE_EMPTY_TITLE = "üres lista";
+Blockly.Msg.LISTS_CREATE_EMPTY_TOOLTIP = "Elemeket nem tartalmazó üres listát ad eredményül";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TITLE_ADD = "lista";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TOOLTIP = "Add, remove, or reorder sections to reconfigure this list block.";
+Blockly.Msg.LISTS_CREATE_WITH_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
+Blockly.Msg.LISTS_CREATE_WITH_INPUT_WITH = "Lista készítés, elemek:";
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TOOLTIP = "Elem hozzáadása listához.";
+Blockly.Msg.LISTS_CREATE_WITH_TOOLTIP = "Listát készít a megadott elemekből.";
+Blockly.Msg.LISTS_GET_INDEX_FIRST = "az első";
+Blockly.Msg.LISTS_GET_INDEX_FROM_END = "a végétől számított";
+Blockly.Msg.LISTS_GET_INDEX_FROM_START = "az elejétől számított";
+Blockly.Msg.LISTS_GET_INDEX_GET = "listából értéke";
+Blockly.Msg.LISTS_GET_INDEX_GET_REMOVE = "listából kivétele";
+Blockly.Msg.LISTS_GET_INDEX_LAST = "az utolsó";
+Blockly.Msg.LISTS_GET_INDEX_RANDOM = "bármely";
+Blockly.Msg.LISTS_GET_INDEX_REMOVE = "listából törlése";
+Blockly.Msg.LISTS_GET_INDEX_TAIL = "elemnek";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FIRST = "A lista első elemét adja eredményül.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FROM = "A lista megadott sorszámú elemét adja eredményül.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_LAST = "A lista utolsó elemét adja eredményül.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_RANDOM = "A lista véletlenszerűen választott elemét adja eredményül.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST = "Az első elem kivétele a listából.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM = "A megadott sorszámú elem kivétele a listából.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST = "Az utolsó elem kivétele a listából.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM = "Véletlenszerűen választott elem kivétele a listából.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST = "Az első elem törlése a listából.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM = "A megadott sorszámú elem törlése a listából.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST = "Az utolsó elem törlése a listából.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM = "Véletlenszerűen választott elem törlése a listából.";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_END = "és a végétől számított";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_START = "és az elejétől számított";
+Blockly.Msg.LISTS_GET_SUBLIST_END_LAST = "és az utolsó";
+Blockly.Msg.LISTS_GET_SUBLIST_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-a-sublist"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_START_FIRST = "részlistája az első";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_END = "részlistája a végétől számított";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_START = "részlistája az elejétől számított";
+Blockly.Msg.LISTS_GET_SUBLIST_TAIL = "elem között";
+Blockly.Msg.LISTS_GET_SUBLIST_TOOLTIP = "A lista adott részéről másolat.";
+Blockly.Msg.LISTS_INDEX_FROM_END_TOOLTIP = "%1 az utolsó elemet jelenti.";
+Blockly.Msg.LISTS_INDEX_FROM_START_TOOLTIP = "%1 az első elemet jelenti.";
+Blockly.Msg.LISTS_INDEX_OF_FIRST = "listában első előfordulásaː";
+Blockly.Msg.LISTS_INDEX_OF_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-items-from-a-list"; // untranslated
+Blockly.Msg.LISTS_INDEX_OF_LAST = "listában utolsó előfordulásaː";
+Blockly.Msg.LISTS_INDEX_OF_TOOLTIP = "A megadott elem első vagy utolsó előfordulásával tér vissza. Ha nem talál ilyen elemet, akkor %1 a visszatérési érték.";
+Blockly.Msg.LISTS_INLIST = "A(z)";
+Blockly.Msg.LISTS_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#is-empty"; // untranslated
+Blockly.Msg.LISTS_ISEMPTY_TITLE = "%1 üres lista?";
+Blockly.Msg.LISTS_ISEMPTY_TOOLTIP = "Az eredmény igaz, ha a lista nem tartalmaz elemeket.";
+Blockly.Msg.LISTS_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Lists#length-of"; // untranslated
+Blockly.Msg.LISTS_LENGTH_TITLE = "%1 lista hossza";
+Blockly.Msg.LISTS_LENGTH_TOOLTIP = "A lista elemszámát adja eredményül.";
+Blockly.Msg.LISTS_REPEAT_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
+Blockly.Msg.LISTS_REPEAT_TITLE = "Lista készítése %1 elemet %2 alkalommal hozzáadva";
+Blockly.Msg.LISTS_REPEAT_TOOLTIP = "A megadtott elem felhasználásával n elemű listát készít";
+Blockly.Msg.LISTS_SET_INDEX_HELPURL = "https://github.com/google/blockly/wiki/Lists#in-list--set"; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_INPUT_TO = "elemkéntː";
+Blockly.Msg.LISTS_SET_INDEX_INSERT = "listába szúrd be";
+Blockly.Msg.LISTS_SET_INDEX_SET = "listába állítsd be";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST = "Beszúrás a lista elejére.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FROM = "Beszúrás a megadott sorszámú elem elé a listában.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_LAST = "Beszúrás a lista végére.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM = "Beszúrás véletlenszerűen választott elem elé a listában.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FIRST = "Az első elem cseréje a listában.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FROM = "A megadott sorszámú elem cseréje a listában.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_LAST = "Az utolsó elem cseréje a listában.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_RANDOM = "Véletlenszerűen választott elem cseréje a listában.";
+Blockly.Msg.LISTS_SORT_HELPURL = "https://github.com/google/blockly/wiki/Lists#sorting-a-list";
+Blockly.Msg.LISTS_SORT_ORDER_ASCENDING = "növekvő";
+Blockly.Msg.LISTS_SORT_ORDER_DESCENDING = "csökkenő";
+Blockly.Msg.LISTS_SORT_TITLE = "%1 %2 %3 rendezés";
+Blockly.Msg.LISTS_SORT_TOOLTIP = "Egy lista egy másolatának rendezése.";
+Blockly.Msg.LISTS_SORT_TYPE_IGNORECASE = "betűrendben nagybetű figyelmen kívül hagyásával";
+Blockly.Msg.LISTS_SORT_TYPE_NUMERIC = "numerikus";
+Blockly.Msg.LISTS_SORT_TYPE_TEXT = "betűrendben";
+Blockly.Msg.LISTS_SPLIT_HELPURL = "https://github.com/google/blockly/wiki/Lists#splitting-strings-and-joining-lists"; // untranslated
+Blockly.Msg.LISTS_SPLIT_LIST_FROM_TEXT = "lista készítése szövegből";
+Blockly.Msg.LISTS_SPLIT_TEXT_FROM_LIST = "sztring készítése listából";
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_JOIN = "A lista elemeit összefűzi szöveggé a határoló karaktereket is felhasználva.";
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_SPLIT = "Listát készít a határoló karaktereknél törve a szöveget.";
+Blockly.Msg.LISTS_SPLIT_WITH_DELIMITER = "határoló karakter";
+Blockly.Msg.LOGIC_BOOLEAN_FALSE = "hamis";
+Blockly.Msg.LOGIC_BOOLEAN_HELPURL = "https://github.com/google/blockly/wiki/Logic#values"; // untranslated
+Blockly.Msg.LOGIC_BOOLEAN_TOOLTIP = "Igaz, vagy hamis érték";
+Blockly.Msg.LOGIC_BOOLEAN_TRUE = "igaz";
+Blockly.Msg.LOGIC_COMPARE_HELPURL = "https://hu.wikipedia.org/wiki/Egyenl%C5%91tlens%C3%A9g";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_EQ = "Igaz, ha a kifejezés két oldala egyenlő.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GT = "Igaz, ha a bal oldali kifejezés nagyobb, mint a jobb oldali.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GTE = "Igaz, ha a bal oldali kifejezés nagyobb vagy egyenlő, mint a jobb oldali.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LT = "Igaz, ha a bal oldali kifejezés kisebb, mint a jobb oldali.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LTE = "Igaz, ha a bal oldali kifejezés kisebb vagy egyenlő, mint a jobb oldali.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_NEQ = "Igaz, ha a kifejezés két oldala nem egyenlő..";
+Blockly.Msg.LOGIC_NEGATE_HELPURL = "https://github.com/google/blockly/wiki/Logic#not"; // untranslated
+Blockly.Msg.LOGIC_NEGATE_TITLE = "nem %1";
+Blockly.Msg.LOGIC_NEGATE_TOOLTIP = "Igaz, ha a kifejezés hamis. Hamis, ha a kifejezés igaz.";
+Blockly.Msg.LOGIC_NULL = "null";
+Blockly.Msg.LOGIC_NULL_HELPURL = "https://en.wikipedia.org/wiki/Nullable_type"; // untranslated
+Blockly.Msg.LOGIC_NULL_TOOLTIP = "null érték.";
+Blockly.Msg.LOGIC_OPERATION_AND = "és";
+Blockly.Msg.LOGIC_OPERATION_HELPURL = "https://github.com/google/blockly/wiki/Logic#logical-operations"; // untranslated
+Blockly.Msg.LOGIC_OPERATION_OR = "vagy";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_AND = "Igaz, ha mindkét kifejezés igaz.";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_OR = "Igaz, ha legalább az egyik kifejezés igaz.";
+Blockly.Msg.LOGIC_TERNARY_CONDITION = "vizsgáld meg:";
+Blockly.Msg.LOGIC_TERNARY_HELPURL = "https://en.wikipedia.org/wiki/%3F:"; // untranslated
+Blockly.Msg.LOGIC_TERNARY_IF_FALSE = "érték, ha hamis:";
+Blockly.Msg.LOGIC_TERNARY_IF_TRUE = "érték, ha igaz:";
+Blockly.Msg.LOGIC_TERNARY_TOOLTIP = "Kiértékeli a megvizsgálandó kifejezést. Ha a kifejezés igaz, visszatér az \"érték, ha igaz\" értékkel, különben az \"érték, ha hamis\" értékkel.";
+Blockly.Msg.MATH_ADDITION_SYMBOL = "+"; // untranslated
+Blockly.Msg.MATH_ARITHMETIC_HELPURL = "https://hu.wikipedia.org/wiki/Matematikai_m%C5%B1velet";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_ADD = "Két szám összege.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE = "Két szám hányadosa.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MINUS = "Két szám különbsége.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MULTIPLY = "Két szám szorzata.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_POWER = "Az első számnak a második számmal megegyező hatványa.";
+Blockly.Msg.MATH_CHANGE_HELPURL = "https://hu.wikipedia.org/wiki/JavaScript#Aritmetikai_oper.C3.A1torok";
+Blockly.Msg.MATH_CHANGE_TITLE = "növeld %1 értékét %2 -vel";
+Blockly.Msg.MATH_CHANGE_TOOLTIP = "A \"%1\" változó értékének növelése egy számmal.";
+Blockly.Msg.MATH_CONSTANT_HELPURL = "https://hu.wikipedia.org/wiki/Matematikai_konstans";
+Blockly.Msg.MATH_CONSTANT_TOOLTIP = "Ismert matematikai konstans: π (3.141…), e (2.718…), φ (1.618…), gyök(2) (1.414…), gyök(½) (0.707…), vagy ∞ (végtelen).";
+Blockly.Msg.MATH_CONSTRAIN_HELPURL = "https://en.wikipedia.org/wiki/Clamping_%28graphics%29"; // untranslated
+Blockly.Msg.MATH_CONSTRAIN_TITLE = "korlátozd %1-t %2 és %3 közé";
+Blockly.Msg.MATH_CONSTRAIN_TOOLTIP = "Egy változó értékének korlátozása a megadott zárt intervallumra.";
+Blockly.Msg.MATH_DIVISION_SYMBOL = "÷"; // untranslated
+Blockly.Msg.MATH_IS_DIVISIBLE_BY = "-nek osztója";
+Blockly.Msg.MATH_IS_EVEN = "páros";
+Blockly.Msg.MATH_IS_NEGATIVE = "negatív";
+Blockly.Msg.MATH_IS_ODD = "páratlan";
+Blockly.Msg.MATH_IS_POSITIVE = "pozitív";
+Blockly.Msg.MATH_IS_PRIME = "prím";
+Blockly.Msg.MATH_IS_TOOLTIP = "Ellenőrzi, hogy a szám páros, páratlan, prím, egész, pozitív vagy negatív-e, illetve osztható-e a másodikkal. Igaz, vagy hamis értéket ad eredményül.";
+Blockly.Msg.MATH_IS_WHOLE = "egész";
+Blockly.Msg.MATH_MODULO_HELPURL = "https://hu.wikipedia.org/wiki/Eg%C3%A9szr%C3%A9sz#Als.C3.B3_eg.C3.A9szr.C3.A9sz";
+Blockly.Msg.MATH_MODULO_TITLE = "%1 ÷ %2 maradéka";
+Blockly.Msg.MATH_MODULO_TOOLTIP = "Az egész osztás maradékát adja eredméynül.";
+Blockly.Msg.MATH_MULTIPLICATION_SYMBOL = "×"; // untranslated
+Blockly.Msg.MATH_NUMBER_HELPURL = "https://hu.wikipedia.org/wiki/Sz%C3%A1m";
+Blockly.Msg.MATH_NUMBER_TOOLTIP = "Egy szám.";
+Blockly.Msg.MATH_ONLIST_HELPURL = ""; // untranslated
+Blockly.Msg.MATH_ONLIST_OPERATOR_AVERAGE = "lista elemeinek átlaga";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MAX = "lista legnagyobb eleme";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MEDIAN = "lista mediánja";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MIN = "lista legkisebb eleme";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MODE = "lista módusza";
+Blockly.Msg.MATH_ONLIST_OPERATOR_RANDOM = "lista véletlen eleme";
+Blockly.Msg.MATH_ONLIST_OPERATOR_STD_DEV = "lista elemeinek szórása";
+Blockly.Msg.MATH_ONLIST_OPERATOR_SUM = "lista elemeinek összege";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_AVERAGE = "A lista elemeinek átlagát adja eredményül.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MAX = "A lista legnagyobb elemét adja vissza.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MEDIAN = "A lista elemeinek mediánját adja eredményül.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MIN = "A lista legkisebb elemét adja vissza.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MODE = "A lista elemeinek móduszát adja eredményül.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_RANDOM = "A lista egy véletlen elemét adja eredményül.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_STD_DEV = "A lista elemeinek szórását adja eredményül.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_SUM = "A lista elemeinek összegét adja eredményül.";
+Blockly.Msg.MATH_POWER_SYMBOL = "^"; // untranslated
+Blockly.Msg.MATH_RANDOM_FLOAT_HELPURL = "https://hu.wikipedia.org/wiki/V%C3%A9letlen";
+Blockly.Msg.MATH_RANDOM_FLOAT_TITLE_RANDOM = "véletlen tört";
+Blockly.Msg.MATH_RANDOM_FLOAT_TOOLTIP = "Véletlen tört érték 0.0 és 1.0 között.";
+Blockly.Msg.MATH_RANDOM_INT_HELPURL = "https://hu.wikipedia.org/wiki/V%C3%A9letlen";
+Blockly.Msg.MATH_RANDOM_INT_TITLE = "véletlen egész szám %1 között %2";
+Blockly.Msg.MATH_RANDOM_INT_TOOLTIP = "Véletlen egész szám a megadott zárt intervallumon belül.";
+Blockly.Msg.MATH_ROUND_HELPURL = "https://hu.wikipedia.org/wiki/Eg%C3%A9szr%C3%A9sz#Kerek.C3.ADt.C3.A9s";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUND = "kerekítsd";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDDOWN = "kerekítsd lefelé";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDUP = "kerekítsd felfelé";
+Blockly.Msg.MATH_ROUND_TOOLTIP = "Egy szám kerekítése felfelé vagy lefelé.";
+Blockly.Msg.MATH_SINGLE_HELPURL = "https://hu.wikipedia.org/wiki/Gy%C3%B6kvon%C3%A1s";
+Blockly.Msg.MATH_SINGLE_OP_ABSOLUTE = "abszolútérték";
+Blockly.Msg.MATH_SINGLE_OP_ROOT = "négyzetgyök";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ABS = "A szám abszolútértéke.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_EXP = "Az e megadott számú hatványa.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LN = "A szám természetes alapú logaritmusa.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LOG10 = "A szám 10-es alapú logaritmusa.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_NEG = "A szám -1 szerese.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_POW10 = "A 10 megadott számú hatványa.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ROOT = "A szám négyzetgyöke.";
+Blockly.Msg.MATH_SUBTRACTION_SYMBOL = "-"; // untranslated
+Blockly.Msg.MATH_TRIG_ACOS = "acos"; // untranslated
+Blockly.Msg.MATH_TRIG_ASIN = "asin"; // untranslated
+Blockly.Msg.MATH_TRIG_ATAN = "atan"; // untranslated
+Blockly.Msg.MATH_TRIG_COS = "cos"; // untranslated
+Blockly.Msg.MATH_TRIG_HELPURL = "https://hu.wikipedia.org/wiki/Sz%C3%B6gf%C3%BCggv%C3%A9nyek";
+Blockly.Msg.MATH_TRIG_SIN = "sin"; // untranslated
+Blockly.Msg.MATH_TRIG_TAN = "tan"; // untranslated
+Blockly.Msg.MATH_TRIG_TOOLTIP_ACOS = "A fokban megadott szög arkusz koszinusz értéke.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ASIN = "A fokban megadott szög arkusz szinusz értéke.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ATAN = "A fokban megadott szög arkusz tangens értéke.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_COS = "A fokban megadott szög koszinusz értéke.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_SIN = "A fokban megadott szög szinusz értéke.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_TAN = "A fokban megadott szög tangens értéke.";
+Blockly.Msg.NEW_VARIABLE = "Új változó...";
+Blockly.Msg.NEW_VARIABLE_TITLE = "Az új változó neve:";
+Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ".";
+Blockly.Msg.PROCEDURES_ALLOW_STATEMENTS = "utasítások engedélyezése";
+Blockly.Msg.PROCEDURES_BEFORE_PARAMS = "paraméterlistaː";
+Blockly.Msg.PROCEDURES_CALLNORETURN_HELPURL = "https://hu.wikipedia.org/wiki/F%C3%BCggv%C3%A9ny_(programoz%C3%A1s)";
+Blockly.Msg.PROCEDURES_CALLNORETURN_TOOLTIP = "Végrehajtja az eljárást.";
+Blockly.Msg.PROCEDURES_CALLRETURN_HELPURL = "https://hu.wikipedia.org/wiki/F%C3%BCggv%C3%A9ny_(programoz%C3%A1s)";
+Blockly.Msg.PROCEDURES_CALLRETURN_TOOLTIP = "Meghívja a függvényt.";
+Blockly.Msg.PROCEDURES_CALL_BEFORE_PARAMS = "paraméterlistaː";
+Blockly.Msg.PROCEDURES_CREATE_DO = "„%1” létrehozása";
+Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT = "Írj erről a funkcióról...";
+Blockly.Msg.PROCEDURES_DEFNORETURN_DO = "";
+Blockly.Msg.PROCEDURES_DEFNORETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE = "név";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE = "Eljárás";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TOOLTIP = "Eljárás (nem ad vissza eredményt).";
+Blockly.Msg.PROCEDURES_DEFRETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_DEFRETURN_RETURN = "eredménye";
+Blockly.Msg.PROCEDURES_DEFRETURN_TOOLTIP = "Függvény eredménnyel.";
+Blockly.Msg.PROCEDURES_DEF_DUPLICATE_WARNING = "Figyelem: Az eljárásban azonos elnevezésű paramétert adtál meg.";
+Blockly.Msg.PROCEDURES_HIGHLIGHT_DEF = "Függvénydefiníció kiemelése";
+Blockly.Msg.PROCEDURES_IFRETURN_HELPURL = "http://c2.com/cgi/wiki?GuardClause";
+Blockly.Msg.PROCEDURES_IFRETURN_TOOLTIP = "Ha az érték igaz, akkor visszatér a függvény értékével.";
+Blockly.Msg.PROCEDURES_IFRETURN_WARNING = "Figyelem: Ez a blokk csak függvénydefiníción belül használható.";
+Blockly.Msg.PROCEDURES_MUTATORARG_TITLE = "változó:";
+Blockly.Msg.PROCEDURES_MUTATORARG_TOOLTIP = "Bemenet hozzáadása a függvényhez.";
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TITLE = "paraméterek";
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TOOLTIP = "Bemenetek hozzáadása, eltávolítása vagy átrendezése ehhez a függvényhez.";
+Blockly.Msg.REDO = "Újra";
+Blockly.Msg.REMOVE_COMMENT = "Megjegyzés törlése";
+Blockly.Msg.RENAME_VARIABLE = "Változó átnevezése...";
+Blockly.Msg.RENAME_VARIABLE_TITLE = "Minden \"%1\" változó átnevezése erre:";
+Blockly.Msg.TEXT_APPEND_APPENDTEXT = "szövegéhez fűzd hozzá";
+Blockly.Msg.TEXT_APPEND_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_APPEND_TO = "A";
+Blockly.Msg.TEXT_APPEND_TOOLTIP = "Szöveget fűz a \"%1\" változó értékéhez.";
+Blockly.Msg.TEXT_CHANGECASE_HELPURL = "https://github.com/google/blockly/wiki/Text#adjusting-text-case"; // untranslated
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_LOWERCASE = "kisbetűs";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_TITLECASE = "Címként Formázott";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_UPPERCASE = "NAGYBETŰS";
+Blockly.Msg.TEXT_CHANGECASE_TOOLTIP = "Return a copy of the text in a different case.";
+Blockly.Msg.TEXT_CHARAT_FIRST = "első";
+Blockly.Msg.TEXT_CHARAT_FROM_END = "hátulról";
+Blockly.Msg.TEXT_CHARAT_FROM_START = "elölről";
+Blockly.Msg.TEXT_CHARAT_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-text"; // untranslated
+Blockly.Msg.TEXT_CHARAT_INPUT_INTEXT = "A";
+Blockly.Msg.TEXT_CHARAT_LAST = "utolsó";
+Blockly.Msg.TEXT_CHARAT_RANDOM = "véletlen";
+Blockly.Msg.TEXT_CHARAT_TAIL = "karaktere";
+Blockly.Msg.TEXT_CHARAT_TOOLTIP = "A szöveg egy megadott karakterét adja eredményül.";
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TOOLTIP = "Elem hozzáfűzése a szöveghez.";
+Blockly.Msg.TEXT_CREATE_JOIN_TITLE_JOIN = "fűzd össze";
+Blockly.Msg.TEXT_CREATE_JOIN_TOOLTIP = "Összefűzéssel, törléssel vagy rendezéssel kapcsolato sblokkok szöveg szerkesztéséhez.";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_END = "betűtől a hátulról számított";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_START = "betűtől a(z)";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_LAST = "betűtől az utolsó";
+Blockly.Msg.TEXT_GET_SUBSTRING_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_INPUT_IN_TEXT = "a";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FIRST = "szövegben válaszd ki az első";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_END = "szövegben válaszd ki a hátulról a(z)";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_START = "szövegben válaszd ki a(z)";
+Blockly.Msg.TEXT_GET_SUBSTRING_TAIL = "betűig tartó betűsort";
+Blockly.Msg.TEXT_GET_SUBSTRING_TOOLTIP = "A megadott szövegrészletet adja eredményül.";
+Blockly.Msg.TEXT_INDEXOF_HELPURL = "https://github.com/google/blockly/wiki/Text#finding-text"; // untranslated
+Blockly.Msg.TEXT_INDEXOF_INPUT_INTEXT = "A(z)";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_FIRST = "szövegben az első előfordulásának helye";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_LAST = "szövegben az utolsó előfordulásának helye";
+Blockly.Msg.TEXT_INDEXOF_TAIL = "szövegnek";
+Blockly.Msg.TEXT_INDEXOF_TOOLTIP = "A keresett szöveg első vagy utolsó előfordulásával tér vissza. %1 esetén a szövegrészlet nem található.";
+Blockly.Msg.TEXT_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Text#checking-for-empty-text"; // untranslated
+Blockly.Msg.TEXT_ISEMPTY_TITLE = "%1 üres";
+Blockly.Msg.TEXT_ISEMPTY_TOOLTIP = "Igaz, ha a vizsgált szöveg hossza 0.";
+Blockly.Msg.TEXT_JOIN_HELPURL = "https://github.com/google/blockly/wiki/Text#text-creation"; // untranslated
+Blockly.Msg.TEXT_JOIN_TITLE_CREATEWITH = "fűzd össze";
+Blockly.Msg.TEXT_JOIN_TOOLTIP = "Tetszőleges számú szövegrészletet fűz össze egybefüggő szöveggé.";
+Blockly.Msg.TEXT_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_LENGTH_TITLE = "%1 hossza";
+Blockly.Msg.TEXT_LENGTH_TOOLTIP = "A megadott szöveg karaktereinek számát adja eredményül (beleértve a szóközöket).";
+Blockly.Msg.TEXT_PRINT_HELPURL = "https://github.com/google/blockly/wiki/Text#printing-text"; // untranslated
+Blockly.Msg.TEXT_PRINT_TITLE = "Üzenet %1";
+Blockly.Msg.TEXT_PRINT_TOOLTIP = "Megejelníti a megadott kaakterláncot üzenetként a képernyőn.";
+Blockly.Msg.TEXT_PROMPT_HELPURL = "https://github.com/google/blockly/wiki/Text#getting-input-from-the-user"; // untranslated
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_NUMBER = "Számot kér be a felhasználótól.";
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_TEXT = "Szöveget kér be a felhasználótól.";
+Blockly.Msg.TEXT_PROMPT_TYPE_NUMBER = "Kérj be számot";
+Blockly.Msg.TEXT_PROMPT_TYPE_TEXT = "Kérj be szöveget";
+Blockly.Msg.TEXT_TEXT_HELPURL = "https://hu.wikipedia.org/wiki/String";
+Blockly.Msg.TEXT_TEXT_TOOLTIP = "Egy betű, szó vagy szöveg egy sora.";
+Blockly.Msg.TEXT_TRIM_HELPURL = "https://github.com/google/blockly/wiki/Text#trimming-removing-spaces"; // untranslated
+Blockly.Msg.TEXT_TRIM_OPERATOR_BOTH = "szóközök levágása mindkét végéről";
+Blockly.Msg.TEXT_TRIM_OPERATOR_LEFT = "szóközök levágása az elejéről";
+Blockly.Msg.TEXT_TRIM_OPERATOR_RIGHT = "szóközök levágása a végéről";
+Blockly.Msg.TEXT_TRIM_TOOLTIP = "Levágja a megadott szöveg végeiről a szóközöket.";
+Blockly.Msg.TODAY = "Ma";
+Blockly.Msg.UNDO = "Visszavonás";
+Blockly.Msg.VARIABLES_DEFAULT_NAME = "változó";
+Blockly.Msg.VARIABLES_GET_CREATE_SET = "Készíts \"%1=\"";
+Blockly.Msg.VARIABLES_GET_HELPURL = "https://github.com/google/blockly/wiki/Variables#get"; // untranslated
+Blockly.Msg.VARIABLES_GET_TOOLTIP = "A változó értékét adja eredményül.";
+Blockly.Msg.VARIABLES_SET = "%1 %2";
+Blockly.Msg.VARIABLES_SET_CREATE_GET = "Készíts \"%1\"";
+Blockly.Msg.VARIABLES_SET_HELPURL = "https://github.com/google/blockly/wiki/Variables#set"; // untranslated
+Blockly.Msg.VARIABLES_SET_TOOLTIP = "A változónak adhatunk értéket.";
+Blockly.Msg.VARIABLE_ALREADY_EXISTS = "A variable named '%1' already exists."; // untranslated
+Blockly.Msg.PROCEDURES_DEFRETURN_TITLE = Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE;
+Blockly.Msg.CONTROLS_IF_IF_TITLE_IF = Blockly.Msg.CONTROLS_IF_MSG_IF;
+Blockly.Msg.CONTROLS_WHILEUNTIL_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_MSG_THEN = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_ELSE_TITLE_ELSE = Blockly.Msg.CONTROLS_IF_MSG_ELSE;
+Blockly.Msg.PROCEDURES_DEFRETURN_PROCEDURE = Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE;
+Blockly.Msg.LISTS_GET_SUBLIST_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.LISTS_GET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.PROCEDURES_DEFRETURN_DO = Blockly.Msg.PROCEDURES_DEFNORETURN_DO;
+Blockly.Msg.CONTROLS_IF_ELSEIF_TITLE_ELSEIF = Blockly.Msg.CONTROLS_IF_MSG_ELSEIF;
+Blockly.Msg.LISTS_GET_INDEX_HELPURL = Blockly.Msg.LISTS_INDEX_OF_HELPURL;
+Blockly.Msg.CONTROLS_FOREACH_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_SET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TITLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_APPEND_VARIABLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.LISTS_INDEX_OF_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.PROCEDURES_DEFRETURN_COMMENT = Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT; \ No newline at end of file
diff --git a/blockly/msg/js/ia.js b/blockly/msg/js/ia.js
new file mode 100644
index 0000000..1076640
--- /dev/null
+++ b/blockly/msg/js/ia.js
@@ -0,0 +1,391 @@
+// This file was automatically generated. Do not modify.
+
+'use strict';
+
+goog.provide('Blockly.Msg.ia');
+
+goog.require('Blockly.Msg');
+
+Blockly.Msg.ADD_COMMENT = "Adder commento";
+Blockly.Msg.CHANGE_VALUE_TITLE = "Cambiar valor:";
+Blockly.Msg.CLEAN_UP = "Clarar le blocos";
+Blockly.Msg.COLLAPSE_ALL = "Plicar blocos";
+Blockly.Msg.COLLAPSE_BLOCK = "Plicar bloco";
+Blockly.Msg.COLOUR_BLEND_COLOUR1 = "color 1";
+Blockly.Msg.COLOUR_BLEND_COLOUR2 = "color 2";
+Blockly.Msg.COLOUR_BLEND_HELPURL = "http://meyerweb.com/eric/tools/color-blend/"; // untranslated
+Blockly.Msg.COLOUR_BLEND_RATIO = "ration";
+Blockly.Msg.COLOUR_BLEND_TITLE = "miscer";
+Blockly.Msg.COLOUR_BLEND_TOOLTIP = "Misce duo colores con un ration specificate (0.0 - 1.0).";
+Blockly.Msg.COLOUR_PICKER_HELPURL = "https://ia.wikipedia.org/wiki/Color";
+Blockly.Msg.COLOUR_PICKER_TOOLTIP = "Elige un color del paletta.";
+Blockly.Msg.COLOUR_RANDOM_HELPURL = "http://randomcolour.com"; // untranslated
+Blockly.Msg.COLOUR_RANDOM_TITLE = "color aleatori";
+Blockly.Msg.COLOUR_RANDOM_TOOLTIP = "Eliger un color al hasardo.";
+Blockly.Msg.COLOUR_RGB_BLUE = "blau";
+Blockly.Msg.COLOUR_RGB_GREEN = "verde";
+Blockly.Msg.COLOUR_RGB_HELPURL = "http://www.december.com/html/spec/colorper.html"; // untranslated
+Blockly.Msg.COLOUR_RGB_RED = "rubie";
+Blockly.Msg.COLOUR_RGB_TITLE = "colorar con";
+Blockly.Msg.COLOUR_RGB_TOOLTIP = "Crear un color con le quantitate specificate de rubie, verde e blau. Tote le valores debe esser inter 0 e 100.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_HELPURL = "https://github.com/google/blockly/wiki/Loops#loop-termination-blocks"; // untranslated
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK = "escappar del bucla";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE = "continuar con le proxime iteration del bucla";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK = "Escappar del bucla continente.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE = "Saltar le resto de iste bucla e continuar con le proxime iteration.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_WARNING = "Attention: Iste bloco pote solmente esser usate in un bucla.";
+Blockly.Msg.CONTROLS_FOREACH_HELPURL = "https://github.com/google/blockly/wiki/Loops#for-each"; // untranslated
+Blockly.Msg.CONTROLS_FOREACH_TITLE = "pro cata elemento %1 in lista %2";
+Blockly.Msg.CONTROLS_FOREACH_TOOLTIP = "Pro cata elemento in un lista, mitter lo in le variabile '%1' e exequer certe instructiones.";
+Blockly.Msg.CONTROLS_FOR_HELPURL = "https://github.com/google/blockly/wiki/Loops#count-with"; // untranslated
+Blockly.Msg.CONTROLS_FOR_TITLE = "contar con %1 de %2 a %3 per %4";
+Blockly.Msg.CONTROLS_FOR_TOOLTIP = "Mitter in le variabile '%1' le valores ab le numero initial usque al numero final, con passos secundo le intervallo specificate, e exequer le blocos specificate.";
+Blockly.Msg.CONTROLS_IF_ELSEIF_TOOLTIP = "Adder un condition al bloco \"si\".";
+Blockly.Msg.CONTROLS_IF_ELSE_TOOLTIP = "Adder un condition final de reserva al bloco \"si\".";
+Blockly.Msg.CONTROLS_IF_HELPURL = "https://github.com/google/blockly/wiki/IfElse"; // untranslated
+Blockly.Msg.CONTROLS_IF_IF_TOOLTIP = "Adde, remove o reordina sectiones pro reconfigurar iste bloco \"si\".";
+Blockly.Msg.CONTROLS_IF_MSG_ELSE = "si non";
+Blockly.Msg.CONTROLS_IF_MSG_ELSEIF = "si non si";
+Blockly.Msg.CONTROLS_IF_MSG_IF = "si";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_1 = "Si un valor es ver, exequer certe instructiones.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_2 = "Si un valor es ver, exequer le prime bloco de instructiones. Si non, exequer le secunde bloco de instructiones.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_3 = "Si le prime valor es ver, exequer le prime bloco de instructiones. Si non, si le secunde valor es ver, exequer le secunde bloco de instructiones.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_4 = "Si le prime valor es ver, exequer le prime bloco de instructiones. Si non, si le secunde valor es ver, exequer le secunde bloco de instructiones. Si necun del valores es ver, exequer le ultime bloco de instructiones.";
+Blockly.Msg.CONTROLS_REPEAT_HELPURL = "https://en.wikipedia.org/wiki/For_loop";
+Blockly.Msg.CONTROLS_REPEAT_INPUT_DO = "face";
+Blockly.Msg.CONTROLS_REPEAT_TITLE = "repeter %1 vices";
+Blockly.Msg.CONTROLS_REPEAT_TOOLTIP = "Exequer certe instructiones plure vices.";
+Blockly.Msg.CONTROLS_WHILEUNTIL_HELPURL = "https://github.com/google/blockly/wiki/Loops#repeat"; // untranslated
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "repeter usque a";
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "repeter durante que";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "Durante que un valor es false, exequer certe instructiones.";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "Durante que un valor es ver, exequer certe instructiones.";
+Blockly.Msg.DELETE_ALL_BLOCKS = "Deler tote le %1 blocos?";
+Blockly.Msg.DELETE_BLOCK = "Deler bloco";
+Blockly.Msg.DELETE_VARIABLE = "Delete the '%1' variable"; // untranslated
+Blockly.Msg.DELETE_VARIABLE_CONFIRMATION = "Delete %1 uses of the '%2' variable?"; // untranslated
+Blockly.Msg.DELETE_X_BLOCKS = "Deler %1 blocos";
+Blockly.Msg.DISABLE_BLOCK = "Disactivar bloco";
+Blockly.Msg.DUPLICATE_BLOCK = "Duplicar";
+Blockly.Msg.ENABLE_BLOCK = "Activar bloco";
+Blockly.Msg.EXPAND_ALL = "Displicar blocos";
+Blockly.Msg.EXPAND_BLOCK = "Displicar bloco";
+Blockly.Msg.EXTERNAL_INPUTS = "Entrata externe";
+Blockly.Msg.HELP = "Adjuta";
+Blockly.Msg.INLINE_INPUTS = "Entrata interne";
+Blockly.Msg.LISTS_CREATE_EMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-empty-list"; // untranslated
+Blockly.Msg.LISTS_CREATE_EMPTY_TITLE = "crear un lista vacue";
+Blockly.Msg.LISTS_CREATE_EMPTY_TOOLTIP = "Retorna un lista, de longitude 0, sin datos.";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TITLE_ADD = "lista";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TOOLTIP = "Adde, remove o reordina sectiones pro reconfigurar iste bloco de listas.";
+Blockly.Msg.LISTS_CREATE_WITH_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
+Blockly.Msg.LISTS_CREATE_WITH_INPUT_WITH = "crear lista con";
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TOOLTIP = "Adder un elemento al lista.";
+Blockly.Msg.LISTS_CREATE_WITH_TOOLTIP = "Crear un lista con un numero qualcunque de elementos.";
+Blockly.Msg.LISTS_GET_INDEX_FIRST = "prime";
+Blockly.Msg.LISTS_GET_INDEX_FROM_END = "№ ab fin";
+Blockly.Msg.LISTS_GET_INDEX_FROM_START = "#"; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_GET = "prender";
+Blockly.Msg.LISTS_GET_INDEX_GET_REMOVE = "prender e remover";
+Blockly.Msg.LISTS_GET_INDEX_LAST = "ultime";
+Blockly.Msg.LISTS_GET_INDEX_RANDOM = "aleatori";
+Blockly.Msg.LISTS_GET_INDEX_REMOVE = "remover";
+Blockly.Msg.LISTS_GET_INDEX_TAIL = ""; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FIRST = "Retorna le prime elemento in un lista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FROM = "Retorna le elemento presente al position specificate in un lista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_LAST = "Retorna le ultime elemento in un lista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_RANDOM = "Retorna un elemento aleatori in un lista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST = "Remove e retorna le prime elemento in un lista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM = "Remove e retorna le elemento presente al position specificate in un lista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST = "Remove e retorna le ultime elemento in un lista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM = "Remove e retorna un elemento aleatori in un lista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST = "Remove le prime elemento in un lista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM = "Remove le elemento presente al position specificate in un lista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST = "Remove le ultime elemento in un lista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM = "Remove un elemento aleatori in un lista.";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_END = "usque al № ab fin";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_START = "usque al №";
+Blockly.Msg.LISTS_GET_SUBLIST_END_LAST = "usque al ultime";
+Blockly.Msg.LISTS_GET_SUBLIST_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-a-sublist"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_START_FIRST = "prender sublista ab initio";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_END = "prender sublista ab le fin ab №";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_START = "prender sublista ab №";
+Blockly.Msg.LISTS_GET_SUBLIST_TAIL = ""; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_TOOLTIP = "Crea un copia del parte specificate de un lista.";
+Blockly.Msg.LISTS_INDEX_FROM_END_TOOLTIP = "№ %1 es le ultime elemento.";
+Blockly.Msg.LISTS_INDEX_FROM_START_TOOLTIP = "№ %1 es le prime elemento.";
+Blockly.Msg.LISTS_INDEX_OF_FIRST = "cercar le prime occurrentia del elemento";
+Blockly.Msg.LISTS_INDEX_OF_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-items-from-a-list"; // untranslated
+Blockly.Msg.LISTS_INDEX_OF_LAST = "cercar le ultime occurrentia del elemento";
+Blockly.Msg.LISTS_INDEX_OF_TOOLTIP = "Retorna le indice del prime/ultime occurrentia del elemento in le lista. Retorna %1 si le elemento non es trovate.";
+Blockly.Msg.LISTS_INLIST = "in lista";
+Blockly.Msg.LISTS_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#is-empty"; // untranslated
+Blockly.Msg.LISTS_ISEMPTY_TITLE = "%1 es vacue";
+Blockly.Msg.LISTS_ISEMPTY_TOOLTIP = "Retorna ver si le lista es vacue.";
+Blockly.Msg.LISTS_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Lists#length-of"; // untranslated
+Blockly.Msg.LISTS_LENGTH_TITLE = "longitude de %1";
+Blockly.Msg.LISTS_LENGTH_TOOLTIP = "Retorna le longitude de un lista.";
+Blockly.Msg.LISTS_REPEAT_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
+Blockly.Msg.LISTS_REPEAT_TITLE = "crear lista con elemento %1 repetite %2 vices";
+Blockly.Msg.LISTS_REPEAT_TOOLTIP = "Crea un lista que contine le valor fornite, repetite le numero specificate de vices.";
+Blockly.Msg.LISTS_SET_INDEX_HELPURL = "https://github.com/google/blockly/wiki/Lists#in-list--set"; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_INPUT_TO = "a";
+Blockly.Msg.LISTS_SET_INDEX_INSERT = "inserer in";
+Blockly.Msg.LISTS_SET_INDEX_SET = "mitter";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST = "Insere le elemento al initio de un lista.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FROM = "Insere le elemento al position specificate in un lista.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_LAST = "Adjunge le elemento al fin de un lista.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM = "Insere le elemento a un position aleatori in un lista.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FIRST = "Defini le valor del prime elemento in un lista.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FROM = "Defini le valor del elemento al position specificate in un lista.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_LAST = "Defini le valor del ultime elemento in un lista.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_RANDOM = "Defini le valor de un elemento aleatori in un lista.";
+Blockly.Msg.LISTS_SORT_HELPURL = "https://github.com/google/blockly/wiki/Lists#sorting-a-list"; // untranslated
+Blockly.Msg.LISTS_SORT_ORDER_ASCENDING = "ascendente";
+Blockly.Msg.LISTS_SORT_ORDER_DESCENDING = "descendente";
+Blockly.Msg.LISTS_SORT_TITLE = "ordinamento %1 %2 %3";
+Blockly.Msg.LISTS_SORT_TOOLTIP = "Ordinar un copia de un lista.";
+Blockly.Msg.LISTS_SORT_TYPE_IGNORECASE = "alphabetic, ignorar majuscula/minuscula";
+Blockly.Msg.LISTS_SORT_TYPE_NUMERIC = "numeric";
+Blockly.Msg.LISTS_SORT_TYPE_TEXT = "alphabetic";
+Blockly.Msg.LISTS_SPLIT_HELPURL = "https://github.com/google/blockly/wiki/Lists#splitting-strings-and-joining-lists"; // untranslated
+Blockly.Msg.LISTS_SPLIT_LIST_FROM_TEXT = "Crear un lista per un texto";
+Blockly.Msg.LISTS_SPLIT_TEXT_FROM_LIST = "crear un texto per un lista";
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_JOIN = "Unir un lista de textos, separate per un delimitator, in un sol texto.";
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_SPLIT = "Divider texto in un lista de textos, separante lo a cata delimitator.";
+Blockly.Msg.LISTS_SPLIT_WITH_DELIMITER = "con delimitator";
+Blockly.Msg.LOGIC_BOOLEAN_FALSE = "false";
+Blockly.Msg.LOGIC_BOOLEAN_HELPURL = "https://github.com/google/blockly/wiki/Logic#values"; // untranslated
+Blockly.Msg.LOGIC_BOOLEAN_TOOLTIP = "Retorna o ver o false.";
+Blockly.Msg.LOGIC_BOOLEAN_TRUE = "ver";
+Blockly.Msg.LOGIC_COMPARE_HELPURL = "https://en.wikipedia.org/wiki/Inequality_(mathematics)"; // untranslated
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_EQ = "Retornar ver si le duo entratas es equal.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GT = "Retornar ver si le prime entrata es major que le secunde.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GTE = "Retornar ver si le prime entrata es major que o equal al secunde.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LT = "Retornar ver si le prime entrata es minor que le secunde.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LTE = "Retornar ver si le prime entrata es minor que o equal al secunde.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_NEQ = "Retornar ver si le duo entratas non es equal.";
+Blockly.Msg.LOGIC_NEGATE_HELPURL = "https://github.com/google/blockly/wiki/Logic#not"; // untranslated
+Blockly.Msg.LOGIC_NEGATE_TITLE = "non %1";
+Blockly.Msg.LOGIC_NEGATE_TOOLTIP = "Retornar ver si le entrata es false. Retornar false si le entrata es ver.";
+Blockly.Msg.LOGIC_NULL = "nulle";
+Blockly.Msg.LOGIC_NULL_HELPURL = "https://en.wikipedia.org/wiki/Nullable_type"; // untranslated
+Blockly.Msg.LOGIC_NULL_TOOLTIP = "Retorna nulle.";
+Blockly.Msg.LOGIC_OPERATION_AND = "e";
+Blockly.Msg.LOGIC_OPERATION_HELPURL = "https://github.com/google/blockly/wiki/Logic#logical-operations"; // untranslated
+Blockly.Msg.LOGIC_OPERATION_OR = "o";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_AND = "Retornar ver si ambe entratas es ver.";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_OR = "Retornar ver si al minus un del entratas es ver.";
+Blockly.Msg.LOGIC_TERNARY_CONDITION = "test";
+Blockly.Msg.LOGIC_TERNARY_HELPURL = "https://en.wikipedia.org/wiki/%3F:"; // untranslated
+Blockly.Msg.LOGIC_TERNARY_IF_FALSE = "si false";
+Blockly.Msg.LOGIC_TERNARY_IF_TRUE = "si ver";
+Blockly.Msg.LOGIC_TERNARY_TOOLTIP = "Verificar le condition in 'test'. Si le condition es ver, retorna le valor de 'si ver'; si non, retorna le valor de 'si false'.";
+Blockly.Msg.MATH_ADDITION_SYMBOL = "+"; // untranslated
+Blockly.Msg.MATH_ARITHMETIC_HELPURL = "https://ia.wikipedia.org/wiki/Arithmetica";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_ADD = "Retornar le summa del duo numeros.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE = "Retornar le quotiente del duo numeros.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MINUS = "Retornar le differentia del duo numeros.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MULTIPLY = "Retornar le producto del duo numeros.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_POWER = "Retornar le prime numero elevate al potentia del secunde numero.";
+Blockly.Msg.MATH_CHANGE_HELPURL = "https://en.wikipedia.org/wiki/Programming_idiom#Incrementing_a_counter"; // untranslated
+Blockly.Msg.MATH_CHANGE_TITLE = "cambiar %1 per %2";
+Blockly.Msg.MATH_CHANGE_TOOLTIP = "Adder un numero al variabile '%1'.";
+Blockly.Msg.MATH_CONSTANT_HELPURL = "https://en.wikipedia.org/wiki/Mathematical_constant"; // untranslated
+Blockly.Msg.MATH_CONSTANT_TOOLTIP = "Retornar un del constantes commun: π (3,141…), e (2,718…), φ (1,618…), sqrt(2) (1,414…), sqrt(½) (0,707…) o ∞ (infinite).";
+Blockly.Msg.MATH_CONSTRAIN_HELPURL = "https://en.wikipedia.org/wiki/Clamping_%28graphics%29"; // untranslated
+Blockly.Msg.MATH_CONSTRAIN_TITLE = "limitar %1 inter %2 e %3";
+Blockly.Msg.MATH_CONSTRAIN_TOOLTIP = "Limitar un numero a esser inter le limites specificate (incluse).";
+Blockly.Msg.MATH_DIVISION_SYMBOL = "÷"; // untranslated
+Blockly.Msg.MATH_IS_DIVISIBLE_BY = "es divisibile per";
+Blockly.Msg.MATH_IS_EVEN = "es par";
+Blockly.Msg.MATH_IS_NEGATIVE = "es negative";
+Blockly.Msg.MATH_IS_ODD = "es impare";
+Blockly.Msg.MATH_IS_POSITIVE = "es positive";
+Blockly.Msg.MATH_IS_PRIME = "es prime";
+Blockly.Msg.MATH_IS_TOOLTIP = "Verificar si un numero es par, impare, prime, integre, positive, negative, o divisibile per un certe numero. Retorna ver o false.";
+Blockly.Msg.MATH_IS_WHOLE = "es integre";
+Blockly.Msg.MATH_MODULO_HELPURL = "https://en.wikipedia.org/wiki/Modulo_operation"; // untranslated
+Blockly.Msg.MATH_MODULO_TITLE = "resto de %1 ÷ %2";
+Blockly.Msg.MATH_MODULO_TOOLTIP = "Retornar le resto del division del duo numeros.";
+Blockly.Msg.MATH_MULTIPLICATION_SYMBOL = "×"; // untranslated
+Blockly.Msg.MATH_NUMBER_HELPURL = "https://ia.wikipedia.org/wiki/Numero";
+Blockly.Msg.MATH_NUMBER_TOOLTIP = "Un numero.";
+Blockly.Msg.MATH_ONLIST_HELPURL = ""; // untranslated
+Blockly.Msg.MATH_ONLIST_OPERATOR_AVERAGE = "media del lista";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MAX = "maximo del lista";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MEDIAN = "mediana del lista";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MIN = "minimo del lista";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MODE = "modas del lista";
+Blockly.Msg.MATH_ONLIST_OPERATOR_RANDOM = "elemento aleatori del lista";
+Blockly.Msg.MATH_ONLIST_OPERATOR_STD_DEV = "deviation standard del lista";
+Blockly.Msg.MATH_ONLIST_OPERATOR_SUM = "summa del lista";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_AVERAGE = "Retornar le media arithmetic del valores numeric in le lista.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MAX = "Retornar le numero le plus grande in le lista.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MEDIAN = "Retornar le numero median del lista.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MIN = "Retornar le numero le plus parve in le lista.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MODE = "Retornar un lista del elemento(s) le plus commun in le lista.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_RANDOM = "Retornar un elemento aleatori del lista.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_STD_DEV = "Retornar le deviation standard del lista.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_SUM = "Retornar le summa de tote le numeros in le lista.";
+Blockly.Msg.MATH_POWER_SYMBOL = "^"; // untranslated
+Blockly.Msg.MATH_RANDOM_FLOAT_HELPURL = "https://en.wikipedia.org/wiki/Random_number_generation"; // untranslated
+Blockly.Msg.MATH_RANDOM_FLOAT_TITLE_RANDOM = "fraction aleatori";
+Blockly.Msg.MATH_RANDOM_FLOAT_TOOLTIP = "Retornar un fraction aleatori inter 0.0 (incluse) e 1.0 (excluse).";
+Blockly.Msg.MATH_RANDOM_INT_HELPURL = "https://en.wikipedia.org/wiki/Random_number_generation"; // untranslated
+Blockly.Msg.MATH_RANDOM_INT_TITLE = "numero integre aleatori inter %1 e %2";
+Blockly.Msg.MATH_RANDOM_INT_TOOLTIP = "Retornar un numero integre aleatori inter le duo limites specificate, incluse.";
+Blockly.Msg.MATH_ROUND_HELPURL = "https://ia.wikipedia.org/wiki/Rotundamento";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUND = "arrotundar";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDDOWN = "arrotundar a infra";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDUP = "arrotundar a supra";
+Blockly.Msg.MATH_ROUND_TOOLTIP = "Arrotundar un numero a supra o a infra.";
+Blockly.Msg.MATH_SINGLE_HELPURL = "https://ia.wikipedia.org/wiki/Radice_quadrate";
+Blockly.Msg.MATH_SINGLE_OP_ABSOLUTE = "absolute";
+Blockly.Msg.MATH_SINGLE_OP_ROOT = "radice quadrate";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ABS = "Retornar le valor absolute de un numero.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_EXP = "Retornar e elevate al potentia del numero.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LN = "Retornar le logarithmo natural de un numero.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LOG10 = "Retornar le logarithmo in base 10 del numero.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_NEG = "Retornar le negation de un numero.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_POW10 = "Retornar 10 elevate al potentia de un numero.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ROOT = "Retornar le radice quadrate de un numero.";
+Blockly.Msg.MATH_SUBTRACTION_SYMBOL = "-"; // untranslated
+Blockly.Msg.MATH_TRIG_ACOS = "acos"; // untranslated
+Blockly.Msg.MATH_TRIG_ASIN = "asin"; // untranslated
+Blockly.Msg.MATH_TRIG_ATAN = "atan"; // untranslated
+Blockly.Msg.MATH_TRIG_COS = "cos"; // untranslated
+Blockly.Msg.MATH_TRIG_HELPURL = "https://en.wikipedia.org/wiki/Trigonometric_functions"; // untranslated
+Blockly.Msg.MATH_TRIG_SIN = "sin"; // untranslated
+Blockly.Msg.MATH_TRIG_TAN = "tan"; // untranslated
+Blockly.Msg.MATH_TRIG_TOOLTIP_ACOS = "Retornar le arcocosino de un numero.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ASIN = "Retornar le arcosino de un numero.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ATAN = "Retornar le arcotangente de un numero.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_COS = "Retornar le cosino de un grado (non radiano).";
+Blockly.Msg.MATH_TRIG_TOOLTIP_SIN = "Retornar le sino de un grado (non radiano).";
+Blockly.Msg.MATH_TRIG_TOOLTIP_TAN = "Retornar le tangente de un grado (non radiano).";
+Blockly.Msg.NEW_VARIABLE = "Nove variabile...";
+Blockly.Msg.NEW_VARIABLE_TITLE = "Nomine del nove variabile:";
+Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; // untranslated
+Blockly.Msg.PROCEDURES_ALLOW_STATEMENTS = "permitter declarationes";
+Blockly.Msg.PROCEDURES_BEFORE_PARAMS = "con:";
+Blockly.Msg.PROCEDURES_CALLNORETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_CALLNORETURN_TOOLTIP = "Executar le function '%1' definite per le usator.";
+Blockly.Msg.PROCEDURES_CALLRETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_CALLRETURN_TOOLTIP = "Executar le function '%1' definite per le usator e usar su resultato.";
+Blockly.Msg.PROCEDURES_CALL_BEFORE_PARAMS = "con:";
+Blockly.Msg.PROCEDURES_CREATE_DO = "Crear '%1'";
+Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT = "Describe iste function...";
+Blockly.Msg.PROCEDURES_DEFNORETURN_DO = ""; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE = "facer qualcosa";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE = "pro";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TOOLTIP = "Crea un function que non retorna un valor.";
+Blockly.Msg.PROCEDURES_DEFRETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_DEFRETURN_RETURN = "retornar";
+Blockly.Msg.PROCEDURES_DEFRETURN_TOOLTIP = "Crea un function que retorna un valor.";
+Blockly.Msg.PROCEDURES_DEF_DUPLICATE_WARNING = "Attention: Iste function ha parametros duplicate.";
+Blockly.Msg.PROCEDURES_HIGHLIGHT_DEF = "Accentuar le definition del function";
+Blockly.Msg.PROCEDURES_IFRETURN_HELPURL = "http://c2.com/cgi/wiki?GuardClause"; // untranslated
+Blockly.Msg.PROCEDURES_IFRETURN_TOOLTIP = "Si un valor es ver, alora retornar un secunde valor.";
+Blockly.Msg.PROCEDURES_IFRETURN_WARNING = "Attention: Iste bloco pote solmente esser usate in le definition de un function.";
+Blockly.Msg.PROCEDURES_MUTATORARG_TITLE = "nomine del entrata:";
+Blockly.Msg.PROCEDURES_MUTATORARG_TOOLTIP = "Adder un entrata al function.";
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TITLE = "entratas";
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TOOLTIP = "Adder, remover o reordinar le entratas pro iste function.";
+Blockly.Msg.REDO = "Refacer";
+Blockly.Msg.REMOVE_COMMENT = "Remover commento";
+Blockly.Msg.RENAME_VARIABLE = "Renominar variabile...";
+Blockly.Msg.RENAME_VARIABLE_TITLE = "Renominar tote le variabiles '%1' a:";
+Blockly.Msg.TEXT_APPEND_APPENDTEXT = "adjunger texto";
+Blockly.Msg.TEXT_APPEND_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_APPEND_TO = "a";
+Blockly.Msg.TEXT_APPEND_TOOLTIP = "Adjunger un texto al variabile '%1'.";
+Blockly.Msg.TEXT_CHANGECASE_HELPURL = "https://github.com/google/blockly/wiki/Text#adjusting-text-case"; // untranslated
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_LOWERCASE = "in minusculas";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_TITLECASE = "con Initiales Majuscule";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_UPPERCASE = "in MAJUSCULAS";
+Blockly.Msg.TEXT_CHANGECASE_TOOLTIP = "Retornar un copia del texto con differente majusculas/minusculas.";
+Blockly.Msg.TEXT_CHARAT_FIRST = "prender le prime littera";
+Blockly.Msg.TEXT_CHARAT_FROM_END = "prender ab le fin le littera №";
+Blockly.Msg.TEXT_CHARAT_FROM_START = "prender le littera №";
+Blockly.Msg.TEXT_CHARAT_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-text"; // untranslated
+Blockly.Msg.TEXT_CHARAT_INPUT_INTEXT = "in le texto";
+Blockly.Msg.TEXT_CHARAT_LAST = "prender le ultime littera";
+Blockly.Msg.TEXT_CHARAT_RANDOM = "prender un littera aleatori";
+Blockly.Msg.TEXT_CHARAT_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_CHARAT_TOOLTIP = "Retorna le littera presente al position specificate.";
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TOOLTIP = "Adder un elemento al texto.";
+Blockly.Msg.TEXT_CREATE_JOIN_TITLE_JOIN = "unir";
+Blockly.Msg.TEXT_CREATE_JOIN_TOOLTIP = "Adde, remove o reordina sectiones pro reconfigurar iste bloco de texto.";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_END = "ab le fin usque al littera №";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_START = "usque al littera №";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_LAST = "usque al ultime littera";
+Blockly.Msg.TEXT_GET_SUBSTRING_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_INPUT_IN_TEXT = "in le texto";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FIRST = "prender subcatena ab le prime littera";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_END = "prender subcatena ab le fin ab le littera №";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_START = "prender subcatena ab le littera №";
+Blockly.Msg.TEXT_GET_SUBSTRING_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_TOOLTIP = "Retorna le parte specificate del texto.";
+Blockly.Msg.TEXT_INDEXOF_HELPURL = "https://github.com/google/blockly/wiki/Text#finding-text"; // untranslated
+Blockly.Msg.TEXT_INDEXOF_INPUT_INTEXT = "in le texto";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_FIRST = "cercar le prime occurrentia del texto";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_LAST = "cercar le ultime occurrentia del texto";
+Blockly.Msg.TEXT_INDEXOF_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_INDEXOF_TOOLTIP = "Retorna le indice del prime/ultime occurrentia del prime texto in le secunde texto. Retorna %1 si le texto non es trovate.";
+Blockly.Msg.TEXT_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Text#checking-for-empty-text"; // untranslated
+Blockly.Msg.TEXT_ISEMPTY_TITLE = "%1 es vacue";
+Blockly.Msg.TEXT_ISEMPTY_TOOLTIP = "Retorna ver si le texto fornite es vacue.";
+Blockly.Msg.TEXT_JOIN_HELPURL = "https://github.com/google/blockly/wiki/Text#text-creation"; // untranslated
+Blockly.Msg.TEXT_JOIN_TITLE_CREATEWITH = "crear texto con";
+Blockly.Msg.TEXT_JOIN_TOOLTIP = "Crear un pecia de texto uniente un certe numero de elementos.";
+Blockly.Msg.TEXT_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_LENGTH_TITLE = "longitude de %1";
+Blockly.Msg.TEXT_LENGTH_TOOLTIP = "Retorna le numero de litteras (incluse spatios) in le texto fornite.";
+Blockly.Msg.TEXT_PRINT_HELPURL = "https://github.com/google/blockly/wiki/Text#printing-text"; // untranslated
+Blockly.Msg.TEXT_PRINT_TITLE = "scriber %1";
+Blockly.Msg.TEXT_PRINT_TOOLTIP = "Scriber le texto, numero o altere valor specificate.";
+Blockly.Msg.TEXT_PROMPT_HELPURL = "https://github.com/google/blockly/wiki/Text#getting-input-from-the-user"; // untranslated
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_NUMBER = "Peter un numero al usator.";
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_TEXT = "Peter un texto al usator.";
+Blockly.Msg.TEXT_PROMPT_TYPE_NUMBER = "peter un numero con le message";
+Blockly.Msg.TEXT_PROMPT_TYPE_TEXT = "peter un texto con le message";
+Blockly.Msg.TEXT_TEXT_HELPURL = "https://en.wikipedia.org/wiki/String_(computer_science)"; // untranslated
+Blockly.Msg.TEXT_TEXT_TOOLTIP = "Un littera, parola o linea de texto.";
+Blockly.Msg.TEXT_TRIM_HELPURL = "https://github.com/google/blockly/wiki/Text#trimming-removing-spaces"; // untranslated
+Blockly.Msg.TEXT_TRIM_OPERATOR_BOTH = "remover spatios de ambe lateres de";
+Blockly.Msg.TEXT_TRIM_OPERATOR_LEFT = "remover spatios del sinistre latere de";
+Blockly.Msg.TEXT_TRIM_OPERATOR_RIGHT = "remover spatios del dextre latere de";
+Blockly.Msg.TEXT_TRIM_TOOLTIP = "Retornar un copia del texto con spatios eliminate de un extremitate o ambes.";
+Blockly.Msg.TODAY = "Hodie";
+Blockly.Msg.UNDO = "Disfacer";
+Blockly.Msg.VARIABLES_DEFAULT_NAME = "cosa";
+Blockly.Msg.VARIABLES_GET_CREATE_SET = "Crea 'mitter %1'";
+Blockly.Msg.VARIABLES_GET_HELPURL = "https://github.com/google/blockly/wiki/Variables#get"; // untranslated
+Blockly.Msg.VARIABLES_GET_TOOLTIP = "Retorna le valor de iste variabile.";
+Blockly.Msg.VARIABLES_SET = "mitter %1 a %2";
+Blockly.Msg.VARIABLES_SET_CREATE_GET = "Crear 'prender %1'";
+Blockly.Msg.VARIABLES_SET_HELPURL = "https://github.com/google/blockly/wiki/Variables#set"; // untranslated
+Blockly.Msg.VARIABLES_SET_TOOLTIP = "Mitte iste variabile al valor del entrata.";
+Blockly.Msg.VARIABLE_ALREADY_EXISTS = "A variable named '%1' already exists."; // untranslated
+Blockly.Msg.PROCEDURES_DEFRETURN_TITLE = Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE;
+Blockly.Msg.CONTROLS_IF_IF_TITLE_IF = Blockly.Msg.CONTROLS_IF_MSG_IF;
+Blockly.Msg.CONTROLS_WHILEUNTIL_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_MSG_THEN = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_ELSE_TITLE_ELSE = Blockly.Msg.CONTROLS_IF_MSG_ELSE;
+Blockly.Msg.PROCEDURES_DEFRETURN_PROCEDURE = Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE;
+Blockly.Msg.LISTS_GET_SUBLIST_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.LISTS_GET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.PROCEDURES_DEFRETURN_DO = Blockly.Msg.PROCEDURES_DEFNORETURN_DO;
+Blockly.Msg.CONTROLS_IF_ELSEIF_TITLE_ELSEIF = Blockly.Msg.CONTROLS_IF_MSG_ELSEIF;
+Blockly.Msg.LISTS_GET_INDEX_HELPURL = Blockly.Msg.LISTS_INDEX_OF_HELPURL;
+Blockly.Msg.CONTROLS_FOREACH_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_SET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TITLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_APPEND_VARIABLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.LISTS_INDEX_OF_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.PROCEDURES_DEFRETURN_COMMENT = Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT; \ No newline at end of file
diff --git a/blockly/msg/js/id.js b/blockly/msg/js/id.js
new file mode 100644
index 0000000..bfc163d
--- /dev/null
+++ b/blockly/msg/js/id.js
@@ -0,0 +1,391 @@
+// This file was automatically generated. Do not modify.
+
+'use strict';
+
+goog.provide('Blockly.Msg.id');
+
+goog.require('Blockly.Msg');
+
+Blockly.Msg.ADD_COMMENT = "Tambahkan Komentar";
+Blockly.Msg.CHANGE_VALUE_TITLE = "Ubah nilai:";
+Blockly.Msg.CLEAN_UP = "Bersihkan Blok";
+Blockly.Msg.COLLAPSE_ALL = "Ciutkan Blok";
+Blockly.Msg.COLLAPSE_BLOCK = "Ciutkan Blok";
+Blockly.Msg.COLOUR_BLEND_COLOUR1 = "warna 1";
+Blockly.Msg.COLOUR_BLEND_COLOUR2 = "warna 2";
+Blockly.Msg.COLOUR_BLEND_HELPURL = "http://meyerweb.com/eric/tools/color-blend/";
+Blockly.Msg.COLOUR_BLEND_RATIO = "rasio";
+Blockly.Msg.COLOUR_BLEND_TITLE = "campur";
+Blockly.Msg.COLOUR_BLEND_TOOLTIP = "Campur dua warna secara bersamaan dengan perbandingan (0.0 - 1.0).";
+Blockly.Msg.COLOUR_PICKER_HELPURL = "https://en.wikipedia.org/wiki/Color";
+Blockly.Msg.COLOUR_PICKER_TOOLTIP = "Pilih warna dari daftar warna.";
+Blockly.Msg.COLOUR_RANDOM_HELPURL = "http://randomcolour.com"; // untranslated
+Blockly.Msg.COLOUR_RANDOM_TITLE = "Warna acak";
+Blockly.Msg.COLOUR_RANDOM_TOOLTIP = "Pilih warna secara acak.";
+Blockly.Msg.COLOUR_RGB_BLUE = "biru";
+Blockly.Msg.COLOUR_RGB_GREEN = "hijau";
+Blockly.Msg.COLOUR_RGB_HELPURL = "http://www.december.com/html/spec/colorper.html";
+Blockly.Msg.COLOUR_RGB_RED = "merah";
+Blockly.Msg.COLOUR_RGB_TITLE = "Dengan warna";
+Blockly.Msg.COLOUR_RGB_TOOLTIP = "Buatlah warna dengan jumlah yang ditentukan dari merah, hijau dan biru. Semua nilai harus antarai 0 sampai 100.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_HELPURL = "https://github.com/google/blockly/wiki/Loops#loop-termination-blocks"; // untranslated
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK = "keluar dari perulangan";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE = "lanjutkan dengan langkah perulangan berikutnya";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK = "Keluar dari perulangan.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE = "Abaikan sisa dari perulangan ini, dan lanjutkan dengan langkah berikutnya.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_WARNING = "Peringatan: Blok ini hanya dapat digunakan dalam perulangan.";
+Blockly.Msg.CONTROLS_FOREACH_HELPURL = "https://github.com/google/blockly/wiki/Loops#for-each"; // untranslated
+Blockly.Msg.CONTROLS_FOREACH_TITLE = "untuk setiap item %1 di dalam list %2";
+Blockly.Msg.CONTROLS_FOREACH_TOOLTIP = "Untuk tiap-tiap item di dalam list, tetapkan variabel '%1' ke dalam item, selanjutnya kerjakan beberapa statement.";
+Blockly.Msg.CONTROLS_FOR_HELPURL = "https://github.com/google/blockly/wiki/Loops#count-with"; // untranslated
+Blockly.Msg.CONTROLS_FOR_TITLE = "Cacah dengan %1 dari %2 ke %3 dengan step / penambahan %4";
+Blockly.Msg.CONTROLS_FOR_TOOLTIP = "Menggunakan variabel \"%1\" dengan mengambil nilai dari batas awal hingga ke batas akhir, dengan interval tertentu, dan mengerjakan block tertentu.";
+Blockly.Msg.CONTROLS_IF_ELSEIF_TOOLTIP = "Tambahkan prasyarat ke dalam blok IF.";
+Blockly.Msg.CONTROLS_IF_ELSE_TOOLTIP = "Terakhir, tambahkan kondisi tangkap-semua kedalam blok IF.";
+Blockly.Msg.CONTROLS_IF_HELPURL = "https://github.com/google/blockly/wiki/IfElse"; // untranslated
+Blockly.Msg.CONTROLS_IF_IF_TOOLTIP = "Tambahkan, hapus, atau susun kembali bagian untuk mengkonfigurasi blok IF ini.";
+Blockly.Msg.CONTROLS_IF_MSG_ELSE = "lainnya";
+Blockly.Msg.CONTROLS_IF_MSG_ELSEIF = "atau jika";
+Blockly.Msg.CONTROLS_IF_MSG_IF = "jika";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_1 = "Jika nilainya benar, maka lakukan beberapa perintah.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_2 = "Jika nilainya benar, maka kerjakan perintah blok pertama. Jika tidak, kerjakan perintah blok kedua.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_3 = "Jika nilai pertama benar, maka kerjakan perintah blok pertama. Sebaliknya, jika nilai kedua benar, kerjakan perintah blok kedua.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_4 = "Jika nilai pertama benar, maka kerjakan perintah blok pertama. Sebaliknya, jika nilai kedua benar, kerjakan perintah blok kedua. Jika dua-duanya tidak benar, kerjakan perintah blok terakhir.";
+Blockly.Msg.CONTROLS_REPEAT_HELPURL = "https://en.wikipedia.org/wiki/For_loop";
+Blockly.Msg.CONTROLS_REPEAT_INPUT_DO = "kerjakan";
+Blockly.Msg.CONTROLS_REPEAT_TITLE = "ulangi %1 kali";
+Blockly.Msg.CONTROLS_REPEAT_TOOLTIP = "Lakukan beberapa perintah beberapa kali.";
+Blockly.Msg.CONTROLS_WHILEUNTIL_HELPURL = "https://github.com/google/blockly/wiki/Loops#repeat"; // untranslated
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "ulangi sampai";
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "ulangi jika";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "Selagi nilainya salah, maka lakukan beberapa perintah.";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "Selagi nilainya benar, maka lakukan beberapa perintah.";
+Blockly.Msg.DELETE_ALL_BLOCKS = "Hapus semua %1 blok?";
+Blockly.Msg.DELETE_BLOCK = "Hapus Blok";
+Blockly.Msg.DELETE_VARIABLE = "Hapus variabel '%1'";
+Blockly.Msg.DELETE_VARIABLE_CONFIRMATION = "Hapus %1 yang digunakan pada variabel '%2'?";
+Blockly.Msg.DELETE_X_BLOCKS = "Hapus %1 Blok";
+Blockly.Msg.DISABLE_BLOCK = "Nonaktifkan Blok";
+Blockly.Msg.DUPLICATE_BLOCK = "Duplikat";
+Blockly.Msg.ENABLE_BLOCK = "Aktifkan Blok";
+Blockly.Msg.EXPAND_ALL = "Kembangkan Blok";
+Blockly.Msg.EXPAND_BLOCK = "Kembangkan Blok";
+Blockly.Msg.EXTERNAL_INPUTS = "Input Eksternal";
+Blockly.Msg.HELP = "Bantuan";
+Blockly.Msg.INLINE_INPUTS = "Input Inline";
+Blockly.Msg.LISTS_CREATE_EMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-empty-list";
+Blockly.Msg.LISTS_CREATE_EMPTY_TITLE = "buat list kosong";
+Blockly.Msg.LISTS_CREATE_EMPTY_TOOLTIP = "Kembalikan list, dengan panjang 0, tidak berisi data";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TITLE_ADD = "list";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TOOLTIP = "Tambahkan, hapus, atau susun ulang bagian untuk mengkonfigurasi blok list ini.";
+Blockly.Msg.LISTS_CREATE_WITH_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
+Blockly.Msg.LISTS_CREATE_WITH_INPUT_WITH = "buat list dengan";
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TOOLTIP = "Tambahkan sebuah item ke list.";
+Blockly.Msg.LISTS_CREATE_WITH_TOOLTIP = "Buat sebuah list dengan sejumlah item.";
+Blockly.Msg.LISTS_GET_INDEX_FIRST = "pertama";
+Blockly.Msg.LISTS_GET_INDEX_FROM_END = "# dari akhir";
+Blockly.Msg.LISTS_GET_INDEX_FROM_START = "#";
+Blockly.Msg.LISTS_GET_INDEX_GET = "dapatkan";
+Blockly.Msg.LISTS_GET_INDEX_GET_REMOVE = "dapatkan dan hapus";
+Blockly.Msg.LISTS_GET_INDEX_LAST = "terakhir";
+Blockly.Msg.LISTS_GET_INDEX_RANDOM = "acak";
+Blockly.Msg.LISTS_GET_INDEX_REMOVE = "Hapus";
+Blockly.Msg.LISTS_GET_INDEX_TAIL = ""; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FIRST = "Kembalikan item pertama dalam list.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FROM = "Kembalikan item di posisi tertentu dalam list.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_LAST = "Kembalikan item terakhir dalam list.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_RANDOM = "Kembalikan item acak dalam list.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST = "Hapus dan kembalikan item pertama dalam list.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM = "Hapus dan kembalikan item di posisi tertentu dalam list.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST = "Hapus dan kembalikan item terakhir dalam list.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM = "Hapus dan kembalikan item acak dalam list.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST = "Hapus item pertama dalam list.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM = "Hapus item di posisi tertentu dalam list.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST = "Hapus item terakhir dalam list.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM = "Hapus sebuah item acak dalam list.";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_END = "ke # dari akhir";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_START = "ke #";
+Blockly.Msg.LISTS_GET_SUBLIST_END_LAST = "ke yang paling akhir";
+Blockly.Msg.LISTS_GET_SUBLIST_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-a-sublist"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_START_FIRST = "dapatkan sub-list dari pertama";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_END = "dapatkan sub-list dari nomor # dari akhir";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_START = "dapatkan sub-list dari #";
+Blockly.Msg.LISTS_GET_SUBLIST_TAIL = ""; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_TOOLTIP = "Buat salinan bagian tertentu dari list.";
+Blockly.Msg.LISTS_INDEX_FROM_END_TOOLTIP = "%1 adalah item terakhir.";
+Blockly.Msg.LISTS_INDEX_FROM_START_TOOLTIP = "%1 adalah item pertama.";
+Blockly.Msg.LISTS_INDEX_OF_FIRST = "cari kejadian pertama item";
+Blockly.Msg.LISTS_INDEX_OF_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-items-from-a-list"; // untranslated
+Blockly.Msg.LISTS_INDEX_OF_LAST = "cari kejadian terakhir item";
+Blockly.Msg.LISTS_INDEX_OF_TOOLTIP = "Kembalikan indeks dari item pertama/terakhir kali muncul dalam list. Kembalikan %1 jika item tidak ditemukan.";
+Blockly.Msg.LISTS_INLIST = "dalam list";
+Blockly.Msg.LISTS_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#is-empty"; // untranslated
+Blockly.Msg.LISTS_ISEMPTY_TITLE = "%1 kosong";
+Blockly.Msg.LISTS_ISEMPTY_TOOLTIP = "Kembalikan benar jika list kosong.";
+Blockly.Msg.LISTS_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Lists#length-of"; // untranslated
+Blockly.Msg.LISTS_LENGTH_TITLE = "panjang dari %1";
+Blockly.Msg.LISTS_LENGTH_TOOLTIP = "Kembalikan panjang list.";
+Blockly.Msg.LISTS_REPEAT_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
+Blockly.Msg.LISTS_REPEAT_TITLE = "buat list dengan item %1 diulang %2 kali";
+Blockly.Msg.LISTS_REPEAT_TOOLTIP = "Buat sebuah list yang terdiri dari nilai yang diberikan diulang sebanyak jumlah yang ditentukan.";
+Blockly.Msg.LISTS_SET_INDEX_HELPURL = "https://github.com/google/blockly/wiki/Lists#in-list--set"; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_INPUT_TO = "sebagai";
+Blockly.Msg.LISTS_SET_INDEX_INSERT = "sisipkan di";
+Blockly.Msg.LISTS_SET_INDEX_SET = "tetapkan";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST = "Sisipkan item di bagian awal dari list.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FROM = "Sisipkan item ke dalam posisi yang telah ditentukan di dalam list.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_LAST = "Tambahkan item ke bagian akhir list.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM = "Sisipkan item secara acak ke dalam list.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FIRST = "Tetapkan item pertama di dalam list.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FROM = "Tetapkan item ke dalam posisi yang telah ditentukan di dalam list.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_LAST = "Menetapkan item terakhir dalam list.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_RANDOM = "Tetapkan secara acak sebuah item dalam list.";
+Blockly.Msg.LISTS_SORT_HELPURL = "https://github.com/google/blockly/wiki/Lists#sorting-a-list";
+Blockly.Msg.LISTS_SORT_ORDER_ASCENDING = "menaik";
+Blockly.Msg.LISTS_SORT_ORDER_DESCENDING = "menurun";
+Blockly.Msg.LISTS_SORT_TITLE = "urutkan %1 %2 %3";
+Blockly.Msg.LISTS_SORT_TOOLTIP = "Urutkan salinan dari daftar";
+Blockly.Msg.LISTS_SORT_TYPE_IGNORECASE = "sesuai abjad, abaikan kasus";
+Blockly.Msg.LISTS_SORT_TYPE_NUMERIC = "sesuai nomor";
+Blockly.Msg.LISTS_SORT_TYPE_TEXT = "sesuai abjad";
+Blockly.Msg.LISTS_SPLIT_HELPURL = "https://github.com/google/blockly/wiki/Lists#splitting-strings-and-joining-lists"; // untranslated
+Blockly.Msg.LISTS_SPLIT_LIST_FROM_TEXT = "buat list dari teks";
+Blockly.Msg.LISTS_SPLIT_TEXT_FROM_LIST = "buat teks dari list";
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_JOIN = "Gabung daftar teks menjadi satu teks, yang dipisahkan oleh pembatas.";
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_SPLIT = "Membagi teks ke dalam daftar teks, pisahkan pada setiap pembatas.";
+Blockly.Msg.LISTS_SPLIT_WITH_DELIMITER = "dengan pembatas";
+Blockly.Msg.LOGIC_BOOLEAN_FALSE = "salah";
+Blockly.Msg.LOGIC_BOOLEAN_HELPURL = "https://github.com/google/blockly/wiki/Logic#values"; // untranslated
+Blockly.Msg.LOGIC_BOOLEAN_TOOLTIP = "Kembalikan benar atau salah.";
+Blockly.Msg.LOGIC_BOOLEAN_TRUE = "benar";
+Blockly.Msg.LOGIC_COMPARE_HELPURL = "https://en.wikipedia.org/wiki/Inequality_(mathematics)";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_EQ = "Kembalikan benar jika kedua input sama satu dengan lainnya.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GT = "Kembalikan benar jika input pertama lebih besar dari input kedua.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GTE = "Kembalikan benar jika input pertama lebih besar dari atau sama dengan input kedua.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LT = "Kembalikan benar jika input pertama lebih kecil dari input kedua.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LTE = "Kembalikan benar jika input pertama lebih kecil atau sama dengan input kedua .";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_NEQ = "Kembalikan benar jika kedua input tidak sama satu dengan lainnya.";
+Blockly.Msg.LOGIC_NEGATE_HELPURL = "https://github.com/google/blockly/wiki/Logic#not"; // untranslated
+Blockly.Msg.LOGIC_NEGATE_TITLE = "bukan (not) %1";
+Blockly.Msg.LOGIC_NEGATE_TOOLTIP = "Kembalikan benar jika input salah. Kembalikan salah jika input benar.";
+Blockly.Msg.LOGIC_NULL = "null";
+Blockly.Msg.LOGIC_NULL_HELPURL = "https://en.wikipedia.org/wiki/Nullable_type";
+Blockly.Msg.LOGIC_NULL_TOOLTIP = "Kembalikan null.";
+Blockly.Msg.LOGIC_OPERATION_AND = "dan";
+Blockly.Msg.LOGIC_OPERATION_HELPURL = "https://github.com/google/blockly/wiki/Logic#logical-operations"; // untranslated
+Blockly.Msg.LOGIC_OPERATION_OR = "atau";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_AND = "Kembalikan benar jika kedua input adalah benar.";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_OR = "Kembalikan benar jika minimal satu input nilainya benar.";
+Blockly.Msg.LOGIC_TERNARY_CONDITION = "test";
+Blockly.Msg.LOGIC_TERNARY_HELPURL = "https://en.wikipedia.org/wiki/%3F:";
+Blockly.Msg.LOGIC_TERNARY_IF_FALSE = "jika salah";
+Blockly.Msg.LOGIC_TERNARY_IF_TRUE = "jika benar";
+Blockly.Msg.LOGIC_TERNARY_TOOLTIP = "Periksa kondisi di 'test'. Jika kondisi benar, kembalikan nilai 'if true'; jika sebaliknya kembalikan nilai 'if false'.";
+Blockly.Msg.MATH_ADDITION_SYMBOL = "+";
+Blockly.Msg.MATH_ARITHMETIC_HELPURL = "https://id.wikipedia.org/wiki/Aritmetika";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_ADD = "Kembalikan jumlah dari kedua angka.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE = "Kembalikan hasil bagi dari kedua angka.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MINUS = "Kembalikan selisih dari kedua angka.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MULTIPLY = "Kembalikan perkalian dari kedua angka.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_POWER = "Kembalikan angka pertama pangkat angka kedua.";
+Blockly.Msg.MATH_CHANGE_HELPURL = "https://en.wikipedia.org/wiki/Programming_idiom#Incrementing_a_counter";
+Blockly.Msg.MATH_CHANGE_TITLE = "ubah %1 oleh %2";
+Blockly.Msg.MATH_CHANGE_TOOLTIP = "Tambahkan angka kedalam variabel '%1'.";
+Blockly.Msg.MATH_CONSTANT_HELPURL = "https://en.wikipedia.org/wiki/Mathematical_constant";
+Blockly.Msg.MATH_CONSTANT_TOOLTIP = "Kembalikan salah satu konstanta: π (3,141…), e (2,718…), φ (1,618…), akar(2) (1,414…), akar(½) (0.707…), atau ∞ (tak terhingga).";
+Blockly.Msg.MATH_CONSTRAIN_HELPURL = "https://en.wikipedia.org/wiki/Clamping_%28graphics%29"; // untranslated
+Blockly.Msg.MATH_CONSTRAIN_TITLE = "Batasi %1 rendah %2 tinggi %3";
+Blockly.Msg.MATH_CONSTRAIN_TOOLTIP = "Batasi angka antara batas yang ditentukan (inklusif).";
+Blockly.Msg.MATH_DIVISION_SYMBOL = "÷";
+Blockly.Msg.MATH_IS_DIVISIBLE_BY = "dapat dibagi oleh";
+Blockly.Msg.MATH_IS_EVEN = "adalah bilangan genap";
+Blockly.Msg.MATH_IS_NEGATIVE = "adalah bilangan negatif";
+Blockly.Msg.MATH_IS_ODD = "adalah bilangan ganjil";
+Blockly.Msg.MATH_IS_POSITIVE = "adalah bilangan positif";
+Blockly.Msg.MATH_IS_PRIME = "adalah bilangan pokok";
+Blockly.Msg.MATH_IS_TOOLTIP = "Periksa apakah angka adalah bilangan genap, bilangan ganjil, bilangan pokok, bilangan bulat, bilangan positif, bilangan negatif, atau apakan bisa dibagi oleh angka tertentu. Kembalikan benar atau salah.";
+Blockly.Msg.MATH_IS_WHOLE = "adalah bilangan bulat";
+Blockly.Msg.MATH_MODULO_HELPURL = "https://en.wikipedia.org/wiki/Modulo_operation";
+Blockly.Msg.MATH_MODULO_TITLE = "sisa dari %1 ÷ %2";
+Blockly.Msg.MATH_MODULO_TOOLTIP = "Kembalikan sisa dari pembagian ke dua angka.";
+Blockly.Msg.MATH_MULTIPLICATION_SYMBOL = "×";
+Blockly.Msg.MATH_NUMBER_HELPURL = "https://en.wikipedia.org/wiki/Number";
+Blockly.Msg.MATH_NUMBER_TOOLTIP = "Suatu angka.";
+Blockly.Msg.MATH_ONLIST_HELPURL = ""; // untranslated
+Blockly.Msg.MATH_ONLIST_OPERATOR_AVERAGE = "rata-rata dari list";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MAX = "maksimum dari list";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MEDIAN = "median dari list";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MIN = "minimum dari list";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MODE = "mode-mode dari list";
+Blockly.Msg.MATH_ONLIST_OPERATOR_RANDOM = "item acak dari list";
+Blockly.Msg.MATH_ONLIST_OPERATOR_STD_DEV = "deviasi standar dari list";
+Blockly.Msg.MATH_ONLIST_OPERATOR_SUM = "jumlah dari list";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_AVERAGE = "Kembalikan rata-rata (mean aritmetik) dari nilai numerik dari list.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MAX = "Kembalikan angka terbesar dari list.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MEDIAN = "Kembalikan median dari list.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MIN = "Kembalikan angka terkecil dari list.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MODE = "Kembalikan list berisi item yang paling umum dari dalam list.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_RANDOM = "Kembalikan elemen acak dari list.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_STD_DEV = "Kembalikan standard deviasi dari list.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_SUM = "Kembalikan jumlah dari seluruh bilangan dari list.";
+Blockly.Msg.MATH_POWER_SYMBOL = "^";
+Blockly.Msg.MATH_RANDOM_FLOAT_HELPURL = "https://en.wikipedia.org/wiki/Random_number_generation";
+Blockly.Msg.MATH_RANDOM_FLOAT_TITLE_RANDOM = "nilai pecahan acak";
+Blockly.Msg.MATH_RANDOM_FLOAT_TOOLTIP = "Kembalikan nilai pecahan acak antara 0.0 (inklusif) dan 1.0 (eksklusif).";
+Blockly.Msg.MATH_RANDOM_INT_HELPURL = "https://en.wikipedia.org/wiki/Random_number_generation";
+Blockly.Msg.MATH_RANDOM_INT_TITLE = "acak bulat dari %1 sampai %2";
+Blockly.Msg.MATH_RANDOM_INT_TOOLTIP = "Kembalikan bilangan acak antara dua batas yang ditentukan, inklusif.";
+Blockly.Msg.MATH_ROUND_HELPURL = "https://en.wikipedia.org/wiki/Rounding";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUND = "membulatkan";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDDOWN = "membulatkan kebawah";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDUP = "membulatkan keatas";
+Blockly.Msg.MATH_ROUND_TOOLTIP = "Bulatkan suatu bilangan naik atau turun.";
+Blockly.Msg.MATH_SINGLE_HELPURL = "https://en.wikipedia.org/wiki/Square_root";
+Blockly.Msg.MATH_SINGLE_OP_ABSOLUTE = "mutlak";
+Blockly.Msg.MATH_SINGLE_OP_ROOT = "akar";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ABS = "Kembalikan nilai absolut angka.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_EXP = "Kembalikan 10 pangkat angka.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LN = "Kembalikan logaritma natural dari angka.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LOG10 = "Kembalikan dasar logaritma 10 dari angka.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_NEG = "Kembalikan penyangkalan terhadap angka.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_POW10 = "Kembalikan 10 pangkat angka.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ROOT = "Kembalikan akar dari angka.";
+Blockly.Msg.MATH_SUBTRACTION_SYMBOL = "-";
+Blockly.Msg.MATH_TRIG_ACOS = "acos";
+Blockly.Msg.MATH_TRIG_ASIN = "asin";
+Blockly.Msg.MATH_TRIG_ATAN = "atan";
+Blockly.Msg.MATH_TRIG_COS = "cos";
+Blockly.Msg.MATH_TRIG_HELPURL = "https://en.wikipedia.org/wiki/Trigonometric_functions";
+Blockly.Msg.MATH_TRIG_SIN = "sin";
+Blockly.Msg.MATH_TRIG_TAN = "tan";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ACOS = "Kembalikan acosine dari angka.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ASIN = "Kembalikan asin dari angka.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ATAN = "Kembalikan atan dari angka.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_COS = "Kembalikan cosinus dari derajat (bukan radian).";
+Blockly.Msg.MATH_TRIG_TOOLTIP_SIN = "Kembalikan sinus dari derajat (bukan radian).";
+Blockly.Msg.MATH_TRIG_TOOLTIP_TAN = "Kembalikan tangen dari derajat (bukan radian).";
+Blockly.Msg.NEW_VARIABLE = "Buat variabel...";
+Blockly.Msg.NEW_VARIABLE_TITLE = "Nama variabel baru:";
+Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; // untranslated
+Blockly.Msg.PROCEDURES_ALLOW_STATEMENTS = "memungkinkan pernyataan";
+Blockly.Msg.PROCEDURES_BEFORE_PARAMS = "dengan:";
+Blockly.Msg.PROCEDURES_CALLNORETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29";
+Blockly.Msg.PROCEDURES_CALLNORETURN_TOOLTIP = "Menjalankan fungsi '%1' yang ditetapkan pengguna.";
+Blockly.Msg.PROCEDURES_CALLRETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29";
+Blockly.Msg.PROCEDURES_CALLRETURN_TOOLTIP = "Menjalankan fungsi '%1' yang ditetapkan pengguna dan menggunakan outputnya.";
+Blockly.Msg.PROCEDURES_CALL_BEFORE_PARAMS = "dengan:";
+Blockly.Msg.PROCEDURES_CREATE_DO = "Buat '%1'";
+Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT = "Jelaskan fungsi ini...";
+Blockly.Msg.PROCEDURES_DEFNORETURN_DO = ""; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29";
+Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE = "buat sesuatu";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE = "untuk";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TOOLTIP = "Buat sebuah fungsi tanpa output.";
+Blockly.Msg.PROCEDURES_DEFRETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29";
+Blockly.Msg.PROCEDURES_DEFRETURN_RETURN = "kembali";
+Blockly.Msg.PROCEDURES_DEFRETURN_TOOLTIP = "Buat sebuah fungsi dengan satu output.";
+Blockly.Msg.PROCEDURES_DEF_DUPLICATE_WARNING = "Peringatan: Fungsi ini memiliki parameter duplikat.";
+Blockly.Msg.PROCEDURES_HIGHLIGHT_DEF = "Sorot definisi fungsi";
+Blockly.Msg.PROCEDURES_IFRETURN_HELPURL = "http://c2.com/cgi/wiki?GuardClause"; // untranslated
+Blockly.Msg.PROCEDURES_IFRETURN_TOOLTIP = "Jika nilai yang benar, kemudian kembalikan nilai kedua.";
+Blockly.Msg.PROCEDURES_IFRETURN_WARNING = "Peringatan: Blok ini dapat digunakan hanya dalam definisi fungsi.";
+Blockly.Msg.PROCEDURES_MUTATORARG_TITLE = "masukan Nama:";
+Blockly.Msg.PROCEDURES_MUTATORARG_TOOLTIP = "Tambahkan masukan ke fungsi.";
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TITLE = "input";
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TOOLTIP = "Menambah, menghapus, atau menyusun ulang masukan untuk fungsi ini.";
+Blockly.Msg.REDO = "Lakukan ulang";
+Blockly.Msg.REMOVE_COMMENT = "Hapus Komentar";
+Blockly.Msg.RENAME_VARIABLE = "Ubah nama variabel...";
+Blockly.Msg.RENAME_VARIABLE_TITLE = "Ubah nama semua variabel '%1' menjadi:";
+Blockly.Msg.TEXT_APPEND_APPENDTEXT = "tambahkan teks";
+Blockly.Msg.TEXT_APPEND_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_APPEND_TO = "untuk";
+Blockly.Msg.TEXT_APPEND_TOOLTIP = "Tambahkan beberapa teks ke variabel '%1'.";
+Blockly.Msg.TEXT_CHANGECASE_HELPURL = "https://github.com/google/blockly/wiki/Text#adjusting-text-case"; // untranslated
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_LOWERCASE = "menjadi huruf kecil";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_TITLECASE = "menjadi huruf pertama kapital";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_UPPERCASE = "menjadi huruf kapital";
+Blockly.Msg.TEXT_CHANGECASE_TOOLTIP = "Kembalikan kopi dari text dengan kapitalisasi yang berbeda.";
+Blockly.Msg.TEXT_CHARAT_FIRST = "ambil huruf pertama";
+Blockly.Msg.TEXT_CHARAT_FROM_END = "ambil huruf nomor # dari belakang";
+Blockly.Msg.TEXT_CHARAT_FROM_START = "ambil huruf ke #";
+Blockly.Msg.TEXT_CHARAT_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-text"; // untranslated
+Blockly.Msg.TEXT_CHARAT_INPUT_INTEXT = "dalam teks";
+Blockly.Msg.TEXT_CHARAT_LAST = "ambil huruf terakhir";
+Blockly.Msg.TEXT_CHARAT_RANDOM = "ambil huruf secara acak";
+Blockly.Msg.TEXT_CHARAT_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_CHARAT_TOOLTIP = "Kembalikan karakter dari posisi tertentu.";
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TOOLTIP = "Tambahkan suatu item ke dalam teks.";
+Blockly.Msg.TEXT_CREATE_JOIN_TITLE_JOIN = "join";
+Blockly.Msg.TEXT_CREATE_JOIN_TOOLTIP = "Tambah, ambil, atau susun ulang teks blok.";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_END = "pada huruf nomer # dari terakhir";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_START = "pada huruf #";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_LAST = "pada huruf terakhir";
+Blockly.Msg.TEXT_GET_SUBSTRING_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_INPUT_IN_TEXT = "in teks";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FIRST = "ambil bagian teks (substring) dari huruf pertama";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_END = "ambil bagian teks (substring) dari huruf ke # dari terakhir";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_START = "ambil bagian teks (substring) dari huruf no #";
+Blockly.Msg.TEXT_GET_SUBSTRING_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_TOOLTIP = "Kembalikan spesifik bagian dari teks.";
+Blockly.Msg.TEXT_INDEXOF_HELPURL = "https://github.com/google/blockly/wiki/Text#finding-text"; // untranslated
+Blockly.Msg.TEXT_INDEXOF_INPUT_INTEXT = "dalam teks";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_FIRST = "temukan kejadian pertama dalam teks";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_LAST = "temukan kejadian terakhir dalam teks";
+Blockly.Msg.TEXT_INDEXOF_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_INDEXOF_TOOLTIP = "Kembalikan indeks pertama dan terakhir dari kejadian pertama/terakhir dari teks pertama dalam teks kedua. Kembalikan %1 jika teks tidak ditemukan.";
+Blockly.Msg.TEXT_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Text#checking-for-empty-text"; // untranslated
+Blockly.Msg.TEXT_ISEMPTY_TITLE = "%1 kosong";
+Blockly.Msg.TEXT_ISEMPTY_TOOLTIP = "Kembalikan benar jika teks yang disediakan kosong.";
+Blockly.Msg.TEXT_JOIN_HELPURL = "https://github.com/google/blockly/wiki/Text#text-creation"; // untranslated
+Blockly.Msg.TEXT_JOIN_TITLE_CREATEWITH = "buat teks dengan";
+Blockly.Msg.TEXT_JOIN_TOOLTIP = "Buat teks dengan cara gabungkan sejumlah item.";
+Blockly.Msg.TEXT_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_LENGTH_TITLE = "panjang dari %1";
+Blockly.Msg.TEXT_LENGTH_TOOLTIP = "Kembalikan sejumlah huruf (termasuk spasi) dari teks yang disediakan.";
+Blockly.Msg.TEXT_PRINT_HELPURL = "https://github.com/google/blockly/wiki/Text#printing-text"; // untranslated
+Blockly.Msg.TEXT_PRINT_TITLE = "cetak %1";
+Blockly.Msg.TEXT_PRINT_TOOLTIP = "Cetak teks yant ditentukan, angka atau ninlai lainnya.";
+Blockly.Msg.TEXT_PROMPT_HELPURL = "https://github.com/google/blockly/wiki/Text#getting-input-from-the-user"; // untranslated
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_NUMBER = "Meminta pengguna untuk memberi sebuah angka.";
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_TEXT = "Meminta pengguna untuk memberi beberapa teks.";
+Blockly.Msg.TEXT_PROMPT_TYPE_NUMBER = "Meminta angka dengan pesan";
+Blockly.Msg.TEXT_PROMPT_TYPE_TEXT = "meminta teks dengan pesan";
+Blockly.Msg.TEXT_TEXT_HELPURL = "https://en.wikipedia.org/wiki/String_(computer_science)";
+Blockly.Msg.TEXT_TEXT_TOOLTIP = "Huruf, kata atau baris teks.";
+Blockly.Msg.TEXT_TRIM_HELPURL = "https://github.com/google/blockly/wiki/Text#trimming-removing-spaces"; // untranslated
+Blockly.Msg.TEXT_TRIM_OPERATOR_BOTH = "pangkas ruang dari kedua belah sisi";
+Blockly.Msg.TEXT_TRIM_OPERATOR_LEFT = "pangkas ruang dari sisi kiri";
+Blockly.Msg.TEXT_TRIM_OPERATOR_RIGHT = "pangkas ruang dari sisi kanan";
+Blockly.Msg.TEXT_TRIM_TOOLTIP = "Kembali salinan teks dengan spasi dihapus dari satu atau kedua ujungnya.";
+Blockly.Msg.TODAY = "Hari ini";
+Blockly.Msg.UNDO = "Urungkan";
+Blockly.Msg.VARIABLES_DEFAULT_NAME = "item";
+Blockly.Msg.VARIABLES_GET_CREATE_SET = "Buat 'set %1'";
+Blockly.Msg.VARIABLES_GET_HELPURL = "https://github.com/google/blockly/wiki/Variables#get"; // untranslated
+Blockly.Msg.VARIABLES_GET_TOOLTIP = "Kembalikan nilai variabel ini.";
+Blockly.Msg.VARIABLES_SET = "tetapkan %1 untuk %2";
+Blockly.Msg.VARIABLES_SET_CREATE_GET = "Buat 'get %1'";
+Blockly.Msg.VARIABLES_SET_HELPURL = "https://github.com/google/blockly/wiki/Variables#set"; // untranslated
+Blockly.Msg.VARIABLES_SET_TOOLTIP = "tetapkan variabel ini dengan input yang sama.";
+Blockly.Msg.VARIABLE_ALREADY_EXISTS = "Sebuah variabel dengan nama '%1' sudah ada.";
+Blockly.Msg.PROCEDURES_DEFRETURN_TITLE = Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE;
+Blockly.Msg.CONTROLS_IF_IF_TITLE_IF = Blockly.Msg.CONTROLS_IF_MSG_IF;
+Blockly.Msg.CONTROLS_WHILEUNTIL_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_MSG_THEN = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_ELSE_TITLE_ELSE = Blockly.Msg.CONTROLS_IF_MSG_ELSE;
+Blockly.Msg.PROCEDURES_DEFRETURN_PROCEDURE = Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE;
+Blockly.Msg.LISTS_GET_SUBLIST_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.LISTS_GET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.PROCEDURES_DEFRETURN_DO = Blockly.Msg.PROCEDURES_DEFNORETURN_DO;
+Blockly.Msg.CONTROLS_IF_ELSEIF_TITLE_ELSEIF = Blockly.Msg.CONTROLS_IF_MSG_ELSEIF;
+Blockly.Msg.LISTS_GET_INDEX_HELPURL = Blockly.Msg.LISTS_INDEX_OF_HELPURL;
+Blockly.Msg.CONTROLS_FOREACH_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_SET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TITLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_APPEND_VARIABLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.LISTS_INDEX_OF_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.PROCEDURES_DEFRETURN_COMMENT = Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT; \ No newline at end of file
diff --git a/blockly/msg/js/is.js b/blockly/msg/js/is.js
new file mode 100644
index 0000000..8b7eed1
--- /dev/null
+++ b/blockly/msg/js/is.js
@@ -0,0 +1,391 @@
+// This file was automatically generated. Do not modify.
+
+'use strict';
+
+goog.provide('Blockly.Msg.is');
+
+goog.require('Blockly.Msg');
+
+Blockly.Msg.ADD_COMMENT = "Skrifa skýringu";
+Blockly.Msg.CHANGE_VALUE_TITLE = "Breyta gildi:";
+Blockly.Msg.CLEAN_UP = "Hreinsa kubba";
+Blockly.Msg.COLLAPSE_ALL = "Loka kubbum";
+Blockly.Msg.COLLAPSE_BLOCK = "Loka kubbi";
+Blockly.Msg.COLOUR_BLEND_COLOUR1 = "litur 1";
+Blockly.Msg.COLOUR_BLEND_COLOUR2 = "litur 2";
+Blockly.Msg.COLOUR_BLEND_HELPURL = "http://meyerweb.com/eric/tools/color-blend/";
+Blockly.Msg.COLOUR_BLEND_RATIO = "hlutfall";
+Blockly.Msg.COLOUR_BLEND_TITLE = "blöndun";
+Blockly.Msg.COLOUR_BLEND_TOOLTIP = "Blandar tveimur litum í gefnu hlutfalli (0.0 - 1.0).";
+Blockly.Msg.COLOUR_PICKER_HELPURL = "https://en.wikipedia.org/wiki/Color";
+Blockly.Msg.COLOUR_PICKER_TOOLTIP = "Velja lit úr litakorti.";
+Blockly.Msg.COLOUR_RANDOM_HELPURL = "http://randomcolour.com"; // untranslated
+Blockly.Msg.COLOUR_RANDOM_TITLE = "einhver litur";
+Blockly.Msg.COLOUR_RANDOM_TOOLTIP = "Velja einhvern lit af handahófi.";
+Blockly.Msg.COLOUR_RGB_BLUE = "blátt";
+Blockly.Msg.COLOUR_RGB_GREEN = "grænt";
+Blockly.Msg.COLOUR_RGB_HELPURL = "http://www.december.com/html/spec/colorper.html";
+Blockly.Msg.COLOUR_RGB_RED = "rauður";
+Blockly.Msg.COLOUR_RGB_TITLE = "litur";
+Blockly.Msg.COLOUR_RGB_TOOLTIP = "Búa til lit úr tilteknu magni af rauðu, grænu og bláu. Allar tölurnar verða að vera á bilinu 0 til 100.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_HELPURL = "https://github.com/google/blockly/wiki/Loops#loop-termination-blocks";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK = "fara út úr lykkju";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE = "fara beint í næstu umferð lykkjunnar";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK = "Fara út úr umlykjandi lykkju.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE = "Sleppa afganginum af lykkjunni og fara beint í næstu umferð hennar.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_WARNING = "Aðvörun: Þennan kubb má aðeins nota innan lykkju.";
+Blockly.Msg.CONTROLS_FOREACH_HELPURL = "https://github.com/google/blockly/wiki/Loops#for-each"; // untranslated
+Blockly.Msg.CONTROLS_FOREACH_TITLE = "fyrir hvert %1 í lista %2";
+Blockly.Msg.CONTROLS_FOREACH_TOOLTIP = "Fyrir hvert atriði í lista er breyta '%1' stillt á atriðið og skipanir gerðar.";
+Blockly.Msg.CONTROLS_FOR_HELPURL = "https://github.com/google/blockly/wiki/Loops#count-with";
+Blockly.Msg.CONTROLS_FOR_TITLE = "telja með %1 frá %2 til %3 um %4";
+Blockly.Msg.CONTROLS_FOR_TOOLTIP = "Láta breytuna '%1' taka inn gildi frá fyrstu tölu til síðustu tölu, hlaupandi á tiltekna bilinu og gera tilteknu kubbana.";
+Blockly.Msg.CONTROLS_IF_ELSEIF_TOOLTIP = "Bæta skilyrði við EF kubbinn.";
+Blockly.Msg.CONTROLS_IF_ELSE_TOOLTIP = "Bæta við hluta EF kubbs sem grípur öll tilfelli sem uppfylla ekki hin skilyrðin.";
+Blockly.Msg.CONTROLS_IF_HELPURL = "https://github.com/google/blockly/wiki/IfElse";
+Blockly.Msg.CONTROLS_IF_IF_TOOLTIP = "Bæta við, fjarlægja eða umraða til að breyta skipan þessa EF kubbs.";
+Blockly.Msg.CONTROLS_IF_MSG_ELSE = "annars";
+Blockly.Msg.CONTROLS_IF_MSG_ELSEIF = "annars ef";
+Blockly.Msg.CONTROLS_IF_MSG_IF = "ef";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_1 = "Ef gildi er satt skal gera einhverjar skipanir.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_2 = "Ef gildi er satt skal gera skipanir í fyrri kubbnum. Annars skal gera skipanir í seinni kubbnum.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_3 = "Ef fyrra gildið er satt skal gera skipanir í fyrri kubbnum. Annars, ef seinna gildið er satt, þá skal gera skipanir í seinni kubbnum.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_4 = "Ef fyrra gildið er satt skal gera skipanir í fyrri kubbnum. Annars, ef seinna gildið er satt, skal gera skipanir í seinni kubbnum. Ef hvorugt gildið er satt, skal gera skipanir í síðasta kubbnum.";
+Blockly.Msg.CONTROLS_REPEAT_HELPURL = "https://en.wikipedia.org/wiki/For_loop";
+Blockly.Msg.CONTROLS_REPEAT_INPUT_DO = "gera";
+Blockly.Msg.CONTROLS_REPEAT_TITLE = "endurtaka %1 sinnum";
+Blockly.Msg.CONTROLS_REPEAT_TOOLTIP = "Gera eitthvað aftur og aftur.";
+Blockly.Msg.CONTROLS_WHILEUNTIL_HELPURL = "https://github.com/google/blockly/wiki/Loops#repeat";
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "endurtaka þar til";
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "endurtaka á meðan";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "Endurtaka eitthvað á meðan gildi er ósatt.";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "Endurtaka eitthvað á meðan gildi er satt.";
+Blockly.Msg.DELETE_ALL_BLOCKS = "Eyða öllum %1 kubbunum?";
+Blockly.Msg.DELETE_BLOCK = "Eyða kubbi";
+Blockly.Msg.DELETE_VARIABLE = "Delete the '%1' variable"; // untranslated
+Blockly.Msg.DELETE_VARIABLE_CONFIRMATION = "Delete %1 uses of the '%2' variable?"; // untranslated
+Blockly.Msg.DELETE_X_BLOCKS = "Eyða %1 kubbum";
+Blockly.Msg.DISABLE_BLOCK = "Óvirkja kubb";
+Blockly.Msg.DUPLICATE_BLOCK = "Afrita";
+Blockly.Msg.ENABLE_BLOCK = "Virkja kubb";
+Blockly.Msg.EXPAND_ALL = "Opna kubba";
+Blockly.Msg.EXPAND_BLOCK = "Opna kubb";
+Blockly.Msg.EXTERNAL_INPUTS = "Ytri inntök";
+Blockly.Msg.HELP = "Hjálp";
+Blockly.Msg.INLINE_INPUTS = "Innri inntök";
+Blockly.Msg.LISTS_CREATE_EMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-empty-list";
+Blockly.Msg.LISTS_CREATE_EMPTY_TITLE = "búa til tóman lista";
+Blockly.Msg.LISTS_CREATE_EMPTY_TOOLTIP = "Skilar lista með lengdina 0 án gagna";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TITLE_ADD = "listi";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TOOLTIP = "Bæta við, fjarlægja eða umraða hlutum til að breyta skipan þessa listakubbs.";
+Blockly.Msg.LISTS_CREATE_WITH_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
+Blockly.Msg.LISTS_CREATE_WITH_INPUT_WITH = "búa til lista með";
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TOOLTIP = "Bæta atriði við listann.";
+Blockly.Msg.LISTS_CREATE_WITH_TOOLTIP = "Búa til lista með einhverjum fjölda atriða.";
+Blockly.Msg.LISTS_GET_INDEX_FIRST = "fyrsta";
+Blockly.Msg.LISTS_GET_INDEX_FROM_END = "# frá enda";
+Blockly.Msg.LISTS_GET_INDEX_FROM_START = "#";
+Blockly.Msg.LISTS_GET_INDEX_GET = "sækja";
+Blockly.Msg.LISTS_GET_INDEX_GET_REMOVE = "sækja og fjarlægja";
+Blockly.Msg.LISTS_GET_INDEX_LAST = "síðasta";
+Blockly.Msg.LISTS_GET_INDEX_RANDOM = "eitthvert";
+Blockly.Msg.LISTS_GET_INDEX_REMOVE = "fjarlægja";
+Blockly.Msg.LISTS_GET_INDEX_TAIL = ""; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FIRST = "Skilar fyrsta atriði í lista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FROM = "Skilar atriðinu í hinum tiltekna stað í lista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_LAST = "Skilar síðasta atriði í lista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_RANDOM = "Skilar einhverju atriði úr lista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST = "Fjarlægir og skilar fyrsta atriðinu í lista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM = "Fjarlægir og skilar atriðinu á hinum tiltekna stað í lista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST = "Fjarlægir og skilar síðasta atriðinu í lista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM = "Fjarlægir og skilar einhverju atriði úr lista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST = "Fjarlægir fyrsta atriðið í lista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM = "Fjarlægir atriðið á hinum tiltekna stað í lista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST = "Fjarlægir síðasta atriðið í lista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM = "Fjarlægir eitthvert atriði úr lista.";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_END = "til # frá enda";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_START = "til #";
+Blockly.Msg.LISTS_GET_SUBLIST_END_LAST = "til síðasta";
+Blockly.Msg.LISTS_GET_SUBLIST_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-a-sublist";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FIRST = "sækja undirlista frá fyrsta";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_END = "sækja undirlista frá # frá enda";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_START = "sækja undirlista frá #";
+Blockly.Msg.LISTS_GET_SUBLIST_TAIL = ""; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_TOOLTIP = "Býr til afrit af tilteknum hluta lista.";
+Blockly.Msg.LISTS_INDEX_FROM_END_TOOLTIP = "%1 er síðasta atriðið.";
+Blockly.Msg.LISTS_INDEX_FROM_START_TOOLTIP = "%1 er fyrsta atriðið.";
+Blockly.Msg.LISTS_INDEX_OF_FIRST = "finna fyrsta tilfelli atriðis";
+Blockly.Msg.LISTS_INDEX_OF_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-items-from-a-list";
+Blockly.Msg.LISTS_INDEX_OF_LAST = "finna síðasta tilfelli atriðis";
+Blockly.Msg.LISTS_INDEX_OF_TOOLTIP = "Finnur hvar atriðið kemur fyrir fyrst/síðast í listanum og skilar sæti þess. Skilar %1 ef atriðið finnst ekki.";
+Blockly.Msg.LISTS_INLIST = "í lista";
+Blockly.Msg.LISTS_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#is-empty"; // untranslated
+Blockly.Msg.LISTS_ISEMPTY_TITLE = "%1 er tómur";
+Blockly.Msg.LISTS_ISEMPTY_TOOLTIP = "Skilar sönnu ef listinn er tómur.";
+Blockly.Msg.LISTS_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Lists#length-of";
+Blockly.Msg.LISTS_LENGTH_TITLE = "lengd %1";
+Blockly.Msg.LISTS_LENGTH_TOOLTIP = "Skilar lengd lista.";
+Blockly.Msg.LISTS_REPEAT_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with";
+Blockly.Msg.LISTS_REPEAT_TITLE = "búa til lista með atriði %1 endurtekið %2 sinnum";
+Blockly.Msg.LISTS_REPEAT_TOOLTIP = "Býr til lista sem inniheldur tiltekna gildið endurtekið tiltekið oft.";
+Blockly.Msg.LISTS_SET_INDEX_HELPURL = "https://github.com/google/blockly/wiki/Lists#in-list--set";
+Blockly.Msg.LISTS_SET_INDEX_INPUT_TO = "sem";
+Blockly.Msg.LISTS_SET_INDEX_INSERT = "bæta við";
+Blockly.Msg.LISTS_SET_INDEX_SET = "setja í";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST = "Bætir atriðinu fremst í listann.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FROM = "Bætir atriðinu í listann á tilteknum stað.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_LAST = "Bætir atriðinu aftan við listann.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM = "Bætir atriðinu einhversstaðar við listann.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FIRST = "Setur atriðið í fyrsta sæti lista.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FROM = "Setur atriðið í tiltekna sætið í listanum.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_LAST = "Setur atriðið í síðasta sæti lista.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_RANDOM = "Setur atriðið í eitthvert sæti lista.";
+Blockly.Msg.LISTS_SORT_HELPURL = "https://github.com/google/blockly/wiki/Lists#sorting-a-list";
+Blockly.Msg.LISTS_SORT_ORDER_ASCENDING = "hækkandi";
+Blockly.Msg.LISTS_SORT_ORDER_DESCENDING = "lækkandi";
+Blockly.Msg.LISTS_SORT_TITLE = "raða %1 %2 %3";
+Blockly.Msg.LISTS_SORT_TOOLTIP = "Raða afriti lista.";
+Blockly.Msg.LISTS_SORT_TYPE_IGNORECASE = "í stafrófsröð án tillits til stafstöðu";
+Blockly.Msg.LISTS_SORT_TYPE_NUMERIC = "í númeraröð";
+Blockly.Msg.LISTS_SORT_TYPE_TEXT = "í stafrófsröð";
+Blockly.Msg.LISTS_SPLIT_HELPURL = "https://github.com/google/blockly/wiki/Lists#splitting-strings-and-joining-lists"; // untranslated
+Blockly.Msg.LISTS_SPLIT_LIST_FROM_TEXT = "gera lista úr texta";
+Blockly.Msg.LISTS_SPLIT_TEXT_FROM_LIST = "gera texta úr lista";
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_JOIN = "Sameinar lista af textum í einn texta, með skiltákn á milli.";
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_SPLIT = "Skiptir texta í lista af textum, með skil við hvert skiltákn.";
+Blockly.Msg.LISTS_SPLIT_WITH_DELIMITER = "með skiltákni";
+Blockly.Msg.LOGIC_BOOLEAN_FALSE = "ósatt";
+Blockly.Msg.LOGIC_BOOLEAN_HELPURL = "https://github.com/google/blockly/wiki/Logic#values";
+Blockly.Msg.LOGIC_BOOLEAN_TOOLTIP = "Skilar annað hvort sönnu eða ósönnu.";
+Blockly.Msg.LOGIC_BOOLEAN_TRUE = "satt";
+Blockly.Msg.LOGIC_COMPARE_HELPURL = "https://en.wikipedia.org/wiki/Inequality_(mathematics)";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_EQ = "Skila sönnu ef inntökin eru jöfn.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GT = "Skila sönnu ef fyrra inntakið er stærra en seinna inntakið.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GTE = "Skila sönnu ef fyrra inntakið er stærra en eða jafnt og seinna inntakið.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LT = "Skila sönnu ef fyrra inntakið er minna en seinna inntakið.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LTE = "Skila sönnu ef fyrra inntakið er minna en eða jafnt og seinna inntakið.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_NEQ = "Skila sönnu ef inntökin eru ekki jöfn.";
+Blockly.Msg.LOGIC_NEGATE_HELPURL = "https://github.com/google/blockly/wiki/Logic#not";
+Blockly.Msg.LOGIC_NEGATE_TITLE = "ekki %1";
+Blockly.Msg.LOGIC_NEGATE_TOOLTIP = "Skilar sönnu ef inntakið er ósatt. Skilar ósönnu ef inntakið er satt.";
+Blockly.Msg.LOGIC_NULL = "tómagildi";
+Blockly.Msg.LOGIC_NULL_HELPURL = "https://en.wikipedia.org/wiki/Nullable_type";
+Blockly.Msg.LOGIC_NULL_TOOLTIP = "Skilar tómagildi.";
+Blockly.Msg.LOGIC_OPERATION_AND = "og";
+Blockly.Msg.LOGIC_OPERATION_HELPURL = "https://github.com/google/blockly/wiki/Logic#logical-operations";
+Blockly.Msg.LOGIC_OPERATION_OR = "eða";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_AND = "Skila sönnu ef bæði inntökin eru sönn.";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_OR = "Skila sönnu ef að minnsta kosti eitt inntak er satt.";
+Blockly.Msg.LOGIC_TERNARY_CONDITION = "prófun";
+Blockly.Msg.LOGIC_TERNARY_HELPURL = "https://en.wikipedia.org/wiki/%3F:";
+Blockly.Msg.LOGIC_TERNARY_IF_FALSE = "ef ósatt";
+Blockly.Msg.LOGIC_TERNARY_IF_TRUE = "ef satt";
+Blockly.Msg.LOGIC_TERNARY_TOOLTIP = "Kanna skilyrðið í 'prófun'. Skilar 'ef satt' gildinu ef skilyrðið er satt, en skilar annars 'ef ósatt' gildinu.";
+Blockly.Msg.MATH_ADDITION_SYMBOL = "+";
+Blockly.Msg.MATH_ARITHMETIC_HELPURL = "https://en.wikipedia.org/wiki/Arithmetic";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_ADD = "Skila summu talnanna tveggja.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE = "Skila deilingu talnanna.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MINUS = "Skila mismun talnanna.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MULTIPLY = "Skila margfeldi talnanna.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_POWER = "Skila fyrri tölunni í veldinu seinni talan.";
+Blockly.Msg.MATH_CHANGE_HELPURL = "https://en.wikipedia.org/wiki/Programming_idiom#Incrementing_a_counter";
+Blockly.Msg.MATH_CHANGE_TITLE = "breyta %1 um %2";
+Blockly.Msg.MATH_CHANGE_TOOLTIP = "Bæta tölu við breytu '%1'.";
+Blockly.Msg.MATH_CONSTANT_HELPURL = "https://en.wikipedia.org/wiki/Mathematical_constant";
+Blockly.Msg.MATH_CONSTANT_TOOLTIP = "Skila algengum fasta: π (3.141…), e (2.718…), φ (1.618…), kvrót(2) (1.414…), kvrót(½) (0.707…) eða ∞ (óendanleika).";
+Blockly.Msg.MATH_CONSTRAIN_HELPURL = "https://en.wikipedia.org/wiki/Clamping_%28graphics%29"; // untranslated
+Blockly.Msg.MATH_CONSTRAIN_TITLE = "þröngva %1 lægst %2 hæst %3";
+Blockly.Msg.MATH_CONSTRAIN_TOOLTIP = "Þröngva tölu til að vera innan hinna tilgreindu marka (að báðum meðtöldum).";
+Blockly.Msg.MATH_DIVISION_SYMBOL = "÷";
+Blockly.Msg.MATH_IS_DIVISIBLE_BY = "er\u00A0deilanleg með";
+Blockly.Msg.MATH_IS_EVEN = "er\u00A0jöfn tala";
+Blockly.Msg.MATH_IS_NEGATIVE = "er neikvæð";
+Blockly.Msg.MATH_IS_ODD = "er oddatala";
+Blockly.Msg.MATH_IS_POSITIVE = "er jákvæð";
+Blockly.Msg.MATH_IS_PRIME = "er prímtala";
+Blockly.Msg.MATH_IS_TOOLTIP = "Kanna hvort tala sé jöfn tala, oddatala, jákvæð, neikvæð eða deilanleg með tiltekinni tölu. Skilar sönnu eða ósönnu.";
+Blockly.Msg.MATH_IS_WHOLE = "er heiltala";
+Blockly.Msg.MATH_MODULO_HELPURL = "https://en.wikipedia.org/wiki/Modulo_operation";
+Blockly.Msg.MATH_MODULO_TITLE = "afgangur af %1 ÷ %2";
+Blockly.Msg.MATH_MODULO_TOOLTIP = "Skila afgangi deilingar með tölunum.";
+Blockly.Msg.MATH_MULTIPLICATION_SYMBOL = "×";
+Blockly.Msg.MATH_NUMBER_HELPURL = "https://en.wikipedia.org/wiki/Number";
+Blockly.Msg.MATH_NUMBER_TOOLTIP = "Tala.";
+Blockly.Msg.MATH_ONLIST_HELPURL = ""; // untranslated
+Blockly.Msg.MATH_ONLIST_OPERATOR_AVERAGE = "meðaltal lista";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MAX = "stærst í lista";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MEDIAN = "miðgildi lista";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MIN = "minnst í lista";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MODE = "tíðast í lista";
+Blockly.Msg.MATH_ONLIST_OPERATOR_RANDOM = "eitthvað úr lista";
+Blockly.Msg.MATH_ONLIST_OPERATOR_STD_DEV = "staðalfrávik lista";
+Blockly.Msg.MATH_ONLIST_OPERATOR_SUM = "summa lista";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_AVERAGE = "Skila meðaltali talna í listanum.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MAX = "Skila stærstu tölu í listanum.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MEDIAN = "Skila miðgildi listans.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MIN = "Skila minnstu tölu í listanum.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MODE = "Skila lista yfir tíðustu gildin í listanum.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_RANDOM = "Skila einhverju atriði úr listanum.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_STD_DEV = "Skila staðalfráviki lista.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_SUM = "Skila summu allra talna í listanum.";
+Blockly.Msg.MATH_POWER_SYMBOL = "^";
+Blockly.Msg.MATH_RANDOM_FLOAT_HELPURL = "https://en.wikipedia.org/wiki/Random_number_generation";
+Blockly.Msg.MATH_RANDOM_FLOAT_TITLE_RANDOM = "slembibrot";
+Blockly.Msg.MATH_RANDOM_FLOAT_TOOLTIP = "Skila broti sem er valið af handahófi úr tölum á bilinu frá og með 0.0 til (en ekki með) 1.0.";
+Blockly.Msg.MATH_RANDOM_INT_HELPURL = "https://en.wikipedia.org/wiki/Random_number_generation";
+Blockly.Msg.MATH_RANDOM_INT_TITLE = "slembitala frá %1 til %2";
+Blockly.Msg.MATH_RANDOM_INT_TOOLTIP = "Skila heiltölu sem valin er af handahófi og er innan tilgreindra marka, að báðum meðtöldum.";
+Blockly.Msg.MATH_ROUND_HELPURL = "https://en.wikipedia.org/wiki/Rounding";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUND = "námunda";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDDOWN = "námunda niður";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDUP = "námunda upp";
+Blockly.Msg.MATH_ROUND_TOOLTIP = "Námunda tölu upp eða niður.";
+Blockly.Msg.MATH_SINGLE_HELPURL = "https://en.wikipedia.org/wiki/Square_root";
+Blockly.Msg.MATH_SINGLE_OP_ABSOLUTE = "algildi";
+Blockly.Msg.MATH_SINGLE_OP_ROOT = "kvaðratrót";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ABS = "Skila algildi tölu.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_EXP = "Skila e í veldi tölu.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LN = "Skila náttúrlegum lógaritma tölu.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LOG10 = "Skila tugalógaritma tölu.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_NEG = "Skila neitun tölu (tölunni með öfugu formerki).";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_POW10 = "Skila 10 í veldi tölu.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ROOT = "Skila kvaðratrót tölu.";
+Blockly.Msg.MATH_SUBTRACTION_SYMBOL = "-";
+Blockly.Msg.MATH_TRIG_ACOS = "acos";
+Blockly.Msg.MATH_TRIG_ASIN = "asin";
+Blockly.Msg.MATH_TRIG_ATAN = "atan";
+Blockly.Msg.MATH_TRIG_COS = "cos";
+Blockly.Msg.MATH_TRIG_HELPURL = "https://en.wikipedia.org/wiki/Trigonometric_functions";
+Blockly.Msg.MATH_TRIG_SIN = "sin";
+Blockly.Msg.MATH_TRIG_TAN = "tan";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ACOS = "Skila arkarkósínusi tölu.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ASIN = "Skila arkarsínusi tölu.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ATAN = "Skila arkartangensi tölu.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_COS = "Skila kósínusi horns gefnu í gráðum.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_SIN = "Skila sínusi horns gefnu í gráðum.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_TAN = "Skila tangensi horns gefnu í gráðum.";
+Blockly.Msg.NEW_VARIABLE = "Ný breyta...";
+Blockly.Msg.NEW_VARIABLE_TITLE = "Heiti nýrrar breytu:";
+Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; // untranslated
+Blockly.Msg.PROCEDURES_ALLOW_STATEMENTS = "leyfa setningar";
+Blockly.Msg.PROCEDURES_BEFORE_PARAMS = "með:";
+Blockly.Msg.PROCEDURES_CALLNORETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29";
+Blockly.Msg.PROCEDURES_CALLNORETURN_TOOLTIP = "Keyra heimatilbúna fallið '%1'.";
+Blockly.Msg.PROCEDURES_CALLRETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29";
+Blockly.Msg.PROCEDURES_CALLRETURN_TOOLTIP = "Keyra heimatilbúna fallið '%1' og nota úttak þess.";
+Blockly.Msg.PROCEDURES_CALL_BEFORE_PARAMS = "með:";
+Blockly.Msg.PROCEDURES_CREATE_DO = "Búa til '%1'";
+Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT = "Lýstu þessari aðgerð/falli...";
+Blockly.Msg.PROCEDURES_DEFNORETURN_DO = ""; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29";
+Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE = "gera eitthvað";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE = "til að";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TOOLTIP = "Býr til fall sem skilar engu.";
+Blockly.Msg.PROCEDURES_DEFRETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29";
+Blockly.Msg.PROCEDURES_DEFRETURN_RETURN = "skila";
+Blockly.Msg.PROCEDURES_DEFRETURN_TOOLTIP = "Býr til fall sem skilar úttaki.";
+Blockly.Msg.PROCEDURES_DEF_DUPLICATE_WARNING = "Aðvörun: Þetta fall er með tvítekna stika.";
+Blockly.Msg.PROCEDURES_HIGHLIGHT_DEF = "Sýna skilgreiningu falls";
+Blockly.Msg.PROCEDURES_IFRETURN_HELPURL = "http://c2.com/cgi/wiki?GuardClause";
+Blockly.Msg.PROCEDURES_IFRETURN_TOOLTIP = "Ef gildi er satt, skal skila öðru gildi.";
+Blockly.Msg.PROCEDURES_IFRETURN_WARNING = "Aðvörun: Þennan kubb má aðeins nota í skilgreiningu falls.";
+Blockly.Msg.PROCEDURES_MUTATORARG_TITLE = "heiti inntaks:";
+Blockly.Msg.PROCEDURES_MUTATORARG_TOOLTIP = "Bæta inntaki við fallið.";
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TITLE = "inntök";
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TOOLTIP = "Bæta við, fjarlægja eða umraða inntökum fyrir þetta fall.";
+Blockly.Msg.REDO = "Endurtaka";
+Blockly.Msg.REMOVE_COMMENT = "Fjarlægja skýringu";
+Blockly.Msg.RENAME_VARIABLE = "Endurnefna breytu...";
+Blockly.Msg.RENAME_VARIABLE_TITLE = "Endurnefna allar '%1' breyturnar:";
+Blockly.Msg.TEXT_APPEND_APPENDTEXT = "bæta texta";
+Blockly.Msg.TEXT_APPEND_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification";
+Blockly.Msg.TEXT_APPEND_TO = "við";
+Blockly.Msg.TEXT_APPEND_TOOLTIP = "Bæta texta við breytuna '%1'.";
+Blockly.Msg.TEXT_CHANGECASE_HELPURL = "https://github.com/google/blockly/wiki/Text#adjusting-text-case";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_LOWERCASE = "í lágstafi";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_TITLECASE = "í Upphafstafi";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_UPPERCASE = "í HÁSTAFI";
+Blockly.Msg.TEXT_CHANGECASE_TOOLTIP = "Skila afriti af textanum með annarri stafastöðu.";
+Blockly.Msg.TEXT_CHARAT_FIRST = "sækja fyrsta staf";
+Blockly.Msg.TEXT_CHARAT_FROM_END = "sækja staf # frá enda";
+Blockly.Msg.TEXT_CHARAT_FROM_START = "sækja staf #";
+Blockly.Msg.TEXT_CHARAT_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-text";
+Blockly.Msg.TEXT_CHARAT_INPUT_INTEXT = "í texta";
+Blockly.Msg.TEXT_CHARAT_LAST = "sækja síðasta staf";
+Blockly.Msg.TEXT_CHARAT_RANDOM = "sækja einhvern staf";
+Blockly.Msg.TEXT_CHARAT_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_CHARAT_TOOLTIP = "Skila staf á tilteknum stað.";
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TOOLTIP = "Bæta atriði við textann.";
+Blockly.Msg.TEXT_CREATE_JOIN_TITLE_JOIN = "tengja";
+Blockly.Msg.TEXT_CREATE_JOIN_TOOLTIP = "Bæta við, fjarlægja eða umraða hlutum til að breyta skipan þessa textakubbs.";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_END = "að staf # frá enda";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_START = "að staf #";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_LAST = "að síðasta staf";
+Blockly.Msg.TEXT_GET_SUBSTRING_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text";
+Blockly.Msg.TEXT_GET_SUBSTRING_INPUT_IN_TEXT = "í texta";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FIRST = "sækja textabút frá fyrsta staf";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_END = "sækja textabút frá staf # frá enda";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_START = "sækja textabút frá staf #";
+Blockly.Msg.TEXT_GET_SUBSTRING_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_TOOLTIP = "Skilar tilteknum hluta textans.";
+Blockly.Msg.TEXT_INDEXOF_HELPURL = "https://github.com/google/blockly/wiki/Text#finding-text";
+Blockly.Msg.TEXT_INDEXOF_INPUT_INTEXT = "í texta";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_FIRST = "finna fyrsta tilfelli texta";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_LAST = "finna síðasta tilfelli texta";
+Blockly.Msg.TEXT_INDEXOF_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_INDEXOF_TOOLTIP = "Finnur fyrsta/síðasta tilfelli fyrri textans í seinni textanum og skilar sæti hans. Skilar %1 ef textinn finnst ekki.";
+Blockly.Msg.TEXT_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Text#checking-for-empty-text";
+Blockly.Msg.TEXT_ISEMPTY_TITLE = "%1 er tómur";
+Blockly.Msg.TEXT_ISEMPTY_TOOLTIP = "Skilar sönnu ef gefni textinn er tómur.";
+Blockly.Msg.TEXT_JOIN_HELPURL = "https://github.com/google/blockly/wiki/Text#text-creation";
+Blockly.Msg.TEXT_JOIN_TITLE_CREATEWITH = "búa til texta með";
+Blockly.Msg.TEXT_JOIN_TOOLTIP = "Búa til texta með því að tengja saman einhvern fjölda atriða.";
+Blockly.Msg.TEXT_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification";
+Blockly.Msg.TEXT_LENGTH_TITLE = "lengd %1";
+Blockly.Msg.TEXT_LENGTH_TOOLTIP = "Skilar fjölda stafa (með bilum) í gefna textanum.";
+Blockly.Msg.TEXT_PRINT_HELPURL = "https://github.com/google/blockly/wiki/Text#printing-text";
+Blockly.Msg.TEXT_PRINT_TITLE = "prenta %1";
+Blockly.Msg.TEXT_PRINT_TOOLTIP = "Prenta tiltekinn texta, tölu eða annað gildi.";
+Blockly.Msg.TEXT_PROMPT_HELPURL = "https://github.com/google/blockly/wiki/Text#getting-input-from-the-user";
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_NUMBER = "Biðja notandann um tölu.";
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_TEXT = "Biðja notandann um texta.";
+Blockly.Msg.TEXT_PROMPT_TYPE_NUMBER = "biðja um tölu með skilaboðum";
+Blockly.Msg.TEXT_PROMPT_TYPE_TEXT = "biðja um texta með skilaboðum";
+Blockly.Msg.TEXT_TEXT_HELPURL = "https://en.wikipedia.org/wiki/String_(computer_science)";
+Blockly.Msg.TEXT_TEXT_TOOLTIP = "Stafur, orð eða textalína.";
+Blockly.Msg.TEXT_TRIM_HELPURL = "https://github.com/google/blockly/wiki/Text#trimming-removing-spaces";
+Blockly.Msg.TEXT_TRIM_OPERATOR_BOTH = "eyða bilum báðum megin við";
+Blockly.Msg.TEXT_TRIM_OPERATOR_LEFT = "eyða bilum vinstra megin við";
+Blockly.Msg.TEXT_TRIM_OPERATOR_RIGHT = "eyða bilum hægra megin við";
+Blockly.Msg.TEXT_TRIM_TOOLTIP = "Skila afriti af textanum þar sem möguleg bil við báða enda hafa verið fjarlægð.";
+Blockly.Msg.TODAY = "Í dag";
+Blockly.Msg.UNDO = "Afturkalla";
+Blockly.Msg.VARIABLES_DEFAULT_NAME = "atriði";
+Blockly.Msg.VARIABLES_GET_CREATE_SET = "Búa til 'stilla %1'";
+Blockly.Msg.VARIABLES_GET_HELPURL = "https://github.com/google/blockly/wiki/Variables#get";
+Blockly.Msg.VARIABLES_GET_TOOLTIP = "Skilar gildi þessarar breytu.";
+Blockly.Msg.VARIABLES_SET = "stilla %1 á %2";
+Blockly.Msg.VARIABLES_SET_CREATE_GET = "Búa til 'sækja %1'";
+Blockly.Msg.VARIABLES_SET_HELPURL = "https://github.com/google/blockly/wiki/Variables#set";
+Blockly.Msg.VARIABLES_SET_TOOLTIP = "Stillir þessa breytu á innihald inntaksins.";
+Blockly.Msg.VARIABLE_ALREADY_EXISTS = "A variable named '%1' already exists."; // untranslated
+Blockly.Msg.PROCEDURES_DEFRETURN_TITLE = Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE;
+Blockly.Msg.CONTROLS_IF_IF_TITLE_IF = Blockly.Msg.CONTROLS_IF_MSG_IF;
+Blockly.Msg.CONTROLS_WHILEUNTIL_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_MSG_THEN = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_ELSE_TITLE_ELSE = Blockly.Msg.CONTROLS_IF_MSG_ELSE;
+Blockly.Msg.PROCEDURES_DEFRETURN_PROCEDURE = Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE;
+Blockly.Msg.LISTS_GET_SUBLIST_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.LISTS_GET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.PROCEDURES_DEFRETURN_DO = Blockly.Msg.PROCEDURES_DEFNORETURN_DO;
+Blockly.Msg.CONTROLS_IF_ELSEIF_TITLE_ELSEIF = Blockly.Msg.CONTROLS_IF_MSG_ELSEIF;
+Blockly.Msg.LISTS_GET_INDEX_HELPURL = Blockly.Msg.LISTS_INDEX_OF_HELPURL;
+Blockly.Msg.CONTROLS_FOREACH_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_SET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TITLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_APPEND_VARIABLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.LISTS_INDEX_OF_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.PROCEDURES_DEFRETURN_COMMENT = Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT; \ No newline at end of file
diff --git a/blockly/msg/js/it.js b/blockly/msg/js/it.js
new file mode 100644
index 0000000..238a87e
--- /dev/null
+++ b/blockly/msg/js/it.js
@@ -0,0 +1,391 @@
+// This file was automatically generated. Do not modify.
+
+'use strict';
+
+goog.provide('Blockly.Msg.it');
+
+goog.require('Blockly.Msg');
+
+Blockly.Msg.ADD_COMMENT = "Aggiungi commento";
+Blockly.Msg.CHANGE_VALUE_TITLE = "Modifica valore:";
+Blockly.Msg.CLEAN_UP = "Pulisci i blocchi";
+Blockly.Msg.COLLAPSE_ALL = "Comprimi blocchi";
+Blockly.Msg.COLLAPSE_BLOCK = "Comprimi blocco";
+Blockly.Msg.COLOUR_BLEND_COLOUR1 = "colore 1";
+Blockly.Msg.COLOUR_BLEND_COLOUR2 = "colore 2";
+Blockly.Msg.COLOUR_BLEND_HELPURL = "http://meyerweb.com/eric/tools/color-blend/"; // untranslated
+Blockly.Msg.COLOUR_BLEND_RATIO = "rapporto";
+Blockly.Msg.COLOUR_BLEND_TITLE = "miscela";
+Blockly.Msg.COLOUR_BLEND_TOOLTIP = "Mescola due colori insieme con un determinato rapporto (0.0 - 1.0).";
+Blockly.Msg.COLOUR_PICKER_HELPURL = "https://it.wikipedia.org/wiki/Colore";
+Blockly.Msg.COLOUR_PICKER_TOOLTIP = "Scegli un colore dalla tavolozza.";
+Blockly.Msg.COLOUR_RANDOM_HELPURL = "http://randomcolour.com"; // untranslated
+Blockly.Msg.COLOUR_RANDOM_TITLE = "colore casuale";
+Blockly.Msg.COLOUR_RANDOM_TOOLTIP = "Scegli un colore a caso.";
+Blockly.Msg.COLOUR_RGB_BLUE = "blu";
+Blockly.Msg.COLOUR_RGB_GREEN = "verde";
+Blockly.Msg.COLOUR_RGB_HELPURL = "http://www.december.com/html/spec/colorper.html"; // untranslated
+Blockly.Msg.COLOUR_RGB_RED = "rosso";
+Blockly.Msg.COLOUR_RGB_TITLE = "colora con";
+Blockly.Msg.COLOUR_RGB_TOOLTIP = "Crea un colore con la quantità specificata di rosso, verde e blu. Tutti i valori devono essere compresi tra 0 e 100.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_HELPURL = "https://github.com/google/blockly/wiki/Loops#loop-termination-blocks"; // untranslated
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK = "esce dal ciclo";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE = "prosegui con la successiva iterazione del ciclo";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK = "Esce dal ciclo.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE = "Salta il resto di questo ciclo e prosegue con la successiva iterazione.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_WARNING = "Attenzioneː Questo blocco può essere usato solo in un ciclo.";
+Blockly.Msg.CONTROLS_FOREACH_HELPURL = "https://github.com/google/blockly/wiki/Loops#for-each"; // untranslated
+Blockly.Msg.CONTROLS_FOREACH_TITLE = "per ogni elemento %1 nella lista %2";
+Blockly.Msg.CONTROLS_FOREACH_TOOLTIP = "Per ogni elemento in una lista, imposta la variabile '%1' pari all'elemento e quindi esegue alcune istruzioni.";
+Blockly.Msg.CONTROLS_FOR_HELPURL = "https://github.com/google/blockly/wiki/Loops#count-with"; // untranslated
+Blockly.Msg.CONTROLS_FOR_TITLE = "conta con %1 da %2 a %3 per %4";
+Blockly.Msg.CONTROLS_FOR_TOOLTIP = "Fa sì che la variabile '%1' prenda tutti i valori a partire dal numero di partenza fino a quello di arrivo, con passo pari all'intervallo specificato, ed esegue il blocco indicato.";
+Blockly.Msg.CONTROLS_IF_ELSEIF_TOOLTIP = "Aggiungi una condizione al blocco se.";
+Blockly.Msg.CONTROLS_IF_ELSE_TOOLTIP = "Aggiungi una condizione finale pigliatutto al blocco se.";
+Blockly.Msg.CONTROLS_IF_HELPURL = "https://github.com/google/blockly/wiki/IfElse"; // untranslated
+Blockly.Msg.CONTROLS_IF_IF_TOOLTIP = "Aggiungi, elimina o riordina le sezioni per riconfigurare questo blocco se.";
+Blockly.Msg.CONTROLS_IF_MSG_ELSE = "altrimenti";
+Blockly.Msg.CONTROLS_IF_MSG_ELSEIF = "altrimenti se";
+Blockly.Msg.CONTROLS_IF_MSG_IF = "se";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_1 = "Se un valore è vero allora esegue alcune istruzioni.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_2 = "Se un valore è vero allora esegue il primo blocco di istruzioni. Altrimenti esegue il secondo blocco di istruzioni.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_3 = "Se il primo valore è vero allora esegue un primo blocco di istruzioni. Altrimenti, se il secondo valore è vero, esegue un secondo blocco di istruzioni.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_4 = "Se il primo valore è vero allora esegue un primo blocco di istruzioni. Altrimenti, se il secondo valore è vero, esegue un secondo blocco di istruzioni. Se nessuno dei valori è vero esegue l'ultimo blocco di istruzioni.";
+Blockly.Msg.CONTROLS_REPEAT_HELPURL = "https://it.wikipedia.org/wiki/Ciclo_for";
+Blockly.Msg.CONTROLS_REPEAT_INPUT_DO = "fai";
+Blockly.Msg.CONTROLS_REPEAT_TITLE = "ripeti %1 volte";
+Blockly.Msg.CONTROLS_REPEAT_TOOLTIP = "Esegue alcune istruzione diverse volte.";
+Blockly.Msg.CONTROLS_WHILEUNTIL_HELPURL = "https://github.com/google/blockly/wiki/Loops#repeat"; // untranslated
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "ripeti fino a che";
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "ripeti mentre";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "Finché un valore è falso, esegue alcune istruzioni.";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "Finché un valore è vero, esegue alcune istruzioni.";
+Blockly.Msg.DELETE_ALL_BLOCKS = "Cancellare tutti i %1 blocchi?";
+Blockly.Msg.DELETE_BLOCK = "Cancella blocco";
+Blockly.Msg.DELETE_VARIABLE = "Cancella la variabile '%1'";
+Blockly.Msg.DELETE_VARIABLE_CONFIRMATION = "Cancella %1 usi della variabile '%2'?";
+Blockly.Msg.DELETE_X_BLOCKS = "Cancella %1 blocchi";
+Blockly.Msg.DISABLE_BLOCK = "Disattiva blocco";
+Blockly.Msg.DUPLICATE_BLOCK = "Duplica";
+Blockly.Msg.ENABLE_BLOCK = "Attiva blocco";
+Blockly.Msg.EXPAND_ALL = "Espandi blocchi";
+Blockly.Msg.EXPAND_BLOCK = "Espandi blocco";
+Blockly.Msg.EXTERNAL_INPUTS = "Ingressi esterni";
+Blockly.Msg.HELP = "Aiuto";
+Blockly.Msg.INLINE_INPUTS = "Ingressi in linea";
+Blockly.Msg.LISTS_CREATE_EMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-empty-list"; // untranslated
+Blockly.Msg.LISTS_CREATE_EMPTY_TITLE = "crea lista vuota";
+Blockly.Msg.LISTS_CREATE_EMPTY_TOOLTIP = "Restituisce una lista, di lunghezza 0, contenente nessun record di dati";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TITLE_ADD = "lista";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TOOLTIP = "Aggiungi, rimuovi o riordina le sezioni per riconfigurare il blocco lista.";
+Blockly.Msg.LISTS_CREATE_WITH_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
+Blockly.Msg.LISTS_CREATE_WITH_INPUT_WITH = "crea lista con";
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TOOLTIP = "Aggiunge un elemento alla lista.";
+Blockly.Msg.LISTS_CREATE_WITH_TOOLTIP = "Crea una lista con un certo numero di elementi.";
+Blockly.Msg.LISTS_GET_INDEX_FIRST = "primo";
+Blockly.Msg.LISTS_GET_INDEX_FROM_END = "# dalla fine";
+Blockly.Msg.LISTS_GET_INDEX_FROM_START = "#"; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_GET = "prendi";
+Blockly.Msg.LISTS_GET_INDEX_GET_REMOVE = "prendi e rimuovi";
+Blockly.Msg.LISTS_GET_INDEX_LAST = "ultimo";
+Blockly.Msg.LISTS_GET_INDEX_RANDOM = "casuale";
+Blockly.Msg.LISTS_GET_INDEX_REMOVE = "rimuovi";
+Blockly.Msg.LISTS_GET_INDEX_TAIL = ""; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FIRST = "Restituisce il primo elemento in una lista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FROM = "Restituisce l'elemento nella posizione indicata della lista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_LAST = "Restituisce l'ultimo elemento in una lista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_RANDOM = "Restituisce un elemento casuale in una lista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST = "Rimuove e restituisce il primo elemento in una lista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM = "Rimuove e restituisce l'elemento nella posizione indicata in una lista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST = "Restituisce e rimuove l'ultimo elemento in una lista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM = "Restituisce e rimuove un elemento casuale in una lista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST = "Rimuove il primo elemento in una lista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM = "Rimuove l'elemento nella posizione indicata in una lista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST = "Rimuove l'ultimo elemento in una lista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM = "Rimuove un elemento casuale in una lista.";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_END = "da # dalla fine";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_START = "fino a #";
+Blockly.Msg.LISTS_GET_SUBLIST_END_LAST = "dagli ultimi";
+Blockly.Msg.LISTS_GET_SUBLIST_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-a-sublist"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_START_FIRST = "prendi sotto-lista dall'inizio";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_END = "prendi sotto-lista da # dalla fine";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_START = "prendi sotto-lista da #";
+Blockly.Msg.LISTS_GET_SUBLIST_TAIL = ""; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_TOOLTIP = "Crea una copia della porzione specificata di una lista.";
+Blockly.Msg.LISTS_INDEX_FROM_END_TOOLTIP = "%1 corrisponde all'ultimo elemento.";
+Blockly.Msg.LISTS_INDEX_FROM_START_TOOLTIP = "%1 corrisponde al primo elemento.";
+Blockly.Msg.LISTS_INDEX_OF_FIRST = "trova la prima occorrenza dell'elemento";
+Blockly.Msg.LISTS_INDEX_OF_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-items-from-a-list"; // untranslated
+Blockly.Msg.LISTS_INDEX_OF_LAST = "trova l'ultima occorrenza dell'elemento";
+Blockly.Msg.LISTS_INDEX_OF_TOOLTIP = "Restituisce l'indice della prima/ultima occorrenza dell'elemento nella lista. Restituisce %1 se l'elemento non viene trovato.";
+Blockly.Msg.LISTS_INLIST = "nella lista";
+Blockly.Msg.LISTS_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#is-empty"; // untranslated
+Blockly.Msg.LISTS_ISEMPTY_TITLE = "%1 è vuota";
+Blockly.Msg.LISTS_ISEMPTY_TOOLTIP = "Restituisce vero se la lista è vuota.";
+Blockly.Msg.LISTS_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Lists#length-of"; // untranslated
+Blockly.Msg.LISTS_LENGTH_TITLE = "lunghezza di %1";
+Blockly.Msg.LISTS_LENGTH_TOOLTIP = "Restituisce la lunghezza della lista";
+Blockly.Msg.LISTS_REPEAT_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
+Blockly.Msg.LISTS_REPEAT_TITLE = "crea una lista con l'elemento %1 ripetuto %2 volte";
+Blockly.Msg.LISTS_REPEAT_TOOLTIP = "Crea una lista costituita dal valore indicato ripetuto per il numero di volte specificato.";
+Blockly.Msg.LISTS_SET_INDEX_HELPURL = "https://github.com/google/blockly/wiki/Lists#in-list--set"; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_INPUT_TO = "come";
+Blockly.Msg.LISTS_SET_INDEX_INSERT = "inserisci in";
+Blockly.Msg.LISTS_SET_INDEX_SET = "imposta";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST = "Inserisci l'elemento all'inizio della lista.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FROM = "Inserisci un elemento nella posizione indicata in una lista.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_LAST = "Aggiungi un elemento alla fine di una lista";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM = "Inserisce l'elemento casualmente in una lista.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FIRST = "Imposta il primo elemento in una lista.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FROM = "Imposta l'elemento nella posizione indicata di una lista.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_LAST = "Imposta l'ultimo elemento in una lista.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_RANDOM = "Imposta un elemento casuale in una lista.";
+Blockly.Msg.LISTS_SORT_HELPURL = "https://github.com/google/blockly/wiki/Lists#sorting-a-list"; // untranslated
+Blockly.Msg.LISTS_SORT_ORDER_ASCENDING = "crescente";
+Blockly.Msg.LISTS_SORT_ORDER_DESCENDING = "decrescente";
+Blockly.Msg.LISTS_SORT_TITLE = "ordinamento %1 %2 %3";
+Blockly.Msg.LISTS_SORT_TOOLTIP = "Ordina una copia di un elenco.";
+Blockly.Msg.LISTS_SORT_TYPE_IGNORECASE = "alfabetico, ignorare differenze maiuscole e minuscole";
+Blockly.Msg.LISTS_SORT_TYPE_NUMERIC = "numerico";
+Blockly.Msg.LISTS_SORT_TYPE_TEXT = "alfabetico";
+Blockly.Msg.LISTS_SPLIT_HELPURL = "https://github.com/google/blockly/wiki/Lists#splitting-strings-and-joining-lists"; // untranslated
+Blockly.Msg.LISTS_SPLIT_LIST_FROM_TEXT = "crea lista da testo";
+Blockly.Msg.LISTS_SPLIT_TEXT_FROM_LIST = "crea testo da lista";
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_JOIN = "Unisci una lista di testi in un unico testo, separato da un delimitatore.";
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_SPLIT = "Dividi il testo in un elenco di testi, interrompendo ad ogni delimitatore.";
+Blockly.Msg.LISTS_SPLIT_WITH_DELIMITER = "con delimitatore";
+Blockly.Msg.LOGIC_BOOLEAN_FALSE = "falso";
+Blockly.Msg.LOGIC_BOOLEAN_HELPURL = "https://github.com/google/blockly/wiki/Logic#values"; // untranslated
+Blockly.Msg.LOGIC_BOOLEAN_TOOLTIP = "Restituisce vero o falso.";
+Blockly.Msg.LOGIC_BOOLEAN_TRUE = "vero";
+Blockly.Msg.LOGIC_COMPARE_HELPURL = "https://it.wikipedia.org/wiki/Disuguaglianza";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_EQ = "Restituisce vero se gli input sono uno uguale all'altro.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GT = "Restituisce vero se il primo input è maggiore o uguale al secondo.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GTE = "Restituisce uguale se il primo input è maggiore o uguale al secondo input.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LT = "Restituisce vero se il primo input è minore del secondo.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LTE = "Restituisce vero se il primo input è minore o uguale al secondo.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_NEQ = "Restituisce vero se gli input non sono uno uguale all'altro.";
+Blockly.Msg.LOGIC_NEGATE_HELPURL = "https://github.com/google/blockly/wiki/Logic#not"; // untranslated
+Blockly.Msg.LOGIC_NEGATE_TITLE = "non %1";
+Blockly.Msg.LOGIC_NEGATE_TOOLTIP = "Restituisce vero se l'input è falso. Restituisce falso se l'input è vero.";
+Blockly.Msg.LOGIC_NULL = "nullo";
+Blockly.Msg.LOGIC_NULL_HELPURL = "https://en.wikipedia.org/wiki/Nullable_type"; // untranslated
+Blockly.Msg.LOGIC_NULL_TOOLTIP = "Restituisce valore nullo.";
+Blockly.Msg.LOGIC_OPERATION_AND = "e";
+Blockly.Msg.LOGIC_OPERATION_HELPURL = "https://github.com/google/blockly/wiki/Logic#logical-operations"; // untranslated
+Blockly.Msg.LOGIC_OPERATION_OR = "o";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_AND = "Restituisce vero se entrambi gli input sono veri.";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_OR = "Restituisce vero se almeno uno degli input è vero.";
+Blockly.Msg.LOGIC_TERNARY_CONDITION = "test";
+Blockly.Msg.LOGIC_TERNARY_HELPURL = "https://en.wikipedia.org/wiki/%3F:"; // untranslated
+Blockly.Msg.LOGIC_TERNARY_IF_FALSE = "se falso";
+Blockly.Msg.LOGIC_TERNARY_IF_TRUE = "se vero";
+Blockly.Msg.LOGIC_TERNARY_TOOLTIP = "Verifica la condizione in 'test'. Se questa è vera restituisce il valore 'se vero' altrimenti restituisce il valore 'se falso'.";
+Blockly.Msg.MATH_ADDITION_SYMBOL = "+"; // untranslated
+Blockly.Msg.MATH_ARITHMETIC_HELPURL = "https://it.wikipedia.org/wiki/Aritmetica";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_ADD = "Restituisce la somma dei due numeri.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE = "Restituisce il quoziente dei due numeri.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MINUS = "Restituisce la differenza dei due numeri.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MULTIPLY = "Restituisce il prodotto dei due numeri.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_POWER = "Restituisce il primo numero elevato alla potenza del secondo numero.";
+Blockly.Msg.MATH_CHANGE_HELPURL = "https://it.wikipedia.org/wiki/Addizione";
+Blockly.Msg.MATH_CHANGE_TITLE = "cambia %1 di %2";
+Blockly.Msg.MATH_CHANGE_TOOLTIP = "Aggiunge un numero alla variabile '%1'.";
+Blockly.Msg.MATH_CONSTANT_HELPURL = "https://it.wikipedia.org/wiki/Costante_matematica";
+Blockly.Msg.MATH_CONSTANT_TOOLTIP = "Restituisce una delle costanti comuniː π (3.141…), e (2.718…), φ (1.618…), radq(2) (1.414…), radq(½) (0.707…) o ∞ (infinito).";
+Blockly.Msg.MATH_CONSTRAIN_HELPURL = "https://en.wikipedia.org/wiki/Clamping_%28graphics%29"; // untranslated
+Blockly.Msg.MATH_CONSTRAIN_TITLE = "costringi %1 da %2 a %3";
+Blockly.Msg.MATH_CONSTRAIN_TOOLTIP = "Costringe un numero all'interno dei limiti indicati (compresi).";
+Blockly.Msg.MATH_DIVISION_SYMBOL = "÷"; // untranslated
+Blockly.Msg.MATH_IS_DIVISIBLE_BY = "è divisibile per";
+Blockly.Msg.MATH_IS_EVEN = "è pari";
+Blockly.Msg.MATH_IS_NEGATIVE = "è negativo";
+Blockly.Msg.MATH_IS_ODD = "è dispari";
+Blockly.Msg.MATH_IS_POSITIVE = "è positivo";
+Blockly.Msg.MATH_IS_PRIME = "è primo";
+Blockly.Msg.MATH_IS_TOOLTIP = "Verifica se un numero è pari, dispari, primo, intero, positivo, negativo o se è divisibile per un certo numero. Restituisce vero o falso.";
+Blockly.Msg.MATH_IS_WHOLE = "è intero";
+Blockly.Msg.MATH_MODULO_HELPURL = "https://it.wikipedia.org/wiki/Resto";
+Blockly.Msg.MATH_MODULO_TITLE = "resto di %1 ÷ %2";
+Blockly.Msg.MATH_MODULO_TOOLTIP = "Restituisce il resto della divisione di due numeri.";
+Blockly.Msg.MATH_MULTIPLICATION_SYMBOL = "×"; // untranslated
+Blockly.Msg.MATH_NUMBER_HELPURL = "https://it.wikipedia.org/wiki/Numero";
+Blockly.Msg.MATH_NUMBER_TOOLTIP = "Un numero.";
+Blockly.Msg.MATH_ONLIST_HELPURL = ""; // untranslated
+Blockly.Msg.MATH_ONLIST_OPERATOR_AVERAGE = "media della lista";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MAX = "massimo della lista";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MEDIAN = "mediana della lista";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MIN = "minimo della lista";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MODE = "mode della lista";
+Blockly.Msg.MATH_ONLIST_OPERATOR_RANDOM = "elemento casuale della lista";
+Blockly.Msg.MATH_ONLIST_OPERATOR_STD_DEV = "deviazione standard della lista";
+Blockly.Msg.MATH_ONLIST_OPERATOR_SUM = "somma la lista";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_AVERAGE = "Restituisce la media (media aritmetica) dei valori numerici nella lista.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MAX = "Restituisce il più grande numero della lista.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MEDIAN = "Restituisce il valore mediano della lista.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MIN = "Restituisce il più piccolo numero della lista.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MODE = "Restituisce una lista degli elementi più frequenti nella lista.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_RANDOM = "Restituisce un elemento casuale della lista.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_STD_DEV = "Restituisce la deviazione standard della lista.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_SUM = "Restituisce la somma si tutti i numeri nella lista.";
+Blockly.Msg.MATH_POWER_SYMBOL = "^"; // untranslated
+Blockly.Msg.MATH_RANDOM_FLOAT_HELPURL = "https://it.wikipedia.org/wiki/Numeri_pseudo-casuali";
+Blockly.Msg.MATH_RANDOM_FLOAT_TITLE_RANDOM = "frazione casuale";
+Blockly.Msg.MATH_RANDOM_FLOAT_TOOLTIP = "Restituisce una frazione compresa fra 0.0 (incluso) e 1.0 (escluso).";
+Blockly.Msg.MATH_RANDOM_INT_HELPURL = "https://it.wikipedia.org/wiki/Numeri_pseudo-casuali";
+Blockly.Msg.MATH_RANDOM_INT_TITLE = "intero casuale da %1 a %2";
+Blockly.Msg.MATH_RANDOM_INT_TOOLTIP = "Restituisce un numero intero casuale compreso tra i due limiti indicati (inclusi).";
+Blockly.Msg.MATH_ROUND_HELPURL = "https://it.wikipedia.org/wiki/Arrotondamento";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUND = "arrotonda";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDDOWN = "arrotonda verso il basso";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDUP = "arrotonda verso l'alto";
+Blockly.Msg.MATH_ROUND_TOOLTIP = "Arrotonda un numero verso l'alto o verso il basso.";
+Blockly.Msg.MATH_SINGLE_HELPURL = "https://it.wikipedia.org/wiki/Radice_quadrata";
+Blockly.Msg.MATH_SINGLE_OP_ABSOLUTE = "assoluto";
+Blockly.Msg.MATH_SINGLE_OP_ROOT = "radice quadrata";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ABS = "Restituisce il valore assoluto del numero.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_EXP = "Restituisce e elevato alla potenza del numero.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LN = "Restituisce il logaritmo naturale del numero.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LOG10 = "Restituisce il logaritmo in base 10 del numero.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_NEG = "Restituisce l'opposto del numero.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_POW10 = "Restituisce 10 elevato alla potenza del numero.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ROOT = "Restituisce la radice quadrata del numero.";
+Blockly.Msg.MATH_SUBTRACTION_SYMBOL = "-"; // untranslated
+Blockly.Msg.MATH_TRIG_ACOS = "acos"; // untranslated
+Blockly.Msg.MATH_TRIG_ASIN = "asin"; // untranslated
+Blockly.Msg.MATH_TRIG_ATAN = "atan"; // untranslated
+Blockly.Msg.MATH_TRIG_COS = "cos"; // untranslated
+Blockly.Msg.MATH_TRIG_HELPURL = "https://it.wikipedia.org/wiki/Funzione_trigonometrica";
+Blockly.Msg.MATH_TRIG_SIN = "sin"; // untranslated
+Blockly.Msg.MATH_TRIG_TAN = "tan"; // untranslated
+Blockly.Msg.MATH_TRIG_TOOLTIP_ACOS = "Restituisce l'arco-coseno di un numero.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ASIN = "Restituisce l'arco-seno di un numero.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ATAN = "Restituisce l'arco-tangente di un numero.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_COS = "Restituisce il coseno di un angolo espresso in gradi (non radianti).";
+Blockly.Msg.MATH_TRIG_TOOLTIP_SIN = "Restituisce il seno di un angolo espresso in gradi (non radianti).";
+Blockly.Msg.MATH_TRIG_TOOLTIP_TAN = "Restituisce la tangente di un angolo espresso in gradi (non radianti).";
+Blockly.Msg.NEW_VARIABLE = "Crea variabile...";
+Blockly.Msg.NEW_VARIABLE_TITLE = "Nome della nuova variabile:";
+Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; // untranslated
+Blockly.Msg.PROCEDURES_ALLOW_STATEMENTS = "consenti dichiarazioni";
+Blockly.Msg.PROCEDURES_BEFORE_PARAMS = "conː";
+Blockly.Msg.PROCEDURES_CALLNORETURN_HELPURL = "https://it.wikipedia.org/wiki/Funzione_(informatica)";
+Blockly.Msg.PROCEDURES_CALLNORETURN_TOOLTIP = "Esegue la funzione definita dall'utente '%1'.";
+Blockly.Msg.PROCEDURES_CALLRETURN_HELPURL = "https://it.wikipedia.org/wiki/Funzione_(informatica)";
+Blockly.Msg.PROCEDURES_CALLRETURN_TOOLTIP = "Esegue la funzione definita dall'utente '%1' ed usa il suo output.";
+Blockly.Msg.PROCEDURES_CALL_BEFORE_PARAMS = "conː";
+Blockly.Msg.PROCEDURES_CREATE_DO = "Crea '%1'";
+Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT = "Descrivi questa funzione...";
+Blockly.Msg.PROCEDURES_DEFNORETURN_DO = ""; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE = "fai qualcosa";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE = "per";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TOOLTIP = "Crea una funzione senza output.";
+Blockly.Msg.PROCEDURES_DEFRETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_DEFRETURN_RETURN = "ritorna";
+Blockly.Msg.PROCEDURES_DEFRETURN_TOOLTIP = "Crea una funzione con un output.";
+Blockly.Msg.PROCEDURES_DEF_DUPLICATE_WARNING = "Attenzioneː Questa funzione ha parametri duplicati.";
+Blockly.Msg.PROCEDURES_HIGHLIGHT_DEF = "Evidenzia definizione di funzione";
+Blockly.Msg.PROCEDURES_IFRETURN_HELPURL = "http://c2.com/cgi/wiki?GuardClause";
+Blockly.Msg.PROCEDURES_IFRETURN_TOOLTIP = "Se un valore è vero allora restituisce un secondo valore.";
+Blockly.Msg.PROCEDURES_IFRETURN_WARNING = "Attenzioneː Questo blocco può essere usato solo all'interno di una definizione di funzione.";
+Blockly.Msg.PROCEDURES_MUTATORARG_TITLE = "nome inputː";
+Blockly.Msg.PROCEDURES_MUTATORARG_TOOLTIP = "Aggiungi un input alla funzione.";
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TITLE = "input";
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TOOLTIP = "Aggiungi, rimuovi o riordina input alla funzione.";
+Blockly.Msg.REDO = "Ripeti";
+Blockly.Msg.REMOVE_COMMENT = "Rimuovi commento";
+Blockly.Msg.RENAME_VARIABLE = "Rinomina variabile...";
+Blockly.Msg.RENAME_VARIABLE_TITLE = "Rinomina tutte le variabili '%1' in:";
+Blockly.Msg.TEXT_APPEND_APPENDTEXT = "aggiungi il testo";
+Blockly.Msg.TEXT_APPEND_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_APPEND_TO = "a";
+Blockly.Msg.TEXT_APPEND_TOOLTIP = "Aggiunge del testo alla variabile '%1'.";
+Blockly.Msg.TEXT_CHANGECASE_HELPURL = "https://github.com/google/blockly/wiki/Text#adjusting-text-case"; // untranslated
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_LOWERCASE = "in minuscolo";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_TITLECASE = "con Iniziali Maiuscole";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_UPPERCASE = "in MAIUSCOLO";
+Blockly.Msg.TEXT_CHANGECASE_TOOLTIP = "Restituisce una copia del testo in un diverso formato maiuscole/minuscole.";
+Blockly.Msg.TEXT_CHARAT_FIRST = "prendi la prima lettera";
+Blockly.Msg.TEXT_CHARAT_FROM_END = "prendi la lettera # dalla fine";
+Blockly.Msg.TEXT_CHARAT_FROM_START = "prendi la lettera #";
+Blockly.Msg.TEXT_CHARAT_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-text"; // untranslated
+Blockly.Msg.TEXT_CHARAT_INPUT_INTEXT = "nel testo";
+Blockly.Msg.TEXT_CHARAT_LAST = "prendi l'ultima lettera";
+Blockly.Msg.TEXT_CHARAT_RANDOM = "prendi lettera casuale";
+Blockly.Msg.TEXT_CHARAT_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_CHARAT_TOOLTIP = "Restituisce la lettera nella posizione indicata.";
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TOOLTIP = "Aggiungi un elemento al testo.";
+Blockly.Msg.TEXT_CREATE_JOIN_TITLE_JOIN = "unisci";
+Blockly.Msg.TEXT_CREATE_JOIN_TOOLTIP = "Aggiungi, rimuovi o riordina le sezioni per riconfigurare questo blocco testo.";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_END = "alla lettera # dalla fine";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_START = "alla lettera #";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_LAST = "all'ultima lettera";
+Blockly.Msg.TEXT_GET_SUBSTRING_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_INPUT_IN_TEXT = "nel testo";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FIRST = "prendi sotto-stringa dalla prima lettera";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_END = "prendi sotto-stringa dalla lettera # dalla fine";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_START = "prendi sotto-stringa dalla lettera #";
+Blockly.Msg.TEXT_GET_SUBSTRING_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_TOOLTIP = "Restituisce la porzione di testo indicata.";
+Blockly.Msg.TEXT_INDEXOF_HELPURL = "https://github.com/google/blockly/wiki/Text#finding-text"; // untranslated
+Blockly.Msg.TEXT_INDEXOF_INPUT_INTEXT = "nel testo";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_FIRST = "trova la prima occorrenza del testo";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_LAST = "trova l'ultima occorrenza del testo";
+Blockly.Msg.TEXT_INDEXOF_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_INDEXOF_TOOLTIP = "Restituisce l'indice della prima occorrenza del primo testo all'interno del secondo testo. Restituisce %1 se il testo non viene trovato.";
+Blockly.Msg.TEXT_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Text#checking-for-empty-text"; // untranslated
+Blockly.Msg.TEXT_ISEMPTY_TITLE = "%1 è vuoto";
+Blockly.Msg.TEXT_ISEMPTY_TOOLTIP = "Restituisce vero se il testo fornito è vuoto.";
+Blockly.Msg.TEXT_JOIN_HELPURL = "https://github.com/google/blockly/wiki/Text#text-creation"; // untranslated
+Blockly.Msg.TEXT_JOIN_TITLE_CREATEWITH = "crea testo con";
+Blockly.Msg.TEXT_JOIN_TOOLTIP = "Crea un blocco di testo unendo un certo numero di elementi.";
+Blockly.Msg.TEXT_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_LENGTH_TITLE = "lunghezza di %1";
+Blockly.Msg.TEXT_LENGTH_TOOLTIP = "Restituisce il numero di lettere (inclusi gli spazi) nel testo fornito.";
+Blockly.Msg.TEXT_PRINT_HELPURL = "https://github.com/google/blockly/wiki/Text#printing-text"; // untranslated
+Blockly.Msg.TEXT_PRINT_TITLE = "scrivi %1";
+Blockly.Msg.TEXT_PRINT_TOOLTIP = "Scrive il testo, numero o altro valore indicato.";
+Blockly.Msg.TEXT_PROMPT_HELPURL = "https://github.com/google/blockly/wiki/Text#getting-input-from-the-user"; // untranslated
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_NUMBER = "Richiedi un numero all'utente.";
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_TEXT = "Richiede del testo da parte dell'utente.";
+Blockly.Msg.TEXT_PROMPT_TYPE_NUMBER = "richiedi numero con messaggio";
+Blockly.Msg.TEXT_PROMPT_TYPE_TEXT = "richiedi testo con messaggio";
+Blockly.Msg.TEXT_TEXT_HELPURL = "https://it.wikipedia.org/wiki/Stringa_(informatica)";
+Blockly.Msg.TEXT_TEXT_TOOLTIP = "Una lettera, una parola o una linea di testo.";
+Blockly.Msg.TEXT_TRIM_HELPURL = "https://github.com/google/blockly/wiki/Text#trimming-removing-spaces"; // untranslated
+Blockly.Msg.TEXT_TRIM_OPERATOR_BOTH = "rimuovi spazi da entrambi gli estremi";
+Blockly.Msg.TEXT_TRIM_OPERATOR_LEFT = "rimuovi spazi a sinistra";
+Blockly.Msg.TEXT_TRIM_OPERATOR_RIGHT = "rimuovi spazi a destra";
+Blockly.Msg.TEXT_TRIM_TOOLTIP = "Restituisce una copia del testo con gli spazi rimossi ad uno o entrambe le estremità.";
+Blockly.Msg.TODAY = "Oggi";
+Blockly.Msg.UNDO = "Annulla";
+Blockly.Msg.VARIABLES_DEFAULT_NAME = "elemento";
+Blockly.Msg.VARIABLES_GET_CREATE_SET = "Crea 'imposta %1'";
+Blockly.Msg.VARIABLES_GET_HELPURL = "https://github.com/google/blockly/wiki/Variables#get"; // untranslated
+Blockly.Msg.VARIABLES_GET_TOOLTIP = "Restituisce il valore di una variabile.";
+Blockly.Msg.VARIABLES_SET = "imposta %1 a %2";
+Blockly.Msg.VARIABLES_SET_CREATE_GET = "Crea 'prendi %1'";
+Blockly.Msg.VARIABLES_SET_HELPURL = "https://github.com/google/blockly/wiki/Variables#set"; // untranslated
+Blockly.Msg.VARIABLES_SET_TOOLTIP = "Imposta questa variabile ad essere pari all'input.";
+Blockly.Msg.VARIABLE_ALREADY_EXISTS = "Una variabile denominata '%1' esiste già.";
+Blockly.Msg.PROCEDURES_DEFRETURN_TITLE = Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE;
+Blockly.Msg.CONTROLS_IF_IF_TITLE_IF = Blockly.Msg.CONTROLS_IF_MSG_IF;
+Blockly.Msg.CONTROLS_WHILEUNTIL_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_MSG_THEN = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_ELSE_TITLE_ELSE = Blockly.Msg.CONTROLS_IF_MSG_ELSE;
+Blockly.Msg.PROCEDURES_DEFRETURN_PROCEDURE = Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE;
+Blockly.Msg.LISTS_GET_SUBLIST_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.LISTS_GET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.PROCEDURES_DEFRETURN_DO = Blockly.Msg.PROCEDURES_DEFNORETURN_DO;
+Blockly.Msg.CONTROLS_IF_ELSEIF_TITLE_ELSEIF = Blockly.Msg.CONTROLS_IF_MSG_ELSEIF;
+Blockly.Msg.LISTS_GET_INDEX_HELPURL = Blockly.Msg.LISTS_INDEX_OF_HELPURL;
+Blockly.Msg.CONTROLS_FOREACH_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_SET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TITLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_APPEND_VARIABLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.LISTS_INDEX_OF_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.PROCEDURES_DEFRETURN_COMMENT = Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT; \ No newline at end of file
diff --git a/blockly/msg/js/ja.js b/blockly/msg/js/ja.js
new file mode 100644
index 0000000..ad00d3f
--- /dev/null
+++ b/blockly/msg/js/ja.js
@@ -0,0 +1,391 @@
+// This file was automatically generated. Do not modify.
+
+'use strict';
+
+goog.provide('Blockly.Msg.ja');
+
+goog.require('Blockly.Msg');
+
+Blockly.Msg.ADD_COMMENT = "コメントを追加";
+Blockly.Msg.CHANGE_VALUE_TITLE = "値を変更します。";
+Blockly.Msg.CLEAN_UP = "ブロックの整理";
+Blockly.Msg.COLLAPSE_ALL = "ブロックを折りたたむ";
+Blockly.Msg.COLLAPSE_BLOCK = "ブロックを折りたたむ";
+Blockly.Msg.COLOUR_BLEND_COLOUR1 = "色 1";
+Blockly.Msg.COLOUR_BLEND_COLOUR2 = "色 2";
+Blockly.Msg.COLOUR_BLEND_HELPURL = "http://meyerweb.com/eric/tools/color-blend/";
+Blockly.Msg.COLOUR_BLEND_RATIO = "割合";
+Blockly.Msg.COLOUR_BLEND_TITLE = "ブレンド";
+Blockly.Msg.COLOUR_BLEND_TOOLTIP = "ブレンド2 つの色を指定された比率に混ぜる」 (0.0 ~ 1.0)。";
+Blockly.Msg.COLOUR_PICKER_HELPURL = "https://ja.wikipedia.org/wiki/色";
+Blockly.Msg.COLOUR_PICKER_TOOLTIP = "パレットから色を選んでください。";
+Blockly.Msg.COLOUR_RANDOM_HELPURL = "http://randomcolour.com"; // untranslated
+Blockly.Msg.COLOUR_RANDOM_TITLE = "ランダムな色";
+Blockly.Msg.COLOUR_RANDOM_TOOLTIP = "ランダムな色を選択します。";
+Blockly.Msg.COLOUR_RGB_BLUE = "青";
+Blockly.Msg.COLOUR_RGB_GREEN = "緑";
+Blockly.Msg.COLOUR_RGB_HELPURL = "http://www.december.com/html/spec/colorper.html";
+Blockly.Msg.COLOUR_RGB_RED = "赤";
+Blockly.Msg.COLOUR_RGB_TITLE = "カラーと";
+Blockly.Msg.COLOUR_RGB_TOOLTIP = "赤、緑、および青の指定された量で色を作成します。すべての値は 0 ~ 100 の間でなければなりません。";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_HELPURL = "https://github.com/google/blockly/wiki/Loops#loop-termination-blocks"; // untranslated
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK = "ループから抜け出す";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE = "ループの次の反復処理を続行します。";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK = "含むループから抜け出します。";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE = "このループの残りの部分をスキップし、次のイテレーションに進みます。";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_WARNING = "注意: このブロックは、ループ内でのみ使用します。";
+Blockly.Msg.CONTROLS_FOREACH_HELPURL = "https://github.com/google/blockly/wiki/Loops#for-each"; // untranslated
+Blockly.Msg.CONTROLS_FOREACH_TITLE = "各項目の %1 リストで %2";
+Blockly.Msg.CONTROLS_FOREACH_TOOLTIP = "リストの各項目に対して変数 '%1' のアイテムに設定し、いくつかのステートメントをしてください。";
+Blockly.Msg.CONTROLS_FOR_HELPURL = "https://github.com/google/blockly/wiki/Loops#count-with"; // untranslated
+Blockly.Msg.CONTROLS_FOR_TITLE = "で、カウントします。 %1 %2 から%3、 %4 で";
+Blockly.Msg.CONTROLS_FOR_TOOLTIP = "変数 \"%1\"は、指定した間隔ごとのカウントを開始番号から 終了番号まで、値をとり、指定したブロックを行う必要があります。";
+Blockly.Msg.CONTROLS_IF_ELSEIF_TOOLTIP = "場合に条件にブロック追加。";
+Blockly.Msg.CONTROLS_IF_ELSE_TOOLTIP = "Ifブロックに、すべてをキャッチする条件を追加。";
+Blockly.Msg.CONTROLS_IF_HELPURL = "https://github.com/google/blockly/wiki/IfElse"; // untranslated
+Blockly.Msg.CONTROLS_IF_IF_TOOLTIP = "追加、削除、またはセクションを順序変更して、ブロックをこれを再構成します。";
+Blockly.Msg.CONTROLS_IF_MSG_ELSE = "他";
+Blockly.Msg.CONTROLS_IF_MSG_ELSEIF = "他でもし";
+Blockly.Msg.CONTROLS_IF_MSG_IF = "もし";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_1 = "値が true の場合はその後ステートメントを行をいくつかします。";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_2 = "値が true 場合は、ステートメントの最初のブロックを行います。それ以外の場合は、ステートメントの 2 番目のブロックを行います。";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_3 = "最初の値が true 場合は、ステートメントの最初のブロックを行います。それ以外の場合は、2 番目の値が true の場合、ステートメントの 2 番目のブロックをします。";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_4 = "最初の値が true 場合は、ステートメントの最初のブロックを行います。2 番目の値が true の場合は、ステートメントの 2 番目のブロックを行います。それ以外の場合は最後のブロックのステートメントを行います。";
+Blockly.Msg.CONTROLS_REPEAT_HELPURL = "https://ja.wikipedia.org/wiki/for文";
+Blockly.Msg.CONTROLS_REPEAT_INPUT_DO = "してください";
+Blockly.Msg.CONTROLS_REPEAT_TITLE = "%1 回、繰り返します";
+Blockly.Msg.CONTROLS_REPEAT_TOOLTIP = "いくつかのステートメントを数回行います。";
+Blockly.Msg.CONTROLS_WHILEUNTIL_HELPURL = "https://github.com/google/blockly/wiki/Loops#repeat"; // untranslated
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "までを繰り返します";
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "つつその間、繰り返す4";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "値は false のあいだ、いくつかのステートメントを行います。";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "値は true のあいだ、いくつかのステートメントを行います。";
+Blockly.Msg.DELETE_ALL_BLOCKS = "%1件のすべてのブロックを消しますか?";
+Blockly.Msg.DELETE_BLOCK = "ブロックを消す";
+Blockly.Msg.DELETE_VARIABLE = "Delete the '%1' variable"; // untranslated
+Blockly.Msg.DELETE_VARIABLE_CONFIRMATION = "Delete %1 uses of the '%2' variable?"; // untranslated
+Blockly.Msg.DELETE_X_BLOCKS = "%1 個のブロックを消す";
+Blockly.Msg.DISABLE_BLOCK = "ブロックを無効にします。";
+Blockly.Msg.DUPLICATE_BLOCK = "複製";
+Blockly.Msg.ENABLE_BLOCK = "ブロックを有効にします。";
+Blockly.Msg.EXPAND_ALL = "ブロックを展開します。";
+Blockly.Msg.EXPAND_BLOCK = "ブロックを展開します。";
+Blockly.Msg.EXTERNAL_INPUTS = "外部入力";
+Blockly.Msg.HELP = "ヘルプ";
+Blockly.Msg.INLINE_INPUTS = "インライン入力";
+Blockly.Msg.LISTS_CREATE_EMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-empty-list";
+Blockly.Msg.LISTS_CREATE_EMPTY_TITLE = "空のリストを作成します。";
+Blockly.Msg.LISTS_CREATE_EMPTY_TOOLTIP = "長さゼロ、データ レコード空のリストを返します";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TITLE_ADD = "リスト";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TOOLTIP = "追加、削除、またはセクションを順序変更して、ブロックを再構成します。";
+Blockly.Msg.LISTS_CREATE_WITH_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
+Blockly.Msg.LISTS_CREATE_WITH_INPUT_WITH = "これを使ってリストを作成します。";
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TOOLTIP = "リストにアイテムを追加します。";
+Blockly.Msg.LISTS_CREATE_WITH_TOOLTIP = "アイテム数かぎりないのリストを作成します。";
+Blockly.Msg.LISTS_GET_INDEX_FIRST = "最初";
+Blockly.Msg.LISTS_GET_INDEX_FROM_END = "終しまいから #";
+Blockly.Msg.LISTS_GET_INDEX_FROM_START = "#";
+Blockly.Msg.LISTS_GET_INDEX_GET = "取得";
+Blockly.Msg.LISTS_GET_INDEX_GET_REMOVE = "取得と削除";
+Blockly.Msg.LISTS_GET_INDEX_LAST = "最後";
+Blockly.Msg.LISTS_GET_INDEX_RANDOM = "ランダム";
+Blockly.Msg.LISTS_GET_INDEX_REMOVE = "削除";
+Blockly.Msg.LISTS_GET_INDEX_TAIL = "";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FIRST = "リストの最初の項目を返信します。";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FROM = "リスト内の指定位置にある項目を返します。";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_LAST = "リストの最後の項目を返します。";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_RANDOM = "ランダム アイテム リストを返します。";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST = "リスト内の最初の項目を削除したあと返します。";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM = "リスト内の指定位置にある項目を削除し、返します。";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST = "リスト内の最後の項目を削除したあと返します。";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM = "リストのランダムなアイテムを削除し、返します。";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST = "リスト内の最初の項目を削除します。";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM = "リスト内の指定位置にある項目を返します。";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST = "リスト内の最後の項目を削除します。";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM = "リスト内にある任意のアイテムを削除します。";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_END = "最後から#へ";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_START = "#へ";
+Blockly.Msg.LISTS_GET_SUBLIST_END_LAST = "最後へ";
+Blockly.Msg.LISTS_GET_SUBLIST_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-a-sublist"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_START_FIRST = "最初からサブリストを取得する。";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_END = "端から #のサブリストを取得します。";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_START = "# からサブディレクトリのリストを取得します。";
+Blockly.Msg.LISTS_GET_SUBLIST_TAIL = "";
+Blockly.Msg.LISTS_GET_SUBLIST_TOOLTIP = "リストの指定された部分のコピーを作成してくださ。";
+Blockly.Msg.LISTS_INDEX_FROM_END_TOOLTIP = "%1 は、最後の項目です。";
+Blockly.Msg.LISTS_INDEX_FROM_START_TOOLTIP = "%1 は、最初の項目です。";
+Blockly.Msg.LISTS_INDEX_OF_FIRST = "最初に見つかった項目を検索します。";
+Blockly.Msg.LISTS_INDEX_OF_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-items-from-a-list"; // untranslated
+Blockly.Msg.LISTS_INDEX_OF_LAST = "最後に見つかったアイテムを見つける";
+Blockly.Msg.LISTS_INDEX_OF_TOOLTIP = "リスト項目の最初/最後に出現するインデックス位置を返します。項目が見つからない場合は %1 を返します。";
+Blockly.Msg.LISTS_INLIST = "リストで";
+Blockly.Msg.LISTS_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#is-empty"; // untranslated
+Blockly.Msg.LISTS_ISEMPTY_TITLE = "%1 が空";
+Blockly.Msg.LISTS_ISEMPTY_TOOLTIP = "リストが空の場合は、true を返します。";
+Blockly.Msg.LISTS_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Lists#length-of"; // untranslated
+Blockly.Msg.LISTS_LENGTH_TITLE = " %1の長さ";
+Blockly.Msg.LISTS_LENGTH_TOOLTIP = "リストの長さを返します。";
+Blockly.Msg.LISTS_REPEAT_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
+Blockly.Msg.LISTS_REPEAT_TITLE = "アイテム %1 と一緒にリストを作成し %2 回繰り";
+Blockly.Msg.LISTS_REPEAT_TOOLTIP = "指定された値をなんどか繰り返してリストを作ります。";
+Blockly.Msg.LISTS_SET_INDEX_HELPURL = "https://github.com/google/blockly/wiki/Lists#in-list--set"; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_INPUT_TO = "として";
+Blockly.Msg.LISTS_SET_INDEX_INSERT = "挿入します。";
+Blockly.Msg.LISTS_SET_INDEX_SET = "セット";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST = "リストの先頭に項目を挿入します。";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FROM = "リスト内の指定位置に項目を挿入します。";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_LAST = "リストの末尾に項目を追加します。";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM = "リストに項目をランダムに挿入します。";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FIRST = "リスト内に最初の項目を設定します。";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FROM = "リスト内の指定された位置に項目を設定します。";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_LAST = "リスト内の最後の項目を設定します。";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_RANDOM = "リスト内にランダムなアイテムを設定します。";
+Blockly.Msg.LISTS_SORT_HELPURL = "https://github.com/google/blockly/wiki/Lists#sorting-a-list"; // untranslated
+Blockly.Msg.LISTS_SORT_ORDER_ASCENDING = "昇順";
+Blockly.Msg.LISTS_SORT_ORDER_DESCENDING = "降順";
+Blockly.Msg.LISTS_SORT_TITLE = "sort %1 %2 %3"; // untranslated
+Blockly.Msg.LISTS_SORT_TOOLTIP = "Sort a copy of a list."; // untranslated
+Blockly.Msg.LISTS_SORT_TYPE_IGNORECASE = "alphabetic, ignore case"; // untranslated
+Blockly.Msg.LISTS_SORT_TYPE_NUMERIC = "numeric"; // untranslated
+Blockly.Msg.LISTS_SORT_TYPE_TEXT = "alphabetic"; // untranslated
+Blockly.Msg.LISTS_SPLIT_HELPURL = "https://github.com/google/blockly/wiki/Lists#splitting-strings-and-joining-lists"; // untranslated
+Blockly.Msg.LISTS_SPLIT_LIST_FROM_TEXT = "テキストからリストを作る";
+Blockly.Msg.LISTS_SPLIT_TEXT_FROM_LIST = "リストからテキストを作る";
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_JOIN = "Join a list of texts into one text, separated by a delimiter."; // untranslated
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_SPLIT = "Split text into a list of texts, breaking at each delimiter."; // untranslated
+Blockly.Msg.LISTS_SPLIT_WITH_DELIMITER = "with delimiter"; // untranslated
+Blockly.Msg.LOGIC_BOOLEAN_FALSE = "false";
+Blockly.Msg.LOGIC_BOOLEAN_HELPURL = "https://github.com/google/blockly/wiki/Logic#values"; // untranslated
+Blockly.Msg.LOGIC_BOOLEAN_TOOLTIP = "True または false を返します。";
+Blockly.Msg.LOGIC_BOOLEAN_TRUE = "true";
+Blockly.Msg.LOGIC_COMPARE_HELPURL = "https://ja.wikipedia.org/wiki/不等式";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_EQ = "もし両方がお互いに等しく入力した場合は true を返します。";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GT = "最初の入力が 2 番目の入力よりも大きい場合は true を返します。";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GTE = "もし入力がふたつめの入よりも大きかったらtrueをり返します。";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LT = "最初の入力が 2 番目の入力よりも小さいい場合は true を返します。";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LTE = "もし、最初の入力が二つ目入力より少ないか、おなじであったらTRUEをかえしてください";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_NEQ = "両方の入力が互いに等しくない場合に true を返します。";
+Blockly.Msg.LOGIC_NEGATE_HELPURL = "https://ja.wikipedia.org/wiki/否定";
+Blockly.Msg.LOGIC_NEGATE_TITLE = "%1 ではないです。";
+Blockly.Msg.LOGIC_NEGATE_TOOLTIP = "入力が false の場合は、true を返します。入力が true の場合は false を返します。";
+Blockly.Msg.LOGIC_NULL = "null";
+Blockly.Msg.LOGIC_NULL_HELPURL = "https://en.wikipedia.org/wiki/Nullable_type";
+Blockly.Msg.LOGIC_NULL_TOOLTIP = "Null を返します。";
+Blockly.Msg.LOGIC_OPERATION_AND = "そして";
+Blockly.Msg.LOGIC_OPERATION_HELPURL = "https://github.com/google/blockly/wiki/Logic#logical-operations"; // untranslated
+Blockly.Msg.LOGIC_OPERATION_OR = "または";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_AND = "両方の入力がおんなじ場わいわtrue を返します。";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_OR = "最低少なくとも 1 つの入力が true の場合は true を返します。";
+Blockly.Msg.LOGIC_TERNARY_CONDITION = "テスト";
+Blockly.Msg.LOGIC_TERNARY_HELPURL = "https://ja.wikipedia.org/wiki/%3F:";
+Blockly.Msg.LOGIC_TERNARY_IF_FALSE = "false の場合";
+Blockly.Msg.LOGIC_TERNARY_IF_TRUE = "true の場合";
+Blockly.Msg.LOGIC_TERNARY_TOOLTIP = "'テスト' の条件をチェックします。条件が true の場合、'true' の値を返します。それ以外の場合 'false' のを返します。";
+Blockly.Msg.MATH_ADDITION_SYMBOL = "+";
+Blockly.Msg.MATH_ARITHMETIC_HELPURL = "https://ja.wikipedia.org/wiki/算術";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_ADD = "2 つの数の合計を返します。";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE = "2 つの数の商を返します。";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MINUS = "2 つの数の差を返します。";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MULTIPLY = "2 つの数の積を返します。";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_POWER = "最初の数を2 番目の値で累乗した結果を返します。";
+Blockly.Msg.MATH_CHANGE_HELPURL = "https://ja.wikipedia.org/wiki/加法";
+Blockly.Msg.MATH_CHANGE_TITLE = "変更 %1 に %2";
+Blockly.Msg.MATH_CHANGE_TOOLTIP = "'%1' をたします。";
+Blockly.Msg.MATH_CONSTANT_HELPURL = "https://ja.wikipedia.org/wiki/数学定数";
+Blockly.Msg.MATH_CONSTANT_TOOLTIP = "いずれかの共通の定数のを返す: π (3.141…), e (2.718…), φ (1.618…), sqrt(2) (1.414…), sqrt(½) (0.707…), or ∞ (無限).";
+Blockly.Msg.MATH_CONSTRAIN_HELPURL = "https://en.wikipedia.org/wiki/Clamping_%28graphics%29"; // untranslated
+Blockly.Msg.MATH_CONSTRAIN_TITLE = "制限%1下リミット%2上限リミット%3";
+Blockly.Msg.MATH_CONSTRAIN_TOOLTIP = "値を、上限 x と下限 y のあいだに制限んする(上限と下限が、x と y とに同じ場合わ、上限の値は x, 下限の値はy)。";
+Blockly.Msg.MATH_DIVISION_SYMBOL = "÷";
+Blockly.Msg.MATH_IS_DIVISIBLE_BY = "割り切れる";
+Blockly.Msg.MATH_IS_EVEN = "わ偶数";
+Blockly.Msg.MATH_IS_NEGATIVE = "負の値";
+Blockly.Msg.MATH_IS_ODD = "奇数です。";
+Blockly.Msg.MATH_IS_POSITIVE = "正の値";
+Blockly.Msg.MATH_IS_PRIME = "素数です";
+Blockly.Msg.MATH_IS_TOOLTIP = "数字が、偶数、奇数、素数、整数、正数、負数、またはそれが特定の数で割り切れる場合かどうかを確認してください。どの制限が一つでも本当でしたら true をかえしてください、そうでない場合わ falseを返してください。";
+Blockly.Msg.MATH_IS_WHOLE = "は整数";
+Blockly.Msg.MATH_MODULO_HELPURL = "https://en.wikipedia.org/wiki/Modulo_operation";
+Blockly.Msg.MATH_MODULO_TITLE = "残りの %1 ÷ %2";
+Blockly.Msg.MATH_MODULO_TOOLTIP = "2つの数値を除算した余りを返します。";
+Blockly.Msg.MATH_MULTIPLICATION_SYMBOL = "×";
+Blockly.Msg.MATH_NUMBER_HELPURL = "https://ja.wikipedia.org/wiki/数";
+Blockly.Msg.MATH_NUMBER_TOOLTIP = "数です。";
+Blockly.Msg.MATH_ONLIST_HELPURL = "";
+Blockly.Msg.MATH_ONLIST_OPERATOR_AVERAGE = "リストの平均";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MAX = "リストの最大値";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MEDIAN = "リストの中央値";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MIN = "リストの最小の数";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MODE = "一覧モード";
+Blockly.Msg.MATH_ONLIST_OPERATOR_RANDOM = "リストのランダム アイテム";
+Blockly.Msg.MATH_ONLIST_OPERATOR_STD_DEV = "リストの標準偏差";
+Blockly.Msg.MATH_ONLIST_OPERATOR_SUM = "リストの合計";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_AVERAGE = "リストの数値の平均 (算術平均) を返します。";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MAX = "リストの最大数を返します。";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MEDIAN = "リストの中央値の数を返します。";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MIN = "リストの最小数を返します。";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MODE = "リストで最も一般的な項目のリストを返します。";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_RANDOM = "リストからランダムに要素を返します。";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_STD_DEV = "リウトの標準偏差をかえす";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_SUM = "全部リストの数をたして返す";
+Blockly.Msg.MATH_POWER_SYMBOL = "^";
+Blockly.Msg.MATH_RANDOM_FLOAT_HELPURL = "https://en.wikipedia.org/wiki/Random_number_generation";
+Blockly.Msg.MATH_RANDOM_FLOAT_TITLE_RANDOM = "ランダムな分数";
+Blockly.Msg.MATH_RANDOM_FLOAT_TOOLTIP = "ランダムな分数を返すー0.0 (包括) の間のと 1.0 (排他的な)。";
+Blockly.Msg.MATH_RANDOM_INT_HELPURL = "https://en.wikipedia.org/wiki/Random_number_generation";
+Blockly.Msg.MATH_RANDOM_INT_TITLE = "%1 から %2 への無作為の整数";
+Blockly.Msg.MATH_RANDOM_INT_TOOLTIP = "指定した下限の間、無作為なランダムな整数を返します。";
+Blockly.Msg.MATH_ROUND_HELPURL = "https://ja.wikipedia.org/wiki/端数処理";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUND = "概数";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDDOWN = "端数を切り捨てる";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDUP = "数値を切り上げ";
+Blockly.Msg.MATH_ROUND_TOOLTIP = "数値を切り上げるか切り捨てる";
+Blockly.Msg.MATH_SINGLE_HELPURL = "https://ja.wikipedia.org/wiki/平方根";
+Blockly.Msg.MATH_SINGLE_OP_ABSOLUTE = "絶対値";
+Blockly.Msg.MATH_SINGLE_OP_ROOT = "平方根";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ABS = "絶対値を返す";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_EXP = "数値の e 粂を返す";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LN = "数値の自然対数をかえしてください";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LOG10 = "log 10 を返す。";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_NEG = "負の数を返す";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_POW10 = "10の x 乗";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ROOT = "平方根を返す";
+Blockly.Msg.MATH_SUBTRACTION_SYMBOL = "-";
+Blockly.Msg.MATH_TRIG_ACOS = "acos";
+Blockly.Msg.MATH_TRIG_ASIN = "asin";
+Blockly.Msg.MATH_TRIG_ATAN = "atan";
+Blockly.Msg.MATH_TRIG_COS = "cos";
+Blockly.Msg.MATH_TRIG_HELPURL = "https://ja.wikipedia.org/wiki/三角関数";
+Blockly.Msg.MATH_TRIG_SIN = "sin";
+Blockly.Msg.MATH_TRIG_TAN = "tan";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ACOS = "arccosine の値を返す";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ASIN = "番号のarcsine を返すます";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ATAN = "番号のarctangent を返すます";
+Blockly.Msg.MATH_TRIG_TOOLTIP_COS = "番号のcosineの次数を返す";
+Blockly.Msg.MATH_TRIG_TOOLTIP_SIN = "番号のsineの次数を返す";
+Blockly.Msg.MATH_TRIG_TOOLTIP_TAN = "番号のtangentの次数を返す";
+Blockly.Msg.NEW_VARIABLE = "新しい変数";
+Blockly.Msg.NEW_VARIABLE_TITLE = "新しい変数の、名前";
+Blockly.Msg.ORDINAL_NUMBER_SUFFIX = "";
+Blockly.Msg.PROCEDURES_ALLOW_STATEMENTS = "allow statements"; // untranslated
+Blockly.Msg.PROCEDURES_BEFORE_PARAMS = "で。";
+Blockly.Msg.PROCEDURES_CALLNORETURN_HELPURL = "https://ja.wikipedia.org/wiki/サブルーチン";
+Blockly.Msg.PROCEDURES_CALLNORETURN_TOOLTIP = "ユーザー定義関数 '%1' を実行します。";
+Blockly.Msg.PROCEDURES_CALLRETURN_HELPURL = "https://ja.wikipedia.org/wiki/サブルーチン";
+Blockly.Msg.PROCEDURES_CALLRETURN_TOOLTIP = "ユーザー定義関数 '%1' を実行し、その出力を使用します。";
+Blockly.Msg.PROCEDURES_CALL_BEFORE_PARAMS = "で。";
+Blockly.Msg.PROCEDURES_CREATE_DO = "%1をつくる";
+Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT = "Describe this function..."; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_DO = "";
+Blockly.Msg.PROCEDURES_DEFNORETURN_HELPURL = "https://ja.wikipedia.org/wiki/サブルーチン";
+Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE = "何かしてください";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE = "宛先";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TOOLTIP = "出力なしで関数を作成します。";
+Blockly.Msg.PROCEDURES_DEFRETURN_HELPURL = "https://ja.wikipedia.org/wiki/サブルーチン";
+Blockly.Msg.PROCEDURES_DEFRETURN_RETURN = "返す";
+Blockly.Msg.PROCEDURES_DEFRETURN_TOOLTIP = "出力を持つ関数を作成します。";
+Blockly.Msg.PROCEDURES_DEF_DUPLICATE_WARNING = "警告: この関数は、重複するパラメーターがあります。";
+Blockly.Msg.PROCEDURES_HIGHLIGHT_DEF = "関数の内容を強調表示します。";
+Blockly.Msg.PROCEDURES_IFRETURN_HELPURL = "http://c2.com/cgi/wiki?GuardClause"; // untranslated
+Blockly.Msg.PROCEDURES_IFRETURN_TOOLTIP = "1番目値が true の場合、2 番目の値を返します。";
+Blockly.Msg.PROCEDURES_IFRETURN_WARNING = "警告: このブロックは、関数定義内でのみ使用できます。";
+Blockly.Msg.PROCEDURES_MUTATORARG_TITLE = "入力名:";
+Blockly.Msg.PROCEDURES_MUTATORARG_TOOLTIP = "Add an input to the function."; // untranslated
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TITLE = "入力";
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TOOLTIP = "Add, remove, or reorder inputs to this function."; // untranslated
+Blockly.Msg.REDO = "やり直し";
+Blockly.Msg.REMOVE_COMMENT = "コメントを削除";
+Blockly.Msg.RENAME_VARIABLE = "変数の名前を変更.";
+Blockly.Msg.RENAME_VARIABLE_TITLE = "%1の変数すべてを名前変更します。";
+Blockly.Msg.TEXT_APPEND_APPENDTEXT = "テキストを追加します。";
+Blockly.Msg.TEXT_APPEND_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_APPEND_TO = "宛先";
+Blockly.Msg.TEXT_APPEND_TOOLTIP = "変数 '%1' にいくつかのテキストを追加します。";
+Blockly.Msg.TEXT_CHANGECASE_HELPURL = "https://github.com/google/blockly/wiki/Text#adjusting-text-case"; // untranslated
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_LOWERCASE = "小文字に";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_TITLECASE = "タイトル ケースに";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_UPPERCASE = "大文字に変換する";
+Blockly.Msg.TEXT_CHANGECASE_TOOLTIP = "別のケースに、テキストのコピーを返します。";
+Blockly.Msg.TEXT_CHARAT_FIRST = "最初の文字を得る";
+Blockly.Msg.TEXT_CHARAT_FROM_END = "一番最後の言葉、キャラクターを所得";
+Blockly.Msg.TEXT_CHARAT_FROM_START = "文字# を取得";
+Blockly.Msg.TEXT_CHARAT_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-text"; // untranslated
+Blockly.Msg.TEXT_CHARAT_INPUT_INTEXT = "テキストで";
+Blockly.Msg.TEXT_CHARAT_LAST = "最後の文字を得る";
+Blockly.Msg.TEXT_CHARAT_RANDOM = "ランダムな文字を得る";
+Blockly.Msg.TEXT_CHARAT_TAIL = "";
+Blockly.Msg.TEXT_CHARAT_TOOLTIP = "指定された位置に文字を返します。";
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TOOLTIP = "テキスト をアイテム追加します。";
+Blockly.Msg.TEXT_CREATE_JOIN_TITLE_JOIN = "結合";
+Blockly.Msg.TEXT_CREATE_JOIN_TOOLTIP = "追加、削除、またはセクションを順序変更して、ブロックを再構成します。";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_END = "文字列の# 終わりからの#";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_START = "# の文字";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_LAST = "最後のの文字";
+Blockly.Msg.TEXT_GET_SUBSTRING_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_INPUT_IN_TEXT = "テキストで";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FIRST = "部分文字列を取得する。";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_END = "部分文字列を取得する #端から得る";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_START = "文字列からの部分文字列を取得 #";
+Blockly.Msg.TEXT_GET_SUBSTRING_TAIL = "";
+Blockly.Msg.TEXT_GET_SUBSTRING_TOOLTIP = "テキストの指定部分を返します。";
+Blockly.Msg.TEXT_INDEXOF_HELPURL = "https://github.com/google/blockly/wiki/Text#finding-text"; // untranslated
+Blockly.Msg.TEXT_INDEXOF_INPUT_INTEXT = "テキストで";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_FIRST = "テキストの最初の出現箇所を検索します。";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_LAST = "テキストの最後に見つかったを検索します。";
+Blockly.Msg.TEXT_INDEXOF_TAIL = "";
+Blockly.Msg.TEXT_INDEXOF_TOOLTIP = "最初のテキストの二番目のてきすとの、最初と最後の、出現したインデックスをかえします。テキストが見つからない場合は %1 を返します。";
+Blockly.Msg.TEXT_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Text#checking-for-empty-text"; // untranslated
+Blockly.Msg.TEXT_ISEMPTY_TITLE = "%1 が空";
+Blockly.Msg.TEXT_ISEMPTY_TOOLTIP = "指定されたテキストが空の場合は、true を返します。";
+Blockly.Msg.TEXT_JOIN_HELPURL = "https://github.com/google/blockly/wiki/Text#text-creation"; // untranslated
+Blockly.Msg.TEXT_JOIN_TITLE_CREATEWITH = "テキストを作成します。";
+Blockly.Msg.TEXT_JOIN_TOOLTIP = "任意の数の項目一部を一緒に接合してテキストの作成します。";
+Blockly.Msg.TEXT_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_LENGTH_TITLE = "%1 の長さ";
+Blockly.Msg.TEXT_LENGTH_TOOLTIP = "指定されたテキストの文字 (スペースを含む) の数を返します。";
+Blockly.Msg.TEXT_PRINT_HELPURL = "https://github.com/google/blockly/wiki/Text#printing-text"; // untranslated
+Blockly.Msg.TEXT_PRINT_TITLE = "%1 を印刷します。";
+Blockly.Msg.TEXT_PRINT_TOOLTIP = "指定したテキスト、番号または他の値を印刷します。";
+Blockly.Msg.TEXT_PROMPT_HELPURL = "https://github.com/google/blockly/wiki/Text#getting-input-from-the-user"; // untranslated
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_NUMBER = "ユーザーにプロンプトして数字のインプットを求めます";
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_TEXT = "いくつかのテキストを、ユーザーに入力するようにプロンプト。";
+Blockly.Msg.TEXT_PROMPT_TYPE_NUMBER = "メッセージを送って番号の入力を求める";
+Blockly.Msg.TEXT_PROMPT_TYPE_TEXT = "メッセージをプロンプトしてにテキストを求める";
+Blockly.Msg.TEXT_TEXT_HELPURL = "https://ja.wikipedia.org/wiki/文字列";
+Blockly.Msg.TEXT_TEXT_TOOLTIP = "文字、単語、または行のテキスト。";
+Blockly.Msg.TEXT_TRIM_HELPURL = "https://github.com/google/blockly/wiki/Text#trimming-removing-spaces"; // untranslated
+Blockly.Msg.TEXT_TRIM_OPERATOR_BOTH = "両端のスペースを取り除く";
+Blockly.Msg.TEXT_TRIM_OPERATOR_LEFT = "左端のスペースを取り除く";
+Blockly.Msg.TEXT_TRIM_OPERATOR_RIGHT = "右端のスペースを取り除く";
+Blockly.Msg.TEXT_TRIM_TOOLTIP = "スペースを 1 つまたは両方の端から削除したのち、テキストのコピーを返します。";
+Blockly.Msg.TODAY = "今日";
+Blockly.Msg.UNDO = "取り消し";
+Blockly.Msg.VARIABLES_DEFAULT_NAME = "項目";
+Blockly.Msg.VARIABLES_GET_CREATE_SET = "'セット%1を作成します。";
+Blockly.Msg.VARIABLES_GET_HELPURL = "https://github.com/google/blockly/wiki/Variables#get"; // untranslated
+Blockly.Msg.VARIABLES_GET_TOOLTIP = "この変数の値を返します。";
+Blockly.Msg.VARIABLES_SET = "セット %1 宛先 %2";
+Blockly.Msg.VARIABLES_SET_CREATE_GET = "'%1 を取得' を作成します。";
+Blockly.Msg.VARIABLES_SET_HELPURL = "https://github.com/google/blockly/wiki/Variables#set"; // untranslated
+Blockly.Msg.VARIABLES_SET_TOOLTIP = "この入力を変数と等しくなるように設定します。";
+Blockly.Msg.VARIABLE_ALREADY_EXISTS = "A variable named '%1' already exists."; // untranslated
+Blockly.Msg.PROCEDURES_DEFRETURN_TITLE = Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE;
+Blockly.Msg.CONTROLS_IF_IF_TITLE_IF = Blockly.Msg.CONTROLS_IF_MSG_IF;
+Blockly.Msg.CONTROLS_WHILEUNTIL_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_MSG_THEN = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_ELSE_TITLE_ELSE = Blockly.Msg.CONTROLS_IF_MSG_ELSE;
+Blockly.Msg.PROCEDURES_DEFRETURN_PROCEDURE = Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE;
+Blockly.Msg.LISTS_GET_SUBLIST_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.LISTS_GET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.PROCEDURES_DEFRETURN_DO = Blockly.Msg.PROCEDURES_DEFNORETURN_DO;
+Blockly.Msg.CONTROLS_IF_ELSEIF_TITLE_ELSEIF = Blockly.Msg.CONTROLS_IF_MSG_ELSEIF;
+Blockly.Msg.LISTS_GET_INDEX_HELPURL = Blockly.Msg.LISTS_INDEX_OF_HELPURL;
+Blockly.Msg.CONTROLS_FOREACH_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_SET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TITLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_APPEND_VARIABLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.LISTS_INDEX_OF_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.PROCEDURES_DEFRETURN_COMMENT = Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT; \ No newline at end of file
diff --git a/blockly/msg/js/ko.js b/blockly/msg/js/ko.js
new file mode 100644
index 0000000..2e601b8
--- /dev/null
+++ b/blockly/msg/js/ko.js
@@ -0,0 +1,391 @@
+// This file was automatically generated. Do not modify.
+
+'use strict';
+
+goog.provide('Blockly.Msg.ko');
+
+goog.require('Blockly.Msg');
+
+Blockly.Msg.ADD_COMMENT = "댓글 추가";
+Blockly.Msg.CHANGE_VALUE_TITLE = "값 바꾸기:";
+Blockly.Msg.CLEAN_UP = "블록 정리";
+Blockly.Msg.COLLAPSE_ALL = "블록 축소";
+Blockly.Msg.COLLAPSE_BLOCK = "블록 축소";
+Blockly.Msg.COLOUR_BLEND_COLOUR1 = "색 1";
+Blockly.Msg.COLOUR_BLEND_COLOUR2 = "색 2";
+Blockly.Msg.COLOUR_BLEND_HELPURL = "http://meyerweb.com/eric/tools/color-blend/";
+Blockly.Msg.COLOUR_BLEND_RATIO = "비율";
+Blockly.Msg.COLOUR_BLEND_TITLE = "혼합";
+Blockly.Msg.COLOUR_BLEND_TOOLTIP = "두 색을 주어진 비율로 혼합 (0.0 - 1.0)";
+Blockly.Msg.COLOUR_PICKER_HELPURL = "https://ko.wikipedia.org/wiki/색";
+Blockly.Msg.COLOUR_PICKER_TOOLTIP = "팔레트에서 색을 고릅니다";
+Blockly.Msg.COLOUR_RANDOM_HELPURL = "http://randomcolour.com"; // untranslated
+Blockly.Msg.COLOUR_RANDOM_TITLE = "임의 색상";
+Blockly.Msg.COLOUR_RANDOM_TOOLTIP = "무작위로 색을 고릅니다.";
+Blockly.Msg.COLOUR_RGB_BLUE = "파랑";
+Blockly.Msg.COLOUR_RGB_GREEN = "초록";
+Blockly.Msg.COLOUR_RGB_HELPURL = "http://www.december.com/html/spec/colorper.html";
+Blockly.Msg.COLOUR_RGB_RED = "빨강";
+Blockly.Msg.COLOUR_RGB_TITLE = "색";
+Blockly.Msg.COLOUR_RGB_TOOLTIP = "빨강,파랑,초록의 값을 이용하여 색을 만드십시오. 모든 값은 0과 100 사이에 있어야 합니다.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_HELPURL = "https://ko.wikipedia.org/wiki/%EC%A0%9C%EC%96%B4_%ED%9D%90%EB%A6%84";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK = "반복 중단";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE = "다음 반복";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK = "현재 반복 실행 블럭을 빠져나갑니다.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE = "나머지 반복 부분을 더 이상 실행하지 않고, 다음 반복을 수행합니다.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_WARNING = "경고 : 이 블록은 반복 실행 블럭 안에서만 사용됩니다.";
+Blockly.Msg.CONTROLS_FOREACH_HELPURL = "https://ko.wikipedia.org/wiki/For_%EB%A3%A8%ED%94%84#.EC.9E.84.EC.9D.98.EC.9D.98_.EC.A7.91.ED.95.A9";
+Blockly.Msg.CONTROLS_FOREACH_TITLE = "각 항목에 대해 %1 목록으로 %2";
+Blockly.Msg.CONTROLS_FOREACH_TOOLTIP = "리스트 안에 들어있는 각 아이템들을, 순서대로 변수 '%1' 에 한 번씩 저장시키고, 그 때 마다 명령을 실행합니다.";
+Blockly.Msg.CONTROLS_FOR_HELPURL = "https://ko.wikipedia.org/wiki/For_%EB%A3%A8%ED%94%84";
+Blockly.Msg.CONTROLS_FOR_TITLE = "으로 계산 %1 %2에서 %4을 이용하여 %3로";
+Blockly.Msg.CONTROLS_FOR_TOOLTIP = "변수 \"%1\"은 지정된 간격으로 시작 수에서 끝 수까지를 세어 지정된 블록을 수행해야 합니다.";
+Blockly.Msg.CONTROLS_IF_ELSEIF_TOOLTIP = "\"만약\" 블럭에 조건 검사를 추가합니다.";
+Blockly.Msg.CONTROLS_IF_ELSE_TOOLTIP = "\"만약\" 블럭의 마지막에, 모든 검사 결과가 거짓인 경우 실행할 부분을 추가합니다.";
+Blockly.Msg.CONTROLS_IF_HELPURL = "https://ko.wikipedia.org/wiki/%EC%A1%B0%EA%B1%B4%EB%AC%B8";
+Blockly.Msg.CONTROLS_IF_IF_TOOLTIP = "섹션을 추가, 제거하거나 순서를 변경하여 이 if 블럭을 재구성합니다.";
+Blockly.Msg.CONTROLS_IF_MSG_ELSE = "아니라면";
+Blockly.Msg.CONTROLS_IF_MSG_ELSEIF = "다른 경우";
+Blockly.Msg.CONTROLS_IF_MSG_IF = "만약";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_1 = "조건식의 계산 결과가 참이면, 명령을 실행합니다.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_2 = "조건식의 계산 결과가 참이면, 첫 번째 블럭의 명령을 실행하고, 그렇지 않으면 두 번째 블럭의 명령을 실행합니다.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_3 = "첫 번째 조건식의 계산 결과가 참이면, 첫 번째 블럭의 명령을 실행하고, 두 번째 조건식의 계산 결과가 참이면, 두 번째 블럭의 명령을 실행합니다.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_4 = "첫 번째 조건식의 계산 결과가 참이면, 첫 번째 블럭의 명령을 실행하고, 두 번째 조건식의 계산 결과가 참이면, 두 번째 블럭의 명령을 실행하고, ... , 어떤 조건식의 계산 결과도 참이 아니면, 마지막 블럭의 명령을 실행합니다.";
+Blockly.Msg.CONTROLS_REPEAT_HELPURL = "https://ko.wikipedia.org/wiki/For_루프";
+Blockly.Msg.CONTROLS_REPEAT_INPUT_DO = "하기";
+Blockly.Msg.CONTROLS_REPEAT_TITLE = "%1회 반복";
+Blockly.Msg.CONTROLS_REPEAT_TOOLTIP = "여러 번 반복해 명령들을 실행합니다.";
+Blockly.Msg.CONTROLS_WHILEUNTIL_HELPURL = "https://ko.wikipedia.org/wiki/While_%EB%A3%A8%ED%94%84";
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "다음까지 반복";
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "동안 반복";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "값이 거짓일 때, 몇 가지 선언을 합니다.";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "값이 참일 때, 몇 가지 선언을 합니다.";
+Blockly.Msg.DELETE_ALL_BLOCKS = "모든 블록 %1개를 삭제하겠습니까?";
+Blockly.Msg.DELETE_BLOCK = "블록 삭제";
+Blockly.Msg.DELETE_VARIABLE = "'%1' 변수를 삭제합니다";
+Blockly.Msg.DELETE_VARIABLE_CONFIRMATION = "Delete %1 uses of the '%2' variable?"; // untranslated
+Blockly.Msg.DELETE_X_BLOCKS = "블록 %1개 삭제";
+Blockly.Msg.DISABLE_BLOCK = "블록 비활성화";
+Blockly.Msg.DUPLICATE_BLOCK = "중복됨";
+Blockly.Msg.ENABLE_BLOCK = "블록 활성화";
+Blockly.Msg.EXPAND_ALL = "블록 확장";
+Blockly.Msg.EXPAND_BLOCK = "블록 확장";
+Blockly.Msg.EXTERNAL_INPUTS = "외부 입력";
+Blockly.Msg.HELP = "도움말";
+Blockly.Msg.INLINE_INPUTS = "내부 입력";
+Blockly.Msg.LISTS_CREATE_EMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-empty-list";
+Blockly.Msg.LISTS_CREATE_EMPTY_TITLE = "빈 리스트 생성";
+Blockly.Msg.LISTS_CREATE_EMPTY_TOOLTIP = "데이터 레코드가 없는, 길이가 0인 목록을 반환합니다.";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TITLE_ADD = "리스트";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TOOLTIP = "섹션을 추가, 제거하거나 순서를 변경하여 이 리스트 블럭을 재구성합니다.";
+Blockly.Msg.LISTS_CREATE_WITH_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with";
+Blockly.Msg.LISTS_CREATE_WITH_INPUT_WITH = "리스트 만들기";
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TOOLTIP = "아이템을 리스트에 추가합니다.";
+Blockly.Msg.LISTS_CREATE_WITH_TOOLTIP = "원하는 수의 항목들로 목록을 생성합니다.";
+Blockly.Msg.LISTS_GET_INDEX_FIRST = "첫 번째";
+Blockly.Msg.LISTS_GET_INDEX_FROM_END = "마지막 번째 위치부터, # 번째";
+Blockly.Msg.LISTS_GET_INDEX_FROM_START = "#";
+Blockly.Msg.LISTS_GET_INDEX_GET = "가져오기";
+Blockly.Msg.LISTS_GET_INDEX_GET_REMOVE = "잘라 내기";
+Blockly.Msg.LISTS_GET_INDEX_LAST = "마지막";
+Blockly.Msg.LISTS_GET_INDEX_RANDOM = "임의로";
+Blockly.Msg.LISTS_GET_INDEX_REMOVE = "삭제";
+Blockly.Msg.LISTS_GET_INDEX_TAIL = "";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FIRST = "첫 번째 아이템을 찾아 돌려줍니다.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FROM = "목록에서 특정 위치의 항목을 반환합니다.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_LAST = "마지막 아이템을 찾아 돌려줍니다.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_RANDOM = "리스트의 아이템들 중, 랜덤으로 선택해 돌려줍니다.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST = "첫 번째 아이템을 찾아내 돌려주고, 그 아이템을 리스트에서 삭제합니다.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM = "목록의 특정 위치에 있는 항목을 제거하고 반환합니다.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST = "마지막 아이템을 찾아내 돌려주고, 그 아이템을 리스트에서 삭제합니다.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM = "목록에서 임의 위치의 아이템을 찾아내 삭제하고 돌려줍니다.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST = "리스트에서 첫 번째 아이템을 삭제합니다.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM = "목록에서 특정 위치의 항목을 삭제합니다.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST = "리스트에서 마지막 아이템을 찾아 삭제합니다.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM = "리스트에서 랜덤하게 아이템을 삭제합니다.";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_END = "끝에서부터 # 번째로";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_START = "앞에서부터 # 번째로";
+Blockly.Msg.LISTS_GET_SUBLIST_END_LAST = "마지막으로";
+Blockly.Msg.LISTS_GET_SUBLIST_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-a-sublist";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FIRST = "첫 번째 위치부터, 서브 리스트 추출";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_END = "마지막부터 # 번째 위치부터, 서브 리스트 추출";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_START = "처음 # 번째 위치부터, 서브 리스트 추출";
+Blockly.Msg.LISTS_GET_SUBLIST_TAIL = "";
+Blockly.Msg.LISTS_GET_SUBLIST_TOOLTIP = "목록의 특정 부분에 대한 복사본을 만듭니다.";
+Blockly.Msg.LISTS_INDEX_FROM_END_TOOLTIP = "%1은(는) 마지막 항목입니다.";
+Blockly.Msg.LISTS_INDEX_FROM_START_TOOLTIP = "%1은 첫 번째 항목입니다.";
+Blockly.Msg.LISTS_INDEX_OF_FIRST = "처음으로 나타난 위치";
+Blockly.Msg.LISTS_INDEX_OF_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-items-from-a-list";
+Blockly.Msg.LISTS_INDEX_OF_LAST = "마지막으로 나타난 위치";
+Blockly.Msg.LISTS_INDEX_OF_TOOLTIP = "목록에서 항목이 처음 또는 마지막으로 발생한 색인 위치를 반환합니다. 항목이 없으면 %1을 반환합니다.";
+Blockly.Msg.LISTS_INLIST = "리스트";
+Blockly.Msg.LISTS_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#is-empty";
+Blockly.Msg.LISTS_ISEMPTY_TITLE = "%1이 비어 있습니다";
+Blockly.Msg.LISTS_ISEMPTY_TOOLTIP = "목록이 비었을 때 참을 반환합니다.";
+Blockly.Msg.LISTS_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Lists#length-of";
+Blockly.Msg.LISTS_LENGTH_TITLE = "%1의 길이";
+Blockly.Msg.LISTS_LENGTH_TOOLTIP = "목록의 길이를 반환합니다.";
+Blockly.Msg.LISTS_REPEAT_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with";
+Blockly.Msg.LISTS_REPEAT_TITLE = "%1을 %2번 넣어, 리스트 생성";
+Blockly.Msg.LISTS_REPEAT_TOOLTIP = "원하는 값을, 원하는 갯수 만큼 넣어, 목록을 생성합니다.";
+Blockly.Msg.LISTS_SET_INDEX_HELPURL = "https://github.com/google/blockly/wiki/Lists#in-list--set";
+Blockly.Msg.LISTS_SET_INDEX_INPUT_TO = "에";
+Blockly.Msg.LISTS_SET_INDEX_INSERT = "에서 원하는 위치에 삽입";
+Blockly.Msg.LISTS_SET_INDEX_SET = "에서 설정";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST = "항목을 목록의 처음 위치에 삽입합니다.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FROM = "목록의 특정 위치에 항목을 삽입합니다.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_LAST = "리스트의 마지막에 아이템을 추가합니다.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM = "목록에서 임의 위치에 아이템을 삽입합니다.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FIRST = "첫 번째 위치의 아이템으로 설정합니다.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FROM = "목록의 특정 위치에 있는 항목으로 설정합니다.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_LAST = "마지막 아이템으로 설정합니다.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_RANDOM = "목록에서 임의 위치의 아이템을 설정합니다.";
+Blockly.Msg.LISTS_SORT_HELPURL = "https://github.com/google/blockly/wiki/Lists#sorting-a-list";
+Blockly.Msg.LISTS_SORT_ORDER_ASCENDING = "오름차순";
+Blockly.Msg.LISTS_SORT_ORDER_DESCENDING = "내림차순";
+Blockly.Msg.LISTS_SORT_TITLE = "정렬 %1 %2 %3";
+Blockly.Msg.LISTS_SORT_TOOLTIP = "목록의 사본을 정렬합니다.";
+Blockly.Msg.LISTS_SORT_TYPE_IGNORECASE = "알파벳순 (대소문자 구분 안 함)";
+Blockly.Msg.LISTS_SORT_TYPE_NUMERIC = "숫자순";
+Blockly.Msg.LISTS_SORT_TYPE_TEXT = "알파벳순";
+Blockly.Msg.LISTS_SPLIT_HELPURL = "https://github.com/google/blockly/wiki/Lists#splitting-strings-and-joining-lists";
+Blockly.Msg.LISTS_SPLIT_LIST_FROM_TEXT = "텍스트에서 목록 만들기";
+Blockly.Msg.LISTS_SPLIT_TEXT_FROM_LIST = "목록에서 텍스트 만들기";
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_JOIN = "구분 기호로 구분하여 텍스트 목록을 하나의 텍스트에 병합합니다.";
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_SPLIT = "각 속보, 텍스트의 목록들에서 텍스트를 분할합니다.";
+Blockly.Msg.LISTS_SPLIT_WITH_DELIMITER = "분리와";
+Blockly.Msg.LOGIC_BOOLEAN_FALSE = "거짓";
+Blockly.Msg.LOGIC_BOOLEAN_HELPURL = "https://ko.wikipedia.org/wiki/%EC%A7%84%EB%A6%BF%EA%B0%92";
+Blockly.Msg.LOGIC_BOOLEAN_TOOLTIP = "참 혹은 거짓 모두 반환합니다.";
+Blockly.Msg.LOGIC_BOOLEAN_TRUE = "참";
+Blockly.Msg.LOGIC_COMPARE_HELPURL = "https://en.wikipedia.org/wiki/Inequality_(mathematics)";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_EQ = "두 값이 같으면, 참(true) 값을 돌려줍니다.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GT = "첫 번째 값이 두 번째 값보다 크면, 참(true) 값을 돌려줍니다.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GTE = "첫 번째 값이 두 번째 값보다 크거나 같으면, 참(true) 값을 돌려줍니다.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LT = "첫 번째 값이 두 번째 값보다 작으면, 참(true) 값을 돌려줍니다.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LTE = "첫 번째 값이 두 번째 값보다 작거나 같으면, 참(true) 값을 돌려줍니다.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_NEQ = "두 값이 서로 다르면, 참(true) 값을 돌려줍니다.";
+Blockly.Msg.LOGIC_NEGATE_HELPURL = "https://ko.wikipedia.org/wiki/%EB%B6%80%EC%A0%95";
+Blockly.Msg.LOGIC_NEGATE_TITLE = "%1가 아닙니다";
+Blockly.Msg.LOGIC_NEGATE_TOOLTIP = "입력값이 거짓이라면 참을 반환합니다. 참이라면 거짓을 반환합니다.";
+Blockly.Msg.LOGIC_NULL = "빈 값";
+Blockly.Msg.LOGIC_NULL_HELPURL = "https://en.wikipedia.org/wiki/Nullable_type";
+Blockly.Msg.LOGIC_NULL_TOOLTIP = "빈 값을 반환합니다.";
+Blockly.Msg.LOGIC_OPERATION_AND = "그리고";
+Blockly.Msg.LOGIC_OPERATION_HELPURL = "https://ko.wikipedia.org/wiki/%EB%B6%88_%EB%85%BC%EB%A6%AC";
+Blockly.Msg.LOGIC_OPERATION_OR = "또는";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_AND = "두 값이 모두 참(true) 값이면, 참 값을 돌려줍니다.";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_OR = "적어도 하나의 값이 참일 경우 참을 반환합니다.";
+Blockly.Msg.LOGIC_TERNARY_CONDITION = "테스트";
+Blockly.Msg.LOGIC_TERNARY_HELPURL = "https://en.wikipedia.org/wiki/%3F:";
+Blockly.Msg.LOGIC_TERNARY_IF_FALSE = "만약 거짓이라면";
+Blockly.Msg.LOGIC_TERNARY_IF_TRUE = "만약 참이라면";
+Blockly.Msg.LOGIC_TERNARY_TOOLTIP = "'test'의 조건을 검사합니다. 조건이 참이면 'if true' 값을 반환합니다. 거짓이면 'if false' 값을 반환합니다.";
+Blockly.Msg.MATH_ADDITION_SYMBOL = "+";
+Blockly.Msg.MATH_ARITHMETIC_HELPURL = "https://en.wikipedia.org/wiki/Arithmetic";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_ADD = "두 수의 합을 반환합니다.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE = "두 수의 나눈 결과를 반환합니다.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MINUS = "두 수간의 차이를 반환합니다.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MULTIPLY = "두 수의 곱을 반환합니다.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_POWER = "첫 번째 수를 두 번째 수 만큼, 거듭제곱 한 결과값을 돌려줍니다.";
+Blockly.Msg.MATH_CHANGE_HELPURL = "https://en.wikipedia.org/wiki/Programming_idiom#Incrementing_a_counter";
+Blockly.Msg.MATH_CHANGE_TITLE = "바꾸기 %1 만큼 %2";
+Blockly.Msg.MATH_CHANGE_TOOLTIP = "변수 '%1' 에 저장되어있는 값에, 어떤 수를 더해, 변수에 다시 저장합니다.";
+Blockly.Msg.MATH_CONSTANT_HELPURL = "https://en.wikipedia.org/wiki/Mathematical_constant";
+Blockly.Msg.MATH_CONSTANT_TOOLTIP = "일반적인 상수 값들 중 하나를 돌려줍니다. : π (3.141…), e (2.718…), φ (1.618…), sqrt(2) (1.414…), sqrt(½) (0.707…), or ∞ (infinity).";
+Blockly.Msg.MATH_CONSTRAIN_HELPURL = "https://ko.wikipedia.org/wiki/%ED%81%B4%EB%9E%A8%ED%95%91_(%EA%B7%B8%EB%9E%98%ED%94%BD)";
+Blockly.Msg.MATH_CONSTRAIN_TITLE = "%1의 값을, 최소 %2 최대 %3으로 조정";
+Blockly.Msg.MATH_CONSTRAIN_TOOLTIP = "어떤 수를, 특정 범위의 값이 되도록 강제로 조정합니다.";
+Blockly.Msg.MATH_DIVISION_SYMBOL = "÷";
+Blockly.Msg.MATH_IS_DIVISIBLE_BY = "가 다음 수로 나누어 떨어지면 :";
+Blockly.Msg.MATH_IS_EVEN = "가 짝수(even) 이면";
+Blockly.Msg.MATH_IS_NEGATIVE = "가 음(-)수 이면";
+Blockly.Msg.MATH_IS_ODD = "가 홀수(odd) 이면";
+Blockly.Msg.MATH_IS_POSITIVE = "가 양(+)수 이면";
+Blockly.Msg.MATH_IS_PRIME = "가 소수(prime) 이면";
+Blockly.Msg.MATH_IS_TOOLTIP = "어떤 수가 짝 수, 홀 수, 소 수, 정 수, 양 수, 음 수, 나누어 떨어지는 수 인지 검사해 결과값을 돌려줍니다. 참(true) 또는 거짓(false) 값을 돌려줌.";
+Blockly.Msg.MATH_IS_WHOLE = "가 정수이면";
+Blockly.Msg.MATH_MODULO_HELPURL = "https://en.wikipedia.org/wiki/Modulo_operation";
+Blockly.Msg.MATH_MODULO_TITLE = "%1 ÷ %2의 나머지";
+Blockly.Msg.MATH_MODULO_TOOLTIP = "첫 번째 수를 두 번째 수로 나눈, 나머지 값을 돌려줍니다.";
+Blockly.Msg.MATH_MULTIPLICATION_SYMBOL = "x";
+Blockly.Msg.MATH_NUMBER_HELPURL = "https://en.wikipedia.org/wiki/Number";
+Blockly.Msg.MATH_NUMBER_TOOLTIP = "수";
+Blockly.Msg.MATH_ONLIST_HELPURL = "";
+Blockly.Msg.MATH_ONLIST_OPERATOR_AVERAGE = "평균값";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MAX = "최대값";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MEDIAN = "중간값";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MIN = "최소값";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MODE = "가장 여러 개 있는 값";
+Blockly.Msg.MATH_ONLIST_OPERATOR_RANDOM = "목록의 임의 항목";
+Blockly.Msg.MATH_ONLIST_OPERATOR_STD_DEV = "표준 편차";
+Blockly.Msg.MATH_ONLIST_OPERATOR_SUM = "합";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_AVERAGE = "리스트에 들어있는 수(값)들에 대해, 산술 평균(arithmetic mean) 한 값을 돌려줍니다.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MAX = "리스트에 들어있는 수(값) 들 중, 가장 큰(max) 수(값)를 돌려줍니다.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MEDIAN = "리스트에 들어있는 수(값) 들 중, 중간(median) 수(값)를 돌려줍니다.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MIN = "리스트에 들어있는 수(값) 들 중, 가장 작은(min) 수(값)를 돌려줍니다.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MODE = "리스트에 들어있는 아이템들 중에서, 가장 여러 번 들어있는 아이템들을 리스트로 만들어 돌려줍니다. (최빈값, modes)";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_RANDOM = "목록에서 임의의 아이템을 돌려줍니다.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_STD_DEV = "이 리스트의 표준 편차를 반환합니다.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_SUM = "리스트에 들어있는 수(값)들을, 모두 합(sum) 한, 총합(sum)을 돌려줍니다.";
+Blockly.Msg.MATH_POWER_SYMBOL = "^";
+Blockly.Msg.MATH_RANDOM_FLOAT_HELPURL = "https://en.wikipedia.org/wiki/Random_number_generation";
+Blockly.Msg.MATH_RANDOM_FLOAT_TITLE_RANDOM = "임의 분수";
+Blockly.Msg.MATH_RANDOM_FLOAT_TOOLTIP = "0.0 (포함)과 1.0 (배타적) 사이의 임의 분수 값을 돌려줍니다.";
+Blockly.Msg.MATH_RANDOM_INT_HELPURL = "https://en.wikipedia.org/wiki/Random_number_generation";
+Blockly.Msg.MATH_RANDOM_INT_TITLE = "랜덤정수(%1<= n <=%2)";
+Blockly.Msg.MATH_RANDOM_INT_TOOLTIP = "두 주어진 제한된 범위 사이의 임의 정수값을 돌려줍니다.";
+Blockly.Msg.MATH_ROUND_HELPURL = "https://en.wikipedia.org/wiki/Rounding";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUND = "반올림";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDDOWN = "버림";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDUP = "올림";
+Blockly.Msg.MATH_ROUND_TOOLTIP = "어떤 수를 반올림/올림/버림한 결과를, 정수값으로 돌려줍니다.";
+Blockly.Msg.MATH_SINGLE_HELPURL = "https://en.wikipedia.org/wiki/Square_root";
+Blockly.Msg.MATH_SINGLE_OP_ABSOLUTE = "절대값";
+Blockly.Msg.MATH_SINGLE_OP_ROOT = "제곱근";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ABS = "어떤 수의 절대값(absolute)을 계산한 결과를, 정수값으로 돌려줍니다.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_EXP = "e의 거듭제곱 값을 반환합니다.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LN = "어떤 수의, 자연로그(natural logarithm) 값을 돌려줍니다.(밑 e, 예시 log e x)";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LOG10 = "어떤 수의, 기본로그(logarithm) 값을 돌려줍니다.(밑 10, 예시 log 10 x)";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_NEG = "음(-)/양(+), 부호를 반대로 하여 값을 돌려줍니다.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_POW10 = "10의 거듭제곱 값을 반환합니다.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ROOT = "숫자의 제곱근을 반환합니다.";
+Blockly.Msg.MATH_SUBTRACTION_SYMBOL = "-";
+Blockly.Msg.MATH_TRIG_ACOS = "acos";
+Blockly.Msg.MATH_TRIG_ASIN = "asin";
+Blockly.Msg.MATH_TRIG_ATAN = "atan";
+Blockly.Msg.MATH_TRIG_COS = "cos";
+Blockly.Msg.MATH_TRIG_HELPURL = "https://en.wikipedia.org/wiki/Trigonometric_functions";
+Blockly.Msg.MATH_TRIG_SIN = "sin";
+Blockly.Msg.MATH_TRIG_TAN = "tan";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ACOS = "어떤 수에 대한, acos(arccosine) 값을 돌려줍니다.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ASIN = "어떤 수에 대한, asin(arcsine) 값을 돌려줍니다.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ATAN = "어떤 수에 대한, atan(arctangent) 값을 돌려줍니다.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_COS = "각도의 코사인을 반환합니다. (라디안 아님)";
+Blockly.Msg.MATH_TRIG_TOOLTIP_SIN = "각도의 사인을 반환합니다. (라디안 아님)";
+Blockly.Msg.MATH_TRIG_TOOLTIP_TAN = "각도의 탄젠트를 반환합니다. (라디안 아님)";
+Blockly.Msg.NEW_VARIABLE = "변수 만들기...";
+Blockly.Msg.NEW_VARIABLE_TITLE = "새 변수 이름:";
+Blockly.Msg.ORDINAL_NUMBER_SUFFIX = "";
+Blockly.Msg.PROCEDURES_ALLOW_STATEMENTS = "서술 허가";
+Blockly.Msg.PROCEDURES_BEFORE_PARAMS = "사용:";
+Blockly.Msg.PROCEDURES_CALLNORETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29";
+Blockly.Msg.PROCEDURES_CALLNORETURN_TOOLTIP = "미리 정의해 둔 '%1' 함수를 실행합니다.";
+Blockly.Msg.PROCEDURES_CALLRETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29";
+Blockly.Msg.PROCEDURES_CALLRETURN_TOOLTIP = "미리 정의해 둔 '%1' 함수를 실행하고, 함수를 실행한 결과 값을 돌려줍니다.";
+Blockly.Msg.PROCEDURES_CALL_BEFORE_PARAMS = "사용:";
+Blockly.Msg.PROCEDURES_CREATE_DO = "'%1' 생성";
+Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT = "이 함수를 설명하세요...";
+Blockly.Msg.PROCEDURES_DEFNORETURN_DO = "";
+Blockly.Msg.PROCEDURES_DEFNORETURN_HELPURL = "https://ko.wikipedia.org/wiki/%ED%95%A8%EC%88%98_%28%ED%94%84%EB%A1%9C%EA%B7%B8%EB%9E%98%EB%B0%8D%29";
+Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE = "함수 이름";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE = "함수";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TOOLTIP = "실행 후, 결과 값을 돌려주지 않는 함수를 만듭니다.";
+Blockly.Msg.PROCEDURES_DEFRETURN_HELPURL = "https://ko.wikipedia.org/wiki/%ED%95%A8%EC%88%98_%28%ED%94%84%EB%A1%9C%EA%B7%B8%EB%9E%98%EB%B0%8D%29";
+Blockly.Msg.PROCEDURES_DEFRETURN_RETURN = "다음을 돌려줌";
+Blockly.Msg.PROCEDURES_DEFRETURN_TOOLTIP = "실행 후, 결과 값을 돌려주는 함수를 만듭니다.";
+Blockly.Msg.PROCEDURES_DEF_DUPLICATE_WARNING = "경고: 이 함수에는, 같은 이름을 사용하는 매개 변수들이 있습니다.";
+Blockly.Msg.PROCEDURES_HIGHLIGHT_DEF = "함수 정의 찾기";
+Blockly.Msg.PROCEDURES_IFRETURN_HELPURL = "http://c2.com/cgi/wiki?GuardClause";
+Blockly.Msg.PROCEDURES_IFRETURN_TOOLTIP = "값이 참이라면, 두 번째 값을 반환합니다.";
+Blockly.Msg.PROCEDURES_IFRETURN_WARNING = "경고: 이 블럭은, 함수 정의 블럭 안에서만 사용할 수 있습니다.";
+Blockly.Msg.PROCEDURES_MUTATORARG_TITLE = "매개 변수:";
+Blockly.Msg.PROCEDURES_MUTATORARG_TOOLTIP = "함수에 값을 더합니다.";
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TITLE = "매개 변수들";
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TOOLTIP = "이 함수를 추가, 삭제, 혹은 재정렬합니다.";
+Blockly.Msg.REDO = "다시 실행";
+Blockly.Msg.REMOVE_COMMENT = "내용 제거";
+Blockly.Msg.RENAME_VARIABLE = "변수 이름 바꾸기:";
+Blockly.Msg.RENAME_VARIABLE_TITLE = "'%1' 변수 이름을 바꾸기:";
+Blockly.Msg.TEXT_APPEND_APPENDTEXT = "내용 덧붙이기";
+Blockly.Msg.TEXT_APPEND_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification";
+Blockly.Msg.TEXT_APPEND_TO = "다음";
+Blockly.Msg.TEXT_APPEND_TOOLTIP = "'%1' 변수의 끝에 일부 텍스트를 덧붙입니다.";
+Blockly.Msg.TEXT_CHANGECASE_HELPURL = "https://github.com/google/blockly/wiki/Text#adjusting-text-case";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_LOWERCASE = "소문자로";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_TITLECASE = "첫 문자만 대문자로";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_UPPERCASE = "대문자로";
+Blockly.Msg.TEXT_CHANGECASE_TOOLTIP = "영문 대소문자 형태를 변경해 돌려줍니다.";
+Blockly.Msg.TEXT_CHARAT_FIRST = "에서, 첫 번째 문자 얻기";
+Blockly.Msg.TEXT_CHARAT_FROM_END = "에서, 마지막부터 # 번째 위치의 문자 얻기";
+Blockly.Msg.TEXT_CHARAT_FROM_START = "에서, 앞에서부터 # 번째 위치의 문자 얻기";
+Blockly.Msg.TEXT_CHARAT_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-text";
+Blockly.Msg.TEXT_CHARAT_INPUT_INTEXT = "문장";
+Blockly.Msg.TEXT_CHARAT_LAST = "에서, 마지막 문자 얻기";
+Blockly.Msg.TEXT_CHARAT_RANDOM = "에서, 랜덤하게 한 문자 얻기";
+Blockly.Msg.TEXT_CHARAT_TAIL = "";
+Blockly.Msg.TEXT_CHARAT_TOOLTIP = "특정 번째 위치에서, 문자를 얻어내 돌려줍니다.";
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TOOLTIP = "텍스트에 항목을 추가합니다.";
+Blockly.Msg.TEXT_CREATE_JOIN_TITLE_JOIN = "가입";
+Blockly.Msg.TEXT_CREATE_JOIN_TOOLTIP = "섹션을 추가, 제거하거나 순서를 변경하여 이 텍스트 블럭을 재구성합니다.";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_END = "끝에서부터 # 번째 문자까지";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_START = "# 번째 문자까지";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_LAST = "마지막 문자까지";
+Blockly.Msg.TEXT_GET_SUBSTRING_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text";
+Blockly.Msg.TEXT_GET_SUBSTRING_INPUT_IN_TEXT = "문장";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FIRST = "에서, 처음부터 얻어냄";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_END = "에서, 마지막에서 # 번째부터 얻어냄";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_START = "에서, 처음부터 # 번째 문자부터 얻어냄";
+Blockly.Msg.TEXT_GET_SUBSTRING_TAIL = "";
+Blockly.Msg.TEXT_GET_SUBSTRING_TOOLTIP = "문장 중 일부를 얻어내 돌려줍니다.";
+Blockly.Msg.TEXT_INDEXOF_HELPURL = "https://github.com/google/blockly/wiki/Text#finding-text";
+Blockly.Msg.TEXT_INDEXOF_INPUT_INTEXT = "문장";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_FIRST = "에서 다음 문장이 처음으로 나타난 위치 찾기 :";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_LAST = "에서 다음 문장이 마지막으로 나타난 위치 찾기 :";
+Blockly.Msg.TEXT_INDEXOF_TAIL = "";
+Blockly.Msg.TEXT_INDEXOF_TOOLTIP = "두 번째 텍스트에서 첫 번째 텍스트가 처음 또는 마지막으로 발생한 색인 위치를 반환합니다. 텍스트가 없으면 %1을 반환합니다.";
+Blockly.Msg.TEXT_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Text#checking-for-empty-text";
+Blockly.Msg.TEXT_ISEMPTY_TITLE = "%1이 비어 있습니다";
+Blockly.Msg.TEXT_ISEMPTY_TOOLTIP = "입력된 문장이, 빈 문장(\"\")이면 참(true) 값을 돌려줍니다.";
+Blockly.Msg.TEXT_JOIN_HELPURL = "https://github.com/google/blockly/wiki/Text#text-creation";
+Blockly.Msg.TEXT_JOIN_TITLE_CREATEWITH = "텍스트 만들기";
+Blockly.Msg.TEXT_JOIN_TOOLTIP = "여러 개의 아이템들을 연결해(묶어), 새로운 문장을 만듭니다.";
+Blockly.Msg.TEXT_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification";
+Blockly.Msg.TEXT_LENGTH_TITLE = "다음 문장의 문자 개수 %1";
+Blockly.Msg.TEXT_LENGTH_TOOLTIP = "입력된 문장의, 문자 개수를 돌려줍니다.(공백문자 포함)";
+Blockly.Msg.TEXT_PRINT_HELPURL = "https://github.com/google/blockly/wiki/Text#printing-text";
+Blockly.Msg.TEXT_PRINT_TITLE = "다음 내용 출력 %1";
+Blockly.Msg.TEXT_PRINT_TOOLTIP = "원하는 문장, 수, 값 등을 출력합니다.";
+Blockly.Msg.TEXT_PROMPT_HELPURL = "https://github.com/google/blockly/wiki/Text#getting-input-from-the-user";
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_NUMBER = "수에 대해 사용자의 입력을 받습니다.";
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_TEXT = "문장에 대해 사용자의 입력을 받습니다.";
+Blockly.Msg.TEXT_PROMPT_TYPE_NUMBER = "메시지를 활용해 수 입력";
+Blockly.Msg.TEXT_PROMPT_TYPE_TEXT = "메시지를 활용해 문장 입력";
+Blockly.Msg.TEXT_TEXT_HELPURL = "https://en.wikipedia.org/wiki/String_(computer_science)";
+Blockly.Msg.TEXT_TEXT_TOOLTIP = "문자, 단어, 문장.";
+Blockly.Msg.TEXT_TRIM_HELPURL = "https://github.com/google/blockly/wiki/Text#trimming-removing-spaces";
+Blockly.Msg.TEXT_TRIM_OPERATOR_BOTH = "양쪽의 공백 문자 제거";
+Blockly.Msg.TEXT_TRIM_OPERATOR_LEFT = "왼쪽의 공백 문자 제거";
+Blockly.Msg.TEXT_TRIM_OPERATOR_RIGHT = "오른쪽의 공백 문자 제거";
+Blockly.Msg.TEXT_TRIM_TOOLTIP = "문장의 왼쪽/오른쪽/양쪽에서 스페이스 문자를 제거해 돌려줍니다.";
+Blockly.Msg.TODAY = "오늘";
+Blockly.Msg.UNDO = "실행 취소";
+Blockly.Msg.VARIABLES_DEFAULT_NAME = "항목";
+Blockly.Msg.VARIABLES_GET_CREATE_SET = "'집합 %1' 생성";
+Blockly.Msg.VARIABLES_GET_HELPURL = "https://ko.wikipedia.org/wiki/%EB%B3%80%EC%88%98_(%EC%BB%B4%ED%93%A8%ED%84%B0_%EA%B3%BC%ED%95%99)";
+Blockly.Msg.VARIABLES_GET_TOOLTIP = "변수에 저장 되어있는 값을 돌려줍니다.";
+Blockly.Msg.VARIABLES_SET = "%1를 %2로 설정";
+Blockly.Msg.VARIABLES_SET_CREATE_GET = "'%1 값 읽기' 블럭 생성";
+Blockly.Msg.VARIABLES_SET_HELPURL = "https://ko.wikipedia.org/wiki/%EB%B3%80%EC%88%98_(%EC%BB%B4%ED%93%A8%ED%84%B0_%EA%B3%BC%ED%95%99)";
+Blockly.Msg.VARIABLES_SET_TOOLTIP = "변수의 값을 입력한 값으로 변경해 줍니다.";
+Blockly.Msg.VARIABLE_ALREADY_EXISTS = "'%1' 변수는 이미 존재합니다.";
+Blockly.Msg.PROCEDURES_DEFRETURN_TITLE = Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE;
+Blockly.Msg.CONTROLS_IF_IF_TITLE_IF = Blockly.Msg.CONTROLS_IF_MSG_IF;
+Blockly.Msg.CONTROLS_WHILEUNTIL_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_MSG_THEN = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_ELSE_TITLE_ELSE = Blockly.Msg.CONTROLS_IF_MSG_ELSE;
+Blockly.Msg.PROCEDURES_DEFRETURN_PROCEDURE = Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE;
+Blockly.Msg.LISTS_GET_SUBLIST_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.LISTS_GET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.PROCEDURES_DEFRETURN_DO = Blockly.Msg.PROCEDURES_DEFNORETURN_DO;
+Blockly.Msg.CONTROLS_IF_ELSEIF_TITLE_ELSEIF = Blockly.Msg.CONTROLS_IF_MSG_ELSEIF;
+Blockly.Msg.LISTS_GET_INDEX_HELPURL = Blockly.Msg.LISTS_INDEX_OF_HELPURL;
+Blockly.Msg.CONTROLS_FOREACH_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_SET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TITLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_APPEND_VARIABLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.LISTS_INDEX_OF_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.PROCEDURES_DEFRETURN_COMMENT = Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT; \ No newline at end of file
diff --git a/blockly/msg/js/lb.js b/blockly/msg/js/lb.js
new file mode 100644
index 0000000..57ad273
--- /dev/null
+++ b/blockly/msg/js/lb.js
@@ -0,0 +1,391 @@
+// This file was automatically generated. Do not modify.
+
+'use strict';
+
+goog.provide('Blockly.Msg.lb');
+
+goog.require('Blockly.Msg');
+
+Blockly.Msg.ADD_COMMENT = "Bemierkung derbäisetzen";
+Blockly.Msg.CHANGE_VALUE_TITLE = "Wäert änneren:";
+Blockly.Msg.CLEAN_UP = "Bléck opraumen";
+Blockly.Msg.COLLAPSE_ALL = "Bléck zesummeklappen";
+Blockly.Msg.COLLAPSE_BLOCK = "Block zesummeklappen";
+Blockly.Msg.COLOUR_BLEND_COLOUR1 = "Faarf 1";
+Blockly.Msg.COLOUR_BLEND_COLOUR2 = "Faarf 2";
+Blockly.Msg.COLOUR_BLEND_HELPURL = "http://meyerweb.com/eric/tools/color-blend/"; // untranslated
+Blockly.Msg.COLOUR_BLEND_RATIO = "ratio";
+Blockly.Msg.COLOUR_BLEND_TITLE = "mëschen";
+Blockly.Msg.COLOUR_BLEND_TOOLTIP = "Blends two colours together with a given ratio (0.0 - 1.0)."; // untranslated
+Blockly.Msg.COLOUR_PICKER_HELPURL = "https://en.wikipedia.org/wiki/Color"; // untranslated
+Blockly.Msg.COLOUR_PICKER_TOOLTIP = "Sicht eng Faarf an der Palette eraus.";
+Blockly.Msg.COLOUR_RANDOM_HELPURL = "http://randomcolour.com"; // untranslated
+Blockly.Msg.COLOUR_RANDOM_TITLE = "zoufälleg Faarf";
+Blockly.Msg.COLOUR_RANDOM_TOOLTIP = "Eng zoufälleg Faarf eraussichen.";
+Blockly.Msg.COLOUR_RGB_BLUE = "blo";
+Blockly.Msg.COLOUR_RGB_GREEN = "gréng";
+Blockly.Msg.COLOUR_RGB_HELPURL = "http://www.december.com/html/spec/colorper.html"; // untranslated
+Blockly.Msg.COLOUR_RGB_RED = "rout";
+Blockly.Msg.COLOUR_RGB_TITLE = "fierwe mat";
+Blockly.Msg.COLOUR_RGB_TOOLTIP = "Create a colour with the specified amount of red, green, and blue. All values must be between 0 and 100."; // untranslated
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_HELPURL = "https://github.com/google/blockly/wiki/Loops#loop-termination-blocks"; // untranslated
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK = "break out of loop"; // untranslated
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE = "continue with next iteration of loop"; // untranslated
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK = "Break out of the containing loop."; // untranslated
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE = "Skip the rest of this loop, and continue with the next iteration."; // untranslated
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_WARNING = "Warning: This block may only be used within a loop."; // untranslated
+Blockly.Msg.CONTROLS_FOREACH_HELPURL = "https://github.com/google/blockly/wiki/Loops#for-each"; // untranslated
+Blockly.Msg.CONTROLS_FOREACH_TITLE = "fir all Element %1 an der Lëscht %2";
+Blockly.Msg.CONTROLS_FOREACH_TOOLTIP = "For each item in a list, set the variable '%1' to the item, and then do some statements."; // untranslated
+Blockly.Msg.CONTROLS_FOR_HELPURL = "https://github.com/google/blockly/wiki/Loops#count-with"; // untranslated
+Blockly.Msg.CONTROLS_FOR_TITLE = "zielt mat %1 vun %2 bis %3 mat %4";
+Blockly.Msg.CONTROLS_FOR_TOOLTIP = "Have the variable '%1' take on the values from the start number to the end number, counting by the specified interval, and do the specified blocks."; // untranslated
+Blockly.Msg.CONTROLS_IF_ELSEIF_TOOLTIP = "Add a condition to the if block."; // untranslated
+Blockly.Msg.CONTROLS_IF_ELSE_TOOLTIP = "Add a final, catch-all condition to the if block."; // untranslated
+Blockly.Msg.CONTROLS_IF_HELPURL = "https://github.com/google/blockly/wiki/IfElse"; // untranslated
+Blockly.Msg.CONTROLS_IF_IF_TOOLTIP = "Add, remove, or reorder sections to reconfigure this if block."; // untranslated
+Blockly.Msg.CONTROLS_IF_MSG_ELSE = "soss";
+Blockly.Msg.CONTROLS_IF_MSG_ELSEIF = "else if"; // untranslated
+Blockly.Msg.CONTROLS_IF_MSG_IF = "wann";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_1 = "If a value is true, then do some statements."; // untranslated
+Blockly.Msg.CONTROLS_IF_TOOLTIP_2 = "If a value is true, then do the first block of statements. Otherwise, do the second block of statements."; // untranslated
+Blockly.Msg.CONTROLS_IF_TOOLTIP_3 = "If the first value is true, then do the first block of statements. Otherwise, if the second value is true, do the second block of statements."; // untranslated
+Blockly.Msg.CONTROLS_IF_TOOLTIP_4 = "If the first value is true, then do the first block of statements. Otherwise, if the second value is true, do the second block of statements. If none of the values are true, do the last block of statements."; // untranslated
+Blockly.Msg.CONTROLS_REPEAT_HELPURL = "https://en.wikipedia.org/wiki/For_loop"; // untranslated
+Blockly.Msg.CONTROLS_REPEAT_INPUT_DO = "maach";
+Blockly.Msg.CONTROLS_REPEAT_TITLE = "%1-mol widderhuelen";
+Blockly.Msg.CONTROLS_REPEAT_TOOLTIP = "Do some statements several times."; // untranslated
+Blockly.Msg.CONTROLS_WHILEUNTIL_HELPURL = "https://github.com/google/blockly/wiki/Loops#repeat"; // untranslated
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "widderhuele bis";
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "Widderhuel soulaang";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "Féiert d'Uweisungen aus, soulaang wéi de Wäert falsch ass.";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "Féiert d'Uweisungen aus, soulaang wéi de Wäert richteg ass";
+Blockly.Msg.DELETE_ALL_BLOCKS = "Delete all %1 blocks?"; // untranslated
+Blockly.Msg.DELETE_BLOCK = "Block läschen";
+Blockly.Msg.DELETE_VARIABLE = "Delete the '%1' variable"; // untranslated
+Blockly.Msg.DELETE_VARIABLE_CONFIRMATION = "Delete %1 uses of the '%2' variable?"; // untranslated
+Blockly.Msg.DELETE_X_BLOCKS = "%1 Bléck läschen";
+Blockly.Msg.DISABLE_BLOCK = "Block desaktivéieren";
+Blockly.Msg.DUPLICATE_BLOCK = "Eng Kopie maachen";
+Blockly.Msg.ENABLE_BLOCK = "Block aktivéieren";
+Blockly.Msg.EXPAND_ALL = "Bléck opklappen";
+Blockly.Msg.EXPAND_BLOCK = "Block opklappen";
+Blockly.Msg.EXTERNAL_INPUTS = "External Inputs"; // untranslated
+Blockly.Msg.HELP = "Hëllef";
+Blockly.Msg.INLINE_INPUTS = "Inline Inputs"; // untranslated
+Blockly.Msg.LISTS_CREATE_EMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-empty-list"; // untranslated
+Blockly.Msg.LISTS_CREATE_EMPTY_TITLE = "create empty list"; // untranslated
+Blockly.Msg.LISTS_CREATE_EMPTY_TOOLTIP = "Returns a list, of length 0, containing no data records"; // untranslated
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TITLE_ADD = "Lëscht";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TOOLTIP = "Add, remove, or reorder sections to reconfigure this list block."; // untranslated
+Blockly.Msg.LISTS_CREATE_WITH_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
+Blockly.Msg.LISTS_CREATE_WITH_INPUT_WITH = "create list with"; // untranslated
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TOOLTIP = "En Element op d'Lëscht derbäisetzen.";
+Blockly.Msg.LISTS_CREATE_WITH_TOOLTIP = "Create a list with any number of items."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_FIRST = "éischt";
+Blockly.Msg.LISTS_GET_INDEX_FROM_END = "# vun hannen";
+Blockly.Msg.LISTS_GET_INDEX_FROM_START = "#";
+Blockly.Msg.LISTS_GET_INDEX_GET = "get"; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_GET_REMOVE = "get and remove"; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_LAST = "lescht";
+Blockly.Msg.LISTS_GET_INDEX_RANDOM = "Zoufall";
+Blockly.Msg.LISTS_GET_INDEX_REMOVE = "ewechhuelen";
+Blockly.Msg.LISTS_GET_INDEX_TAIL = ""; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FIRST = "Returns the first item in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FROM = "Returns the item at the specified position in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_LAST = "Returns the last item in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_RANDOM = "Schéckt en zoufällegt Element aus enger Lëscht zréck.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST = "Removes and returns the first item in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM = "Removes and returns the item at the specified position in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST = "Removes and returns the last item in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM = "Removes and returns a random item in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST = "Removes the first item in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM = "Removes the item at the specified position in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST = "Hëlt dat lescht Element aus enger Lëscht eraus.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM = "Hëlt en zoufällegt Element aus enger Lëscht eraus.";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_END = "to # from end"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_START = "to #"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_END_LAST = "to last"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-a-sublist"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_START_FIRST = "get sub-list from first"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_END = "get sub-list from # from end"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_START = "get sub-list from #"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_TAIL = ""; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_TOOLTIP = "Creates a copy of the specified portion of a list."; // untranslated
+Blockly.Msg.LISTS_INDEX_FROM_END_TOOLTIP = "%1 ass dat éischt Element.";
+Blockly.Msg.LISTS_INDEX_FROM_START_TOOLTIP = "%1 ass dat éischt Element.";
+Blockly.Msg.LISTS_INDEX_OF_FIRST = "find first occurrence of item"; // untranslated
+Blockly.Msg.LISTS_INDEX_OF_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-items-from-a-list"; // untranslated
+Blockly.Msg.LISTS_INDEX_OF_LAST = "find last occurrence of item"; // untranslated
+Blockly.Msg.LISTS_INDEX_OF_TOOLTIP = "Returns the index of the first/last occurrence of the item in the list. Returns %1 if item is not found."; // untranslated
+Blockly.Msg.LISTS_INLIST = "an der Lëscht";
+Blockly.Msg.LISTS_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#is-empty"; // untranslated
+Blockly.Msg.LISTS_ISEMPTY_TITLE = "%1 ass eidel";
+Blockly.Msg.LISTS_ISEMPTY_TOOLTIP = "Returns true if the list is empty."; // untranslated
+Blockly.Msg.LISTS_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Lists#length-of"; // untranslated
+Blockly.Msg.LISTS_LENGTH_TITLE = "Längt vu(n) %1";
+Blockly.Msg.LISTS_LENGTH_TOOLTIP = "Returns the length of a list."; // untranslated
+Blockly.Msg.LISTS_REPEAT_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
+Blockly.Msg.LISTS_REPEAT_TITLE = "create list with item %1 repeated %2 times"; // untranslated
+Blockly.Msg.LISTS_REPEAT_TOOLTIP = "Creates a list consisting of the given value repeated the specified number of times."; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_HELPURL = "https://github.com/google/blockly/wiki/Lists#in-list--set"; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_INPUT_TO = "als";
+Blockly.Msg.LISTS_SET_INDEX_INSERT = "asetzen op";
+Blockly.Msg.LISTS_SET_INDEX_SET = "set"; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST = "Inserts the item at the start of a list."; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FROM = "Inserts the item at the specified position in a list."; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_LAST = "Setzt d'Element um Enn vun enger Lëscht derbäi.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM = "Setzt d'Element op eng zoufälleg Plaz an d'Lëscht derbäi.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FIRST = "Sets the first item in a list."; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FROM = "Sets the item at the specified position in a list."; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_LAST = "Sets the last item in a list."; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_RANDOM = "Setzt en zoufällegt Element an eng Lëscht.";
+Blockly.Msg.LISTS_SORT_HELPURL = "https://github.com/google/blockly/wiki/Lists#sorting-a-list"; // untranslated
+Blockly.Msg.LISTS_SORT_ORDER_ASCENDING = "ascending"; // untranslated
+Blockly.Msg.LISTS_SORT_ORDER_DESCENDING = "descending"; // untranslated
+Blockly.Msg.LISTS_SORT_TITLE = "sort %1 %2 %3"; // untranslated
+Blockly.Msg.LISTS_SORT_TOOLTIP = "Sort a copy of a list."; // untranslated
+Blockly.Msg.LISTS_SORT_TYPE_IGNORECASE = "alphabetic, ignore case"; // untranslated
+Blockly.Msg.LISTS_SORT_TYPE_NUMERIC = "numeresch";
+Blockly.Msg.LISTS_SORT_TYPE_TEXT = "alphabetesch";
+Blockly.Msg.LISTS_SPLIT_HELPURL = "https://github.com/google/blockly/wiki/Lists#splitting-strings-and-joining-lists"; // untranslated
+Blockly.Msg.LISTS_SPLIT_LIST_FROM_TEXT = "make list from text"; // untranslated
+Blockly.Msg.LISTS_SPLIT_TEXT_FROM_LIST = "make text from list"; // untranslated
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_JOIN = "Join a list of texts into one text, separated by a delimiter."; // untranslated
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_SPLIT = "Split text into a list of texts, breaking at each delimiter."; // untranslated
+Blockly.Msg.LISTS_SPLIT_WITH_DELIMITER = "with delimiter"; // untranslated
+Blockly.Msg.LOGIC_BOOLEAN_FALSE = "falsch";
+Blockly.Msg.LOGIC_BOOLEAN_HELPURL = "https://github.com/google/blockly/wiki/Logic#values"; // untranslated
+Blockly.Msg.LOGIC_BOOLEAN_TOOLTIP = "Schéckt entweder richteg oder falsch zréck.";
+Blockly.Msg.LOGIC_BOOLEAN_TRUE = "wouer";
+Blockly.Msg.LOGIC_COMPARE_HELPURL = "https://en.wikipedia.org/wiki/Inequality_(mathematics)"; // untranslated
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_EQ = "Return true if both inputs equal each other."; // untranslated
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GT = "Return true if the first input is greater than the second input."; // untranslated
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GTE = "Return true if the first input is greater than or equal to the second input."; // untranslated
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LT = "Return true if the first input is smaller than the second input."; // untranslated
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LTE = "Return true if the first input is smaller than or equal to the second input."; // untranslated
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_NEQ = "Return true if both inputs are not equal to each other."; // untranslated
+Blockly.Msg.LOGIC_NEGATE_HELPURL = "https://github.com/google/blockly/wiki/Logic#not"; // untranslated
+Blockly.Msg.LOGIC_NEGATE_TITLE = "net %1";
+Blockly.Msg.LOGIC_NEGATE_TOOLTIP = "Returns true if the input is false. Returns false if the input is true."; // untranslated
+Blockly.Msg.LOGIC_NULL = "null";
+Blockly.Msg.LOGIC_NULL_HELPURL = "https://en.wikipedia.org/wiki/Nullable_type"; // untranslated
+Blockly.Msg.LOGIC_NULL_TOOLTIP = "Returns null."; // untranslated
+Blockly.Msg.LOGIC_OPERATION_AND = "an";
+Blockly.Msg.LOGIC_OPERATION_HELPURL = "https://github.com/google/blockly/wiki/Logic#logical-operations"; // untranslated
+Blockly.Msg.LOGIC_OPERATION_OR = "oder";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_AND = "Return true if both inputs are true."; // untranslated
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_OR = "Return true if at least one of the inputs is true."; // untranslated
+Blockly.Msg.LOGIC_TERNARY_CONDITION = "Test";
+Blockly.Msg.LOGIC_TERNARY_HELPURL = "https://en.wikipedia.org/wiki/%3F:";
+Blockly.Msg.LOGIC_TERNARY_IF_FALSE = "wa falsch";
+Blockly.Msg.LOGIC_TERNARY_IF_TRUE = "wa wouer";
+Blockly.Msg.LOGIC_TERNARY_TOOLTIP = "Check the condition in 'test'. If the condition is true, returns the 'if true' value; otherwise returns the 'if false' value."; // untranslated
+Blockly.Msg.MATH_ADDITION_SYMBOL = "+"; // untranslated
+Blockly.Msg.MATH_ARITHMETIC_HELPURL = "https://en.wikipedia.org/wiki/Arithmetic"; // untranslated
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_ADD = "Den Total vun den zwou Zuelen zréckginn.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE = "Return the quotient of the two numbers."; // untranslated
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MINUS = "Return the difference of the two numbers."; // untranslated
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MULTIPLY = "D'Produkt vun den zwou Zuelen zréckginn.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_POWER = "Return the first number raised to the power of the second number."; // untranslated
+Blockly.Msg.MATH_CHANGE_HELPURL = "https://en.wikipedia.org/wiki/Programming_idiom#Incrementing_a_counter"; // untranslated
+Blockly.Msg.MATH_CHANGE_TITLE = "änneren %1 ëm %2";
+Blockly.Msg.MATH_CHANGE_TOOLTIP = "Add a number to variable '%1'."; // untranslated
+Blockly.Msg.MATH_CONSTANT_HELPURL = "https://en.wikipedia.org/wiki/Mathematical_constant"; // untranslated
+Blockly.Msg.MATH_CONSTANT_TOOLTIP = "Return one of the common constants: π (3.141…), e (2.718…), φ (1.618…), sqrt(2) (1.414…), sqrt(½) (0.707…), or ∞ (infinity)."; // untranslated
+Blockly.Msg.MATH_CONSTRAIN_HELPURL = "https://en.wikipedia.org/wiki/Clamping_%28graphics%29"; // untranslated
+Blockly.Msg.MATH_CONSTRAIN_TITLE = "constrain %1 low %2 high %3"; // untranslated
+Blockly.Msg.MATH_CONSTRAIN_TOOLTIP = "Constrain a number to be between the specified limits (inclusive)."; // untranslated
+Blockly.Msg.MATH_DIVISION_SYMBOL = "÷"; // untranslated
+Blockly.Msg.MATH_IS_DIVISIBLE_BY = "is divisible by"; // untranslated
+Blockly.Msg.MATH_IS_EVEN = "ass gerued";
+Blockly.Msg.MATH_IS_NEGATIVE = "ass negativ";
+Blockly.Msg.MATH_IS_ODD = "ass ongerued";
+Blockly.Msg.MATH_IS_POSITIVE = "ass positiv";
+Blockly.Msg.MATH_IS_PRIME = "ass eng Primzuel";
+Blockly.Msg.MATH_IS_TOOLTIP = "Check if a number is an even, odd, prime, whole, positive, negative, or if it is divisible by certain number. Returns true or false."; // untranslated
+Blockly.Msg.MATH_IS_WHOLE = "ass eng ganz Zuel";
+Blockly.Msg.MATH_MODULO_HELPURL = "https://en.wikipedia.org/wiki/Modulo_operation"; // untranslated
+Blockly.Msg.MATH_MODULO_TITLE = "Rescht vu(n) %1 ÷ %2";
+Blockly.Msg.MATH_MODULO_TOOLTIP = "Return the remainder from dividing the two numbers."; // untranslated
+Blockly.Msg.MATH_MULTIPLICATION_SYMBOL = "×"; // untranslated
+Blockly.Msg.MATH_NUMBER_HELPURL = "https://en.wikipedia.org/wiki/Number"; // untranslated
+Blockly.Msg.MATH_NUMBER_TOOLTIP = "Eng Zuel.";
+Blockly.Msg.MATH_ONLIST_HELPURL = ""; // untranslated
+Blockly.Msg.MATH_ONLIST_OPERATOR_AVERAGE = "Moyenne vun der Lëscht";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MAX = "Maximum aus der Lëscht";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MEDIAN = "median of list"; // untranslated
+Blockly.Msg.MATH_ONLIST_OPERATOR_MIN = "min of list"; // untranslated
+Blockly.Msg.MATH_ONLIST_OPERATOR_MODE = "modes of list"; // untranslated
+Blockly.Msg.MATH_ONLIST_OPERATOR_RANDOM = "zoufällegt Element vun enger Lëscht";
+Blockly.Msg.MATH_ONLIST_OPERATOR_STD_DEV = "standard deviation of list"; // untranslated
+Blockly.Msg.MATH_ONLIST_OPERATOR_SUM = "sum of list"; // untranslated
+Blockly.Msg.MATH_ONLIST_TOOLTIP_AVERAGE = "Return the average (arithmetic mean) of the numeric values in the list."; // untranslated
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MAX = "Schéckt de gréisste Wäert aus enger Lëscht zréck.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MEDIAN = "Return the median number in the list."; // untranslated
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MIN = "Return the smallest number in the list."; // untranslated
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MODE = "Return a list of the most common item(s) in the list."; // untranslated
+Blockly.Msg.MATH_ONLIST_TOOLTIP_RANDOM = "Return a random element from the list."; // untranslated
+Blockly.Msg.MATH_ONLIST_TOOLTIP_STD_DEV = "Return the standard deviation of the list."; // untranslated
+Blockly.Msg.MATH_ONLIST_TOOLTIP_SUM = "Return the sum of all the numbers in the list."; // untranslated
+Blockly.Msg.MATH_POWER_SYMBOL = "^"; // untranslated
+Blockly.Msg.MATH_RANDOM_FLOAT_HELPURL = "https://en.wikipedia.org/wiki/Random_number_generation"; // untranslated
+Blockly.Msg.MATH_RANDOM_FLOAT_TITLE_RANDOM = "random fraction"; // untranslated
+Blockly.Msg.MATH_RANDOM_FLOAT_TOOLTIP = "Return a random fraction between 0.0 (inclusive) and 1.0 (exclusive)."; // untranslated
+Blockly.Msg.MATH_RANDOM_INT_HELPURL = "https://en.wikipedia.org/wiki/Random_number_generation"; // untranslated
+Blockly.Msg.MATH_RANDOM_INT_TITLE = "zoufälleg ganz Zuel tëscht %1 a(n) %2";
+Blockly.Msg.MATH_RANDOM_INT_TOOLTIP = "Return a random integer between the two specified limits, inclusive."; // untranslated
+Blockly.Msg.MATH_ROUND_HELPURL = "https://en.wikipedia.org/wiki/Rounding"; // untranslated
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUND = "opronnen";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDDOWN = "ofrënnen";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDUP = "oprënnen";
+Blockly.Msg.MATH_ROUND_TOOLTIP = "Eng Zuel op- oder ofrënnen.";
+Blockly.Msg.MATH_SINGLE_HELPURL = "https://lb.wikipedia.org/wiki/Racine carrée";
+Blockly.Msg.MATH_SINGLE_OP_ABSOLUTE = "absolut";
+Blockly.Msg.MATH_SINGLE_OP_ROOT = "Quadratwuerzel";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ABS = "Return the absolute value of a number."; // untranslated
+Blockly.Msg.MATH_SINGLE_TOOLTIP_EXP = "Return e to the power of a number."; // untranslated
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LN = "Return the natural logarithm of a number."; // untranslated
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LOG10 = "Return the base 10 logarithm of a number."; // untranslated
+Blockly.Msg.MATH_SINGLE_TOOLTIP_NEG = "Return the negation of a number."; // untranslated
+Blockly.Msg.MATH_SINGLE_TOOLTIP_POW10 = "Return 10 to the power of a number."; // untranslated
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ROOT = "Return the square root of a number."; // untranslated
+Blockly.Msg.MATH_SUBTRACTION_SYMBOL = "-"; // untranslated
+Blockly.Msg.MATH_TRIG_ACOS = "acos"; // untranslated
+Blockly.Msg.MATH_TRIG_ASIN = "asin"; // untranslated
+Blockly.Msg.MATH_TRIG_ATAN = "atan"; // untranslated
+Blockly.Msg.MATH_TRIG_COS = "cos"; // untranslated
+Blockly.Msg.MATH_TRIG_HELPURL = "https://en.wikipedia.org/wiki/Trigonometric_functions"; // untranslated
+Blockly.Msg.MATH_TRIG_SIN = "sin"; // untranslated
+Blockly.Msg.MATH_TRIG_TAN = "tan"; // untranslated
+Blockly.Msg.MATH_TRIG_TOOLTIP_ACOS = "Return the arccosine of a number."; // untranslated
+Blockly.Msg.MATH_TRIG_TOOLTIP_ASIN = "Return the arcsine of a number."; // untranslated
+Blockly.Msg.MATH_TRIG_TOOLTIP_ATAN = "Return the arctangent of a number."; // untranslated
+Blockly.Msg.MATH_TRIG_TOOLTIP_COS = "Return the cosine of a degree (not radian)."; // untranslated
+Blockly.Msg.MATH_TRIG_TOOLTIP_SIN = "Return the sine of a degree (not radian)."; // untranslated
+Blockly.Msg.MATH_TRIG_TOOLTIP_TAN = "Return the tangent of a degree (not radian)."; // untranslated
+Blockly.Msg.NEW_VARIABLE = "Variabel uleeën...";
+Blockly.Msg.NEW_VARIABLE_TITLE = "Neie variabelen Numm:";
+Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; // untranslated
+Blockly.Msg.PROCEDURES_ALLOW_STATEMENTS = "allow statements"; // untranslated
+Blockly.Msg.PROCEDURES_BEFORE_PARAMS = "mat:";
+Blockly.Msg.PROCEDURES_CALLNORETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_CALLNORETURN_TOOLTIP = "Run the user-defined function '%1'."; // untranslated
+Blockly.Msg.PROCEDURES_CALLRETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_CALLRETURN_TOOLTIP = "Run the user-defined function '%1' and use its output."; // untranslated
+Blockly.Msg.PROCEDURES_CALL_BEFORE_PARAMS = "mat:";
+Blockly.Msg.PROCEDURES_CREATE_DO = "Create '%1'"; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT = "Dës Funktioun beschreiwen...";
+Blockly.Msg.PROCEDURES_DEFNORETURN_DO = ""; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE = "eppes maachen";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE = "to"; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_TOOLTIP = "Creates a function with no output."; // untranslated
+Blockly.Msg.PROCEDURES_DEFRETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_DEFRETURN_RETURN = "zréck";
+Blockly.Msg.PROCEDURES_DEFRETURN_TOOLTIP = "Creates a function with an output."; // untranslated
+Blockly.Msg.PROCEDURES_DEF_DUPLICATE_WARNING = "Warning: This function has duplicate parameters."; // untranslated
+Blockly.Msg.PROCEDURES_HIGHLIGHT_DEF = "Highlight function definition"; // untranslated
+Blockly.Msg.PROCEDURES_IFRETURN_HELPURL = "http://c2.com/cgi/wiki?GuardClause"; // untranslated
+Blockly.Msg.PROCEDURES_IFRETURN_TOOLTIP = "If a value is true, then return a second value."; // untranslated
+Blockly.Msg.PROCEDURES_IFRETURN_WARNING = "Warning: This block may be used only within a function definition."; // untranslated
+Blockly.Msg.PROCEDURES_MUTATORARG_TITLE = "input name:"; // untranslated
+Blockly.Msg.PROCEDURES_MUTATORARG_TOOLTIP = "Add an input to the function."; // untranslated
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TITLE = "inputs"; // untranslated
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TOOLTIP = "Add, remove, or reorder inputs to this function."; // untranslated
+Blockly.Msg.REDO = "Widderhuelen";
+Blockly.Msg.REMOVE_COMMENT = "Bemierkung ewechhuelen";
+Blockly.Msg.RENAME_VARIABLE = "Variabel ëmbenennen...";
+Blockly.Msg.RENAME_VARIABLE_TITLE = "All '%1' Variabelen ëmbenennen op:";
+Blockly.Msg.TEXT_APPEND_APPENDTEXT = "Text drunhänken";
+Blockly.Msg.TEXT_APPEND_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_APPEND_TO = "to"; // untranslated
+Blockly.Msg.TEXT_APPEND_TOOLTIP = "Append some text to variable '%1'."; // untranslated
+Blockly.Msg.TEXT_CHANGECASE_HELPURL = "https://github.com/google/blockly/wiki/Text#adjusting-text-case"; // untranslated
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_LOWERCASE = "to lower case"; // untranslated
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_TITLECASE = "to Title Case"; // untranslated
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_UPPERCASE = "to UPPER CASE"; // untranslated
+Blockly.Msg.TEXT_CHANGECASE_TOOLTIP = "Return a copy of the text in a different case."; // untranslated
+Blockly.Msg.TEXT_CHARAT_FIRST = "get first letter"; // untranslated
+Blockly.Msg.TEXT_CHARAT_FROM_END = "get letter # from end"; // untranslated
+Blockly.Msg.TEXT_CHARAT_FROM_START = "get letter #"; // untranslated
+Blockly.Msg.TEXT_CHARAT_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-text"; // untranslated
+Blockly.Msg.TEXT_CHARAT_INPUT_INTEXT = "am Text";
+Blockly.Msg.TEXT_CHARAT_LAST = "get last letter"; // untranslated
+Blockly.Msg.TEXT_CHARAT_RANDOM = "get random letter"; // untranslated
+Blockly.Msg.TEXT_CHARAT_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_CHARAT_TOOLTIP = "Returns the letter at the specified position."; // untranslated
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TOOLTIP = "En Element bei den Text derbäisetzen.";
+Blockly.Msg.TEXT_CREATE_JOIN_TITLE_JOIN = "join"; // untranslated
+Blockly.Msg.TEXT_CREATE_JOIN_TOOLTIP = "Add, remove, or reorder sections to reconfigure this text block."; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_END = "to letter # from end"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_START = "bis bei de Buschtaf #";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_LAST = "bis bei de leschte Buschtaw";
+Blockly.Msg.TEXT_GET_SUBSTRING_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_INPUT_IN_TEXT = "am Text";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FIRST = "get substring from first letter"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_END = "get substring from letter # from end"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_START = "get substring from letter #"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_TOOLTIP = "Returns a specified portion of the text."; // untranslated
+Blockly.Msg.TEXT_INDEXOF_HELPURL = "https://github.com/google/blockly/wiki/Text#finding-text"; // untranslated
+Blockly.Msg.TEXT_INDEXOF_INPUT_INTEXT = "am Text";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_FIRST = "find first occurrence of text"; // untranslated
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_LAST = "find last occurrence of text"; // untranslated
+Blockly.Msg.TEXT_INDEXOF_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_INDEXOF_TOOLTIP = "Returns the index of the first/last occurrence of the first text in the second text. Returns %1 if text is not found."; // untranslated
+Blockly.Msg.TEXT_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Text#checking-for-empty-text"; // untranslated
+Blockly.Msg.TEXT_ISEMPTY_TITLE = "%1 ass eidel";
+Blockly.Msg.TEXT_ISEMPTY_TOOLTIP = "Returns true if the provided text is empty."; // untranslated
+Blockly.Msg.TEXT_JOIN_HELPURL = "https://github.com/google/blockly/wiki/Text#text-creation"; // untranslated
+Blockly.Msg.TEXT_JOIN_TITLE_CREATEWITH = "create text with"; // untranslated
+Blockly.Msg.TEXT_JOIN_TOOLTIP = "Create a piece of text by joining together any number of items."; // untranslated
+Blockly.Msg.TEXT_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_LENGTH_TITLE = "Längt vu(n) %1";
+Blockly.Msg.TEXT_LENGTH_TOOLTIP = "Returns the number of letters (including spaces) in the provided text."; // untranslated
+Blockly.Msg.TEXT_PRINT_HELPURL = "https://github.com/google/blockly/wiki/Text#printing-text"; // untranslated
+Blockly.Msg.TEXT_PRINT_TITLE = "%1 drécken";
+Blockly.Msg.TEXT_PRINT_TOOLTIP = "Print the specified text, number or other value."; // untranslated
+Blockly.Msg.TEXT_PROMPT_HELPURL = "https://github.com/google/blockly/wiki/Text#getting-input-from-the-user"; // untranslated
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_NUMBER = "Prompt for user for a number."; // untranslated
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_TEXT = "Frot de Benotzer no engem Text.";
+Blockly.Msg.TEXT_PROMPT_TYPE_NUMBER = "prompt for number with message"; // untranslated
+Blockly.Msg.TEXT_PROMPT_TYPE_TEXT = "prompt for text with message"; // untranslated
+Blockly.Msg.TEXT_TEXT_HELPURL = "https://en.wikipedia.org/wiki/String_(computer_science)"; // untranslated
+Blockly.Msg.TEXT_TEXT_TOOLTIP = "E Buschtaf, e Wuert oder eng Textzeil.";
+Blockly.Msg.TEXT_TRIM_HELPURL = "https://github.com/google/blockly/wiki/Text#trimming-removing-spaces"; // untranslated
+Blockly.Msg.TEXT_TRIM_OPERATOR_BOTH = "trim spaces from both sides of"; // untranslated
+Blockly.Msg.TEXT_TRIM_OPERATOR_LEFT = "trim spaces from left side of"; // untranslated
+Blockly.Msg.TEXT_TRIM_OPERATOR_RIGHT = "trim spaces from right side of"; // untranslated
+Blockly.Msg.TEXT_TRIM_TOOLTIP = "Return a copy of the text with spaces removed from one or both ends."; // untranslated
+Blockly.Msg.TODAY = "Haut";
+Blockly.Msg.UNDO = "Réckgängeg maachen";
+Blockly.Msg.VARIABLES_DEFAULT_NAME = "Element";
+Blockly.Msg.VARIABLES_GET_CREATE_SET = "Create 'set %1'"; // untranslated
+Blockly.Msg.VARIABLES_GET_HELPURL = "https://github.com/google/blockly/wiki/Variables#get"; // untranslated
+Blockly.Msg.VARIABLES_GET_TOOLTIP = "Returns the value of this variable."; // untranslated
+Blockly.Msg.VARIABLES_SET = "set %1 to %2"; // untranslated
+Blockly.Msg.VARIABLES_SET_CREATE_GET = "Create 'get %1'"; // untranslated
+Blockly.Msg.VARIABLES_SET_HELPURL = "https://github.com/google/blockly/wiki/Variables#set"; // untranslated
+Blockly.Msg.VARIABLES_SET_TOOLTIP = "Sets this variable to be equal to the input."; // untranslated
+Blockly.Msg.VARIABLE_ALREADY_EXISTS = "A variable named '%1' already exists."; // untranslated
+Blockly.Msg.PROCEDURES_DEFRETURN_TITLE = Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE;
+Blockly.Msg.CONTROLS_IF_IF_TITLE_IF = Blockly.Msg.CONTROLS_IF_MSG_IF;
+Blockly.Msg.CONTROLS_WHILEUNTIL_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_MSG_THEN = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_ELSE_TITLE_ELSE = Blockly.Msg.CONTROLS_IF_MSG_ELSE;
+Blockly.Msg.PROCEDURES_DEFRETURN_PROCEDURE = Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE;
+Blockly.Msg.LISTS_GET_SUBLIST_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.LISTS_GET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.PROCEDURES_DEFRETURN_DO = Blockly.Msg.PROCEDURES_DEFNORETURN_DO;
+Blockly.Msg.CONTROLS_IF_ELSEIF_TITLE_ELSEIF = Blockly.Msg.CONTROLS_IF_MSG_ELSEIF;
+Blockly.Msg.LISTS_GET_INDEX_HELPURL = Blockly.Msg.LISTS_INDEX_OF_HELPURL;
+Blockly.Msg.CONTROLS_FOREACH_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_SET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TITLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_APPEND_VARIABLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.LISTS_INDEX_OF_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.PROCEDURES_DEFRETURN_COMMENT = Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT; \ No newline at end of file
diff --git a/blockly/msg/js/lki.js b/blockly/msg/js/lki.js
new file mode 100644
index 0000000..0c4469e
--- /dev/null
+++ b/blockly/msg/js/lki.js
@@ -0,0 +1,391 @@
+// This file was automatically generated. Do not modify.
+
+'use strict';
+
+goog.provide('Blockly.Msg.lki');
+
+goog.require('Blockly.Msg');
+
+Blockly.Msg.ADD_COMMENT = "گةپ دائن";
+Blockly.Msg.CHANGE_VALUE_TITLE = "تةغییر مقدار:";
+Blockly.Msg.CLEAN_UP = "تمیزکردن بلاکةل";
+Blockly.Msg.COLLAPSE_ALL = "چؤیچانن/پشکانن بلاکةل";
+Blockly.Msg.COLLAPSE_BLOCK = "چؤیچانن/پشکانن بلاک";
+Blockly.Msg.COLOUR_BLEND_COLOUR1 = "رةنگ 1";
+Blockly.Msg.COLOUR_BLEND_COLOUR2 = "رةنگ 2";
+Blockly.Msg.COLOUR_BLEND_HELPURL = "http://meyerweb.com/eric/tools/color-blend/"; // untranslated
+Blockly.Msg.COLOUR_BLEND_RATIO = "نسبت";
+Blockly.Msg.COLOUR_BLEND_TITLE = "قاتی پاتی";
+Blockly.Msg.COLOUR_BLEND_TOOLTIP = "دو رنگ را با نسبت مشخص‌شده مخلوط می‌کند (۰٫۰ - ۱٫۰)";
+Blockly.Msg.COLOUR_PICKER_HELPURL = "https://en.wikipedia.org/wiki/رةنگ";
+Blockly.Msg.COLOUR_PICKER_TOOLTIP = "رةنگێ إژ تةختة رةنگ انتخاب کةن";
+Blockly.Msg.COLOUR_RANDOM_HELPURL = "http://randomcolour.com"; // untranslated
+Blockly.Msg.COLOUR_RANDOM_TITLE = "رةنگ بةختةکی";
+Blockly.Msg.COLOUR_RANDOM_TOOLTIP = ".رةنگئ بةختةکی انتخاب کةن";
+Blockly.Msg.COLOUR_RGB_BLUE = "کاوو";
+Blockly.Msg.COLOUR_RGB_GREEN = "سؤز";
+Blockly.Msg.COLOUR_RGB_HELPURL = "http://www.december.com/html/spec/colorper.html"; // untranslated
+Blockly.Msg.COLOUR_RGB_RED = "سۆر";
+Blockly.Msg.COLOUR_RGB_TITLE = "رةنگ وة";
+Blockly.Msg.COLOUR_RGB_TOOLTIP = "ساخت یک رنگ با مقدار مشخص‌شده‌ای از سۆر، سؤز و کاوو. همهٔ مقادیر باید بین ۰ تا ۱۰۰ باشند.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_HELPURL = "https://github.com/google/blockly/wiki/Loops#loop-termination-blocks"; // untranslated
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK = "شکانِن حلقه";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE = "ادامه با تکرار بعدی حلقه";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK = "شکستن حلقهٔ شامل.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE = "پریدن از بقیهٔ حلقه و ادامه با تکرار بعدی.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_WARNING = "اخطار: این بلوک ممکن است فقط داخل یک حلقه استفاده شود.";
+Blockly.Msg.CONTROLS_FOREACH_HELPURL = "https://github.com/google/blockly/wiki/Loops#for-each"; // untranslated
+Blockly.Msg.CONTROLS_FOREACH_TITLE = "ئةرا هر مورد %1 وۀ نام لیست%2";
+Blockly.Msg.CONTROLS_FOREACH_TOOLTIP = "برای هر مورد در این فهرست، تنظیم متغیر «%1» به مورد و انجام تعدادی عبارت.";
+Blockly.Msg.CONTROLS_FOR_HELPURL = "https://github.com/google/blockly/wiki/Loops#count-with"; // untranslated
+Blockly.Msg.CONTROLS_FOR_TITLE = "با تعداد %1 از %2 به %3 با گام‌های %4";
+Blockly.Msg.CONTROLS_FOR_TOOLTIP = "متغیر %1 را در مقادیر شروع‌شده از عدد انتهای به عدد انتهایی را دارد، با فواصل مشخص‌شده می‌شمارد و این بلوک مشخص‌شده را انجام می‌دهد.";
+Blockly.Msg.CONTROLS_IF_ELSEIF_TOOLTIP = "افزودن یک شرط به بلوک اگر.";
+Blockly.Msg.CONTROLS_IF_ELSE_TOOLTIP = "اضافه‌کردن نهایی، گرفتن همهٔ شرایط به بلوک اگر.";
+Blockly.Msg.CONTROLS_IF_HELPURL = "https://github.com/google/blockly/wiki/IfElse"; // untranslated
+Blockly.Msg.CONTROLS_IF_IF_TOOLTIP = "افزودن، حذف یا بازمرتب‌سازی قسمت‌ها برای پیکربندی دوبارهٔ این بلوک اگر.";
+Blockly.Msg.CONTROLS_IF_MSG_ELSE = "آنگاه";
+Blockly.Msg.CONTROLS_IF_MSG_ELSEIF = "اگر آنگاه";
+Blockly.Msg.CONTROLS_IF_MSG_IF = "اگر";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_1 = "اگر یک مقدار صحیح است، سپس چند عبارت را انجام بده.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_2 = "اگر یک مقدار صحیح است، اول بلوک اول عبارات را انجام بده. در غیر این صورت بلوک دوم عبارات انجام بده.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_3 = "اگر مقدار اول صحیح بود، از آن بلوک اول عبارات را انجام بده. در غیر این صورت، اگر مقدار دوم صحیح است، بلوک دوم عبارات را انجام بده.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_4 = "اگر مقدار اول درست است، بلوک اول عبارات را انجام بده. در غیر این صورت، اگر مقدار دوم درست باشد بلوک دوم عبارات را انجام بده. اگر هیچ از مقادیر درست نبود، آخرین بلوک عبارات را انجام بده.";
+Blockly.Msg.CONTROLS_REPEAT_HELPURL = "https://lki.wikipedia.org/wiki/حلقه_فور";
+Blockly.Msg.CONTROLS_REPEAT_INPUT_DO = "انجوم بی";
+Blockly.Msg.CONTROLS_REPEAT_TITLE = "%بار تکرار 1";
+Blockly.Msg.CONTROLS_REPEAT_TOOLTIP = "انجام چةن عبارت چندین گِل.";
+Blockly.Msg.CONTROLS_WHILEUNTIL_HELPURL = "https://github.com/google/blockly/wiki/Loops#repeat"; // untranslated
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "تکرار تا وةختێ گإ";
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "تکرار در حالی که";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "تا زمانی که یک مقدار ناصحیح است، چند عبارت را انجام بده.";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "تا زمانی که یک مقدار صحیح است، چند عبارت را انجام بده.";
+Blockly.Msg.DELETE_ALL_BLOCKS = "حةذف کؤل %1 بلاکةل?";
+Blockly.Msg.DELETE_BLOCK = "پاک کردن بلاک";
+Blockly.Msg.DELETE_VARIABLE = "Delete the '%1' variable"; // untranslated
+Blockly.Msg.DELETE_VARIABLE_CONFIRMATION = "Delete %1 uses of the '%2' variable?"; // untranslated
+Blockly.Msg.DELETE_X_BLOCKS = "حةذف %1 بلاکةل";
+Blockly.Msg.DISABLE_BLOCK = "إ کار کةتن(غیرفعال‌سازی) بلاک";
+Blockly.Msg.DUPLICATE_BLOCK = "کؤپی کردن";
+Blockly.Msg.ENABLE_BLOCK = "إ کارآشتن(فعال)بلاک";
+Blockly.Msg.EXPAND_ALL = "کةلنگآ کردِن بلاکةل";
+Blockly.Msg.EXPAND_BLOCK = "کةلنگآ کردِن بلاک";
+Blockly.Msg.EXTERNAL_INPUTS = "ورودیةل خروجی";
+Blockly.Msg.HELP = "کؤمةک";
+Blockly.Msg.INLINE_INPUTS = "ورودیةل نوم جا";
+Blockly.Msg.LISTS_CREATE_EMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-empty-list"; // untranslated
+Blockly.Msg.LISTS_CREATE_EMPTY_TITLE = "ایجاد فهرست خالی";
+Blockly.Msg.LISTS_CREATE_EMPTY_TOOLTIP = "فهرستی با طول صفر شامل هیچ رکورد داده‌ای بر می‌گرداند.";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TITLE_ADD = "لیست";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TOOLTIP = "اضافه‌کردن، حذف‌کردن یا ترتیب‌سازی مجدد بخش‌ها این بلوک فهرستی.";
+Blockly.Msg.LISTS_CREATE_WITH_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
+Blockly.Msg.LISTS_CREATE_WITH_INPUT_WITH = "ایجاد فهرست با";
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TOOLTIP = "اضافه‌کردن یک مورد به فهرست.";
+Blockly.Msg.LISTS_CREATE_WITH_TOOLTIP = "فهرستی از هر عددی از موارد می‌سازد.";
+Blockly.Msg.LISTS_GET_INDEX_FIRST = "إژ أؤةل";
+Blockly.Msg.LISTS_GET_INDEX_FROM_END = "# إژ دؤما آخر";
+Blockly.Msg.LISTS_GET_INDEX_FROM_START = "#"; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_GET = "گِرتِن";
+Blockly.Msg.LISTS_GET_INDEX_GET_REMOVE = "گِرتِن و حةذف کردن";
+Blockly.Msg.LISTS_GET_INDEX_LAST = "دؤمائن/آخرین";
+Blockly.Msg.LISTS_GET_INDEX_RANDOM = "بةختةکی";
+Blockly.Msg.LISTS_GET_INDEX_REMOVE = "حةذف کردن";
+Blockly.Msg.LISTS_GET_INDEX_TAIL = ""; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FIRST = "اولین مورد یک فهرست را بر می‌گرداند.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FROM = "موردی در محل مشخص‌شده بر می‌گرداند.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_LAST = "آخرین مورد در یک فهرست را بر می‌گرداند.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_RANDOM = "یک مورد تصادفی در یک فهرست بر می‌گرداند.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST = "اولین مورد مشخص‌شده در فهرست را حذف و بر می‌گرداند.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM = "مورد در محل مشخص‌شده در فهرست را حذف و بر می‌گرداند.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST = "آخرین مورد مشخص‌شده در فهرست را حذف و بر می‌گرداند.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM = "مورد تصادفی‌ای را در فهرست حذف و بر می‌گرداند.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST = "اولین مورد را در یک فهرست حذف می‌کند.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM = "مورد مشخص‌شده در موقعیت مشخص در یک فهرست را حذف و بر می‌گرداند.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST = "آخرین مورد را در یک فهرست حذف می‌کند.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM = "یک مورد تصادفی را یک فهرست حذف می‌کند.";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_END = "به # از انتها";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_START = "به #";
+Blockly.Msg.LISTS_GET_SUBLIST_END_LAST = "به آخرین";
+Blockly.Msg.LISTS_GET_SUBLIST_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-a-sublist"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_START_FIRST = "گرفتن زیرمجموعه‌ای از ابتدا";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_END = "گرفتن زیرمجموعه‌ای از # از انتها";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_START = "گرفتن زیرمجموعه‌ای از #";
+Blockly.Msg.LISTS_GET_SUBLIST_TAIL = ""; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_TOOLTIP = "کپی از قسمت مشخص‌شدهٔ لیست درست می‌کند.";
+Blockly.Msg.LISTS_INDEX_FROM_END_TOOLTIP = "%1 آخرین مورد است.";
+Blockly.Msg.LISTS_INDEX_FROM_START_TOOLTIP = "%1 اولین مورد است.";
+Blockly.Msg.LISTS_INDEX_OF_FIRST = "یافتن اولین رخ‌داد مورد";
+Blockly.Msg.LISTS_INDEX_OF_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-items-from-a-list"; // untranslated
+Blockly.Msg.LISTS_INDEX_OF_LAST = "یافتن آخرین رخ‌داد مورد";
+Blockly.Msg.LISTS_INDEX_OF_TOOLTIP = "شاخصی از اولین/آخرین رخ‌داد مورد در فهرست را بر می‌گرداند. %1 بر می‌گرداند اگر آیتم موجود نبود.";
+Blockly.Msg.LISTS_INLIST = "در فهرست";
+Blockly.Msg.LISTS_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#is-empty"; // untranslated
+Blockly.Msg.LISTS_ISEMPTY_TITLE = "%1 خالی است";
+Blockly.Msg.LISTS_ISEMPTY_TOOLTIP = "اگر فهرست خالی است مقدار صجیج بر می‌گرداند.";
+Blockly.Msg.LISTS_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Lists#length-of"; // untranslated
+Blockly.Msg.LISTS_LENGTH_TITLE = "طول %1";
+Blockly.Msg.LISTS_LENGTH_TOOLTIP = "طول یک فهرست را برمی‌گرداند.";
+Blockly.Msg.LISTS_REPEAT_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
+Blockly.Msg.LISTS_REPEAT_TITLE = "فهرستی با %1 تکرارشده به اندازهٔ %2 می‌سازد";
+Blockly.Msg.LISTS_REPEAT_TOOLTIP = "فهرستی شامل مقادیر داده‌شدهٔ تکرار شده عدد مشخص‌شده می‌سازد.";
+Blockly.Msg.LISTS_SET_INDEX_HELPURL = "https://github.com/google/blockly/wiki/Lists#in-list--set"; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_INPUT_TO = "به عنوان";
+Blockly.Msg.LISTS_SET_INDEX_INSERT = "درج در";
+Blockly.Msg.LISTS_SET_INDEX_SET = "مجموعه";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST = "موردی به ته فهرست اضافه می‌کند.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FROM = "موردی در موقعیت مشخص‌شده در یک فهرست اضافه می‌کند.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_LAST = "موردی به ته فهرست الحاق می‌کند.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM = "مورد را به صورت تصادفی در یک فهرست می‌افزاید.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FIRST = "اولین مورد در یک فهرست را تعیین می‌کند.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FROM = "مورد مشخص‌شده در یک فهرست را قرار می‌دهد.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_LAST = "آخرین مورد در یک فهرست را تعیین می‌کند.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_RANDOM = "یک مورد تصادفی در یک فهرست را تعیین می‌کند.";
+Blockly.Msg.LISTS_SORT_HELPURL = "https://github.com/google/blockly/wiki/Lists#sorting-a-list"; // untranslated
+Blockly.Msg.LISTS_SORT_ORDER_ASCENDING = "ascending"; // untranslated
+Blockly.Msg.LISTS_SORT_ORDER_DESCENDING = "descending"; // untranslated
+Blockly.Msg.LISTS_SORT_TITLE = "sort %1 %2 %3"; // untranslated
+Blockly.Msg.LISTS_SORT_TOOLTIP = "Sort a copy of a list."; // untranslated
+Blockly.Msg.LISTS_SORT_TYPE_IGNORECASE = "alphabetic, ignore case"; // untranslated
+Blockly.Msg.LISTS_SORT_TYPE_NUMERIC = "numeric"; // untranslated
+Blockly.Msg.LISTS_SORT_TYPE_TEXT = "alphabetic"; // untranslated
+Blockly.Msg.LISTS_SPLIT_HELPURL = "https://github.com/google/blockly/wiki/Lists#splitting-strings-and-joining-lists"; // untranslated
+Blockly.Msg.LISTS_SPLIT_LIST_FROM_TEXT = "ساخت لیست إژ متن";
+Blockly.Msg.LISTS_SPLIT_TEXT_FROM_LIST = "ساخت متن إژ لیست";
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_JOIN = "Join a list of texts into one text, separated by a delimiter."; // untranslated
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_SPLIT = "Split text into a list of texts, breaking at each delimiter."; // untranslated
+Blockly.Msg.LISTS_SPLIT_WITH_DELIMITER = "همراه جداساز";
+Blockly.Msg.LOGIC_BOOLEAN_FALSE = "نادرست";
+Blockly.Msg.LOGIC_BOOLEAN_HELPURL = "https://github.com/google/blockly/wiki/Logic#values"; // untranslated
+Blockly.Msg.LOGIC_BOOLEAN_TOOLTIP = "بازگرداندن یکی از صحیح یا ناصحیح.";
+Blockly.Msg.LOGIC_BOOLEAN_TRUE = "درست";
+Blockly.Msg.LOGIC_COMPARE_HELPURL = "https://en.wikipedia.org/wiki/Inequality_(mathematics)";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_EQ = "بازگشت صحیح اگر هر دو ورودی با یکدیگر برابر باشد.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GT = "بازگرداندن صحیح اگر ورودی اول بزرگتر از ورودی دوم باشد.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GTE = "بازگرداندن صحیح اگر ورودی اول بزرگتر یا مساوی یا ورودی دوم باشد.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LT = "بازگرداندن صحیح اگر ورودی اول کوچکتر از ورودی دوم باشد.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LTE = "بازگرداندن صحیح اگر ورودی اول کوچکتر یا مساوی با ورودی دوم باشد.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_NEQ = "برگرداندن صحیح اگر هر دو ورودی با یکدیگر برابر نباشند.";
+Blockly.Msg.LOGIC_NEGATE_HELPURL = "https://github.com/google/blockly/wiki/Logic#not"; // untranslated
+Blockly.Msg.LOGIC_NEGATE_TITLE = "نه %1";
+Blockly.Msg.LOGIC_NEGATE_TOOLTIP = "صجیج باز می‌گرداند اگر ورودی نا صحیح باشند. ناصحیح بازمی‌گرداند اگر ورودی صحیح باشد.";
+Blockly.Msg.LOGIC_NULL = "پةتی/خالی";
+Blockly.Msg.LOGIC_NULL_HELPURL = "https://en.wikipedia.org/wiki/Nullable_type"; // untranslated
+Blockly.Msg.LOGIC_NULL_TOOLTIP = "تهی باز می گرداند";
+Blockly.Msg.LOGIC_OPERATION_AND = "و";
+Blockly.Msg.LOGIC_OPERATION_HELPURL = "https://github.com/google/blockly/wiki/Logic#logical-operations"; // untranslated
+Blockly.Msg.LOGIC_OPERATION_OR = "یا";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_AND = "بازگرداندن صحیح اگر هر دو ورودی صحیح باشد.";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_OR = "بازگرداندن صحیح اگر یکی از دو ورودی صحیح باشد.";
+Blockly.Msg.LOGIC_TERNARY_CONDITION = "آزمائشت";
+Blockly.Msg.LOGIC_TERNARY_HELPURL = "https://en.wikipedia.org/wiki/%3F:"; // untranslated
+Blockly.Msg.LOGIC_TERNARY_IF_FALSE = "اگر نادرست";
+Blockly.Msg.LOGIC_TERNARY_IF_TRUE = "اگر درست";
+Blockly.Msg.LOGIC_TERNARY_TOOLTIP = "بررسی وضعیت در «آزمایش». اگر وضعیت صحیح باشد، مقدار «اگر صحیح» را بر می‌گرداند در غیر اینصورت مقدار «اگر ناصحیح» را.";
+Blockly.Msg.MATH_ADDITION_SYMBOL = "+"; // untranslated
+Blockly.Msg.MATH_ARITHMETIC_HELPURL = "https://en.wikipedia.org/wiki/Arithmetic";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_ADD = "بازگرداندن مقدار جمع دو عدد.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE = "بازگرداندن باقی‌ماندهٔ دو عدد.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MINUS = "بازگرداندن تفاوت دو عدد.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MULTIPLY = "بازگرداندن حاصلضرب دو عدد.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_POWER = "بازگرداندن اولین عددی که از توان عدد دوم حاصل شده باشد.";
+Blockly.Msg.MATH_CHANGE_HELPURL = "https://en.wikipedia.org/wiki/Programming_idiom#Incrementing_a_counter";
+Blockly.Msg.MATH_CHANGE_TITLE = "تغییر %1 با %2";
+Blockly.Msg.MATH_CHANGE_TOOLTIP = "افزودن یک عدد به متغیر '%1'.";
+Blockly.Msg.MATH_CONSTANT_HELPURL = "https://en.wikipedia.org/wiki/Mathematical_constant";
+Blockly.Msg.MATH_CONSTANT_TOOLTIP = "یکی از مقادیر مشترک را برمی‌گرداند: π (۳٫۱۴۱…)، e (۲٫۷۱۸...)، φ (۱٫۶۱۸)، sqrt(۲) (۱٫۴۱۴)، sqrt(۱/۲) (۰٫۷۰۷...) و یا ∞ (بی‌نهایت).";
+Blockly.Msg.MATH_CONSTRAIN_HELPURL = "https://en.wikipedia.org/wiki/Clamping_%28graphics%29"; // untranslated
+Blockly.Msg.MATH_CONSTRAIN_TITLE = "محدودکردن %1 پایین %2 بالا %3";
+Blockly.Msg.MATH_CONSTRAIN_TOOLTIP = "محدودکردن یک عدد بین محدودیت‌های مشخص‌شده (بسته).";
+Blockly.Msg.MATH_DIVISION_SYMBOL = "÷"; // untranslated
+Blockly.Msg.MATH_IS_DIVISIBLE_BY = "تقسیم شده بر";
+Blockly.Msg.MATH_IS_EVEN = "زوج است";
+Blockly.Msg.MATH_IS_NEGATIVE = "منفی است";
+Blockly.Msg.MATH_IS_ODD = "فرد است";
+Blockly.Msg.MATH_IS_POSITIVE = "مثبت است";
+Blockly.Msg.MATH_IS_PRIME = "عدد اول است";
+Blockly.Msg.MATH_IS_TOOLTIP = "بررسی می‌کند که آیا یک عدد زوج، فرد، اول، کامل، مثبت، منفی یا بخش‌پذیر عدد خاصی باشد را بررسی می‌کند. درست یا نادرست باز می‌گرداند.";
+Blockly.Msg.MATH_IS_WHOLE = "کامل است";
+Blockly.Msg.MATH_MODULO_HELPURL = "https://en.wikipedia.org/wiki/Modulo_operation";
+Blockly.Msg.MATH_MODULO_TITLE = "باقی‌ماندهٔ %1 + %2";
+Blockly.Msg.MATH_MODULO_TOOLTIP = "باقی‌ماندهٔ تقسیم دو عدد را بر می‌گرداند.";
+Blockly.Msg.MATH_MULTIPLICATION_SYMBOL = "×"; // untranslated
+Blockly.Msg.MATH_NUMBER_HELPURL = "https://en.wikipedia.org/wiki/Number";
+Blockly.Msg.MATH_NUMBER_TOOLTIP = "شؤمارە یەک";
+Blockly.Msg.MATH_ONLIST_HELPURL = ""; // untranslated
+Blockly.Msg.MATH_ONLIST_OPERATOR_AVERAGE = "میانگین فهرست";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MAX = "بزرگ‌ترین فهرست";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MEDIAN = "میانهٔ فهرست";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MIN = "گوجةرتةرین لیست";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MODE = "مد فهرست";
+Blockly.Msg.MATH_ONLIST_OPERATOR_RANDOM = "مورد تصادفی از فهرست";
+Blockly.Msg.MATH_ONLIST_OPERATOR_STD_DEV = "انحراف معیار فهرست";
+Blockly.Msg.MATH_ONLIST_OPERATOR_SUM = "جمع لیست";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_AVERAGE = "میانگین (میانگین ریاضی) مقادیر عددی فهرست را بر می‌گرداند.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MAX = "بزرگ‌ترین عدد در فهرست را باز می‌گرداند.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MEDIAN = "میانهٔ عدد در فهرست را بر می‌گرداند.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MIN = "کوچک‌ترین عدد در فهرست را باز می‌گرداند.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MODE = "شایع‌ترین قلم(های) در فهرست را بر می‌گرداند.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_RANDOM = "موردی تصادفی از فهرست را بر می‌گرداند.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_STD_DEV = "انحراف معیار فهرست را بر می‌گرداند.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_SUM = "جمع همهٔ عددهای فهرست را باز می‌گرداند.";
+Blockly.Msg.MATH_POWER_SYMBOL = "^"; // untranslated
+Blockly.Msg.MATH_RANDOM_FLOAT_HELPURL = "https://en.wikipedia.org/wiki/Random_number_generation";
+Blockly.Msg.MATH_RANDOM_FLOAT_TITLE_RANDOM = "کسر تصادفی";
+Blockly.Msg.MATH_RANDOM_FLOAT_TOOLTIP = "بازگرداندن کسری تصادفی بین ۰٫۰ (بسته) تا ۱٫۰ (باز).";
+Blockly.Msg.MATH_RANDOM_INT_HELPURL = "https://en.wikipedia.org/wiki/Random_number_generation";
+Blockly.Msg.MATH_RANDOM_INT_TITLE = "عدد صحیح تصادفی بین %1 تا %2";
+Blockly.Msg.MATH_RANDOM_INT_TOOLTIP = "یک عدد تصادفی بین دو مقدار مشخص‌شده به صورت بسته باز می‌گرداند.";
+Blockly.Msg.MATH_ROUND_HELPURL = "https://en.wikipedia.org/wiki/Rounding";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUND = "گردکردن";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDDOWN = "گرد به پایین";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDUP = "گرد به بالا";
+Blockly.Msg.MATH_ROUND_TOOLTIP = "گردکردن یک عدد به بالا یا پایین.";
+Blockly.Msg.MATH_SINGLE_HELPURL = "https://en.wikipedia.org/wiki/Square_root";
+Blockly.Msg.MATH_SINGLE_OP_ABSOLUTE = "مطلق";
+Blockly.Msg.MATH_SINGLE_OP_ROOT = "ریشهٔ دوم";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ABS = "قدر مطلق یک عدد را بازمی‌گرداند.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_EXP = "بازگرداندن توان e یک عدد.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LN = "لوگاریتم طبیعی یک عدد را باز می‌گرداند.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LOG10 = "بازگرداندن لگاریتم بر پایهٔ ۱۰ یک عدد.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_NEG = "منفی‌شدهٔ یک عدد را باز می‌گرداند.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_POW10 = "بازگرداندن توان ۱۰ یک عدد.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ROOT = "ریشهٔ دوم یک عدد را باز می‌گرداند.";
+Blockly.Msg.MATH_SUBTRACTION_SYMBOL = "-"; // untranslated
+Blockly.Msg.MATH_TRIG_ACOS = "acos"; // untranslated
+Blockly.Msg.MATH_TRIG_ASIN = "asin"; // untranslated
+Blockly.Msg.MATH_TRIG_ATAN = "atan"; // untranslated
+Blockly.Msg.MATH_TRIG_COS = "cos"; // untranslated
+Blockly.Msg.MATH_TRIG_HELPURL = "https://en.wikipedia.org/wiki/Trigonometric_functions";
+Blockly.Msg.MATH_TRIG_SIN = "sin"; // untranslated
+Blockly.Msg.MATH_TRIG_TAN = "tan"; // untranslated
+Blockly.Msg.MATH_TRIG_TOOLTIP_ACOS = "بازگرداندن آرک‌کسینوس درجه (نه رادیان).";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ASIN = ".(بازگرداندن آرک‌سینوس درجه (نه رادیان";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ATAN = "بازگرداندن آرک‌تانژانت درجه (نه رادیان).";
+Blockly.Msg.MATH_TRIG_TOOLTIP_COS = "بازگرداندن کسینوس درجه (نه رادیان).";
+Blockly.Msg.MATH_TRIG_TOOLTIP_SIN = "بازگرداندن سینوس درجه (نه رادیان).";
+Blockly.Msg.MATH_TRIG_TOOLTIP_TAN = "بازگرداندن تانژانت یک درجه (نه رادیان).";
+Blockly.Msg.NEW_VARIABLE = "متغیر تازه...";
+Blockly.Msg.NEW_VARIABLE_TITLE = "نام متغیر تازه:";
+Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; // untranslated
+Blockly.Msg.PROCEDURES_ALLOW_STATEMENTS = "اجازه اظهارات";
+Blockly.Msg.PROCEDURES_BEFORE_PARAMS = "با:";
+Blockly.Msg.PROCEDURES_CALLNORETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29";
+Blockly.Msg.PROCEDURES_CALLNORETURN_TOOLTIP = "اجرای تابع تعریف‌شده توسط کاربر «%1».";
+Blockly.Msg.PROCEDURES_CALLRETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29";
+Blockly.Msg.PROCEDURES_CALLRETURN_TOOLTIP = "اجرای تابع تعریف‌شده توسط کاربر «%1» و استفاده از خروجی آن.";
+Blockly.Msg.PROCEDURES_CALL_BEFORE_PARAMS = "با:";
+Blockly.Msg.PROCEDURES_CREATE_DO = "ساختن «%1»";
+Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT = "Describe this function..."; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_DO = ""; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE = "انجام چیزی";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE = "به";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TOOLTIP = "تابعی می‌سازد بدون هیچ خروجی.";
+Blockly.Msg.PROCEDURES_DEFRETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_DEFRETURN_RETURN = "بازگشت";
+Blockly.Msg.PROCEDURES_DEFRETURN_TOOLTIP = "تابعی با یک خروجی می‌سازد.";
+Blockly.Msg.PROCEDURES_DEF_DUPLICATE_WARNING = "اخطار: این تابعی پارامتر تکراری دارد.";
+Blockly.Msg.PROCEDURES_HIGHLIGHT_DEF = "برجسته‌سازی تعریف تابع";
+Blockly.Msg.PROCEDURES_IFRETURN_HELPURL = "http://c2.com/cgi/wiki?GuardClause"; // untranslated
+Blockly.Msg.PROCEDURES_IFRETURN_TOOLTIP = "اگر یک مقدار صحیح است، مقدار دوم را برگردان.";
+Blockly.Msg.PROCEDURES_IFRETURN_WARNING = "اخطار: این بلوک احتمالاً فقط داخل یک تابع استفاده می‌شود.";
+Blockly.Msg.PROCEDURES_MUTATORARG_TITLE = "نام ورودی:";
+Blockly.Msg.PROCEDURES_MUTATORARG_TOOLTIP = "اضافه کردن ورودی به تابع.";
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TITLE = "ورودی‌ها";
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TOOLTIP = "افزودن، حذف یا دوباره مرتب‌کردن ورودی این تابع.";
+Blockly.Msg.REDO = "Redo"; // untranslated
+Blockly.Msg.REMOVE_COMMENT = "پاک کردن گةپةل/قِسةل";
+Blockly.Msg.RENAME_VARIABLE = "تغییر نام متغیر...";
+Blockly.Msg.RENAME_VARIABLE_TITLE = "تغییر نام همهٔ متغیرهای «%1» به:";
+Blockly.Msg.TEXT_APPEND_APPENDTEXT = "چسباندن متن";
+Blockly.Msg.TEXT_APPEND_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_APPEND_TO = "به";
+Blockly.Msg.TEXT_APPEND_TOOLTIP = "الحاق متنی به متغیر «%1».";
+Blockly.Msg.TEXT_CHANGECASE_HELPURL = "https://github.com/google/blockly/wiki/Text#adjusting-text-case"; // untranslated
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_LOWERCASE = "به حروف کوچک";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_TITLECASE = "به حروف بزرگ عنوان";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_UPPERCASE = "به حروف بزرگ";
+Blockly.Msg.TEXT_CHANGECASE_TOOLTIP = "بازگرداندن کپی متن در حالتی متفاوت.";
+Blockly.Msg.TEXT_CHARAT_FIRST = "گرفتن اولین حرف";
+Blockly.Msg.TEXT_CHARAT_FROM_END = "گرفتن حرف # از آخر";
+Blockly.Msg.TEXT_CHARAT_FROM_START = "گرفتن حرف #";
+Blockly.Msg.TEXT_CHARAT_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-text"; // untranslated
+Blockly.Msg.TEXT_CHARAT_INPUT_INTEXT = "در متن";
+Blockly.Msg.TEXT_CHARAT_LAST = "گرفتن آخرین حرف";
+Blockly.Msg.TEXT_CHARAT_RANDOM = "گرفتن حرف تصادفی";
+Blockly.Msg.TEXT_CHARAT_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_CHARAT_TOOLTIP = "حرفی در موقعیت مشخص‌شده بر می‌گرداند.";
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TOOLTIP = "افزودن یک مورد به متن.";
+Blockly.Msg.TEXT_CREATE_JOIN_TITLE_JOIN = "نام نؤیسی";
+Blockly.Msg.TEXT_CREATE_JOIN_TOOLTIP = "اضافه‌کردن، حذف یا مرتب‌سازی بحش‌ها برای تنظیم مجدد این بلوک متنی.";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_END = "به حرف # از انتها";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_START = "به حرف #";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_LAST = "به آخرین حرف";
+Blockly.Msg.TEXT_GET_SUBSTRING_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_INPUT_IN_TEXT = "در متن";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FIRST = "گرفتن زیرمتن از اولین حرف";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_END = "گرفتن زیرمتن از حرف # به انتها";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_START = "گرفتن زیرمتن از حرف #";
+Blockly.Msg.TEXT_GET_SUBSTRING_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_TOOLTIP = "قسمت مشخصی‌شده‌ای از متن را بر می‌گرداند.";
+Blockly.Msg.TEXT_INDEXOF_HELPURL = "https://github.com/google/blockly/wiki/Text#finding-text"; // untranslated
+Blockly.Msg.TEXT_INDEXOF_INPUT_INTEXT = "در متن";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_FIRST = "اولین رخداد متن را بیاب";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_LAST = "آخرین رخداد متن را بیاب";
+Blockly.Msg.TEXT_INDEXOF_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_INDEXOF_TOOLTIP = "شاخصی از اولین آخرین رخ‌داد متن اول در متن دوم بر می‌گرداند. اگر متن یافت نشد %1 باز می‌گرداند.";
+Blockly.Msg.TEXT_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Text#checking-for-empty-text"; // untranslated
+Blockly.Msg.TEXT_ISEMPTY_TITLE = "%1 خالی است";
+Blockly.Msg.TEXT_ISEMPTY_TOOLTIP = "اضافه‌کردن صحیح اگر متن فراهم‌شده خالی است.";
+Blockly.Msg.TEXT_JOIN_HELPURL = "https://github.com/google/blockly/wiki/Text#text-creation"; // untranslated
+Blockly.Msg.TEXT_JOIN_TITLE_CREATEWITH = "ایجاد متن با";
+Blockly.Msg.TEXT_JOIN_TOOLTIP = "یک تکه‌ای از متن را با چسپاندن همهٔ تعداد از موارد ایجاد می‌کند.";
+Blockly.Msg.TEXT_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_LENGTH_TITLE = "طول %1";
+Blockly.Msg.TEXT_LENGTH_TOOLTIP = "بازگرداندن عددی از حروف (شامل فاصله‌ها) در متن فراهم‌شده.";
+Blockly.Msg.TEXT_PRINT_HELPURL = "https://github.com/google/blockly/wiki/Text#printing-text"; // untranslated
+Blockly.Msg.TEXT_PRINT_TITLE = "چاپ %1";
+Blockly.Msg.TEXT_PRINT_TOOLTIP = "چاپ متن، عدد یا هر مقدار دیگر مشخص‌شده.";
+Blockly.Msg.TEXT_PROMPT_HELPURL = "https://github.com/google/blockly/wiki/Text#getting-input-from-the-user"; // untranslated
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_NUMBER = "اعلان برای کاربر با یک عدد.";
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_TEXT = "اعلان برای کاربر برای یک متن.";
+Blockly.Msg.TEXT_PROMPT_TYPE_NUMBER = "اعلان برای عدد با پیام";
+Blockly.Msg.TEXT_PROMPT_TYPE_TEXT = "اعلان برای متن با پیام";
+Blockly.Msg.TEXT_TEXT_HELPURL = "https://en.wikipedia.org/wiki/String_(computer_science)";
+Blockly.Msg.TEXT_TEXT_TOOLTIP = "یک حرف، کلمه یا خطی از متن.";
+Blockly.Msg.TEXT_TRIM_HELPURL = "https://github.com/google/blockly/wiki/Text#trimming-removing-spaces"; // untranslated
+Blockly.Msg.TEXT_TRIM_OPERATOR_BOTH = "تراشیدن فاصله‌ها از هر دو طرف";
+Blockly.Msg.TEXT_TRIM_OPERATOR_LEFT = "تراشیدن فاصله‌ها از طرف چپ";
+Blockly.Msg.TEXT_TRIM_OPERATOR_RIGHT = "تراشیدن فاصله‌ها از طرف چپ";
+Blockly.Msg.TEXT_TRIM_TOOLTIP = "کپی از متن با فاصله‌های حذف‌شده از یک یا هر دو پایان باز می‌گرداند.";
+Blockly.Msg.TODAY = "ایمڕۆ";
+Blockly.Msg.UNDO = "Undo"; // untranslated
+Blockly.Msg.VARIABLES_DEFAULT_NAME = "آیتم";
+Blockly.Msg.VARIABLES_GET_CREATE_SET = "درست‌کردن «تنظیم %1»";
+Blockly.Msg.VARIABLES_GET_HELPURL = "https://github.com/google/blockly/wiki/Variables#get"; // untranslated
+Blockly.Msg.VARIABLES_GET_TOOLTIP = "مقدار این متغیر را بر می‌گرداند.";
+Blockly.Msg.VARIABLES_SET = "مجموعه %1 به %2";
+Blockly.Msg.VARIABLES_SET_CREATE_GET = "درست‌کردن «گرفتن %1»";
+Blockly.Msg.VARIABLES_SET_HELPURL = "https://github.com/google/blockly/wiki/Variables#set"; // untranslated
+Blockly.Msg.VARIABLES_SET_TOOLTIP = "متغیر برابر با خروجی را مشخص می‌کند.";
+Blockly.Msg.VARIABLE_ALREADY_EXISTS = "A variable named '%1' already exists."; // untranslated
+Blockly.Msg.PROCEDURES_DEFRETURN_TITLE = Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE;
+Blockly.Msg.CONTROLS_IF_IF_TITLE_IF = Blockly.Msg.CONTROLS_IF_MSG_IF;
+Blockly.Msg.CONTROLS_WHILEUNTIL_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_MSG_THEN = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_ELSE_TITLE_ELSE = Blockly.Msg.CONTROLS_IF_MSG_ELSE;
+Blockly.Msg.PROCEDURES_DEFRETURN_PROCEDURE = Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE;
+Blockly.Msg.LISTS_GET_SUBLIST_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.LISTS_GET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.PROCEDURES_DEFRETURN_DO = Blockly.Msg.PROCEDURES_DEFNORETURN_DO;
+Blockly.Msg.CONTROLS_IF_ELSEIF_TITLE_ELSEIF = Blockly.Msg.CONTROLS_IF_MSG_ELSEIF;
+Blockly.Msg.LISTS_GET_INDEX_HELPURL = Blockly.Msg.LISTS_INDEX_OF_HELPURL;
+Blockly.Msg.CONTROLS_FOREACH_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_SET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TITLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_APPEND_VARIABLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.LISTS_INDEX_OF_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.PROCEDURES_DEFRETURN_COMMENT = Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT; \ No newline at end of file
diff --git a/blockly/msg/js/lrc.js b/blockly/msg/js/lrc.js
new file mode 100644
index 0000000..2731ca9
--- /dev/null
+++ b/blockly/msg/js/lrc.js
@@ -0,0 +1,391 @@
+// This file was automatically generated. Do not modify.
+
+'use strict';
+
+goog.provide('Blockly.Msg.lrc');
+
+goog.require('Blockly.Msg');
+
+Blockly.Msg.ADD_COMMENT = "نظرتونه اضاف بکید";
+Blockly.Msg.CHANGE_VALUE_TITLE = "ارزشت آلشت کو:";
+Blockly.Msg.CLEAN_UP = "Clean up Blocks"; // untranslated
+Blockly.Msg.COLLAPSE_ALL = "کوچک کردن برشتیا";
+Blockly.Msg.COLLAPSE_BLOCK = "کوچک کردن برشت";
+Blockly.Msg.COLOUR_BLEND_COLOUR1 = "رن 1";
+Blockly.Msg.COLOUR_BLEND_COLOUR2 = "رن 2";
+Blockly.Msg.COLOUR_BLEND_HELPURL = "http://meyerweb.com/eric/tools/color-blend/"; // untranslated
+Blockly.Msg.COLOUR_BLEND_RATIO = "نسوت";
+Blockly.Msg.COLOUR_BLEND_TITLE = "شیوسته";
+Blockly.Msg.COLOUR_BLEND_TOOLTIP = "هر کوم د رنگیانه وا نسوت دائه بیه به شیون(0.0 - 1.0).";
+Blockly.Msg.COLOUR_PICKER_HELPURL = "https://en.wikipedia.org/wiki/Color";
+Blockly.Msg.COLOUR_PICKER_TOOLTIP = "یه رن د رنگ دو انتخاو بکید";
+Blockly.Msg.COLOUR_RANDOM_HELPURL = "http://randomcolour.com"; // untranslated
+Blockly.Msg.COLOUR_RANDOM_TITLE = "رن بختکی";
+Blockly.Msg.COLOUR_RANDOM_TOOLTIP = "یه رنگ بختکی انتخاو بکید";
+Blockly.Msg.COLOUR_RGB_BLUE = "آوی";
+Blockly.Msg.COLOUR_RGB_GREEN = "سوز";
+Blockly.Msg.COLOUR_RGB_HELPURL = "http://www.december.com/html/spec/colorper.html"; // untranslated
+Blockly.Msg.COLOUR_RGB_RED = "سور";
+Blockly.Msg.COLOUR_RGB_TITLE = "رن وا";
+Blockly.Msg.COLOUR_RGB_TOOLTIP = "Create a colour with the specified amount of red, green, and blue. All values must be between 0 and 100."; // untranslated
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_HELPURL = "https://github.com/google/blockly/wiki/Loops#loop-termination-blocks"; // untranslated
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK = "حلقه نه خراو کو";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE = "continue with next iteration of loop"; // untranslated
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK = "حلقه شومل بیه نه خراو کو";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE = "Skip the rest of this loop, and continue with the next iteration."; // untranslated
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_WARNING = "Warning: This block may only be used within a loop."; // untranslated
+Blockly.Msg.CONTROLS_FOREACH_HELPURL = "https://github.com/google/blockly/wiki/Loops#for-each"; // untranslated
+Blockly.Msg.CONTROLS_FOREACH_TITLE = "سی هر قلم %1 د نوم گه %2";
+Blockly.Msg.CONTROLS_FOREACH_TOOLTIP = "For each item in a list, set the variable '%1' to the item, and then do some statements."; // untranslated
+Blockly.Msg.CONTROLS_FOR_HELPURL = "https://github.com/google/blockly/wiki/Loops#count-with"; // untranslated
+Blockly.Msg.CONTROLS_FOR_TITLE = "اشماردن وا %1 د %2 سی %3 وا %4";
+Blockly.Msg.CONTROLS_FOR_TOOLTIP = "Have the variable '%1' take on the values from the start number to the end number, counting by the specified interval, and do the specified blocks."; // untranslated
+Blockly.Msg.CONTROLS_IF_ELSEIF_TOOLTIP = "Add a condition to the if block."; // untranslated
+Blockly.Msg.CONTROLS_IF_ELSE_TOOLTIP = "Add a final, catch-all condition to the if block."; // untranslated
+Blockly.Msg.CONTROLS_IF_HELPURL = "https://github.com/google/blockly/wiki/IfElse"; // untranslated
+Blockly.Msg.CONTROLS_IF_IF_TOOLTIP = "Add, remove, or reorder sections to reconfigure this if block."; // untranslated
+Blockly.Msg.CONTROLS_IF_MSG_ELSE = "هنی";
+Blockly.Msg.CONTROLS_IF_MSG_ELSEIF = "هنی ار";
+Blockly.Msg.CONTROLS_IF_MSG_IF = "ار";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_1 = "If a value is true, then do some statements."; // untranslated
+Blockly.Msg.CONTROLS_IF_TOOLTIP_2 = "If a value is true, then do the first block of statements. Otherwise, do the second block of statements."; // untranslated
+Blockly.Msg.CONTROLS_IF_TOOLTIP_3 = "If the first value is true, then do the first block of statements. Otherwise, if the second value is true, do the second block of statements."; // untranslated
+Blockly.Msg.CONTROLS_IF_TOOLTIP_4 = "If the first value is true, then do the first block of statements. Otherwise, if the second value is true, do the second block of statements. If none of the values are true, do the last block of statements."; // untranslated
+Blockly.Msg.CONTROLS_REPEAT_HELPURL = "https://en.wikipedia.org/wiki/For_loop";
+Blockly.Msg.CONTROLS_REPEAT_INPUT_DO = "انجوم بئه";
+Blockly.Msg.CONTROLS_REPEAT_TITLE = "%1 تکرار کو چن بار";
+Blockly.Msg.CONTROLS_REPEAT_TOOLTIP = "Do some statements several times."; // untranslated
+Blockly.Msg.CONTROLS_WHILEUNTIL_HELPURL = "https://github.com/google/blockly/wiki/Loops#repeat"; // untranslated
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "تا تکرار کو";
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "تا تکرار کو";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "While a value is false, then do some statements."; // untranslated
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "While a value is true, then do some statements."; // untranslated
+Blockly.Msg.DELETE_ALL_BLOCKS = "Delete all %1 blocks?"; // untranslated
+Blockly.Msg.DELETE_BLOCK = "پاکسا کردن برشت";
+Blockly.Msg.DELETE_VARIABLE = "Delete the '%1' variable"; // untranslated
+Blockly.Msg.DELETE_VARIABLE_CONFIRMATION = "Delete %1 uses of the '%2' variable?"; // untranslated
+Blockly.Msg.DELETE_X_BLOCKS = "پاکسا کردن%1 د برشتیا";
+Blockly.Msg.DISABLE_BLOCK = "ناکشتگر کردن برشت";
+Blockly.Msg.DUPLICATE_BLOCK = "کپی کردن";
+Blockly.Msg.ENABLE_BLOCK = "کنشتگر کردن برشت";
+Blockly.Msg.EXPAND_ALL = "گپ کردن برشتیا";
+Blockly.Msg.EXPAND_BLOCK = "گپ کردن برشت";
+Blockly.Msg.EXTERNAL_INPUTS = "داده یا وه دری";
+Blockly.Msg.HELP = "هومياری";
+Blockly.Msg.INLINE_INPUTS = "داده یا مئنجا";
+Blockly.Msg.LISTS_CREATE_EMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-empty-list"; // untranslated
+Blockly.Msg.LISTS_CREATE_EMPTY_TITLE = "یه گل نوم گه حالی راس بکیت";
+Blockly.Msg.LISTS_CREATE_EMPTY_TOOLTIP = "Returns a list, of length 0, containing no data records"; // untranslated
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TITLE_ADD = "نوم گه";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TOOLTIP = "Add, remove, or reorder sections to reconfigure this list block."; // untranslated
+Blockly.Msg.LISTS_CREATE_WITH_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
+Blockly.Msg.LISTS_CREATE_WITH_INPUT_WITH = "create list with"; // untranslated
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TOOLTIP = "Add an item to the list."; // untranslated
+Blockly.Msg.LISTS_CREATE_WITH_TOOLTIP = "Create a list with any number of items."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_FIRST = "اولی";
+Blockly.Msg.LISTS_GET_INDEX_FROM_END = "# تا آخر";
+Blockly.Msg.LISTS_GET_INDEX_FROM_START = "#"; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_GET = "گرتن";
+Blockly.Msg.LISTS_GET_INDEX_GET_REMOVE = "گرتن و جاوه جا بیئن";
+Blockly.Msg.LISTS_GET_INDEX_LAST = "آخر";
+Blockly.Msg.LISTS_GET_INDEX_RANDOM = "بختكی";
+Blockly.Msg.LISTS_GET_INDEX_REMOVE = "ؤرداشتن";
+Blockly.Msg.LISTS_GET_INDEX_TAIL = ""; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FIRST = "Returns the first item in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FROM = "Returns the item at the specified position in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_LAST = "Returns the last item in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_RANDOM = "Returns a random item in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST = "Removes and returns the first item in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM = "Removes and returns the item at the specified position in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST = "Removes and returns the last item in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM = "Removes and returns a random item in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST = "Removes the first item in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM = "Removes the item at the specified position in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST = "Removes the last item in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM = "Removes a random item in a list."; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_END = "to # from end"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_START = "سی#";
+Blockly.Msg.LISTS_GET_SUBLIST_END_LAST = "سی آخر";
+Blockly.Msg.LISTS_GET_SUBLIST_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-a-sublist"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_START_FIRST = "get sub-list from first"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_END = "get sub-list from # from end"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_START = "get sub-list from #"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_TAIL = ""; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_TOOLTIP = "Creates a copy of the specified portion of a list."; // untranslated
+Blockly.Msg.LISTS_INDEX_FROM_END_TOOLTIP = "%1 is the last item."; // untranslated
+Blockly.Msg.LISTS_INDEX_FROM_START_TOOLTIP = "%1 is the first item."; // untranslated
+Blockly.Msg.LISTS_INDEX_OF_FIRST = "find first occurrence of item"; // untranslated
+Blockly.Msg.LISTS_INDEX_OF_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-items-from-a-list"; // untranslated
+Blockly.Msg.LISTS_INDEX_OF_LAST = "find last occurrence of item"; // untranslated
+Blockly.Msg.LISTS_INDEX_OF_TOOLTIP = "Returns the index of the first/last occurrence of the item in the list. Returns %1 if item is not found."; // untranslated
+Blockly.Msg.LISTS_INLIST = "د نوم گه";
+Blockly.Msg.LISTS_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#is-empty"; // untranslated
+Blockly.Msg.LISTS_ISEMPTY_TITLE = "%1 حالیه";
+Blockly.Msg.LISTS_ISEMPTY_TOOLTIP = "Returns true if the list is empty."; // untranslated
+Blockly.Msg.LISTS_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Lists#length-of"; // untranslated
+Blockly.Msg.LISTS_LENGTH_TITLE = "length of %1"; // untranslated
+Blockly.Msg.LISTS_LENGTH_TOOLTIP = "Returns the length of a list."; // untranslated
+Blockly.Msg.LISTS_REPEAT_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
+Blockly.Msg.LISTS_REPEAT_TITLE = "create list with item %1 repeated %2 times"; // untranslated
+Blockly.Msg.LISTS_REPEAT_TOOLTIP = "Creates a list consisting of the given value repeated the specified number of times."; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_HELPURL = "https://github.com/google/blockly/wiki/Lists#in-list--set"; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_INPUT_TO = "چی";
+Blockly.Msg.LISTS_SET_INDEX_INSERT = "بنه د";
+Blockly.Msg.LISTS_SET_INDEX_SET = "set"; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST = "Inserts the item at the start of a list."; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FROM = "Inserts the item at the specified position in a list."; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_LAST = "Append the item to the end of a list."; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM = "Inserts the item randomly in a list."; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FIRST = "Sets the first item in a list."; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FROM = "Sets the item at the specified position in a list."; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_LAST = "Sets the last item in a list."; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_RANDOM = "Sets a random item in a list."; // untranslated
+Blockly.Msg.LISTS_SORT_HELPURL = "https://github.com/google/blockly/wiki/Lists#sorting-a-list"; // untranslated
+Blockly.Msg.LISTS_SORT_ORDER_ASCENDING = "ascending"; // untranslated
+Blockly.Msg.LISTS_SORT_ORDER_DESCENDING = "descending"; // untranslated
+Blockly.Msg.LISTS_SORT_TITLE = "sort %1 %2 %3"; // untranslated
+Blockly.Msg.LISTS_SORT_TOOLTIP = "Sort a copy of a list."; // untranslated
+Blockly.Msg.LISTS_SORT_TYPE_IGNORECASE = "alphabetic, ignore case"; // untranslated
+Blockly.Msg.LISTS_SORT_TYPE_NUMERIC = "numeric"; // untranslated
+Blockly.Msg.LISTS_SORT_TYPE_TEXT = "alphabetic"; // untranslated
+Blockly.Msg.LISTS_SPLIT_HELPURL = "https://github.com/google/blockly/wiki/Lists#splitting-strings-and-joining-lists"; // untranslated
+Blockly.Msg.LISTS_SPLIT_LIST_FROM_TEXT = "make list from text"; // untranslated
+Blockly.Msg.LISTS_SPLIT_TEXT_FROM_LIST = "make text from list"; // untranslated
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_JOIN = "Join a list of texts into one text, separated by a delimiter."; // untranslated
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_SPLIT = "Split text into a list of texts, breaking at each delimiter."; // untranslated
+Blockly.Msg.LISTS_SPLIT_WITH_DELIMITER = "with delimiter"; // untranslated
+Blockly.Msg.LOGIC_BOOLEAN_FALSE = "غلط";
+Blockly.Msg.LOGIC_BOOLEAN_HELPURL = "https://github.com/google/blockly/wiki/Logic#values"; // untranslated
+Blockly.Msg.LOGIC_BOOLEAN_TOOLTIP = "هم غلط و هم راس ورگن";
+Blockly.Msg.LOGIC_BOOLEAN_TRUE = "راست و دوروست";
+Blockly.Msg.LOGIC_COMPARE_HELPURL = "https://en.wikipedia.org/wiki/Inequality_(mathematics)"; // untranslated
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_EQ = "Return true if both inputs equal each other."; // untranslated
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GT = "Return true if the first input is greater than the second input."; // untranslated
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GTE = "Return true if the first input is greater than or equal to the second input."; // untranslated
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LT = "Return true if the first input is smaller than the second input."; // untranslated
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LTE = "Return true if the first input is smaller than or equal to the second input."; // untranslated
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_NEQ = "Return true if both inputs are not equal to each other."; // untranslated
+Blockly.Msg.LOGIC_NEGATE_HELPURL = "https://github.com/google/blockly/wiki/Logic#not"; // untranslated
+Blockly.Msg.LOGIC_NEGATE_TITLE = "نه %1";
+Blockly.Msg.LOGIC_NEGATE_TOOLTIP = "Returns true if the input is false. Returns false if the input is true."; // untranslated
+Blockly.Msg.LOGIC_NULL = "خمثی";
+Blockly.Msg.LOGIC_NULL_HELPURL = "https://en.wikipedia.org/wiki/Nullable_type"; // untranslated
+Blockly.Msg.LOGIC_NULL_TOOLTIP = "Returns null."; // untranslated
+Blockly.Msg.LOGIC_OPERATION_AND = "و";
+Blockly.Msg.LOGIC_OPERATION_HELPURL = "https://github.com/google/blockly/wiki/Logic#logical-operations"; // untranslated
+Blockly.Msg.LOGIC_OPERATION_OR = "یا";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_AND = "Return true if both inputs are true."; // untranslated
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_OR = "Return true if at least one of the inputs is true."; // untranslated
+Blockly.Msg.LOGIC_TERNARY_CONDITION = "آزماشت کردن";
+Blockly.Msg.LOGIC_TERNARY_HELPURL = "https://en.wikipedia.org/wiki/%3F:"; // untranslated
+Blockly.Msg.LOGIC_TERNARY_IF_FALSE = "ار غلط بی";
+Blockly.Msg.LOGIC_TERNARY_IF_TRUE = "ار درس بی";
+Blockly.Msg.LOGIC_TERNARY_TOOLTIP = "Check the condition in 'test'. If the condition is true, returns the 'if true' value; otherwise returns the 'if false' value."; // untranslated
+Blockly.Msg.MATH_ADDITION_SYMBOL = "+"; // untranslated
+Blockly.Msg.MATH_ARITHMETIC_HELPURL = "https://en.wikipedia.org/wiki/Arithmetic";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_ADD = "وه انازه دو گل شماره ورگن.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE = "Return the quotient of the two numbers."; // untranslated
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MINUS = "Return the difference of the two numbers."; // untranslated
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MULTIPLY = "Return the product of the two numbers."; // untranslated
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_POWER = "Return the first number raised to the power of the second number."; // untranslated
+Blockly.Msg.MATH_CHANGE_HELPURL = "https://en.wikipedia.org/wiki/Programming_idiom#Incrementing_a_counter";
+Blockly.Msg.MATH_CHANGE_TITLE = "آلشت بكيد %1 وا %2";
+Blockly.Msg.MATH_CHANGE_TOOLTIP = "Add a number to variable '%1'."; // untranslated
+Blockly.Msg.MATH_CONSTANT_HELPURL = "https://en.wikipedia.org/wiki/Mathematical_constant";
+Blockly.Msg.MATH_CONSTANT_TOOLTIP = "Return one of the common constants: π (3.141…), e (2.718…), φ (1.618…), sqrt(2) (1.414…), sqrt(½) (0.707…), or ∞ (infinity)."; // untranslated
+Blockly.Msg.MATH_CONSTRAIN_HELPURL = "https://en.wikipedia.org/wiki/Clamping_%28graphics%29"; // untranslated
+Blockly.Msg.MATH_CONSTRAIN_TITLE = "constrain %1 low %2 high %3"; // untranslated
+Blockly.Msg.MATH_CONSTRAIN_TOOLTIP = "Constrain a number to be between the specified limits (inclusive)."; // untranslated
+Blockly.Msg.MATH_DIVISION_SYMBOL = "÷"; // untranslated
+Blockly.Msg.MATH_IS_DIVISIBLE_BY = "یه وا بهر بیه";
+Blockly.Msg.MATH_IS_EVEN = "همیشه هیئش";
+Blockly.Msg.MATH_IS_NEGATIVE = "منفیه";
+Blockly.Msg.MATH_IS_ODD = "تهنائه";
+Blockly.Msg.MATH_IS_POSITIVE = "مثبته";
+Blockly.Msg.MATH_IS_PRIME = "وه اوله";
+Blockly.Msg.MATH_IS_TOOLTIP = "Check if a number is an even, odd, prime, whole, positive, negative, or if it is divisible by certain number. Returns true or false."; // untranslated
+Blockly.Msg.MATH_IS_WHOLE = "همشه";
+Blockly.Msg.MATH_MODULO_HELPURL = "https://en.wikipedia.org/wiki/Modulo_operation";
+Blockly.Msg.MATH_MODULO_TITLE = "remainder of %1 ÷ %2"; // untranslated
+Blockly.Msg.MATH_MODULO_TOOLTIP = "Return the remainder from dividing the two numbers."; // untranslated
+Blockly.Msg.MATH_MULTIPLICATION_SYMBOL = "×"; // untranslated
+Blockly.Msg.MATH_NUMBER_HELPURL = "https://en.wikipedia.org/wiki/Number";
+Blockly.Msg.MATH_NUMBER_TOOLTIP = "یه شماره.";
+Blockly.Msg.MATH_ONLIST_HELPURL = ""; // untranslated
+Blockly.Msg.MATH_ONLIST_OPERATOR_AVERAGE = "مینجاگه نوم گه";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MAX = "بیشترونه د نومگه";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MEDIAN = "مینجا نوم گه";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MIN = "کمترونه د نومگه";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MODE = "بیشری د نومگه";
+Blockly.Msg.MATH_ONLIST_OPERATOR_RANDOM = "random item of list"; // untranslated
+Blockly.Msg.MATH_ONLIST_OPERATOR_STD_DEV = "standard deviation of list"; // untranslated
+Blockly.Msg.MATH_ONLIST_OPERATOR_SUM = "جم کردن نومگه";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_AVERAGE = "Return the average (arithmetic mean) of the numeric values in the list."; // untranslated
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MAX = "Return the largest number in the list."; // untranslated
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MEDIAN = "Return the median number in the list."; // untranslated
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MIN = "Return the smallest number in the list."; // untranslated
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MODE = "Return a list of the most common item(s) in the list."; // untranslated
+Blockly.Msg.MATH_ONLIST_TOOLTIP_RANDOM = "Return a random element from the list."; // untranslated
+Blockly.Msg.MATH_ONLIST_TOOLTIP_STD_DEV = "Return the standard deviation of the list."; // untranslated
+Blockly.Msg.MATH_ONLIST_TOOLTIP_SUM = "Return the sum of all the numbers in the list."; // untranslated
+Blockly.Msg.MATH_POWER_SYMBOL = "^"; // untranslated
+Blockly.Msg.MATH_RANDOM_FLOAT_HELPURL = "https://en.wikipedia.org/wiki/Random_number_generation";
+Blockly.Msg.MATH_RANDOM_FLOAT_TITLE_RANDOM = "random fraction"; // untranslated
+Blockly.Msg.MATH_RANDOM_FLOAT_TOOLTIP = "Return a random fraction between 0.0 (inclusive) and 1.0 (exclusive)."; // untranslated
+Blockly.Msg.MATH_RANDOM_INT_HELPURL = "https://en.wikipedia.org/wiki/Random_number_generation";
+Blockly.Msg.MATH_RANDOM_INT_TITLE = "random integer from %1 to %2"; // untranslated
+Blockly.Msg.MATH_RANDOM_INT_TOOLTIP = "Return a random integer between the two specified limits, inclusive."; // untranslated
+Blockly.Msg.MATH_ROUND_HELPURL = "https://en.wikipedia.org/wiki/Rounding";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUND = "گرد کردن";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDDOWN = "وه هار گرد کردن";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDUP = "وه رو گرد کردن";
+Blockly.Msg.MATH_ROUND_TOOLTIP = "Round a number up or down."; // untranslated
+Blockly.Msg.MATH_SINGLE_HELPURL = "https://en.wikipedia.org/wiki/Square_root";
+Blockly.Msg.MATH_SINGLE_OP_ABSOLUTE = "تموم و کمال";
+Blockly.Msg.MATH_SINGLE_OP_ROOT = "چارسوک ریشه";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ABS = "Return the absolute value of a number."; // untranslated
+Blockly.Msg.MATH_SINGLE_TOOLTIP_EXP = "Return e to the power of a number."; // untranslated
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LN = "Return the natural logarithm of a number."; // untranslated
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LOG10 = "Return the base 10 logarithm of a number."; // untranslated
+Blockly.Msg.MATH_SINGLE_TOOLTIP_NEG = "Return the negation of a number."; // untranslated
+Blockly.Msg.MATH_SINGLE_TOOLTIP_POW10 = "Return 10 to the power of a number."; // untranslated
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ROOT = "Return the square root of a number."; // untranslated
+Blockly.Msg.MATH_SUBTRACTION_SYMBOL = "-"; // untranslated
+Blockly.Msg.MATH_TRIG_ACOS = "acos"; // untranslated
+Blockly.Msg.MATH_TRIG_ASIN = "asin"; // untranslated
+Blockly.Msg.MATH_TRIG_ATAN = "atan"; // untranslated
+Blockly.Msg.MATH_TRIG_COS = "cos"; // untranslated
+Blockly.Msg.MATH_TRIG_HELPURL = "https://en.wikipedia.org/wiki/Trigonometric_functions";
+Blockly.Msg.MATH_TRIG_SIN = "sin"; // untranslated
+Blockly.Msg.MATH_TRIG_TAN = "tan"; // untranslated
+Blockly.Msg.MATH_TRIG_TOOLTIP_ACOS = "Return the arccosine of a number."; // untranslated
+Blockly.Msg.MATH_TRIG_TOOLTIP_ASIN = "Return the arcsine of a number."; // untranslated
+Blockly.Msg.MATH_TRIG_TOOLTIP_ATAN = "Return the arctangent of a number."; // untranslated
+Blockly.Msg.MATH_TRIG_TOOLTIP_COS = "Return the cosine of a degree (not radian)."; // untranslated
+Blockly.Msg.MATH_TRIG_TOOLTIP_SIN = "Return the sine of a degree (not radian)."; // untranslated
+Blockly.Msg.MATH_TRIG_TOOLTIP_TAN = "Return the tangent of a degree (not radian)."; // untranslated
+Blockly.Msg.NEW_VARIABLE = "آلشتگر تازه...";
+Blockly.Msg.NEW_VARIABLE_TITLE = "نوم آلشتگر تازه:";
+Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; // untranslated
+Blockly.Msg.PROCEDURES_ALLOW_STATEMENTS = "allow statements"; // untranslated
+Blockly.Msg.PROCEDURES_BEFORE_PARAMS = "وا:";
+Blockly.Msg.PROCEDURES_CALLNORETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29";
+Blockly.Msg.PROCEDURES_CALLNORETURN_TOOLTIP = "Run the user-defined function '%1'."; // untranslated
+Blockly.Msg.PROCEDURES_CALLRETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29";
+Blockly.Msg.PROCEDURES_CALLRETURN_TOOLTIP = "Run the user-defined function '%1' and use its output."; // untranslated
+Blockly.Msg.PROCEDURES_CALL_BEFORE_PARAMS = "وا:";
+Blockly.Msg.PROCEDURES_CREATE_DO = "راس کردن%1";
+Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT = "Describe this function..."; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_DO = ""; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE = "یه کار انجوم بیئت";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE = "سی";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TOOLTIP = "Creates a function with no output."; // untranslated
+Blockly.Msg.PROCEDURES_DEFRETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_DEFRETURN_RETURN = "ورگنیئن";
+Blockly.Msg.PROCEDURES_DEFRETURN_TOOLTIP = "Creates a function with an output."; // untranslated
+Blockly.Msg.PROCEDURES_DEF_DUPLICATE_WARNING = "Warning: This function has duplicate parameters."; // untranslated
+Blockly.Msg.PROCEDURES_HIGHLIGHT_DEF = "Highlight function definition"; // untranslated
+Blockly.Msg.PROCEDURES_IFRETURN_HELPURL = "http://c2.com/cgi/wiki?GuardClause"; // untranslated
+Blockly.Msg.PROCEDURES_IFRETURN_TOOLTIP = "If a value is true, then return a second value."; // untranslated
+Blockly.Msg.PROCEDURES_IFRETURN_WARNING = "Warning: This block may be used only within a function definition."; // untranslated
+Blockly.Msg.PROCEDURES_MUTATORARG_TITLE = "نوم داده:";
+Blockly.Msg.PROCEDURES_MUTATORARG_TOOLTIP = "Add an input to the function."; // untranslated
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TITLE = "داده یا";
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TOOLTIP = "Add, remove, or reorder inputs to this function."; // untranslated
+Blockly.Msg.REDO = "Redo"; // untranslated
+Blockly.Msg.REMOVE_COMMENT = "نظر جا وه جا کو";
+Blockly.Msg.RENAME_VARIABLE = "د نو نوم نیائن آلشتگر...";
+Blockly.Msg.RENAME_VARIABLE_TITLE = "د نو نوم نیائن %1 د تموم آلشتگریا د:";
+Blockly.Msg.TEXT_APPEND_APPENDTEXT = "append text"; // untranslated
+Blockly.Msg.TEXT_APPEND_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_APPEND_TO = "سی";
+Blockly.Msg.TEXT_APPEND_TOOLTIP = "Append some text to variable '%1'."; // untranslated
+Blockly.Msg.TEXT_CHANGECASE_HELPURL = "https://github.com/google/blockly/wiki/Text#adjusting-text-case"; // untranslated
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_LOWERCASE = "سی واج کؤچک";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_TITLECASE = "to Title Case"; // untranslated
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_UPPERCASE = "سی حرف گپ";
+Blockly.Msg.TEXT_CHANGECASE_TOOLTIP = "Return a copy of the text in a different case."; // untranslated
+Blockly.Msg.TEXT_CHARAT_FIRST = "get first letter"; // untranslated
+Blockly.Msg.TEXT_CHARAT_FROM_END = "get letter # from end"; // untranslated
+Blockly.Msg.TEXT_CHARAT_FROM_START = "get letter #"; // untranslated
+Blockly.Msg.TEXT_CHARAT_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-text"; // untranslated
+Blockly.Msg.TEXT_CHARAT_INPUT_INTEXT = "د متن";
+Blockly.Msg.TEXT_CHARAT_LAST = "get last letter"; // untranslated
+Blockly.Msg.TEXT_CHARAT_RANDOM = "get random letter"; // untranslated
+Blockly.Msg.TEXT_CHARAT_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_CHARAT_TOOLTIP = "Returns the letter at the specified position."; // untranslated
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TOOLTIP = "Add an item to the text."; // untranslated
+Blockly.Msg.TEXT_CREATE_JOIN_TITLE_JOIN = "پیوسن";
+Blockly.Msg.TEXT_CREATE_JOIN_TOOLTIP = "Add, remove, or reorder sections to reconfigure this text block."; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_END = "سی واج# تا آخر";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_START = "سی واج#";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_LAST = "سی آخرین واج";
+Blockly.Msg.TEXT_GET_SUBSTRING_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_INPUT_IN_TEXT = "د متن";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FIRST = "get substring from first letter"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_END = "get substring from letter # from end"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_START = "get substring from letter #"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_TOOLTIP = "Returns a specified portion of the text."; // untranslated
+Blockly.Msg.TEXT_INDEXOF_HELPURL = "https://github.com/google/blockly/wiki/Text#finding-text"; // untranslated
+Blockly.Msg.TEXT_INDEXOF_INPUT_INTEXT = "د متن";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_FIRST = "find first occurrence of text"; // untranslated
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_LAST = "find last occurrence of text"; // untranslated
+Blockly.Msg.TEXT_INDEXOF_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_INDEXOF_TOOLTIP = "Returns the index of the first/last occurrence of the first text in the second text. Returns %1 if text is not found."; // untranslated
+Blockly.Msg.TEXT_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Text#checking-for-empty-text"; // untranslated
+Blockly.Msg.TEXT_ISEMPTY_TITLE = "%1 حالیه";
+Blockly.Msg.TEXT_ISEMPTY_TOOLTIP = "Returns true if the provided text is empty."; // untranslated
+Blockly.Msg.TEXT_JOIN_HELPURL = "https://github.com/google/blockly/wiki/Text#text-creation"; // untranslated
+Blockly.Msg.TEXT_JOIN_TITLE_CREATEWITH = "راس کردن متن وا";
+Blockly.Msg.TEXT_JOIN_TOOLTIP = "Create a piece of text by joining together any number of items."; // untranslated
+Blockly.Msg.TEXT_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_LENGTH_TITLE = "length of %1"; // untranslated
+Blockly.Msg.TEXT_LENGTH_TOOLTIP = "Returns the number of letters (including spaces) in the provided text."; // untranslated
+Blockly.Msg.TEXT_PRINT_HELPURL = "https://github.com/google/blockly/wiki/Text#printing-text"; // untranslated
+Blockly.Msg.TEXT_PRINT_TITLE = "print %1"; // untranslated
+Blockly.Msg.TEXT_PRINT_TOOLTIP = "Print the specified text, number or other value."; // untranslated
+Blockly.Msg.TEXT_PROMPT_HELPURL = "https://github.com/google/blockly/wiki/Text#getting-input-from-the-user"; // untranslated
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_NUMBER = "Prompt for user for a number."; // untranslated
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_TEXT = "Prompt for user for some text."; // untranslated
+Blockly.Msg.TEXT_PROMPT_TYPE_NUMBER = "prompt for number with message"; // untranslated
+Blockly.Msg.TEXT_PROMPT_TYPE_TEXT = "prompt for text with message"; // untranslated
+Blockly.Msg.TEXT_TEXT_HELPURL = "https://en.wikipedia.org/wiki/String_(computer_science)";
+Blockly.Msg.TEXT_TEXT_TOOLTIP = "A letter, word, or line of text."; // untranslated
+Blockly.Msg.TEXT_TRIM_HELPURL = "https://github.com/google/blockly/wiki/Text#trimming-removing-spaces"; // untranslated
+Blockly.Msg.TEXT_TRIM_OPERATOR_BOTH = "trim spaces from both sides of"; // untranslated
+Blockly.Msg.TEXT_TRIM_OPERATOR_LEFT = "trim spaces from left side of"; // untranslated
+Blockly.Msg.TEXT_TRIM_OPERATOR_RIGHT = "trim spaces from right side of"; // untranslated
+Blockly.Msg.TEXT_TRIM_TOOLTIP = "Return a copy of the text with spaces removed from one or both ends."; // untranslated
+Blockly.Msg.TODAY = "ئمروٙ";
+Blockly.Msg.UNDO = "Undo"; // untranslated
+Blockly.Msg.VARIABLES_DEFAULT_NAME = "قلم";
+Blockly.Msg.VARIABLES_GET_CREATE_SET = "Create 'set %1'"; // untranslated
+Blockly.Msg.VARIABLES_GET_HELPURL = "https://github.com/google/blockly/wiki/Variables#get"; // untranslated
+Blockly.Msg.VARIABLES_GET_TOOLTIP = "Returns the value of this variable."; // untranslated
+Blockly.Msg.VARIABLES_SET = "میزوکاری %1 سی %2";
+Blockly.Msg.VARIABLES_SET_CREATE_GET = "Create 'get %1'"; // untranslated
+Blockly.Msg.VARIABLES_SET_HELPURL = "https://github.com/google/blockly/wiki/Variables#set"; // untranslated
+Blockly.Msg.VARIABLES_SET_TOOLTIP = "Sets this variable to be equal to the input."; // untranslated
+Blockly.Msg.VARIABLE_ALREADY_EXISTS = "A variable named '%1' already exists."; // untranslated
+Blockly.Msg.PROCEDURES_DEFRETURN_TITLE = Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE;
+Blockly.Msg.CONTROLS_IF_IF_TITLE_IF = Blockly.Msg.CONTROLS_IF_MSG_IF;
+Blockly.Msg.CONTROLS_WHILEUNTIL_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_MSG_THEN = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_ELSE_TITLE_ELSE = Blockly.Msg.CONTROLS_IF_MSG_ELSE;
+Blockly.Msg.PROCEDURES_DEFRETURN_PROCEDURE = Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE;
+Blockly.Msg.LISTS_GET_SUBLIST_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.LISTS_GET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.PROCEDURES_DEFRETURN_DO = Blockly.Msg.PROCEDURES_DEFNORETURN_DO;
+Blockly.Msg.CONTROLS_IF_ELSEIF_TITLE_ELSEIF = Blockly.Msg.CONTROLS_IF_MSG_ELSEIF;
+Blockly.Msg.LISTS_GET_INDEX_HELPURL = Blockly.Msg.LISTS_INDEX_OF_HELPURL;
+Blockly.Msg.CONTROLS_FOREACH_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_SET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TITLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_APPEND_VARIABLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.LISTS_INDEX_OF_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.PROCEDURES_DEFRETURN_COMMENT = Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT; \ No newline at end of file
diff --git a/blockly/msg/js/lt.js b/blockly/msg/js/lt.js
new file mode 100644
index 0000000..bc06f1e
--- /dev/null
+++ b/blockly/msg/js/lt.js
@@ -0,0 +1,391 @@
+// This file was automatically generated. Do not modify.
+
+'use strict';
+
+goog.provide('Blockly.Msg.lt');
+
+goog.require('Blockly.Msg');
+
+Blockly.Msg.ADD_COMMENT = "Palikti komentarą";
+Blockly.Msg.CHANGE_VALUE_TITLE = "Keisti reikšmę:";
+Blockly.Msg.CLEAN_UP = "Išvalyti blokus";
+Blockly.Msg.COLLAPSE_ALL = "Suskleisti blokus";
+Blockly.Msg.COLLAPSE_BLOCK = "Suskleisti bloką";
+Blockly.Msg.COLOUR_BLEND_COLOUR1 = "1 spalva";
+Blockly.Msg.COLOUR_BLEND_COLOUR2 = "2 spalva";
+Blockly.Msg.COLOUR_BLEND_HELPURL = "http://meyerweb.com/eric/tools/color-blend/"; // untranslated
+Blockly.Msg.COLOUR_BLEND_RATIO = "santykis";
+Blockly.Msg.COLOUR_BLEND_TITLE = "sumaišyk";
+Blockly.Msg.COLOUR_BLEND_TOOLTIP = "Sumaišo dvi spalvas su pateiktu santykiu (0.0 - 1.0).";
+Blockly.Msg.COLOUR_PICKER_HELPURL = "https://lt.wikipedia.org/wiki/Spalva";
+Blockly.Msg.COLOUR_PICKER_TOOLTIP = "Pasirinkti spalvą iš paletės.";
+Blockly.Msg.COLOUR_RANDOM_HELPURL = "http://randomcolour.com"; // untranslated
+Blockly.Msg.COLOUR_RANDOM_TITLE = "atsitiktinė spalva";
+Blockly.Msg.COLOUR_RANDOM_TOOLTIP = "Pasirinkti spalvą atsitiktinai.";
+Blockly.Msg.COLOUR_RGB_BLUE = "mėlyna";
+Blockly.Msg.COLOUR_RGB_GREEN = "žalia";
+Blockly.Msg.COLOUR_RGB_HELPURL = "http://www.december.com/html/spec/colorper.html"; // untranslated
+Blockly.Msg.COLOUR_RGB_RED = "raudona";
+Blockly.Msg.COLOUR_RGB_TITLE = "spalva su";
+Blockly.Msg.COLOUR_RGB_TOOLTIP = "Spalvą galima sudaryti iš raudonos, žalios ir mėlynos dedamųjų. Kiekvienos intensyvumas nuo 0 iki 100.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_HELPURL = "https://github.com/google/blockly/wiki/Loops#loop-termination-blocks"; // untranslated
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK = "nutraukti kartojimą";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE = "šį kartą praleisti likusius veiksmus ir tęsti kartojimą";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK = "Nutraukia (artimiausią) vykstantį kartojimą.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE = "Praleidžia žemiau išvardintus kartojimo veiksmus (ir tęsia darbą nuo kartojimo pradinio veiksmo).";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_WARNING = "Atsargiai: šis blokas gali būt naudojamas tik kartojimo bloko viduje.";
+Blockly.Msg.CONTROLS_FOREACH_HELPURL = "https://github.com/google/blockly/wiki/Loops#for-each"; // untranslated
+Blockly.Msg.CONTROLS_FOREACH_TITLE = "kartok su kiekvienu %1 iš sąrašo %2";
+Blockly.Msg.CONTROLS_FOREACH_TOOLTIP = "Kartok veiksmus, kol kintamasis \"%1\" paeiliui gauna kiekvieną sąrašo reikšmę.";
+Blockly.Msg.CONTROLS_FOR_HELPURL = "https://github.com/google/blockly/wiki/Loops#count-with"; // untranslated
+Blockly.Msg.CONTROLS_FOR_TITLE = "kartok, kai %1 kinta nuo %2 iki %3 po %4";
+Blockly.Msg.CONTROLS_FOR_TOOLTIP = "Kartoti veiksmus su kiekvienu sąrašo elementu, priskirtu kintamajam \"%1\".";
+Blockly.Msg.CONTROLS_IF_ELSEIF_TOOLTIP = "Pridėti sąlygą „jei“ blokui.";
+Blockly.Msg.CONTROLS_IF_ELSE_TOOLTIP = "Pridėti veiksmų vykdymo variantą/\"šaką\", kai netenkinama nė viena sąlyga.";
+Blockly.Msg.CONTROLS_IF_HELPURL = "https://github.com/google/blockly/wiki/IfElse"; // untranslated
+Blockly.Msg.CONTROLS_IF_IF_TOOLTIP = "Galite pridėt/pašalinti/pertvarkyti sąlygų \"šakas\".";
+Blockly.Msg.CONTROLS_IF_MSG_ELSE = "kitu atveju";
+Blockly.Msg.CONTROLS_IF_MSG_ELSEIF = "arba jei";
+Blockly.Msg.CONTROLS_IF_MSG_IF = "jei";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_1 = "Jeigu sąlyga tenkinama, tai atlik veiksmus.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_2 = "Jei sąlyga tenkinama, atlikti jai priklausančius veiksmus, o jei ne -- atlikti kitus nurodytus veiksmus.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_3 = "Jei pirma sąlyga tenkinama, atlikti jai priklausančius veiksmus, O jei ne, tikrinti antrą sąlygą -- ir jei ši tenkinama, atlikti jos veiksmus.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_4 = "Jei pirma sąlyga tenkinama, atlikti jai priklausančius veiksmus, O jei ne, tikrinti antrą sąlygą -- ir jei ši tenkinama, atlikti jos veiksmus. Kitais atvejais -- atlikti paskutinio bloko veiksmus.";
+Blockly.Msg.CONTROLS_REPEAT_HELPURL = "https://en.wikipedia.org/wiki/For_loop";
+Blockly.Msg.CONTROLS_REPEAT_INPUT_DO = "daryti";
+Blockly.Msg.CONTROLS_REPEAT_TITLE = "pakartokite %1 kartus";
+Blockly.Msg.CONTROLS_REPEAT_TOOLTIP = "Leidžia atlikti išvardintus veiksmus kelis kartus.";
+Blockly.Msg.CONTROLS_WHILEUNTIL_HELPURL = "https://github.com/google/blockly/wiki/Loops#repeat"; // untranslated
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "kartok, kol pasieksi";
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "kartok kol";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "Kartoja veiksmus, kol bus pasiekta nurodyta sąlyga.";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "Kartoja veiksmus, kol sąlyga tenkinama.";
+Blockly.Msg.DELETE_ALL_BLOCKS = "Ištrinti visus %1 blokus?";
+Blockly.Msg.DELETE_BLOCK = "Ištrinti bloką";
+Blockly.Msg.DELETE_VARIABLE = "Delete the '%1' variable"; // untranslated
+Blockly.Msg.DELETE_VARIABLE_CONFIRMATION = "Delete %1 uses of the '%2' variable?"; // untranslated
+Blockly.Msg.DELETE_X_BLOCKS = "Ištrinti %1 blokus";
+Blockly.Msg.DISABLE_BLOCK = "Išjungti bloką";
+Blockly.Msg.DUPLICATE_BLOCK = "Kopijuoti";
+Blockly.Msg.ENABLE_BLOCK = "Įjungti bloką";
+Blockly.Msg.EXPAND_ALL = "Išskleisti blokus";
+Blockly.Msg.EXPAND_BLOCK = "Išskleisti bloką";
+Blockly.Msg.EXTERNAL_INPUTS = "Išdėstyti stulpeliu, kai daug parametrų";
+Blockly.Msg.HELP = "Pagalba";
+Blockly.Msg.INLINE_INPUTS = "Išdėstyti vienoje eilutėje";
+Blockly.Msg.LISTS_CREATE_EMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-empty-list"; // untranslated
+Blockly.Msg.LISTS_CREATE_EMPTY_TITLE = "tuščias sąrašas";
+Blockly.Msg.LISTS_CREATE_EMPTY_TOOLTIP = "Grąžina sąrašą, ilgio 0, neturintį duomenų";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TITLE_ADD = "sąrašas";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TOOLTIP = "Add, remove, or reorder sections to reconfigure this list block."; // untranslated
+Blockly.Msg.LISTS_CREATE_WITH_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
+Blockly.Msg.LISTS_CREATE_WITH_INPUT_WITH = "sukurti sąrašą su";
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TOOLTIP = "Pridėti elementą į sąrašą.";
+Blockly.Msg.LISTS_CREATE_WITH_TOOLTIP = "Sukurti sąrašą iš bet kokio skaičiaus elementų.";
+Blockly.Msg.LISTS_GET_INDEX_FIRST = "pirmas";
+Blockly.Msg.LISTS_GET_INDEX_FROM_END = "# nuo galo";
+Blockly.Msg.LISTS_GET_INDEX_FROM_START = "#"; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_GET = "paimk";
+Blockly.Msg.LISTS_GET_INDEX_GET_REMOVE = "paimk ir ištrink";
+Blockly.Msg.LISTS_GET_INDEX_LAST = "paskutinis";
+Blockly.Msg.LISTS_GET_INDEX_RANDOM = "atsitiktinis";
+Blockly.Msg.LISTS_GET_INDEX_REMOVE = "pašalinti";
+Blockly.Msg.LISTS_GET_INDEX_TAIL = ""; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FIRST = "Grąžina pirmąjį sąrašo elementą.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FROM = "Gražina objektą į nurodyta poziciją sąraše.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_LAST = "Grąžina paskutinį elementą iš sąrašo.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_RANDOM = "Grąžina atsitiktinį elementą iš sąrašo.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST = "Removes and returns the first item in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM = "Removes and returns the item at the specified position in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST = "Removes and returns the last item in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM = "Removes and returns a random item in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST = "Removes the first item in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM = "Removes the item at the specified position in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST = "Removes the last item in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM = "Removes a random item in a list."; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_END = "iki # nuo galo";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_START = "iki #";
+Blockly.Msg.LISTS_GET_SUBLIST_END_LAST = "iki galo";
+Blockly.Msg.LISTS_GET_SUBLIST_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-a-sublist"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_START_FIRST = "sąrašo dalis nuo pradžios";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_END = "sąrašo dalis nuo # nuo galo";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_START = "sąrašo dalis nuo #";
+Blockly.Msg.LISTS_GET_SUBLIST_TAIL = ""; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_TOOLTIP = "Creates a copy of the specified portion of a list."; // untranslated
+Blockly.Msg.LISTS_INDEX_FROM_END_TOOLTIP = "%1 yra paskutinis objektas.";
+Blockly.Msg.LISTS_INDEX_FROM_START_TOOLTIP = "%1 yra pirmasis objektas.";
+Blockly.Msg.LISTS_INDEX_OF_FIRST = "rask pirmą reikšmę";
+Blockly.Msg.LISTS_INDEX_OF_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-items-from-a-list"; // untranslated
+Blockly.Msg.LISTS_INDEX_OF_LAST = "rask paskutinę reikšmę";
+Blockly.Msg.LISTS_INDEX_OF_TOOLTIP = "Grąžina pirmos/paskutinės reikšmės eilės nr. sąraše. Grąžina %1, jei reikšmės neranda.";
+Blockly.Msg.LISTS_INLIST = "sąraše";
+Blockly.Msg.LISTS_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#is-empty"; // untranslated
+Blockly.Msg.LISTS_ISEMPTY_TITLE = "%1 yra tuščias";
+Blockly.Msg.LISTS_ISEMPTY_TOOLTIP = "Grąžina „true“, jeigu sąrašas tuščias.";
+Blockly.Msg.LISTS_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Lists#length-of"; // untranslated
+Blockly.Msg.LISTS_LENGTH_TITLE = "ilgis %1";
+Blockly.Msg.LISTS_LENGTH_TOOLTIP = "Grąžina sąrašo ilgį.";
+Blockly.Msg.LISTS_REPEAT_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
+Blockly.Msg.LISTS_REPEAT_TITLE = "sukurk sąrašą, kuriame %1 bus %2 kartus";
+Blockly.Msg.LISTS_REPEAT_TOOLTIP = "Creates a list consisting of the given value repeated the specified number of times."; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_HELPURL = "https://github.com/google/blockly/wiki/Lists#in-list--set"; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_INPUT_TO = "kaip";
+Blockly.Msg.LISTS_SET_INDEX_INSERT = "įterpk į vietą";
+Blockly.Msg.LISTS_SET_INDEX_SET = "priskirk elementui";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST = "Inserts the item at the start of a list."; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FROM = "Įterpią objektą į nurodytą poziciją sąraše.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_LAST = "Append the item to the end of a list."; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM = "Inserts the item randomly in a list."; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FIRST = "Sets the first item in a list."; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FROM = "Sets the item at the specified position in a list."; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_LAST = "Sets the last item in a list."; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_RANDOM = "Sets a random item in a list."; // untranslated
+Blockly.Msg.LISTS_SORT_HELPURL = "https://github.com/google/blockly/wiki/Lists#sorting-a-list";
+Blockly.Msg.LISTS_SORT_ORDER_ASCENDING = "didėjančia tvarka";
+Blockly.Msg.LISTS_SORT_ORDER_DESCENDING = "mažėjančia tvarka";
+Blockly.Msg.LISTS_SORT_TITLE = "rūšiuoti %1 %2 %3";
+Blockly.Msg.LISTS_SORT_TOOLTIP = "Rūšiuoti sąrašo kopiją.";
+Blockly.Msg.LISTS_SORT_TYPE_IGNORECASE = "abecėlės, ignoruoti raidžių dydį";
+Blockly.Msg.LISTS_SORT_TYPE_NUMERIC = "skaitmeninis";
+Blockly.Msg.LISTS_SORT_TYPE_TEXT = "abėcėlės";
+Blockly.Msg.LISTS_SPLIT_HELPURL = "https://github.com/google/blockly/wiki/Lists#splitting-strings-and-joining-lists"; // untranslated
+Blockly.Msg.LISTS_SPLIT_LIST_FROM_TEXT = "make list from text"; // untranslated
+Blockly.Msg.LISTS_SPLIT_TEXT_FROM_LIST = "make text from list"; // untranslated
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_JOIN = "Join a list of texts into one text, separated by a delimiter."; // untranslated
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_SPLIT = "Split text into a list of texts, breaking at each delimiter."; // untranslated
+Blockly.Msg.LISTS_SPLIT_WITH_DELIMITER = "with delimiter"; // untranslated
+Blockly.Msg.LOGIC_BOOLEAN_FALSE = "klaidinga";
+Blockly.Msg.LOGIC_BOOLEAN_HELPURL = "https://github.com/google/blockly/wiki/Logic#values"; // untranslated
+Blockly.Msg.LOGIC_BOOLEAN_TOOLTIP = "Reikšmė gali būti \"teisinga\"/\"Taip\" arba \"klaidinga\"/\"Ne\".";
+Blockly.Msg.LOGIC_BOOLEAN_TRUE = "tiesa";
+Blockly.Msg.LOGIC_COMPARE_HELPURL = "https://en.wikipedia.org/wiki/Inequality_(mathematics)";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_EQ = "Tenkinama, jei abu reiškiniai lygūs.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GT = "Return true if the first input is greater than the second input."; // untranslated
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GTE = "Return true if the first input is greater than or equal to the second input."; // untranslated
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LT = "Return true if the first input is smaller than the second input."; // untranslated
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LTE = "Return true if the first input is smaller than or equal to the second input."; // untranslated
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_NEQ = "Return true if both inputs are not equal to each other."; // untranslated
+Blockly.Msg.LOGIC_NEGATE_HELPURL = "https://github.com/google/blockly/wiki/Logic#not"; // untranslated
+Blockly.Msg.LOGIC_NEGATE_TITLE = "ne %1";
+Blockly.Msg.LOGIC_NEGATE_TOOLTIP = "Returns true if the input is false. Returns false if the input is true."; // untranslated
+Blockly.Msg.LOGIC_NULL = "nieko";
+Blockly.Msg.LOGIC_NULL_HELPURL = "https://en.wikipedia.org/wiki/Nullable_type"; // untranslated
+Blockly.Msg.LOGIC_NULL_TOOLTIP = "Reikšmė nebuvo nurodyta...";
+Blockly.Msg.LOGIC_OPERATION_AND = "ir";
+Blockly.Msg.LOGIC_OPERATION_HELPURL = "https://github.com/google/blockly/wiki/Logic#logical-operations"; // untranslated
+Blockly.Msg.LOGIC_OPERATION_OR = "arba";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_AND = "Bus teisinga, kai abi sąlygos bus tenkinamos.";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_OR = "Return true if at least one of the inputs is true."; // untranslated
+Blockly.Msg.LOGIC_TERNARY_CONDITION = "sąlyga";
+Blockly.Msg.LOGIC_TERNARY_HELPURL = "https://en.wikipedia.org/wiki/%3F:"; // untranslated
+Blockly.Msg.LOGIC_TERNARY_IF_FALSE = "jei ne";
+Blockly.Msg.LOGIC_TERNARY_IF_TRUE = "jei taip";
+Blockly.Msg.LOGIC_TERNARY_TOOLTIP = "Jeigu sąlygą tenkinama, grąžina pirmą reikšmę, o jei ne - antrąją.";
+Blockly.Msg.MATH_ADDITION_SYMBOL = "+"; // untranslated
+Blockly.Msg.MATH_ARITHMETIC_HELPURL = "https://en.wikipedia.org/wiki/Arithmetic";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_ADD = "Grąžina dviejų skaičių sumą.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE = "Grąžina dviejų skaičių dalmenį.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MINUS = "Grąžina dviejų skaičių skirtumą.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MULTIPLY = "Grąžina dviejų skaičių sandaugą.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_POWER = "Grąžina pirmą skaičių pakeltą laipsniu pagal antrą skaičių.";
+Blockly.Msg.MATH_CHANGE_HELPURL = "https://en.wikipedia.org/wiki/Programming_idiom#Incrementing_a_counter";
+Blockly.Msg.MATH_CHANGE_TITLE = "padidink %1 (emptypage) %2";
+Blockly.Msg.MATH_CHANGE_TOOLTIP = "Prideda skaičių prie kintamojo '%1'. Kai skaičius neigiamas - gaunasi atimtis.";
+Blockly.Msg.MATH_CONSTANT_HELPURL = "https://en.wikipedia.org/wiki/Mathematical_constant";
+Blockly.Msg.MATH_CONSTANT_TOOLTIP = "Return one of the common constants: π (3.141…), e (2.718…), φ (1.618…), sqrt(2) (1.414…), sqrt(½) (0.707…), or ∞ (infinity)."; // untranslated
+Blockly.Msg.MATH_CONSTRAIN_HELPURL = "https://en.wikipedia.org/wiki/Clamping_%28graphics%29"; // untranslated
+Blockly.Msg.MATH_CONSTRAIN_TITLE = "apribok %1 tarp %2 ir %3";
+Blockly.Msg.MATH_CONSTRAIN_TOOLTIP = "Constrain a number to be between the specified limits (inclusive)."; // untranslated
+Blockly.Msg.MATH_DIVISION_SYMBOL = "÷"; // untranslated
+Blockly.Msg.MATH_IS_DIVISIBLE_BY = "yra dalus iš";
+Blockly.Msg.MATH_IS_EVEN = "yra lyginis";
+Blockly.Msg.MATH_IS_NEGATIVE = "yra neigiamas";
+Blockly.Msg.MATH_IS_ODD = "yra nelyginis";
+Blockly.Msg.MATH_IS_POSITIVE = "yra teigiamas";
+Blockly.Msg.MATH_IS_PRIME = "yra pirminis";
+Blockly.Msg.MATH_IS_TOOLTIP = "Patikrina skaičiaus savybę: (ne)lyginis/pirminis/sveikasis/teigiamas/neigiamas/dalus iš x.";
+Blockly.Msg.MATH_IS_WHOLE = "yra sveikasis";
+Blockly.Msg.MATH_MODULO_HELPURL = "https://en.wikipedia.org/wiki/Modulo_operation";
+Blockly.Msg.MATH_MODULO_TITLE = "dalybos liekana %1 ÷ %2";
+Blockly.Msg.MATH_MODULO_TOOLTIP = "Return the remainder from dividing the two numbers."; // untranslated
+Blockly.Msg.MATH_MULTIPLICATION_SYMBOL = "×"; // untranslated
+Blockly.Msg.MATH_NUMBER_HELPURL = "https://lt.wikipedia.org/wiki/Skaičius";
+Blockly.Msg.MATH_NUMBER_TOOLTIP = "Skaičius.";
+Blockly.Msg.MATH_ONLIST_HELPURL = ""; // untranslated
+Blockly.Msg.MATH_ONLIST_OPERATOR_AVERAGE = "vidurkis";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MAX = "didžiausia reikšmė sąraše";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MEDIAN = "mediana sąrašui";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MIN = "mažiausia reikšmė sąraše";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MODE = "statistinė moda sąrašui";
+Blockly.Msg.MATH_ONLIST_OPERATOR_RANDOM = "atsitiktinis elementas iš sąrašo";
+Blockly.Msg.MATH_ONLIST_OPERATOR_STD_DEV = "standartinis nuokrypis sąraše";
+Blockly.Msg.MATH_ONLIST_OPERATOR_SUM = "suma";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_AVERAGE = "Return the average (arithmetic mean) of the numeric values in the list."; // untranslated
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MAX = "Return the largest number in the list."; // untranslated
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MEDIAN = "Grąžinti sąrašo medianą.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MIN = "Return the smallest number in the list."; // untranslated
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MODE = "Grąžinti sąrašą dažniausių elementų sąraše.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_RANDOM = "Grąžinti atsitiktinį elementą iš sąrašo.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_STD_DEV = "Return the standard deviation of the list."; // untranslated
+Blockly.Msg.MATH_ONLIST_TOOLTIP_SUM = "didžiausia reikšmė";
+Blockly.Msg.MATH_POWER_SYMBOL = "^"; // untranslated
+Blockly.Msg.MATH_RANDOM_FLOAT_HELPURL = "https://en.wikipedia.org/wiki/Random_number_generation";
+Blockly.Msg.MATH_RANDOM_FLOAT_TITLE_RANDOM = "atsitiktinė trupmena";
+Blockly.Msg.MATH_RANDOM_FLOAT_TOOLTIP = "Atsitiktinė trupmena nuo 0 (imtinai) iki 1 (neimtinai).";
+Blockly.Msg.MATH_RANDOM_INT_HELPURL = "https://en.wikipedia.org/wiki/Random_number_generation";
+Blockly.Msg.MATH_RANDOM_INT_TITLE = "atsitiktinis sveikas sk. nuo %1 iki %2";
+Blockly.Msg.MATH_RANDOM_INT_TOOLTIP = "Return a random integer between the two specified limits, inclusive."; // untranslated
+Blockly.Msg.MATH_ROUND_HELPURL = "https://lt.wikipedia.org/wiki/Apvalinimas";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUND = "apvalink";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDDOWN = "apvalink žemyn";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDUP = "apvalink aukštyn";
+Blockly.Msg.MATH_ROUND_TOOLTIP = "Suapvalinti skaičių į žemesnę ar aukštesnę reikšmę.";
+Blockly.Msg.MATH_SINGLE_HELPURL = "https://en.wikipedia.org/wiki/Square_root";
+Blockly.Msg.MATH_SINGLE_OP_ABSOLUTE = "modulis";
+Blockly.Msg.MATH_SINGLE_OP_ROOT = "kvadratinė šaknis";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ABS = "Skaičiaus modulis - reikšmė be ženklo (panaikina minusą).";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_EXP = "Grąžinti skaičių laipsniu e.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LN = "Grąžinti skaičiaus natūrinį logaritmą.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LOG10 = "Return the base 10 logarithm of a number."; // untranslated
+Blockly.Msg.MATH_SINGLE_TOOLTIP_NEG = "Grąžina skaičiui priešingą skaičių.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_POW10 = "Grąžinti skaičių laipsniu 10.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ROOT = "Return the square root of a number."; // untranslated
+Blockly.Msg.MATH_SUBTRACTION_SYMBOL = "-"; // untranslated
+Blockly.Msg.MATH_TRIG_ACOS = "acos"; // untranslated
+Blockly.Msg.MATH_TRIG_ASIN = "asin"; // untranslated
+Blockly.Msg.MATH_TRIG_ATAN = "atan"; // untranslated
+Blockly.Msg.MATH_TRIG_COS = "cos"; // untranslated
+Blockly.Msg.MATH_TRIG_HELPURL = "https://lt.wikipedia.org/wiki/Trigonometrinės_funkcijos";
+Blockly.Msg.MATH_TRIG_SIN = "sin"; // untranslated
+Blockly.Msg.MATH_TRIG_TAN = "tan"; // untranslated
+Blockly.Msg.MATH_TRIG_TOOLTIP_ACOS = "Grąžinti skaičiaus arkkosinusą.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ASIN = "Grąžinti skaičiaus arksinusą.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ATAN = "Grąžinti skaičiaus arktangentą.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_COS = "Grąžinti laipsnio kosinusą (ne radiano).";
+Blockly.Msg.MATH_TRIG_TOOLTIP_SIN = "Grąžinti laipsnio sinusą (ne radiano).";
+Blockly.Msg.MATH_TRIG_TOOLTIP_TAN = "Grąžinti laipsnio tangentą (ne radiano).";
+Blockly.Msg.NEW_VARIABLE = "Naujas kintamasis...";
+Blockly.Msg.NEW_VARIABLE_TITLE = "Naujo kintamojo pavadinimas:";
+Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; // untranslated
+Blockly.Msg.PROCEDURES_ALLOW_STATEMENTS = "leisti vidinius veiksmus";
+Blockly.Msg.PROCEDURES_BEFORE_PARAMS = "pagal:";
+Blockly.Msg.PROCEDURES_CALLNORETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29";
+Blockly.Msg.PROCEDURES_CALLNORETURN_TOOLTIP = "Vykdyti sukurtą komandą \"%1\".";
+Blockly.Msg.PROCEDURES_CALLRETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29";
+Blockly.Msg.PROCEDURES_CALLRETURN_TOOLTIP = "Įvykdyti komandą \"%1\" ir naudoti jos suskaičiuotą (atiduotą) reikšmę.";
+Blockly.Msg.PROCEDURES_CALL_BEFORE_PARAMS = "su:";
+Blockly.Msg.PROCEDURES_CREATE_DO = "Sukurti \"%1\"";
+Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT = "Describe this function..."; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_DO = ""; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE = "daryk kažką";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE = "komanda:";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TOOLTIP = "Sukuria procedūrą - komandą, kuri nepateikia jokio rezultato (tik atlieka veiksmus).";
+Blockly.Msg.PROCEDURES_DEFRETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_DEFRETURN_RETURN = "duok";
+Blockly.Msg.PROCEDURES_DEFRETURN_TOOLTIP = "Sukuria funkciją - komandą, kuri ne tik atlieka veiksmus bet ir pateikia (grąžina/duoda) rezultatą.";
+Blockly.Msg.PROCEDURES_DEF_DUPLICATE_WARNING = "Ši komanda turi du vienodus gaunamų duomenų pavadinimus.";
+Blockly.Msg.PROCEDURES_HIGHLIGHT_DEF = "Highlight function definition"; // untranslated
+Blockly.Msg.PROCEDURES_IFRETURN_HELPURL = "http://c2.com/cgi/wiki?GuardClause"; // untranslated
+Blockly.Msg.PROCEDURES_IFRETURN_TOOLTIP = "Jeigu pirma reikšmė yra teisinga (sąlyga tenkinama), grąžina antrą reikšmę.";
+Blockly.Msg.PROCEDURES_IFRETURN_WARNING = "Perspėjimas: šis blokas gali būti naudojamas tik aprašant funkciją.";
+Blockly.Msg.PROCEDURES_MUTATORARG_TITLE = "parametro pavadinimas:";
+Blockly.Msg.PROCEDURES_MUTATORARG_TOOLTIP = "Pridėti funkcijos parametrą (gaunamų duomenų pavadinimą).";
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TITLE = "gaunami duomenys (parametrai)";
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TOOLTIP = "Tvarkyti komandos gaunamus duomenis (parametrus).";
+Blockly.Msg.REDO = "Atkurti";
+Blockly.Msg.REMOVE_COMMENT = "Pašalinti komentarą";
+Blockly.Msg.RENAME_VARIABLE = "Pervardyti kintamajį...";
+Blockly.Msg.RENAME_VARIABLE_TITLE = "Pervadinti visus '%1' kintamuosius į:";
+Blockly.Msg.TEXT_APPEND_APPENDTEXT = "pridėk tekstą";
+Blockly.Msg.TEXT_APPEND_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_APPEND_TO = "prie";
+Blockly.Msg.TEXT_APPEND_TOOLTIP = "Append some text to variable '%1'."; // untranslated
+Blockly.Msg.TEXT_CHANGECASE_HELPURL = "https://github.com/google/blockly/wiki/Text#adjusting-text-case"; // untranslated
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_LOWERCASE = " mažosiom raidėm";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_TITLECASE = " Pavadinimo Raidėmis";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_UPPERCASE = " DIDŽIOSIOM RAIDĖM";
+Blockly.Msg.TEXT_CHANGECASE_TOOLTIP = "Return a copy of the text in a different case."; // untranslated
+Blockly.Msg.TEXT_CHARAT_FIRST = "gauti pirmą raidę";
+Blockly.Msg.TEXT_CHARAT_FROM_END = "raidė nuo galo #";
+Blockly.Msg.TEXT_CHARAT_FROM_START = "gauti raidę #";
+Blockly.Msg.TEXT_CHARAT_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-text"; // untranslated
+Blockly.Msg.TEXT_CHARAT_INPUT_INTEXT = "tekste";
+Blockly.Msg.TEXT_CHARAT_LAST = "gauti paskutinę raidę";
+Blockly.Msg.TEXT_CHARAT_RANDOM = "gauti atsitiktinę raidę";
+Blockly.Msg.TEXT_CHARAT_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_CHARAT_TOOLTIP = "Returns the letter at the specified position."; // untranslated
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TOOLTIP = "Pridėti teksto elementą.";
+Blockly.Msg.TEXT_CREATE_JOIN_TITLE_JOIN = "sujunk";
+Blockly.Msg.TEXT_CREATE_JOIN_TOOLTIP = "Add, remove, or reorder sections to reconfigure this text block."; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_END = "iki raidės nuo galo #";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_START = "iki raidės #";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_LAST = "iki pabaigos";
+Blockly.Msg.TEXT_GET_SUBSTRING_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_INPUT_IN_TEXT = "tekste";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FIRST = "dalis nuo pradžios";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_END = "dalis nuo raidės #";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_START = "dalis nuo raidės #";
+Blockly.Msg.TEXT_GET_SUBSTRING_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_TOOLTIP = "Returns a specified portion of the text."; // untranslated
+Blockly.Msg.TEXT_INDEXOF_HELPURL = "https://github.com/google/blockly/wiki/Text#finding-text"; // untranslated
+Blockly.Msg.TEXT_INDEXOF_INPUT_INTEXT = "tekste";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_FIRST = "rask,kur pirmą kartą paminėta";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_LAST = "rask,kur paskutinį kartą paminėta";
+Blockly.Msg.TEXT_INDEXOF_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_INDEXOF_TOOLTIP = "Returns the index of the first/last occurrence of the first text in the second text. Returns %1 if text is not found."; // untranslated
+Blockly.Msg.TEXT_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Text#checking-for-empty-text"; // untranslated
+Blockly.Msg.TEXT_ISEMPTY_TITLE = "%1 yra tuščias";
+Blockly.Msg.TEXT_ISEMPTY_TOOLTIP = "Returns true if the provided text is empty."; // untranslated
+Blockly.Msg.TEXT_JOIN_HELPURL = "https://github.com/google/blockly/wiki/Text#text-creation"; // untranslated
+Blockly.Msg.TEXT_JOIN_TITLE_CREATEWITH = "sukurti tekstą su";
+Blockly.Msg.TEXT_JOIN_TOOLTIP = "Create a piece of text by joining together any number of items."; // untranslated
+Blockly.Msg.TEXT_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_LENGTH_TITLE = "teksto %1 ilgis";
+Blockly.Msg.TEXT_LENGTH_TOOLTIP = "Suranda teksto simbolių kiekį (įskaitant ir tarpus)";
+Blockly.Msg.TEXT_PRINT_HELPURL = "https://github.com/google/blockly/wiki/Text#printing-text"; // untranslated
+Blockly.Msg.TEXT_PRINT_TITLE = "spausdinti %1";
+Blockly.Msg.TEXT_PRINT_TOOLTIP = "Print the specified text, number or other value."; // untranslated
+Blockly.Msg.TEXT_PROMPT_HELPURL = "https://github.com/google/blockly/wiki/Text#getting-input-from-the-user"; // untranslated
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_NUMBER = "Prašyti vartotoją įvesti skaičių.";
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_TEXT = "Prašyti vartotoją įvesti tekstą.";
+Blockly.Msg.TEXT_PROMPT_TYPE_NUMBER = "paprašyk įvesti skaičių :";
+Blockly.Msg.TEXT_PROMPT_TYPE_TEXT = "paprašyk įvesti tekstą :";
+Blockly.Msg.TEXT_TEXT_HELPURL = "https://en.wikipedia.org/wiki/String_(computer_science)"; // untranslated
+Blockly.Msg.TEXT_TEXT_TOOLTIP = "Tekstas (arba žodis, ar raidė)";
+Blockly.Msg.TEXT_TRIM_HELPURL = "https://github.com/google/blockly/wiki/Text#trimming-removing-spaces"; // untranslated
+Blockly.Msg.TEXT_TRIM_OPERATOR_BOTH = "išvalyk tarpus šonuose";
+Blockly.Msg.TEXT_TRIM_OPERATOR_LEFT = "išvalyk tarpus pradžioje";
+Blockly.Msg.TEXT_TRIM_OPERATOR_RIGHT = "išvalyk tarpus pabaigoje";
+Blockly.Msg.TEXT_TRIM_TOOLTIP = "Return a copy of the text with spaces removed from one or both ends."; // untranslated
+Blockly.Msg.TODAY = "Šiandien";
+Blockly.Msg.UNDO = "Anuliuoti";
+Blockly.Msg.VARIABLES_DEFAULT_NAME = "elementas";
+Blockly.Msg.VARIABLES_GET_CREATE_SET = "Sukurk \"priskirk %1\"";
+Blockly.Msg.VARIABLES_GET_HELPURL = "https://github.com/google/blockly/wiki/Variables#get"; // untranslated
+Blockly.Msg.VARIABLES_GET_TOOLTIP = "Returns the value of this variable."; // untranslated
+Blockly.Msg.VARIABLES_SET = "priskirk %1 = %2";
+Blockly.Msg.VARIABLES_SET_CREATE_GET = "Sukurti 'kintamasis %1'";
+Blockly.Msg.VARIABLES_SET_HELPURL = "https://github.com/google/blockly/wiki/Variables#set"; // untranslated
+Blockly.Msg.VARIABLES_SET_TOOLTIP = "Sets this variable to be equal to the input."; // untranslated
+Blockly.Msg.VARIABLE_ALREADY_EXISTS = "A variable named '%1' already exists."; // untranslated
+Blockly.Msg.PROCEDURES_DEFRETURN_TITLE = Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE;
+Blockly.Msg.CONTROLS_IF_IF_TITLE_IF = Blockly.Msg.CONTROLS_IF_MSG_IF;
+Blockly.Msg.CONTROLS_WHILEUNTIL_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_MSG_THEN = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_ELSE_TITLE_ELSE = Blockly.Msg.CONTROLS_IF_MSG_ELSE;
+Blockly.Msg.PROCEDURES_DEFRETURN_PROCEDURE = Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE;
+Blockly.Msg.LISTS_GET_SUBLIST_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.LISTS_GET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.PROCEDURES_DEFRETURN_DO = Blockly.Msg.PROCEDURES_DEFNORETURN_DO;
+Blockly.Msg.CONTROLS_IF_ELSEIF_TITLE_ELSEIF = Blockly.Msg.CONTROLS_IF_MSG_ELSEIF;
+Blockly.Msg.LISTS_GET_INDEX_HELPURL = Blockly.Msg.LISTS_INDEX_OF_HELPURL;
+Blockly.Msg.CONTROLS_FOREACH_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_SET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TITLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_APPEND_VARIABLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.LISTS_INDEX_OF_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.PROCEDURES_DEFRETURN_COMMENT = Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT; \ No newline at end of file
diff --git a/blockly/msg/js/mk.js b/blockly/msg/js/mk.js
new file mode 100644
index 0000000..8a9b2b3
--- /dev/null
+++ b/blockly/msg/js/mk.js
@@ -0,0 +1,391 @@
+// This file was automatically generated. Do not modify.
+
+'use strict';
+
+goog.provide('Blockly.Msg.mk');
+
+goog.require('Blockly.Msg');
+
+Blockly.Msg.ADD_COMMENT = "Додај коментар:";
+Blockly.Msg.CHANGE_VALUE_TITLE = "Смена на вредност:";
+Blockly.Msg.CLEAN_UP = "Clean up Blocks"; // untranslated
+Blockly.Msg.COLLAPSE_ALL = "Собери блокови";
+Blockly.Msg.COLLAPSE_BLOCK = "Собери блок";
+Blockly.Msg.COLOUR_BLEND_COLOUR1 = "боја 1";
+Blockly.Msg.COLOUR_BLEND_COLOUR2 = "боја 2";
+Blockly.Msg.COLOUR_BLEND_HELPURL = "http://meyerweb.com/eric/tools/color-blend/"; // untranslated
+Blockly.Msg.COLOUR_BLEND_RATIO = "сооднос";
+Blockly.Msg.COLOUR_BLEND_TITLE = "смешај";
+Blockly.Msg.COLOUR_BLEND_TOOLTIP = "Меша две бои во даден сооднос (0.0 - 1.0).";
+Blockly.Msg.COLOUR_PICKER_HELPURL = "https://mk.wikipedia.org/wiki/Боја";
+Blockly.Msg.COLOUR_PICKER_TOOLTIP = "Изберете боја од палетата.";
+Blockly.Msg.COLOUR_RANDOM_HELPURL = "http://randomcolour.com"; // untranslated
+Blockly.Msg.COLOUR_RANDOM_TITLE = "случајна боја";
+Blockly.Msg.COLOUR_RANDOM_TOOLTIP = "Избери боја на тепка.";
+Blockly.Msg.COLOUR_RGB_BLUE = "сина";
+Blockly.Msg.COLOUR_RGB_GREEN = "зелена";
+Blockly.Msg.COLOUR_RGB_HELPURL = "http://www.december.com/html/spec/colorper.html"; // untranslated
+Blockly.Msg.COLOUR_RGB_RED = "црвена";
+Blockly.Msg.COLOUR_RGB_TITLE = "боја со";
+Blockly.Msg.COLOUR_RGB_TOOLTIP = "Создајте боја со укажаните износи на црвена, зелена и сина. Сите вредности мора да бидат помеѓу 0 и 100.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_HELPURL = "https://github.com/google/blockly/wiki/Loops#loop-termination-blocks"; // untranslated
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK = "излези од јамката";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE = "продолжи со следното повторување на јамката";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK = "Излези од содржечката јамка.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE = "Skip the rest of this loop, and continue with the next iteration."; // untranslated
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_WARNING = "Warning: This block may only be used within a loop."; // untranslated
+Blockly.Msg.CONTROLS_FOREACH_HELPURL = "https://github.com/google/blockly/wiki/Loops#for-each"; // untranslated
+Blockly.Msg.CONTROLS_FOREACH_TITLE = "за секој елемент %1 на списокот %2";
+Blockly.Msg.CONTROLS_FOREACH_TOOLTIP = "Му ја задава променливата „%1“ на секој елемент на списокот, а потоа исполнува наредби.";
+Blockly.Msg.CONTROLS_FOR_HELPURL = "https://github.com/google/blockly/wiki/Loops#count-with"; // untranslated
+Blockly.Msg.CONTROLS_FOR_TITLE = "број со %1 од %2 до %3 со %4";
+Blockly.Msg.CONTROLS_FOR_TOOLTIP = "Променливата \"%1\" да ги земе вредностите од почетниот до завршниот број, броејќи според укажаниот интервал и ги исполнува укажаните блокови.";
+Blockly.Msg.CONTROLS_IF_ELSEIF_TOOLTIP = "Add a condition to the if block."; // untranslated
+Blockly.Msg.CONTROLS_IF_ELSE_TOOLTIP = "Add a final, catch-all condition to the if block."; // untranslated
+Blockly.Msg.CONTROLS_IF_HELPURL = "https://github.com/google/blockly/wiki/IfElse"; // untranslated
+Blockly.Msg.CONTROLS_IF_IF_TOOLTIP = "Додава, отстранува или прередува делови за прераспоредување на овој блок „ако“.";
+Blockly.Msg.CONTROLS_IF_MSG_ELSE = "инаку";
+Blockly.Msg.CONTROLS_IF_MSG_ELSEIF = "инаку ако";
+Blockly.Msg.CONTROLS_IF_MSG_IF = "ако";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_1 = "If a value is true, then do some statements."; // untranslated
+Blockly.Msg.CONTROLS_IF_TOOLTIP_2 = "If a value is true, then do the first block of statements. Otherwise, do the second block of statements."; // untranslated
+Blockly.Msg.CONTROLS_IF_TOOLTIP_3 = "If the first value is true, then do the first block of statements. Otherwise, if the second value is true, do the second block of statements."; // untranslated
+Blockly.Msg.CONTROLS_IF_TOOLTIP_4 = "If the first value is true, then do the first block of statements. Otherwise, if the second value is true, do the second block of statements. If none of the values are true, do the last block of statements."; // untranslated
+Blockly.Msg.CONTROLS_REPEAT_HELPURL = "https://mk.wikipedia.org/wiki/For-јамка";
+Blockly.Msg.CONTROLS_REPEAT_INPUT_DO = "исполни";
+Blockly.Msg.CONTROLS_REPEAT_TITLE = "повтори %1 пати";
+Blockly.Msg.CONTROLS_REPEAT_TOOLTIP = "Исполнува наредби неколку пати.";
+Blockly.Msg.CONTROLS_WHILEUNTIL_HELPURL = "https://github.com/google/blockly/wiki/Loops#repeat"; // untranslated
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "повторувај сè до";
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "повторувај додека";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "Додека вредноста е невистинита, исполнува наредби.";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "Додека вредноста е вистинита, исполнува наредби.";
+Blockly.Msg.DELETE_ALL_BLOCKS = "Да ги избришам сите %1 блокчиња?";
+Blockly.Msg.DELETE_BLOCK = "Избриши блок";
+Blockly.Msg.DELETE_VARIABLE = "Delete the '%1' variable"; // untranslated
+Blockly.Msg.DELETE_VARIABLE_CONFIRMATION = "Delete %1 uses of the '%2' variable?"; // untranslated
+Blockly.Msg.DELETE_X_BLOCKS = "Избриши %1 блока";
+Blockly.Msg.DISABLE_BLOCK = "Исклучи блок";
+Blockly.Msg.DUPLICATE_BLOCK = "Ископирај";
+Blockly.Msg.ENABLE_BLOCK = "Вклучи блок";
+Blockly.Msg.EXPAND_ALL = "Рашири блокови";
+Blockly.Msg.EXPAND_BLOCK = "Рашири го блокови";
+Blockly.Msg.EXTERNAL_INPUTS = "Надворешен внос";
+Blockly.Msg.HELP = "Помош";
+Blockly.Msg.INLINE_INPUTS = "Внатрешен внос";
+Blockly.Msg.LISTS_CREATE_EMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-empty-list"; // untranslated
+Blockly.Msg.LISTS_CREATE_EMPTY_TITLE = "create empty list"; // untranslated
+Blockly.Msg.LISTS_CREATE_EMPTY_TOOLTIP = "Returns a list, of length 0, containing no data records"; // untranslated
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TITLE_ADD = "list"; // untranslated
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TOOLTIP = "Add, remove, or reorder sections to reconfigure this list block."; // untranslated
+Blockly.Msg.LISTS_CREATE_WITH_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
+Blockly.Msg.LISTS_CREATE_WITH_INPUT_WITH = "create list with"; // untranslated
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TOOLTIP = "Add an item to the list."; // untranslated
+Blockly.Msg.LISTS_CREATE_WITH_TOOLTIP = "Create a list with any number of items."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_FIRST = "first"; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_FROM_END = "# from end"; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_FROM_START = "#"; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_GET = "get"; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_GET_REMOVE = "get and remove"; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_LAST = "last"; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_RANDOM = "random"; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_REMOVE = "remove"; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TAIL = ""; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FIRST = "Returns the first item in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FROM = "Returns the item at the specified position in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_LAST = "Returns the last item in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_RANDOM = "Returns a random item in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST = "Removes and returns the first item in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM = "Removes and returns the item at the specified position in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST = "Removes and returns the last item in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM = "Removes and returns a random item in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST = "Removes the first item in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM = "Removes the item at the specified position in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST = "Removes the last item in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM = "Removes a random item in a list."; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_END = "to # from end"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_START = "to #"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_END_LAST = "to last"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-a-sublist"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_START_FIRST = "get sub-list from first"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_END = "get sub-list from # from end"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_START = "get sub-list from #"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_TAIL = ""; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_TOOLTIP = "Creates a copy of the specified portion of a list."; // untranslated
+Blockly.Msg.LISTS_INDEX_FROM_END_TOOLTIP = "%1 is the last item."; // untranslated
+Blockly.Msg.LISTS_INDEX_FROM_START_TOOLTIP = "%1 is the first item."; // untranslated
+Blockly.Msg.LISTS_INDEX_OF_FIRST = "find first occurrence of item"; // untranslated
+Blockly.Msg.LISTS_INDEX_OF_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-items-from-a-list"; // untranslated
+Blockly.Msg.LISTS_INDEX_OF_LAST = "find last occurrence of item"; // untranslated
+Blockly.Msg.LISTS_INDEX_OF_TOOLTIP = "Returns the index of the first/last occurrence of the item in the list. Returns %1 if item is not found."; // untranslated
+Blockly.Msg.LISTS_INLIST = "in list"; // untranslated
+Blockly.Msg.LISTS_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#is-empty"; // untranslated
+Blockly.Msg.LISTS_ISEMPTY_TITLE = "%1 is empty"; // untranslated
+Blockly.Msg.LISTS_ISEMPTY_TOOLTIP = "Returns true if the list is empty."; // untranslated
+Blockly.Msg.LISTS_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Lists#length-of"; // untranslated
+Blockly.Msg.LISTS_LENGTH_TITLE = "length of %1"; // untranslated
+Blockly.Msg.LISTS_LENGTH_TOOLTIP = "Returns the length of a list."; // untranslated
+Blockly.Msg.LISTS_REPEAT_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
+Blockly.Msg.LISTS_REPEAT_TITLE = "create list with item %1 repeated %2 times"; // untranslated
+Blockly.Msg.LISTS_REPEAT_TOOLTIP = "Creates a list consisting of the given value repeated the specified number of times."; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_HELPURL = "https://github.com/google/blockly/wiki/Lists#in-list--set"; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_INPUT_TO = "as"; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_INSERT = "insert at"; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_SET = "set"; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST = "Inserts the item at the start of a list."; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FROM = "Inserts the item at the specified position in a list."; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_LAST = "Append the item to the end of a list."; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM = "Inserts the item randomly in a list."; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FIRST = "Sets the first item in a list."; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FROM = "Sets the item at the specified position in a list."; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_LAST = "Sets the last item in a list."; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_RANDOM = "Sets a random item in a list."; // untranslated
+Blockly.Msg.LISTS_SORT_HELPURL = "https://github.com/google/blockly/wiki/Lists#sorting-a-list"; // untranslated
+Blockly.Msg.LISTS_SORT_ORDER_ASCENDING = "ascending"; // untranslated
+Blockly.Msg.LISTS_SORT_ORDER_DESCENDING = "descending"; // untranslated
+Blockly.Msg.LISTS_SORT_TITLE = "sort %1 %2 %3"; // untranslated
+Blockly.Msg.LISTS_SORT_TOOLTIP = "Sort a copy of a list."; // untranslated
+Blockly.Msg.LISTS_SORT_TYPE_IGNORECASE = "alphabetic, ignore case"; // untranslated
+Blockly.Msg.LISTS_SORT_TYPE_NUMERIC = "numeric"; // untranslated
+Blockly.Msg.LISTS_SORT_TYPE_TEXT = "alphabetic"; // untranslated
+Blockly.Msg.LISTS_SPLIT_HELPURL = "https://github.com/google/blockly/wiki/Lists#splitting-strings-and-joining-lists"; // untranslated
+Blockly.Msg.LISTS_SPLIT_LIST_FROM_TEXT = "make list from text"; // untranslated
+Blockly.Msg.LISTS_SPLIT_TEXT_FROM_LIST = "make text from list"; // untranslated
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_JOIN = "Join a list of texts into one text, separated by a delimiter."; // untranslated
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_SPLIT = "Split text into a list of texts, breaking at each delimiter."; // untranslated
+Blockly.Msg.LISTS_SPLIT_WITH_DELIMITER = "with delimiter"; // untranslated
+Blockly.Msg.LOGIC_BOOLEAN_FALSE = "невистина";
+Blockly.Msg.LOGIC_BOOLEAN_HELPURL = "https://github.com/google/blockly/wiki/Logic#values"; // untranslated
+Blockly.Msg.LOGIC_BOOLEAN_TOOLTIP = "Дава или вистина или невистина.";
+Blockly.Msg.LOGIC_BOOLEAN_TRUE = "вистина";
+Blockly.Msg.LOGIC_COMPARE_HELPURL = "https://mk.wikipedia.org/wiki/Неравенство";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_EQ = "Дава вистина ако обата вноса се еднакви.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GT = "Дава вистина ако првиот внос е поголем од вториот.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GTE = "Дава вистина ако првиот внос е поголем или еднаков на вториот.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LT = "Дава вистина ако првиот внос е помал од вториот.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LTE = "Дава вистина ако првиот внос е помал или еднаков на вториот.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_NEQ = "Дава вистина ако обата вноса не се еднакви.";
+Blockly.Msg.LOGIC_NEGATE_HELPURL = "https://github.com/google/blockly/wiki/Logic#not"; // untranslated
+Blockly.Msg.LOGIC_NEGATE_TITLE = "не %1";
+Blockly.Msg.LOGIC_NEGATE_TOOLTIP = "Дава вистина ако вносот е невистинит. Дава невистина ако вносот е вистинит.";
+Blockly.Msg.LOGIC_NULL = "ништо";
+Blockly.Msg.LOGIC_NULL_HELPURL = "https://en.wikipedia.org/wiki/Nullable_type"; // untranslated
+Blockly.Msg.LOGIC_NULL_TOOLTIP = "Дава ништо.";
+Blockly.Msg.LOGIC_OPERATION_AND = "и";
+Blockly.Msg.LOGIC_OPERATION_HELPURL = "https://github.com/google/blockly/wiki/Logic#logical-operations"; // untranslated
+Blockly.Msg.LOGIC_OPERATION_OR = "или";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_AND = "Дава вистина ако обата вноса се вистинити.";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_OR = "Дава вистина ако барем еден од вносовите е вистинит.";
+Blockly.Msg.LOGIC_TERNARY_CONDITION = "испробај";
+Blockly.Msg.LOGIC_TERNARY_HELPURL = "https://en.wikipedia.org/wiki/%3F:"; // untranslated
+Blockly.Msg.LOGIC_TERNARY_IF_FALSE = "ако е невистинито";
+Blockly.Msg.LOGIC_TERNARY_IF_TRUE = "ако е вистинито";
+Blockly.Msg.LOGIC_TERNARY_TOOLTIP = "Check the condition in 'test'. If the condition is true, returns the 'if true' value; otherwise returns the 'if false' value."; // untranslated
+Blockly.Msg.MATH_ADDITION_SYMBOL = "+"; // untranslated
+Blockly.Msg.MATH_ARITHMETIC_HELPURL = "https://en.wikipedia.org/wiki/Arithmetic"; // untranslated
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_ADD = "Return the sum of the two numbers."; // untranslated
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE = "Return the quotient of the two numbers."; // untranslated
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MINUS = "Return the difference of the two numbers."; // untranslated
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MULTIPLY = "Return the product of the two numbers."; // untranslated
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_POWER = "Return the first number raised to the power of the second number."; // untranslated
+Blockly.Msg.MATH_CHANGE_HELPURL = "https://en.wikipedia.org/wiki/Programming_idiom#Incrementing_a_counter?uselang=mk";
+Blockly.Msg.MATH_CHANGE_TITLE = "повиши %1 за %2";
+Blockly.Msg.MATH_CHANGE_TOOLTIP = "Ѝ додава број на променливата „%1“.";
+Blockly.Msg.MATH_CONSTANT_HELPURL = "https://mk.wikipedia.org/wiki/Математичка_константа";
+Blockly.Msg.MATH_CONSTANT_TOOLTIP = "Дава една од вообичаените константи: π (3.141…), e (2.718…), φ (1.618…), sqrt(2) (1.414…), sqrt(½) (0.707…), или ∞ (бесконечност).";
+Blockly.Msg.MATH_CONSTRAIN_HELPURL = "https://en.wikipedia.org/wiki/Clamping_%28graphics%29"; // untranslated
+Blockly.Msg.MATH_CONSTRAIN_TITLE = "constrain %1 low %2 high %3"; // untranslated
+Blockly.Msg.MATH_CONSTRAIN_TOOLTIP = "Constrain a number to be between the specified limits (inclusive)."; // untranslated
+Blockly.Msg.MATH_DIVISION_SYMBOL = "÷"; // untranslated
+Blockly.Msg.MATH_IS_DIVISIBLE_BY = "е делив со";
+Blockly.Msg.MATH_IS_EVEN = "е парен";
+Blockly.Msg.MATH_IS_NEGATIVE = "е негативен";
+Blockly.Msg.MATH_IS_ODD = "е непарен";
+Blockly.Msg.MATH_IS_POSITIVE = "е позитивен";
+Blockly.Msg.MATH_IS_PRIME = "е прост";
+Blockly.Msg.MATH_IS_TOOLTIP = "Проверува дали бројот е парен, непарен, прост, цел, позитивен, негативен или делив со некој број. Дава вистина или невистина.";
+Blockly.Msg.MATH_IS_WHOLE = "е цел";
+Blockly.Msg.MATH_MODULO_HELPURL = "https://en.wikipedia.org/wiki/Modulo_operation"; // untranslated
+Blockly.Msg.MATH_MODULO_TITLE = "remainder of %1 ÷ %2"; // untranslated
+Blockly.Msg.MATH_MODULO_TOOLTIP = "Return the remainder from dividing the two numbers."; // untranslated
+Blockly.Msg.MATH_MULTIPLICATION_SYMBOL = "×"; // untranslated
+Blockly.Msg.MATH_NUMBER_HELPURL = "https://en.wikipedia.org/wiki/Number"; // untranslated
+Blockly.Msg.MATH_NUMBER_TOOLTIP = "A number."; // untranslated
+Blockly.Msg.MATH_ONLIST_HELPURL = ""; // untranslated
+Blockly.Msg.MATH_ONLIST_OPERATOR_AVERAGE = "просек на списокот";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MAX = "најголем на списокот";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MEDIAN = "медијана на списокот";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MIN = "најмал на списокот";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MODE = "модул на списокот";
+Blockly.Msg.MATH_ONLIST_OPERATOR_RANDOM = "random item of list"; // untranslated
+Blockly.Msg.MATH_ONLIST_OPERATOR_STD_DEV = "standard deviation of list"; // untranslated
+Blockly.Msg.MATH_ONLIST_OPERATOR_SUM = "збир од списокот";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_AVERAGE = "Дава просек (аритметичка средина) од броевите на списокот.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MAX = "Го дава најголемиот број на списокот.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MEDIAN = "Дава медијана од броевите на списокот.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MIN = "Го дава најмалиот број на списокот.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MODE = "Дава список на најзастапен(и) елемент(и) на списокот.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_RANDOM = "Return a random element from the list."; // untranslated
+Blockly.Msg.MATH_ONLIST_TOOLTIP_STD_DEV = "Return the standard deviation of the list."; // untranslated
+Blockly.Msg.MATH_ONLIST_TOOLTIP_SUM = "Дава збир од сите броеви на списокот.";
+Blockly.Msg.MATH_POWER_SYMBOL = "^"; // untranslated
+Blockly.Msg.MATH_RANDOM_FLOAT_HELPURL = "https://en.wikipedia.org/wiki/Random_number_generation"; // untranslated
+Blockly.Msg.MATH_RANDOM_FLOAT_TITLE_RANDOM = "random fraction"; // untranslated
+Blockly.Msg.MATH_RANDOM_FLOAT_TOOLTIP = "Return a random fraction between 0.0 (inclusive) and 1.0 (exclusive)."; // untranslated
+Blockly.Msg.MATH_RANDOM_INT_HELPURL = "https://en.wikipedia.org/wiki/Random_number_generation"; // untranslated
+Blockly.Msg.MATH_RANDOM_INT_TITLE = "random integer from %1 to %2"; // untranslated
+Blockly.Msg.MATH_RANDOM_INT_TOOLTIP = "Return a random integer between the two specified limits, inclusive."; // untranslated
+Blockly.Msg.MATH_ROUND_HELPURL = "https://mk.wikipedia.org/wiki/Заокружување";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUND = "заокружи";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDDOWN = "заокружи на помало";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDUP = "заокружи на поголемо";
+Blockly.Msg.MATH_ROUND_TOOLTIP = "Го заокружува бројот на поголем или помал.";
+Blockly.Msg.MATH_SINGLE_HELPURL = "https://en.wikipedia.org/wiki/Square_root"; // untranslated
+Blockly.Msg.MATH_SINGLE_OP_ABSOLUTE = "absolute"; // untranslated
+Blockly.Msg.MATH_SINGLE_OP_ROOT = "square root"; // untranslated
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ABS = "Return the absolute value of a number."; // untranslated
+Blockly.Msg.MATH_SINGLE_TOOLTIP_EXP = "Return e to the power of a number."; // untranslated
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LN = "Return the natural logarithm of a number."; // untranslated
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LOG10 = "Return the base 10 logarithm of a number."; // untranslated
+Blockly.Msg.MATH_SINGLE_TOOLTIP_NEG = "Return the negation of a number."; // untranslated
+Blockly.Msg.MATH_SINGLE_TOOLTIP_POW10 = "Return 10 to the power of a number."; // untranslated
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ROOT = "Return the square root of a number."; // untranslated
+Blockly.Msg.MATH_SUBTRACTION_SYMBOL = "-"; // untranslated
+Blockly.Msg.MATH_TRIG_ACOS = "acos"; // untranslated
+Blockly.Msg.MATH_TRIG_ASIN = "asin"; // untranslated
+Blockly.Msg.MATH_TRIG_ATAN = "atan"; // untranslated
+Blockly.Msg.MATH_TRIG_COS = "cos"; // untranslated
+Blockly.Msg.MATH_TRIG_HELPURL = "https://en.wikipedia.org/wiki/Trigonometric_functions"; // untranslated
+Blockly.Msg.MATH_TRIG_SIN = "sin"; // untranslated
+Blockly.Msg.MATH_TRIG_TAN = "tan"; // untranslated
+Blockly.Msg.MATH_TRIG_TOOLTIP_ACOS = "Return the arccosine of a number."; // untranslated
+Blockly.Msg.MATH_TRIG_TOOLTIP_ASIN = "Return the arcsine of a number."; // untranslated
+Blockly.Msg.MATH_TRIG_TOOLTIP_ATAN = "Return the arctangent of a number."; // untranslated
+Blockly.Msg.MATH_TRIG_TOOLTIP_COS = "Return the cosine of a degree (not radian)."; // untranslated
+Blockly.Msg.MATH_TRIG_TOOLTIP_SIN = "Return the sine of a degree (not radian)."; // untranslated
+Blockly.Msg.MATH_TRIG_TOOLTIP_TAN = "Return the tangent of a degree (not radian)."; // untranslated
+Blockly.Msg.NEW_VARIABLE = "Нова променлива...";
+Blockly.Msg.NEW_VARIABLE_TITLE = "Назив на новата променлива:";
+Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; // untranslated
+Blockly.Msg.PROCEDURES_ALLOW_STATEMENTS = "allow statements"; // untranslated
+Blockly.Msg.PROCEDURES_BEFORE_PARAMS = "with:"; // untranslated
+Blockly.Msg.PROCEDURES_CALLNORETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_CALLNORETURN_TOOLTIP = "Run the user-defined function '%1'."; // untranslated
+Blockly.Msg.PROCEDURES_CALLRETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_CALLRETURN_TOOLTIP = "Run the user-defined function '%1' and use its output."; // untranslated
+Blockly.Msg.PROCEDURES_CALL_BEFORE_PARAMS = "with:"; // untranslated
+Blockly.Msg.PROCEDURES_CREATE_DO = "Create '%1'"; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT = "Describe this function..."; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_DO = ""; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE = "do something"; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE = "to"; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_TOOLTIP = "Creates a function with no output."; // untranslated
+Blockly.Msg.PROCEDURES_DEFRETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_DEFRETURN_RETURN = "return"; // untranslated
+Blockly.Msg.PROCEDURES_DEFRETURN_TOOLTIP = "Creates a function with an output."; // untranslated
+Blockly.Msg.PROCEDURES_DEF_DUPLICATE_WARNING = "Warning: This function has duplicate parameters."; // untranslated
+Blockly.Msg.PROCEDURES_HIGHLIGHT_DEF = "Highlight function definition"; // untranslated
+Blockly.Msg.PROCEDURES_IFRETURN_HELPURL = "http://c2.com/cgi/wiki?GuardClause"; // untranslated
+Blockly.Msg.PROCEDURES_IFRETURN_TOOLTIP = "If a value is true, then return a second value."; // untranslated
+Blockly.Msg.PROCEDURES_IFRETURN_WARNING = "Warning: This block may be used only within a function definition."; // untranslated
+Blockly.Msg.PROCEDURES_MUTATORARG_TITLE = "input name:"; // untranslated
+Blockly.Msg.PROCEDURES_MUTATORARG_TOOLTIP = "Add an input to the function."; // untranslated
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TITLE = "inputs"; // untranslated
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TOOLTIP = "Add, remove, or reorder inputs to this function."; // untranslated
+Blockly.Msg.REDO = "Redo"; // untranslated
+Blockly.Msg.REMOVE_COMMENT = "Отстрани коментар";
+Blockly.Msg.RENAME_VARIABLE = "Преименувај променлива...";
+Blockly.Msg.RENAME_VARIABLE_TITLE = "Преименувај ги сите променливи „%1“ во:";
+Blockly.Msg.TEXT_APPEND_APPENDTEXT = "append text"; // untranslated
+Blockly.Msg.TEXT_APPEND_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_APPEND_TO = "to"; // untranslated
+Blockly.Msg.TEXT_APPEND_TOOLTIP = "Append some text to variable '%1'."; // untranslated
+Blockly.Msg.TEXT_CHANGECASE_HELPURL = "https://github.com/google/blockly/wiki/Text#adjusting-text-case"; // untranslated
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_LOWERCASE = "to lower case"; // untranslated
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_TITLECASE = "to Title Case"; // untranslated
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_UPPERCASE = "to UPPER CASE"; // untranslated
+Blockly.Msg.TEXT_CHANGECASE_TOOLTIP = "Return a copy of the text in a different case."; // untranslated
+Blockly.Msg.TEXT_CHARAT_FIRST = "get first letter"; // untranslated
+Blockly.Msg.TEXT_CHARAT_FROM_END = "get letter # from end"; // untranslated
+Blockly.Msg.TEXT_CHARAT_FROM_START = "get letter #"; // untranslated
+Blockly.Msg.TEXT_CHARAT_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-text"; // untranslated
+Blockly.Msg.TEXT_CHARAT_INPUT_INTEXT = "in text"; // untranslated
+Blockly.Msg.TEXT_CHARAT_LAST = "get last letter"; // untranslated
+Blockly.Msg.TEXT_CHARAT_RANDOM = "get random letter"; // untranslated
+Blockly.Msg.TEXT_CHARAT_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_CHARAT_TOOLTIP = "Returns the letter at the specified position."; // untranslated
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TOOLTIP = "Add an item to the text."; // untranslated
+Blockly.Msg.TEXT_CREATE_JOIN_TITLE_JOIN = "join"; // untranslated
+Blockly.Msg.TEXT_CREATE_JOIN_TOOLTIP = "Add, remove, or reorder sections to reconfigure this text block."; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_END = "to letter # from end"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_START = "to letter #"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_END_LAST = "to last letter"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_INPUT_IN_TEXT = "in text"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FIRST = "get substring from first letter"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_END = "get substring from letter # from end"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_START = "get substring from letter #"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_TOOLTIP = "Returns a specified portion of the text."; // untranslated
+Blockly.Msg.TEXT_INDEXOF_HELPURL = "https://github.com/google/blockly/wiki/Text#finding-text"; // untranslated
+Blockly.Msg.TEXT_INDEXOF_INPUT_INTEXT = "in text"; // untranslated
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_FIRST = "find first occurrence of text"; // untranslated
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_LAST = "find last occurrence of text"; // untranslated
+Blockly.Msg.TEXT_INDEXOF_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_INDEXOF_TOOLTIP = "Returns the index of the first/last occurrence of the first text in the second text. Returns %1 if text is not found."; // untranslated
+Blockly.Msg.TEXT_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Text#checking-for-empty-text"; // untranslated
+Blockly.Msg.TEXT_ISEMPTY_TITLE = "%1 is empty"; // untranslated
+Blockly.Msg.TEXT_ISEMPTY_TOOLTIP = "Returns true if the provided text is empty."; // untranslated
+Blockly.Msg.TEXT_JOIN_HELPURL = "https://github.com/google/blockly/wiki/Text#text-creation"; // untranslated
+Blockly.Msg.TEXT_JOIN_TITLE_CREATEWITH = "create text with"; // untranslated
+Blockly.Msg.TEXT_JOIN_TOOLTIP = "Create a piece of text by joining together any number of items."; // untranslated
+Blockly.Msg.TEXT_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_LENGTH_TITLE = "length of %1"; // untranslated
+Blockly.Msg.TEXT_LENGTH_TOOLTIP = "Returns the number of letters (including spaces) in the provided text."; // untranslated
+Blockly.Msg.TEXT_PRINT_HELPURL = "https://github.com/google/blockly/wiki/Text#printing-text"; // untranslated
+Blockly.Msg.TEXT_PRINT_TITLE = "print %1"; // untranslated
+Blockly.Msg.TEXT_PRINT_TOOLTIP = "Print the specified text, number or other value."; // untranslated
+Blockly.Msg.TEXT_PROMPT_HELPURL = "https://github.com/google/blockly/wiki/Text#getting-input-from-the-user"; // untranslated
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_NUMBER = "Prompt for user for a number."; // untranslated
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_TEXT = "Prompt for user for some text."; // untranslated
+Blockly.Msg.TEXT_PROMPT_TYPE_NUMBER = "prompt for number with message"; // untranslated
+Blockly.Msg.TEXT_PROMPT_TYPE_TEXT = "prompt for text with message"; // untranslated
+Blockly.Msg.TEXT_TEXT_HELPURL = "https://en.wikipedia.org/wiki/String_(computer_science)"; // untranslated
+Blockly.Msg.TEXT_TEXT_TOOLTIP = "A letter, word, or line of text."; // untranslated
+Blockly.Msg.TEXT_TRIM_HELPURL = "https://github.com/google/blockly/wiki/Text#trimming-removing-spaces"; // untranslated
+Blockly.Msg.TEXT_TRIM_OPERATOR_BOTH = "trim spaces from both sides of"; // untranslated
+Blockly.Msg.TEXT_TRIM_OPERATOR_LEFT = "trim spaces from left side of"; // untranslated
+Blockly.Msg.TEXT_TRIM_OPERATOR_RIGHT = "trim spaces from right side of"; // untranslated
+Blockly.Msg.TEXT_TRIM_TOOLTIP = "Return a copy of the text with spaces removed from one or both ends."; // untranslated
+Blockly.Msg.TODAY = "Today"; // untranslated
+Blockly.Msg.UNDO = "Undo"; // untranslated
+Blockly.Msg.VARIABLES_DEFAULT_NAME = "елемент";
+Blockly.Msg.VARIABLES_GET_CREATE_SET = "Create 'set %1'"; // untranslated
+Blockly.Msg.VARIABLES_GET_HELPURL = "https://github.com/google/blockly/wiki/Variables#get"; // untranslated
+Blockly.Msg.VARIABLES_GET_TOOLTIP = "Returns the value of this variable."; // untranslated
+Blockly.Msg.VARIABLES_SET = "set %1 to %2"; // untranslated
+Blockly.Msg.VARIABLES_SET_CREATE_GET = "Create 'get %1'"; // untranslated
+Blockly.Msg.VARIABLES_SET_HELPURL = "https://github.com/google/blockly/wiki/Variables#set"; // untranslated
+Blockly.Msg.VARIABLES_SET_TOOLTIP = "Sets this variable to be equal to the input."; // untranslated
+Blockly.Msg.VARIABLE_ALREADY_EXISTS = "A variable named '%1' already exists."; // untranslated
+Blockly.Msg.PROCEDURES_DEFRETURN_TITLE = Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE;
+Blockly.Msg.CONTROLS_IF_IF_TITLE_IF = Blockly.Msg.CONTROLS_IF_MSG_IF;
+Blockly.Msg.CONTROLS_WHILEUNTIL_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_MSG_THEN = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_ELSE_TITLE_ELSE = Blockly.Msg.CONTROLS_IF_MSG_ELSE;
+Blockly.Msg.PROCEDURES_DEFRETURN_PROCEDURE = Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE;
+Blockly.Msg.LISTS_GET_SUBLIST_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.LISTS_GET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.PROCEDURES_DEFRETURN_DO = Blockly.Msg.PROCEDURES_DEFNORETURN_DO;
+Blockly.Msg.CONTROLS_IF_ELSEIF_TITLE_ELSEIF = Blockly.Msg.CONTROLS_IF_MSG_ELSEIF;
+Blockly.Msg.LISTS_GET_INDEX_HELPURL = Blockly.Msg.LISTS_INDEX_OF_HELPURL;
+Blockly.Msg.CONTROLS_FOREACH_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_SET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TITLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_APPEND_VARIABLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.LISTS_INDEX_OF_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.PROCEDURES_DEFRETURN_COMMENT = Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT; \ No newline at end of file
diff --git a/blockly/msg/js/ms.js b/blockly/msg/js/ms.js
new file mode 100644
index 0000000..65c1c63
--- /dev/null
+++ b/blockly/msg/js/ms.js
@@ -0,0 +1,391 @@
+// This file was automatically generated. Do not modify.
+
+'use strict';
+
+goog.provide('Blockly.Msg.ms');
+
+goog.require('Blockly.Msg');
+
+Blockly.Msg.ADD_COMMENT = "Berikan Komen";
+Blockly.Msg.CHANGE_VALUE_TITLE = "Ubah nilai:";
+Blockly.Msg.CLEAN_UP = "Kemaskan Blok";
+Blockly.Msg.COLLAPSE_ALL = "Lipat Blok²";
+Blockly.Msg.COLLAPSE_BLOCK = "Lipat Blok";
+Blockly.Msg.COLOUR_BLEND_COLOUR1 = "warna 1";
+Blockly.Msg.COLOUR_BLEND_COLOUR2 = "warna 2";
+Blockly.Msg.COLOUR_BLEND_HELPURL = "http://meyerweb.com/eric/tools/color-blend/"; // untranslated
+Blockly.Msg.COLOUR_BLEND_RATIO = "nisbah";
+Blockly.Msg.COLOUR_BLEND_TITLE = "adun";
+Blockly.Msg.COLOUR_BLEND_TOOLTIP = "Campurkan dua warna sekali pada nisbah yang ditentukan (0.0 - 1.0).";
+Blockly.Msg.COLOUR_PICKER_HELPURL = "https://ms.wikipedia.org/wiki/Warna";
+Blockly.Msg.COLOUR_PICKER_TOOLTIP = "Pilih satu warna daripada palet.";
+Blockly.Msg.COLOUR_RANDOM_HELPURL = "http://randomcolour.com"; // untranslated
+Blockly.Msg.COLOUR_RANDOM_TITLE = "warna rawak";
+Blockly.Msg.COLOUR_RANDOM_TOOLTIP = "Pilih satu warna secara rawak.";
+Blockly.Msg.COLOUR_RGB_BLUE = "biru";
+Blockly.Msg.COLOUR_RGB_GREEN = "hijau";
+Blockly.Msg.COLOUR_RGB_HELPURL = "http://www.december.com/html/spec/colorper.html"; // untranslated
+Blockly.Msg.COLOUR_RGB_RED = "merah";
+Blockly.Msg.COLOUR_RGB_TITLE = "warnakan";
+Blockly.Msg.COLOUR_RGB_TOOLTIP = "Peroleh satu warna dengan menentukan amaun campuran merah, hijau dan biru. Kesemua nilai haruslah antara 0 hingga 100.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_HELPURL = "https://github.com/google/blockly/wiki/Loops#loop-termination-blocks"; // untranslated
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK = "hentikan gelung";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE = "teruskan dengan lelaran gelung seterusnya";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK = "Keluar dari gelung pengandung.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE = "Langkau seluruh gelung yang tinggal dan bersambung dengan lelaran seterusnya.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_WARNING = "Amaran: Blok ini hanya boleh digunakan dalam satu gelung.";
+Blockly.Msg.CONTROLS_FOREACH_HELPURL = "https://github.com/google/blockly/wiki/Loops#for-each"; // untranslated
+Blockly.Msg.CONTROLS_FOREACH_TITLE = "untuk setiap perkara %1 dalam senarai %2";
+Blockly.Msg.CONTROLS_FOREACH_TOOLTIP = "Untuk setiap perkara dalam senarai, tetapkan pembolehubah '%1' pada perkara, kemudian lakukan beberapa perintah.";
+Blockly.Msg.CONTROLS_FOR_HELPURL = "https://github.com/google/blockly/wiki/Loops#count-with"; // untranslated
+Blockly.Msg.CONTROLS_FOR_TITLE = "kira dengan %1 dari %2 hingga %3 selang %4";
+Blockly.Msg.CONTROLS_FOR_TOOLTIP = "Gunakan pembolehubah '%1' pada nilai-nilai dari nombor pangkal hingga nombor hujung, mengira mengikut selang yang ditentukan, dan lakukan blok-blok yang tertentu.";
+Blockly.Msg.CONTROLS_IF_ELSEIF_TOOLTIP = "Tambah satu syarat kepada blok jika.";
+Blockly.Msg.CONTROLS_IF_ELSE_TOOLTIP = "Tambah yang terakhir, alihkan semua keadaan ke blok jika.";
+Blockly.Msg.CONTROLS_IF_HELPURL = "https://github.com/google/blockly/wiki/IfElse"; // untranslated
+Blockly.Msg.CONTROLS_IF_IF_TOOLTIP = "Tambah, alih keluar, atau susun semula bahagian-bahagian untuk menyusun semula blok jika.";
+Blockly.Msg.CONTROLS_IF_MSG_ELSE = "lain";
+Blockly.Msg.CONTROLS_IF_MSG_ELSEIF = "lain jika";
+Blockly.Msg.CONTROLS_IF_MSG_IF = "jika";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_1 = "Jika nilai yang benar, lakukan beberapa penyata.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_2 = "Jika suatu nilai benar, lakukan penyata blok pertama. Jika tidak, bina penyata blok kedua.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_3 = "Jika nilai yang pertama adalah benar, lakukan penyata pertama blok. Sebaliknya, jika nilai kedua adalah benar, lakukan penyata blok kedua.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_4 = "Jika nilai yang pertama adalah benar, lakukan penyata blok pertama. Sebaliknya, jika nilai kedua adalah benar, lakukan penyata blok kedua. Jika tiada nilai adalah benar, lakukan penyata blok terakhir.";
+Blockly.Msg.CONTROLS_REPEAT_HELPURL = "https://en.wikipedia.org/wiki/For_loop";
+Blockly.Msg.CONTROLS_REPEAT_INPUT_DO = "lakukan";
+Blockly.Msg.CONTROLS_REPEAT_TITLE = "ulang %1 kali";
+Blockly.Msg.CONTROLS_REPEAT_TOOLTIP = "Lakukan perintah berulang kali.";
+Blockly.Msg.CONTROLS_WHILEUNTIL_HELPURL = "https://github.com/google/blockly/wiki/Loops#repeat"; // untranslated
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "ulangi sehingga";
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "ulangi apabila";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "Lakukan beberapa perintah apabila nilainya palsu (false).";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "Lakukan beberapa perintah apabila nilainya benar (true).";
+Blockly.Msg.DELETE_ALL_BLOCKS = "Hapuskan kesemua %1 blok?";
+Blockly.Msg.DELETE_BLOCK = "Hapuskan Blok";
+Blockly.Msg.DELETE_VARIABLE = "Delete the '%1' variable"; // untranslated
+Blockly.Msg.DELETE_VARIABLE_CONFIRMATION = "Delete %1 uses of the '%2' variable?"; // untranslated
+Blockly.Msg.DELETE_X_BLOCKS = "Hapuskan %1 Blok";
+Blockly.Msg.DISABLE_BLOCK = "Matikan Blok";
+Blockly.Msg.DUPLICATE_BLOCK = "Pendua";
+Blockly.Msg.ENABLE_BLOCK = "Hidupkan Blok";
+Blockly.Msg.EXPAND_ALL = "Buka Blok²";
+Blockly.Msg.EXPAND_BLOCK = "Buka Blok";
+Blockly.Msg.EXTERNAL_INPUTS = "Input Luaran";
+Blockly.Msg.HELP = "Bantuan";
+Blockly.Msg.INLINE_INPUTS = "Input Sebaris";
+Blockly.Msg.LISTS_CREATE_EMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-empty-list"; // untranslated
+Blockly.Msg.LISTS_CREATE_EMPTY_TITLE = "Wujudkan senarai kosong";
+Blockly.Msg.LISTS_CREATE_EMPTY_TOOLTIP = "Kembalikan senarai panjang 0, yang tidak mengandungi rekod data";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TITLE_ADD = "senarai";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TOOLTIP = "Tambah, alih keluar, atau susun semula bahagian-bahagian untuk menyusun semula senarai blok.";
+Blockly.Msg.LISTS_CREATE_WITH_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with";
+Blockly.Msg.LISTS_CREATE_WITH_INPUT_WITH = "wujudkan senarai dengan";
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TOOLTIP = "Tambah item ke dalam senarai.";
+Blockly.Msg.LISTS_CREATE_WITH_TOOLTIP = "Wujudkan senarai dengan apa jua nombor item.";
+Blockly.Msg.LISTS_GET_INDEX_FIRST = "pertama";
+Blockly.Msg.LISTS_GET_INDEX_FROM_END = "# dari akhir";
+Blockly.Msg.LISTS_GET_INDEX_FROM_START = "#";
+Blockly.Msg.LISTS_GET_INDEX_GET = "dapatkan";
+Blockly.Msg.LISTS_GET_INDEX_GET_REMOVE = "dapat dan alihkan";
+Blockly.Msg.LISTS_GET_INDEX_LAST = "terakhir";
+Blockly.Msg.LISTS_GET_INDEX_RANDOM = "rawak";
+Blockly.Msg.LISTS_GET_INDEX_REMOVE = "alihkan";
+Blockly.Msg.LISTS_GET_INDEX_TAIL = ""; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FIRST = "Kembalikan item pertama dalam senarai.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FROM = "Kembalikan item dalam kedudukan yang ditetapkan dalam senarai.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_LAST = "Kembalikan item pertama dalam senarai.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_RANDOM = "Kembalikan item rawak dalam senarai.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST = "Alihkan dan kembalikan item pertama dalam senarai.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM = "Alihkan dan kembalikan item mengikut spesifikasi posisi dalam senarai.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST = "Alihkan dan kembalikan item terakhir dalam senarai.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM = "Alihkan dan kembalikan item rawak dalam senarai.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST = "Alihkan item pertama dalam senarai.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM = "Alihkan item pada posisi mengikut spesifikasi dalam senarai.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST = "Alihkan item terakhir dalam senarai.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM = "Alihkan item rawak dalam senarai.";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_END = "ke # dari akhir";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_START = "ke #";
+Blockly.Msg.LISTS_GET_SUBLIST_END_LAST = "ke akhir";
+Blockly.Msg.LISTS_GET_SUBLIST_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-a-sublist"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_START_FIRST = "dapatkan sub-senarai daripada pertama";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_END = "dapatkan sub-senarai daripada # daripada terakhir";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_START = "dapatkan sub-senarai daripada #";
+Blockly.Msg.LISTS_GET_SUBLIST_TAIL = ""; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_TOOLTIP = "Wujudkan salinan bahagian yang ditentukan dari senarai.";
+Blockly.Msg.LISTS_INDEX_FROM_END_TOOLTIP = "%1 ialah item terakhir.";
+Blockly.Msg.LISTS_INDEX_FROM_START_TOOLTIP = "%1 ialah item pertama.";
+Blockly.Msg.LISTS_INDEX_OF_FIRST = "cari pertama item kejadian";
+Blockly.Msg.LISTS_INDEX_OF_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-items-from-a-list"; // untranslated
+Blockly.Msg.LISTS_INDEX_OF_LAST = "cari kejadian akhir item";
+Blockly.Msg.LISTS_INDEX_OF_TOOLTIP = "Menyatakan indeks kejadian pertama/terakhir item berkenaan dalam senarai. Menyatakan %1 jika item berkenaan tidak ditemui.";
+Blockly.Msg.LISTS_INLIST = "dalam senarai";
+Blockly.Msg.LISTS_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#is-empty"; // untranslated
+Blockly.Msg.LISTS_ISEMPTY_TITLE = "%1 adalah kosong";
+Blockly.Msg.LISTS_ISEMPTY_TOOLTIP = "Kembalikan benar jika senarai kosong.";
+Blockly.Msg.LISTS_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Lists#length-of"; // untranslated
+Blockly.Msg.LISTS_LENGTH_TITLE = "panjang %1";
+Blockly.Msg.LISTS_LENGTH_TOOLTIP = "Kembalikan panjang senarai";
+Blockly.Msg.LISTS_REPEAT_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
+Blockly.Msg.LISTS_REPEAT_TITLE = "wujudkan senarai dengan item %1 diulangi %2 kali";
+Blockly.Msg.LISTS_REPEAT_TOOLTIP = "Wujudkan senarai yang terdiri daripada nilai berulang mengikut nombor yang ditentukan.";
+Blockly.Msg.LISTS_SET_INDEX_HELPURL = "https://github.com/google/blockly/wiki/Lists#in-list--set"; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_INPUT_TO = "sebagai";
+Blockly.Msg.LISTS_SET_INDEX_INSERT = "masukkan pada";
+Blockly.Msg.LISTS_SET_INDEX_SET = "set";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST = "Selit item pada permulaan senarai.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FROM = "Masukkan item pada posisi yand ditentukan dalam senarai.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_LAST = "Tambahkan item dalam senarai akhir.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM = "Selit item secara rawak di dalam senarai.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FIRST = "Set item pertama dalam senarai.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FROM = "Masukkan item pada posisi yang ditentukan dalam senarai.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_LAST = "Set item terakhir dalam senarai.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_RANDOM = "Set item rawak dalam senarai.";
+Blockly.Msg.LISTS_SORT_HELPURL = "https://github.com/google/blockly/wiki/Lists#sorting-a-list"; // untranslated
+Blockly.Msg.LISTS_SORT_ORDER_ASCENDING = "ascending"; // untranslated
+Blockly.Msg.LISTS_SORT_ORDER_DESCENDING = "descending"; // untranslated
+Blockly.Msg.LISTS_SORT_TITLE = "sort %1 %2 %3"; // untranslated
+Blockly.Msg.LISTS_SORT_TOOLTIP = "Sort a copy of a list."; // untranslated
+Blockly.Msg.LISTS_SORT_TYPE_IGNORECASE = "alphabetic, ignore case"; // untranslated
+Blockly.Msg.LISTS_SORT_TYPE_NUMERIC = "numeric"; // untranslated
+Blockly.Msg.LISTS_SORT_TYPE_TEXT = "alphabetic"; // untranslated
+Blockly.Msg.LISTS_SPLIT_HELPURL = "https://github.com/google/blockly/wiki/Lists#splitting-strings-and-joining-lists";
+Blockly.Msg.LISTS_SPLIT_LIST_FROM_TEXT = "buat senarai dgn teks";
+Blockly.Msg.LISTS_SPLIT_TEXT_FROM_LIST = "buat teks drpd senarai";
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_JOIN = "Cantumkan senarai teks menjadi satu teks, dipecahkan oleh delimiter.";
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_SPLIT = "Pecahkan teks kepada senarai teks, berpecah di setiap delimiter.";
+Blockly.Msg.LISTS_SPLIT_WITH_DELIMITER = "dengan delimiter";
+Blockly.Msg.LOGIC_BOOLEAN_FALSE = "palsu";
+Blockly.Msg.LOGIC_BOOLEAN_HELPURL = "https://github.com/google/blockly/wiki/Logic#values"; // untranslated
+Blockly.Msg.LOGIC_BOOLEAN_TOOLTIP = "Kembalikan samada benar atau palsu.";
+Blockly.Msg.LOGIC_BOOLEAN_TRUE = "benar";
+Blockly.Msg.LOGIC_COMPARE_HELPURL = "https://id.wikipedia.org/wiki/Pertidaksamaan";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_EQ = "Kembali benar jika kedua-dua input benar antara satu sama lain.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GT = "Kembali benar jika input pertama adalah lebih besar daripada input kedua.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GTE = "Kembali benar jika input pertama adalah lebih besar daripada atau sama dengan input kedua.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LT = "Kembali benar jika input pertama adalah lebih kecil daripada input kedua.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LTE = "Kembali benar jika input pertama adalah lebih kecil daripada atau sama dengan input kedua.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_NEQ = "Taip balik benar jika kedua-dua input tidak sama.";
+Blockly.Msg.LOGIC_NEGATE_HELPURL = "https://github.com/google/blockly/wiki/Logic#not"; // untranslated
+Blockly.Msg.LOGIC_NEGATE_TITLE = "bukan %1";
+Blockly.Msg.LOGIC_NEGATE_TOOLTIP = "'Benar' akan dibalas jika inputnya salah. 'Salah' akan dibalas jika inputnya benar.";
+Blockly.Msg.LOGIC_NULL = "null";
+Blockly.Msg.LOGIC_NULL_HELPURL = "https://en.wikipedia.org/wiki/Nullable_type"; // untranslated
+Blockly.Msg.LOGIC_NULL_TOOLTIP = "Returns null.";
+Blockly.Msg.LOGIC_OPERATION_AND = "dan";
+Blockly.Msg.LOGIC_OPERATION_HELPURL = "https://github.com/google/blockly/wiki/Logic#logical-operations"; // untranslated
+Blockly.Msg.LOGIC_OPERATION_OR = "atau";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_AND = "Return true if both inputs are true.";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_OR = "Return true if at least one of the inputs is true.";
+Blockly.Msg.LOGIC_TERNARY_CONDITION = "test";
+Blockly.Msg.LOGIC_TERNARY_HELPURL = "https://en.wikipedia.org/wiki/%3F:"; // untranslated
+Blockly.Msg.LOGIC_TERNARY_IF_FALSE = "Jika palsu";
+Blockly.Msg.LOGIC_TERNARY_IF_TRUE = "Jika benar";
+Blockly.Msg.LOGIC_TERNARY_TOOLTIP = "Check the condition in 'test'. If the condition is true, returns the 'if true' value; otherwise returns the 'if false' value.";
+Blockly.Msg.MATH_ADDITION_SYMBOL = "+";
+Blockly.Msg.MATH_ARITHMETIC_HELPURL = "https://ms.wikipedia.org/wiki/Aritmetik";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_ADD = "Kembalikan jumlah kedua-dua bilangan.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE = "Taip balik hasil bahagi dua nombor tersebut.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MINUS = "Taip balik hasil tolak dua nombor tersebut.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MULTIPLY = "Taip balik hasil darab dua nombor tersebut.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_POWER = "Return the first number raised to the power of the second number.";
+Blockly.Msg.MATH_CHANGE_HELPURL = "https://id.wikipedia.org/wiki/Perjumlahan";
+Blockly.Msg.MATH_CHANGE_TITLE = "perubahan %1 oleh %2";
+Blockly.Msg.MATH_CHANGE_TOOLTIP = "Tambah nombor kepada pembolehubah '%1'.";
+Blockly.Msg.MATH_CONSTANT_HELPURL = "https://ms.wikipedia.org/wiki/Pemalar_matematik";
+Blockly.Msg.MATH_CONSTANT_TOOLTIP = "Return one of the common constants: π (3.141…), e (2.718…), φ (1.618…), sqrt(2) (1.414…), sqrt(½) (0.707…), or ∞ (infinity).";
+Blockly.Msg.MATH_CONSTRAIN_HELPURL = "https://en.wikipedia.org/wiki/Clamping_%28graphics%29"; // untranslated
+Blockly.Msg.MATH_CONSTRAIN_TITLE = "constrain %1 low %2 high %3";
+Blockly.Msg.MATH_CONSTRAIN_TOOLTIP = "Constrain a number to be between the specified limits (inclusive).";
+Blockly.Msg.MATH_DIVISION_SYMBOL = "÷";
+Blockly.Msg.MATH_IS_DIVISIBLE_BY = "Boleh dibahagikan dengan";
+Blockly.Msg.MATH_IS_EVEN = "Adalah genap";
+Blockly.Msg.MATH_IS_NEGATIVE = "negatif";
+Blockly.Msg.MATH_IS_ODD = "aneh";
+Blockly.Msg.MATH_IS_POSITIVE = "adalah positif";
+Blockly.Msg.MATH_IS_PRIME = "is prime";
+Blockly.Msg.MATH_IS_TOOLTIP = "Check if a number is an even, odd, prime, whole, positive, negative, or if it is divisible by certain number. Returns true or false.";
+Blockly.Msg.MATH_IS_WHOLE = "is whole";
+Blockly.Msg.MATH_MODULO_HELPURL = "https://id.wikipedia.org/wiki/Operasi_modulus";
+Blockly.Msg.MATH_MODULO_TITLE = "remainder of %1 ÷ %2";
+Blockly.Msg.MATH_MODULO_TOOLTIP = "Taip balik baki yang didapat daripada pembahagian dua nombor tersebut.";
+Blockly.Msg.MATH_MULTIPLICATION_SYMBOL = "×";
+Blockly.Msg.MATH_NUMBER_HELPURL = "https://ms.wikipedia.org/wiki/Nombor";
+Blockly.Msg.MATH_NUMBER_TOOLTIP = "Suatu nombor.";
+Blockly.Msg.MATH_ONLIST_HELPURL = ""; // untranslated
+Blockly.Msg.MATH_ONLIST_OPERATOR_AVERAGE = "purata daripada senarai";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MAX = "Max senarai";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MEDIAN = "Median senarai";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MIN = "min dalam senarai";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MODE = "jenis senarai";
+Blockly.Msg.MATH_ONLIST_OPERATOR_RANDOM = "Item rawak daripada senarai";
+Blockly.Msg.MATH_ONLIST_OPERATOR_STD_DEV = "sisihan piawai bagi senarai";
+Blockly.Msg.MATH_ONLIST_OPERATOR_SUM = "Jumlah senarai";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_AVERAGE = "Kembalikan purata (min aritmetik) nilai-nilai angka di dalam senarai.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MAX = "Pulangkan jumlah terbesar dalam senarai.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MEDIAN = "Kembalikan nombor median dalam senarai.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MIN = "Kembalikan nombor terkecil dalam senarai.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MODE = "Kembali senarai item yang paling biasa dalam senarai.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_RANDOM = "Kembalikan elemen rawak daripada senarai.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_STD_DEV = "Kembali dengan sisihan piawai daripada senarai.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_SUM = "Kembalikan jumlah semua nombor dalam senarai.";
+Blockly.Msg.MATH_POWER_SYMBOL = "^";
+Blockly.Msg.MATH_RANDOM_FLOAT_HELPURL = "https://en.wikipedia.org/wiki/Random_number_generation";
+Blockly.Msg.MATH_RANDOM_FLOAT_TITLE_RANDOM = "pecahan rawak";
+Blockly.Msg.MATH_RANDOM_FLOAT_TOOLTIP = "Kembali sebahagian kecil rawak antara 0.0 (inklusif) dan 1.0 (eksklusif).";
+Blockly.Msg.MATH_RANDOM_INT_HELPURL = "https://en.wikipedia.org/wiki/Random_number_generation";
+Blockly.Msg.MATH_RANDOM_INT_TITLE = "integer rawak dari %1ke %2";
+Blockly.Msg.MATH_RANDOM_INT_TOOLTIP = "Kembalikan integer rawak diantara dua had yang ditentukan, inklusif.";
+Blockly.Msg.MATH_ROUND_HELPURL = "https://en.wikipedia.org/wiki/Rounding";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUND = "pusingan";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDDOWN = "Pusingan ke bawah";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDUP = "pusingan ke atas";
+Blockly.Msg.MATH_ROUND_TOOLTIP = "Bulat nombor yang naik atau turun.";
+Blockly.Msg.MATH_SINGLE_HELPURL = "https://ms.wikipedia.org/wiki/Punca_kuasa_dua";
+Blockly.Msg.MATH_SINGLE_OP_ABSOLUTE = "mutlak";
+Blockly.Msg.MATH_SINGLE_OP_ROOT = "Punca kuasa dua";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ABS = "Kembalikan nilai mutlak suatu nombor.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_EXP = "Kembalikan e kepada kuasa nombor.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LN = "Kembali dalam logaritma nombor asli.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LOG10 = "Kembali logarithm 10 asas nombor.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_NEG = "Kembalikan nombor yang songsang.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_POW10 = "Kembalikan 10 kepada kuasa nombor.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ROOT = "Kembalikan punca kuasa nombor.";
+Blockly.Msg.MATH_SUBTRACTION_SYMBOL = "-";
+Blockly.Msg.MATH_TRIG_ACOS = "acos";
+Blockly.Msg.MATH_TRIG_ASIN = "asin";
+Blockly.Msg.MATH_TRIG_ATAN = "atan";
+Blockly.Msg.MATH_TRIG_COS = "cos";
+Blockly.Msg.MATH_TRIG_HELPURL = "https://ms.wikipedia.org/wiki/Fungsi_trigonometri";
+Blockly.Msg.MATH_TRIG_SIN = "sin";
+Blockly.Msg.MATH_TRIG_TAN = "tan";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ACOS = "Kembali arccosine beberapa nombor.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ASIN = "Kembalikan arcsince beberapa nombor.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ATAN = "Kembalikan beberapa nombor arctangent.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_COS = "Kembalikan darjah kosinus (bukan radian).";
+Blockly.Msg.MATH_TRIG_TOOLTIP_SIN = "Kembalikan darjah sine (bukan radian).";
+Blockly.Msg.MATH_TRIG_TOOLTIP_TAN = "Kembalikan darjah tangen (bukan radian).";
+Blockly.Msg.NEW_VARIABLE = "Pembolehubah baru...";
+Blockly.Msg.NEW_VARIABLE_TITLE = "Nama pembolehubah baru:";
+Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; // untranslated
+Blockly.Msg.PROCEDURES_ALLOW_STATEMENTS = "bolehkan kenyataan";
+Blockly.Msg.PROCEDURES_BEFORE_PARAMS = "dengan:";
+Blockly.Msg.PROCEDURES_CALLNORETURN_HELPURL = "https://ms.wikipedia.org/wiki/Fungsi";
+Blockly.Msg.PROCEDURES_CALLNORETURN_TOOLTIP = "Run the user-defined function '%1'.";
+Blockly.Msg.PROCEDURES_CALLRETURN_HELPURL = "https://ms.wikipedia.org/wiki/Fungsi";
+Blockly.Msg.PROCEDURES_CALLRETURN_TOOLTIP = "Run the user-defined function '%1' and use its output.";
+Blockly.Msg.PROCEDURES_CALL_BEFORE_PARAMS = "dengan:";
+Blockly.Msg.PROCEDURES_CREATE_DO = "Hasilkan '%1'";
+Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT = "Terangkan fungsi ini...";
+Blockly.Msg.PROCEDURES_DEFNORETURN_DO = ""; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE = "Buat sesuatu";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE = "Untuk";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TOOLTIP = "Menghasilkan suatu fungsi tanpa output.";
+Blockly.Msg.PROCEDURES_DEFRETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_DEFRETURN_RETURN = "kembali";
+Blockly.Msg.PROCEDURES_DEFRETURN_TOOLTIP = "Mencipta satu fungsi dengan pengeluaran.";
+Blockly.Msg.PROCEDURES_DEF_DUPLICATE_WARNING = "Amaran: Fungsi ini mempunyai parameter yang berganda.";
+Blockly.Msg.PROCEDURES_HIGHLIGHT_DEF = "Serlahkan definisi fungsi";
+Blockly.Msg.PROCEDURES_IFRETURN_HELPURL = "http://c2.com/cgi/wiki?GuardClause";
+Blockly.Msg.PROCEDURES_IFRETURN_TOOLTIP = "If a value is true, then return a second value.";
+Blockly.Msg.PROCEDURES_IFRETURN_WARNING = "Amaran: Blok ini hanya boleh digunakan dalam fungsi definisi.";
+Blockly.Msg.PROCEDURES_MUTATORARG_TITLE = "Nama input:";
+Blockly.Msg.PROCEDURES_MUTATORARG_TOOLTIP = "Tambah satu input pada fungsi.";
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TITLE = "Input-input";
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TOOLTIP = "Tambah, alih keluar atau susun semula input pada fungsi ini.";
+Blockly.Msg.REDO = "Redo"; // untranslated
+Blockly.Msg.REMOVE_COMMENT = "Padamkan Komen";
+Blockly.Msg.RENAME_VARIABLE = "Tukar nama pembolehubah...";
+Blockly.Msg.RENAME_VARIABLE_TITLE = "Tukar nama semua pembolehubah '%1' kepada:";
+Blockly.Msg.TEXT_APPEND_APPENDTEXT = "append text";
+Blockly.Msg.TEXT_APPEND_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_APPEND_TO = "Untuk";
+Blockly.Msg.TEXT_APPEND_TOOLTIP = "Append some text to variable '%1'.";
+Blockly.Msg.TEXT_CHANGECASE_HELPURL = "https://github.com/google/blockly/wiki/Text#adjusting-text-case"; // untranslated
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_LOWERCASE = "Kepada huruf kecil";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_TITLECASE = "to Title Case";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_UPPERCASE = "Kepada HURUF BESAR";
+Blockly.Msg.TEXT_CHANGECASE_TOOLTIP = "Return a copy of the text in a different case.";
+Blockly.Msg.TEXT_CHARAT_FIRST = "get first letter";
+Blockly.Msg.TEXT_CHARAT_FROM_END = "get letter # from end";
+Blockly.Msg.TEXT_CHARAT_FROM_START = "get letter #";
+Blockly.Msg.TEXT_CHARAT_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-text"; // untranslated
+Blockly.Msg.TEXT_CHARAT_INPUT_INTEXT = "Dalam teks";
+Blockly.Msg.TEXT_CHARAT_LAST = "Dapatkan abjad terakhir";
+Blockly.Msg.TEXT_CHARAT_RANDOM = "Dapatkan abjad rawak";
+Blockly.Msg.TEXT_CHARAT_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_CHARAT_TOOLTIP = "Returns the letter at the specified position.";
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TOOLTIP = "Add an item to the text.";
+Blockly.Msg.TEXT_CREATE_JOIN_TITLE_JOIN = "Sertai";
+Blockly.Msg.TEXT_CREATE_JOIN_TOOLTIP = "Add, remove, or reorder sections to reconfigure this text block.";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_END = "to letter # from end";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_START = "to letter #";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_LAST = "untuk huruf terakhir";
+Blockly.Msg.TEXT_GET_SUBSTRING_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_INPUT_IN_TEXT = "dalam teks";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FIRST = "get substring from first letter";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_END = "get substring from letter # from end";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_START = "get substring from letter #";
+Blockly.Msg.TEXT_GET_SUBSTRING_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_TOOLTIP = "Returns a specified portion of the text.";
+Blockly.Msg.TEXT_INDEXOF_HELPURL = "https://github.com/google/blockly/wiki/Text#finding-text"; // untranslated
+Blockly.Msg.TEXT_INDEXOF_INPUT_INTEXT = "dalam teks";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_FIRST = "mencari kejadian pertama teks";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_LAST = "mencari kejadian terakhir teks";
+Blockly.Msg.TEXT_INDEXOF_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_INDEXOF_TOOLTIP = "Kembalikan Indeks kejadian pertama/terakhir dari teks pertama ke dalam teks kedua. Kembalikan %1 Jika teks tidak ditemui.";
+Blockly.Msg.TEXT_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Text#checking-for-empty-text"; // untranslated
+Blockly.Msg.TEXT_ISEMPTY_TITLE = "%1 adalah kosong";
+Blockly.Msg.TEXT_ISEMPTY_TOOLTIP = "Kembalikan benar jika teks yang disediakan adalah kosong.";
+Blockly.Msg.TEXT_JOIN_HELPURL = "https://github.com/google/blockly/wiki/Text#text-creation"; // untranslated
+Blockly.Msg.TEXT_JOIN_TITLE_CREATEWITH = "hasilkan teks dengan";
+Blockly.Msg.TEXT_JOIN_TOOLTIP = "Hasilkan sebahagian teks dengan menghubungkan apa jua nombor item.";
+Blockly.Msg.TEXT_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_LENGTH_TITLE = "panjang %1";
+Blockly.Msg.TEXT_LENGTH_TOOLTIP = "Kembalikan jumlah huruf (termasuk ruang) dalam teks yang disediakan.";
+Blockly.Msg.TEXT_PRINT_HELPURL = "https://github.com/google/blockly/wiki/Text#printing-text"; // untranslated
+Blockly.Msg.TEXT_PRINT_TITLE = "cetak %1";
+Blockly.Msg.TEXT_PRINT_TOOLTIP = "Cetak teks yang ditentukan, nombor atau nilai lain.";
+Blockly.Msg.TEXT_PROMPT_HELPURL = "https://github.com/google/blockly/wiki/Text#getting-input-from-the-user"; // untranslated
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_NUMBER = "Peringatan kepada pengguna untuk nombor.";
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_TEXT = "Peringatkan pengguna untuk sebahagian teks.";
+Blockly.Msg.TEXT_PROMPT_TYPE_NUMBER = "Prom untuk nombor dengan mesej";
+Blockly.Msg.TEXT_PROMPT_TYPE_TEXT = "Prom untuk teks dengan mesej";
+Blockly.Msg.TEXT_TEXT_HELPURL = "https://ms.wikipedia.org/wiki/Rentetan";
+Blockly.Msg.TEXT_TEXT_TOOLTIP = "Huruf, perkataan, atau baris teks.";
+Blockly.Msg.TEXT_TRIM_HELPURL = "https://github.com/google/blockly/wiki/Text#trimming-removing-spaces"; // untranslated
+Blockly.Msg.TEXT_TRIM_OPERATOR_BOTH = "mengurangkan kawasan dari kedua-dua belah";
+Blockly.Msg.TEXT_TRIM_OPERATOR_LEFT = "mengurangkan ruang dari sebelah kiri";
+Blockly.Msg.TEXT_TRIM_OPERATOR_RIGHT = "mengurangkan kawasan dari sisi kanan";
+Blockly.Msg.TEXT_TRIM_TOOLTIP = "Kembali salinan teks dengan ruang yang dikeluarkan daripada satu atau hujung kedua belah.";
+Blockly.Msg.TODAY = "Hari ini";
+Blockly.Msg.UNDO = "Undo"; // untranslated
+Blockly.Msg.VARIABLES_DEFAULT_NAME = "Perkara";
+Blockly.Msg.VARIABLES_GET_CREATE_SET = "Hasilkan 'set %1'";
+Blockly.Msg.VARIABLES_GET_HELPURL = "https://github.com/google/blockly/wiki/Variables#get"; // untranslated
+Blockly.Msg.VARIABLES_GET_TOOLTIP = "Kembalikan nilai pemboleh ubah ini.";
+Blockly.Msg.VARIABLES_SET = "set %1 ke %2";
+Blockly.Msg.VARIABLES_SET_CREATE_GET = "Hasilkan 'set %1'";
+Blockly.Msg.VARIABLES_SET_HELPURL = "https://github.com/google/blockly/wiki/Variables#set"; // untranslated
+Blockly.Msg.VARIABLES_SET_TOOLTIP = "Set pembolehubah ini supaya sama dengan input.";
+Blockly.Msg.VARIABLE_ALREADY_EXISTS = "A variable named '%1' already exists."; // untranslated
+Blockly.Msg.PROCEDURES_DEFRETURN_TITLE = Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE;
+Blockly.Msg.CONTROLS_IF_IF_TITLE_IF = Blockly.Msg.CONTROLS_IF_MSG_IF;
+Blockly.Msg.CONTROLS_WHILEUNTIL_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_MSG_THEN = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_ELSE_TITLE_ELSE = Blockly.Msg.CONTROLS_IF_MSG_ELSE;
+Blockly.Msg.PROCEDURES_DEFRETURN_PROCEDURE = Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE;
+Blockly.Msg.LISTS_GET_SUBLIST_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.LISTS_GET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.PROCEDURES_DEFRETURN_DO = Blockly.Msg.PROCEDURES_DEFNORETURN_DO;
+Blockly.Msg.CONTROLS_IF_ELSEIF_TITLE_ELSEIF = Blockly.Msg.CONTROLS_IF_MSG_ELSEIF;
+Blockly.Msg.LISTS_GET_INDEX_HELPURL = Blockly.Msg.LISTS_INDEX_OF_HELPURL;
+Blockly.Msg.CONTROLS_FOREACH_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_SET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TITLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_APPEND_VARIABLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.LISTS_INDEX_OF_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.PROCEDURES_DEFRETURN_COMMENT = Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT; \ No newline at end of file
diff --git a/blockly/msg/js/nb.js b/blockly/msg/js/nb.js
new file mode 100644
index 0000000..a6e1c55
--- /dev/null
+++ b/blockly/msg/js/nb.js
@@ -0,0 +1,391 @@
+// This file was automatically generated. Do not modify.
+
+'use strict';
+
+goog.provide('Blockly.Msg.nb');
+
+goog.require('Blockly.Msg');
+
+Blockly.Msg.ADD_COMMENT = "Legg til kommentar";
+Blockly.Msg.CHANGE_VALUE_TITLE = "Bytt verdi:";
+Blockly.Msg.CLEAN_UP = "Rydd opp Blocks";
+Blockly.Msg.COLLAPSE_ALL = "Skjul blokker";
+Blockly.Msg.COLLAPSE_BLOCK = "Skjul blokk";
+Blockly.Msg.COLOUR_BLEND_COLOUR1 = "farge 1";
+Blockly.Msg.COLOUR_BLEND_COLOUR2 = "farge 2";
+Blockly.Msg.COLOUR_BLEND_HELPURL = "http://meyerweb.com/eric/tools/color-blend/";
+Blockly.Msg.COLOUR_BLEND_RATIO = "forhold";
+Blockly.Msg.COLOUR_BLEND_TITLE = "blande";
+Blockly.Msg.COLOUR_BLEND_TOOLTIP = "Blander to farger sammen med et gitt forhold (0.0 - 1.0).";
+Blockly.Msg.COLOUR_PICKER_HELPURL = "https://en.wikipedia.org/wiki/Color";
+Blockly.Msg.COLOUR_PICKER_TOOLTIP = "Velg en farge fra paletten.";
+Blockly.Msg.COLOUR_RANDOM_HELPURL = "http://randomcolour.com"; // untranslated
+Blockly.Msg.COLOUR_RANDOM_TITLE = "tilfeldig farge";
+Blockly.Msg.COLOUR_RANDOM_TOOLTIP = "Velg en tilfeldig farge.";
+Blockly.Msg.COLOUR_RGB_BLUE = "blå";
+Blockly.Msg.COLOUR_RGB_GREEN = "grønn";
+Blockly.Msg.COLOUR_RGB_HELPURL = "http://www.december.com/html/spec/colorper.html";
+Blockly.Msg.COLOUR_RGB_RED = "rød";
+Blockly.Msg.COLOUR_RGB_TITLE = "farge med";
+Blockly.Msg.COLOUR_RGB_TOOLTIP = "Lag en farge med angitt verdi av rød, grønn og blå. Alle verdier må være mellom 0 og 100.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_HELPURL = "https://github.com/google/blockly/wiki/Loops#loop-termination-blocks"; // untranslated
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK = "bryt ut av løkken";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE = "fortsett med neste gjentakelse av løkken";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK = "Bryt ut av den gjeldende løkken.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE = "Hopp over resten av denne løkken og fortsett med neste gjentakelse.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_WARNING = "Advarsel: Denne blokken kan kun brukes innenfor en løkke.";
+Blockly.Msg.CONTROLS_FOREACH_HELPURL = "https://github.com/google/blockly/wiki/Loops#for-each"; // untranslated
+Blockly.Msg.CONTROLS_FOREACH_TITLE = "for hvert element %1 i listen %2";
+Blockly.Msg.CONTROLS_FOREACH_TOOLTIP = "For hvert element i en liste, angi variabelen '%1' til elementet, og deretter lag noen setninger.";
+Blockly.Msg.CONTROLS_FOR_HELPURL = "https://github.com/google/blockly/wiki/Loops#count-with"; // untranslated
+Blockly.Msg.CONTROLS_FOR_TITLE = "tell med %1 fra %2 til %3 med %4";
+Blockly.Msg.CONTROLS_FOR_TOOLTIP = "Ha variabel \"%1\" ta verdiene fra start nummer til slutt nummer, telle med spesifisert intervall og lag de spesifiserte blokkene.";
+Blockly.Msg.CONTROLS_IF_ELSEIF_TOOLTIP = "Legg til en betingelse til hvis blokken.";
+Blockly.Msg.CONTROLS_IF_ELSE_TOOLTIP = "Legg til hva som skal skje hvis de andre ikke slår til.";
+Blockly.Msg.CONTROLS_IF_HELPURL = "https://github.com/google/blockly/wiki/IfElse"; // untranslated
+Blockly.Msg.CONTROLS_IF_IF_TOOLTIP = "Legg til, fjern eller flytt seksjoner i denne hvis-blokken.";
+Blockly.Msg.CONTROLS_IF_MSG_ELSE = "ellers";
+Blockly.Msg.CONTROLS_IF_MSG_ELSEIF = "ellers hvis";
+Blockly.Msg.CONTROLS_IF_MSG_IF = "hvis";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_1 = "Hvis dette er sant, så gjør følgende.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_2 = "Hvis dette er sant, så utfør den første blokken av instruksjoner. Hvis ikke, utfør den andre blokken.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_3 = "Hvis det første stemmer, så utfør den første blokken av instruksjoner. Ellers, hvis det andre stemmer, utfør den andre blokken av instruksjoner.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_4 = "Hvis den første verdien er sann, så utfør den første blokken med setninger. Ellers, hvis den andre verdien er sann, så utfør den andre blokken med setninger. Hvis ingen av verdiene er sanne, så utfør den siste blokken med setninger.";
+Blockly.Msg.CONTROLS_REPEAT_HELPURL = "https://en.wikipedia.org/wiki/For_loop";
+Blockly.Msg.CONTROLS_REPEAT_INPUT_DO = "gjør";
+Blockly.Msg.CONTROLS_REPEAT_TITLE = "gjenta %1 ganger";
+Blockly.Msg.CONTROLS_REPEAT_TOOLTIP = "Gjenta noen instruksjoner flere ganger.";
+Blockly.Msg.CONTROLS_WHILEUNTIL_HELPURL = "https://github.com/google/blockly/wiki/Loops#repeat"; // untranslated
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "gjenta til";
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "gjenta mens";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "Så lenge et utsagn ikke stemmer, gjør noen instruksjoner.";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "Så lenge et utsagn stemmer, utfør noen instruksjoner.";
+Blockly.Msg.DELETE_ALL_BLOCKS = "Slett alle %1 blokker?";
+Blockly.Msg.DELETE_BLOCK = "Slett blokk";
+Blockly.Msg.DELETE_VARIABLE = "Delete the '%1' variable"; // untranslated
+Blockly.Msg.DELETE_VARIABLE_CONFIRMATION = "Delete %1 uses of the '%2' variable?"; // untranslated
+Blockly.Msg.DELETE_X_BLOCKS = "Slett %1 blokker";
+Blockly.Msg.DISABLE_BLOCK = "Deaktiver blokk";
+Blockly.Msg.DUPLICATE_BLOCK = "duplikat";
+Blockly.Msg.ENABLE_BLOCK = "Aktiver blokk";
+Blockly.Msg.EXPAND_ALL = "Utvid blokker";
+Blockly.Msg.EXPAND_BLOCK = "Utvid blokk";
+Blockly.Msg.EXTERNAL_INPUTS = "Eksterne kilder";
+Blockly.Msg.HELP = "Hjelp";
+Blockly.Msg.INLINE_INPUTS = "Interne kilder";
+Blockly.Msg.LISTS_CREATE_EMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-empty-list";
+Blockly.Msg.LISTS_CREATE_EMPTY_TITLE = "opprett en tom liste";
+Blockly.Msg.LISTS_CREATE_EMPTY_TOOLTIP = "Returnerer en tom liste, altså med lengde 0";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TITLE_ADD = "liste";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TOOLTIP = "Legg til, fjern eller endre rekkefølgen for å endre på denne delen av listen.";
+Blockly.Msg.LISTS_CREATE_WITH_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
+Blockly.Msg.LISTS_CREATE_WITH_INPUT_WITH = "lag en liste med";
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TOOLTIP = "Tilføy et element til listen.";
+Blockly.Msg.LISTS_CREATE_WITH_TOOLTIP = "Lag en liste med et vilkårlig antall elementer.";
+Blockly.Msg.LISTS_GET_INDEX_FIRST = "først";
+Blockly.Msg.LISTS_GET_INDEX_FROM_END = "# fra slutten";
+Blockly.Msg.LISTS_GET_INDEX_FROM_START = "#";
+Blockly.Msg.LISTS_GET_INDEX_GET = "hent";
+Blockly.Msg.LISTS_GET_INDEX_GET_REMOVE = "hent og fjern";
+Blockly.Msg.LISTS_GET_INDEX_LAST = "siste";
+Blockly.Msg.LISTS_GET_INDEX_RANDOM = "tilfeldig";
+Blockly.Msg.LISTS_GET_INDEX_REMOVE = "fjern";
+Blockly.Msg.LISTS_GET_INDEX_TAIL = "";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FIRST = "Returnerer det første elementet i en liste.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FROM = "Returner elementet på den angitte posisjonen i en liste.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_LAST = "Returnerer det siste elementet i en liste.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_RANDOM = "Returnerer et tilfeldig element i en liste.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST = "Fjerner og returnerer det første elementet i en liste.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM = "Fjerner og returnerer elementet ved en gitt posisjon i en liste.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST = "Fjerner og returnerer det siste elementet i en liste.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM = "Fjerner og returnerer et tilfeldig element i en liste.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST = "Fjerner det første elementet i en liste.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM = "Fjerner et element ved en gitt posisjon i en liste.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST = "Fjerner det siste elementet i en liste.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM = "Fjerner et tilfeldig element i en liste.";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_END = "til # fra slutten";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_START = "til #";
+Blockly.Msg.LISTS_GET_SUBLIST_END_LAST = "til siste";
+Blockly.Msg.LISTS_GET_SUBLIST_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-a-sublist"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_START_FIRST = "Hent en del av listen";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_END = "Hent de siste # elementene";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_START = "Hent del-listen fra #";
+Blockly.Msg.LISTS_GET_SUBLIST_TAIL = "";
+Blockly.Msg.LISTS_GET_SUBLIST_TOOLTIP = "Kopiérer en ønsket del av en liste.";
+Blockly.Msg.LISTS_INDEX_FROM_END_TOOLTIP = "%1 er det siste elementet.";
+Blockly.Msg.LISTS_INDEX_FROM_START_TOOLTIP = "%1 er det første elementet.";
+Blockly.Msg.LISTS_INDEX_OF_FIRST = "finn første forekomst av elementet";
+Blockly.Msg.LISTS_INDEX_OF_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-items-from-a-list"; // untranslated
+Blockly.Msg.LISTS_INDEX_OF_LAST = "finn siste forekomst av elementet";
+Blockly.Msg.LISTS_INDEX_OF_TOOLTIP = "Returnerer indeksen av den første/siste forekomsten av elementet i lista. Returnerer %1 hvis ikke funnet.";
+Blockly.Msg.LISTS_INLIST = "i listen";
+Blockly.Msg.LISTS_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#is-empty"; // untranslated
+Blockly.Msg.LISTS_ISEMPTY_TITLE = "%1 er tom";
+Blockly.Msg.LISTS_ISEMPTY_TOOLTIP = "Returnerer sann hvis listen er tom.";
+Blockly.Msg.LISTS_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Lists#length-of"; // untranslated
+Blockly.Msg.LISTS_LENGTH_TITLE = "lengden på %1";
+Blockly.Msg.LISTS_LENGTH_TOOLTIP = "Returnerer lengden til en liste.";
+Blockly.Msg.LISTS_REPEAT_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
+Blockly.Msg.LISTS_REPEAT_TITLE = "Lag en liste hvor elementet %1 forekommer %2 ganger";
+Blockly.Msg.LISTS_REPEAT_TOOLTIP = "Lager en liste hvor den gitte verdien gjentas et antall ganger.";
+Blockly.Msg.LISTS_SET_INDEX_HELPURL = "https://github.com/google/blockly/wiki/Lists#in-list--set"; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_INPUT_TO = "som";
+Blockly.Msg.LISTS_SET_INDEX_INSERT = "sett inn ved";
+Blockly.Msg.LISTS_SET_INDEX_SET = "sett";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST = "Setter inn elementet i starten av en liste.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FROM = "Setter inn elementet ved den angitte posisjonen i en liste.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_LAST = "Tilføy elementet til slutten av en liste.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM = "Setter inn elementet ved en tilfeldig posisjon i en liste.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FIRST = "Angir det første elementet i en liste.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FROM = "Setter inn elementet ved den angitte posisjonen i en liste.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_LAST = "Angir det siste elementet i en liste.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_RANDOM = "Angir et tilfeldig element i en liste.";
+Blockly.Msg.LISTS_SORT_HELPURL = "https://github.com/google/blockly/wiki/Lists#sorting-a-list"; // untranslated
+Blockly.Msg.LISTS_SORT_ORDER_ASCENDING = "ascending"; // untranslated
+Blockly.Msg.LISTS_SORT_ORDER_DESCENDING = "descending"; // untranslated
+Blockly.Msg.LISTS_SORT_TITLE = "sort %1 %2 %3"; // untranslated
+Blockly.Msg.LISTS_SORT_TOOLTIP = "Sort a copy of a list."; // untranslated
+Blockly.Msg.LISTS_SORT_TYPE_IGNORECASE = "alphabetic, ignore case"; // untranslated
+Blockly.Msg.LISTS_SORT_TYPE_NUMERIC = "numeric"; // untranslated
+Blockly.Msg.LISTS_SORT_TYPE_TEXT = "alphabetic"; // untranslated
+Blockly.Msg.LISTS_SPLIT_HELPURL = "https://github.com/google/blockly/wiki/Lists#splitting-strings-and-joining-lists"; // untranslated
+Blockly.Msg.LISTS_SPLIT_LIST_FROM_TEXT = "lag liste av tekst";
+Blockly.Msg.LISTS_SPLIT_TEXT_FROM_LIST = "lag tekst av liste";
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_JOIN = "Join a list of texts into one text, separated by a delimiter."; // untranslated
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_SPLIT = "Split text into a list of texts, breaking at each delimiter."; // untranslated
+Blockly.Msg.LISTS_SPLIT_WITH_DELIMITER = "with delimiter"; // untranslated
+Blockly.Msg.LOGIC_BOOLEAN_FALSE = "usann";
+Blockly.Msg.LOGIC_BOOLEAN_HELPURL = "https://github.com/google/blockly/wiki/Logic#values"; // untranslated
+Blockly.Msg.LOGIC_BOOLEAN_TOOLTIP = "Returnerer enten sann eller usann.";
+Blockly.Msg.LOGIC_BOOLEAN_TRUE = "sann";
+Blockly.Msg.LOGIC_COMPARE_HELPURL = "https://en.wikipedia.org/wiki/Inequality_(mathematics)";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_EQ = "Returnerer sann hvis begge inputene er like hverandre.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GT = "Returnerer sant hvis det første argumentet er større enn den andre argumentet.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GTE = "Returnerer sant hvis det første argumentet er større enn eller likt det andre argumentet.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LT = "Returnerer sant hvis det første argumentet er mindre enn det andre argumentet.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LTE = "Returnerer sant hvis det første argumentet er mindre enn eller likt det andre argumentet.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_NEQ = "Returnerer sant hvis begge argumentene er ulike hverandre.";
+Blockly.Msg.LOGIC_NEGATE_HELPURL = "https://github.com/google/blockly/wiki/Logic#not"; // untranslated
+Blockly.Msg.LOGIC_NEGATE_TITLE = "ikke %1";
+Blockly.Msg.LOGIC_NEGATE_TOOLTIP = "Returnerer sant hvis argumentet er usant. Returnerer usant hvis argumentet er sant.";
+Blockly.Msg.LOGIC_NULL = "null";
+Blockly.Msg.LOGIC_NULL_HELPURL = "https://en.wikipedia.org/wiki/Nullable_type";
+Blockly.Msg.LOGIC_NULL_TOOLTIP = "Returnerer null.";
+Blockly.Msg.LOGIC_OPERATION_AND = "og";
+Blockly.Msg.LOGIC_OPERATION_HELPURL = "https://github.com/google/blockly/wiki/Logic#logical-operations"; // untranslated
+Blockly.Msg.LOGIC_OPERATION_OR = "eller";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_AND = "Returnerer sant hvis begge argumentene er sanne.";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_OR = "Returnerer sant hvis minst ett av argumentene er sant.";
+Blockly.Msg.LOGIC_TERNARY_CONDITION = "test";
+Blockly.Msg.LOGIC_TERNARY_HELPURL = "https://en.wikipedia.org/wiki/%3F:";
+Blockly.Msg.LOGIC_TERNARY_IF_FALSE = "hvis usant";
+Blockly.Msg.LOGIC_TERNARY_IF_TRUE = "hvis sant";
+Blockly.Msg.LOGIC_TERNARY_TOOLTIP = "Sjekk betingelsen i 'test'. Hvis betingelsen er sann, da returneres 'hvis sant' verdien. Hvis ikke returneres 'hvis usant' verdien.";
+Blockly.Msg.MATH_ADDITION_SYMBOL = "+";
+Blockly.Msg.MATH_ARITHMETIC_HELPURL = "https://no.wikipedia.org/wiki/Aritmetikk";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_ADD = "Returnerer summen av to tall.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE = "Returner kvotienten av to tall.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MINUS = "Returner differansen mellom to tall.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MULTIPLY = "Returner produktet av to tall.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_POWER = "Returner det første tallet opphøyd i den andre tallet.";
+Blockly.Msg.MATH_CHANGE_HELPURL = "https://en.wikipedia.org/wiki/Programming_idiom#Incrementing_a_counter";
+Blockly.Msg.MATH_CHANGE_TITLE = "endre %1 ved %2";
+Blockly.Msg.MATH_CHANGE_TOOLTIP = "Addere et tall til variabelen '%1'.";
+Blockly.Msg.MATH_CONSTANT_HELPURL = "https://en.wikipedia.org/wiki/Mathematical_constant";
+Blockly.Msg.MATH_CONSTANT_TOOLTIP = "Returner en av felleskonstantene π (3.141…), e (2.718…), φ (1.618…), sqrt(2) (1.414…), sqrt(½) (0.707…), eller ∞ (uendelig).";
+Blockly.Msg.MATH_CONSTRAIN_HELPURL = "https://en.wikipedia.org/wiki/Clamping_%28graphics%29"; // untranslated
+Blockly.Msg.MATH_CONSTRAIN_TITLE = "begrense %1 lav %2 høy %3";
+Blockly.Msg.MATH_CONSTRAIN_TOOLTIP = "Begrens et tall til å være mellom de angitte grenseverdiene (inklusiv).";
+Blockly.Msg.MATH_DIVISION_SYMBOL = "÷";
+Blockly.Msg.MATH_IS_DIVISIBLE_BY = "er delelig med";
+Blockly.Msg.MATH_IS_EVEN = "er et partall";
+Blockly.Msg.MATH_IS_NEGATIVE = "er negativer negativt";
+Blockly.Msg.MATH_IS_ODD = "er et oddetall";
+Blockly.Msg.MATH_IS_POSITIVE = "er positivt";
+Blockly.Msg.MATH_IS_PRIME = "er et primtall";
+Blockly.Msg.MATH_IS_TOOLTIP = "Sjekk om et tall er et partall, oddetall, primtall, heltall, positivt, negativt, eller om det er delelig med et annet tall. Returnerer sant eller usant.";
+Blockly.Msg.MATH_IS_WHOLE = "er et heltall";
+Blockly.Msg.MATH_MODULO_HELPURL = "https://en.wikipedia.org/wiki/Modulo_operation";
+Blockly.Msg.MATH_MODULO_TITLE = "resten av %1 ÷ %2";
+Blockly.Msg.MATH_MODULO_TOOLTIP = "Returner resten fra delingen av to tall.";
+Blockly.Msg.MATH_MULTIPLICATION_SYMBOL = "x";
+Blockly.Msg.MATH_NUMBER_HELPURL = "https://en.wikipedia.org/wiki/Number";
+Blockly.Msg.MATH_NUMBER_TOOLTIP = "Et tall.";
+Blockly.Msg.MATH_ONLIST_HELPURL = "";
+Blockly.Msg.MATH_ONLIST_OPERATOR_AVERAGE = "gjennomsnittet av listen";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MAX = "maksimum av liste";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MEDIAN = "medianen til listen";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MIN = "minimum av listen";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MODE = "Listens typetall";
+Blockly.Msg.MATH_ONLIST_OPERATOR_RANDOM = "tilfeldig element i listen";
+Blockly.Msg.MATH_ONLIST_OPERATOR_STD_DEV = "standardavviket til listen";
+Blockly.Msg.MATH_ONLIST_OPERATOR_SUM = "summen av listen";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_AVERAGE = "Returner det aritmetiske gjennomsnittet av tallene i listen.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MAX = "Returner det største tallet i listen.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MEDIAN = "Returner listens median.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MIN = "Returner det minste tallet i listen.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MODE = "Returner en liste av de vanligste elementene i listen.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_RANDOM = "Returner et tilfeldig element fra listen.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_STD_DEV = "Returner listens standardavvik.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_SUM = "Returner summen av alle tallene i listen.";
+Blockly.Msg.MATH_POWER_SYMBOL = "^";
+Blockly.Msg.MATH_RANDOM_FLOAT_HELPURL = "https://en.wikipedia.org/wiki/Random_number_generation";
+Blockly.Msg.MATH_RANDOM_FLOAT_TITLE_RANDOM = "tilfeldig flyttall";
+Blockly.Msg.MATH_RANDOM_FLOAT_TOOLTIP = "Returner et tilfeldig flyttall mellom 0.0 (inkludert) og 1.0 (ikke inkludert).";
+Blockly.Msg.MATH_RANDOM_INT_HELPURL = "https://en.wikipedia.org/wiki/Random_number_generation";
+Blockly.Msg.MATH_RANDOM_INT_TITLE = "Et tilfeldig heltall mellom %1 og %2";
+Blockly.Msg.MATH_RANDOM_INT_TOOLTIP = "Returner et tilfeldig tall mellom de to spesifiserte grensene, inkludert de to.";
+Blockly.Msg.MATH_ROUND_HELPURL = "https://en.wikipedia.org/wiki/Rounding";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUND = "avrunding";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDDOWN = "rund ned";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDUP = "rund opp";
+Blockly.Msg.MATH_ROUND_TOOLTIP = "Avrund et tall ned eller opp.";
+Blockly.Msg.MATH_SINGLE_HELPURL = "https://en.wikipedia.org/wiki/Square_root";
+Blockly.Msg.MATH_SINGLE_OP_ABSOLUTE = "absoluttverdi";
+Blockly.Msg.MATH_SINGLE_OP_ROOT = "kvadratrot";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ABS = "Returner absoluttverdien av et tall.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_EXP = "Returner e opphøyd i et tall.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LN = "Returner den naturlige logaritmen til et tall.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LOG10 = "Returner base-10 logaritmen til et tall.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_NEG = "Returner det negative tallet.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_POW10 = "Returner 10 opphøyd i et tall.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ROOT = "Returner kvadratroten av et tall.";
+Blockly.Msg.MATH_SUBTRACTION_SYMBOL = "-";
+Blockly.Msg.MATH_TRIG_ACOS = "acos";
+Blockly.Msg.MATH_TRIG_ASIN = "asin";
+Blockly.Msg.MATH_TRIG_ATAN = "atan";
+Blockly.Msg.MATH_TRIG_COS = "cos";
+Blockly.Msg.MATH_TRIG_HELPURL = "https://en.wikipedia.org/wiki/Trigonometric_functions";
+Blockly.Msg.MATH_TRIG_SIN = "sin";
+Blockly.Msg.MATH_TRIG_TAN = "tan";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ACOS = "Returner arccosinus til et tall.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ASIN = "Returner arcsinus til et tall.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ATAN = "Returner arctangens til et tall.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_COS = "Returner cosinus av en vinkel (ikke radian).";
+Blockly.Msg.MATH_TRIG_TOOLTIP_SIN = "Returner sinus av en vinkel (ikke radian).";
+Blockly.Msg.MATH_TRIG_TOOLTIP_TAN = "Returner tangenten av en vinkel (ikke radian).";
+Blockly.Msg.NEW_VARIABLE = "Ny variabel...";
+Blockly.Msg.NEW_VARIABLE_TITLE = "Nytt variabelnavn:";
+Blockly.Msg.ORDINAL_NUMBER_SUFFIX = "";
+Blockly.Msg.PROCEDURES_ALLOW_STATEMENTS = "tillat uttalelser";
+Blockly.Msg.PROCEDURES_BEFORE_PARAMS = "med:";
+Blockly.Msg.PROCEDURES_CALLNORETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29";
+Blockly.Msg.PROCEDURES_CALLNORETURN_TOOLTIP = "Kjør den brukerdefinerte funksjonen '%1'.";
+Blockly.Msg.PROCEDURES_CALLRETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29";
+Blockly.Msg.PROCEDURES_CALLRETURN_TOOLTIP = "Kjør den brukerdefinerte funksjonen'%1' og bruk resultatet av den.";
+Blockly.Msg.PROCEDURES_CALL_BEFORE_PARAMS = "med:";
+Blockly.Msg.PROCEDURES_CREATE_DO = "Opprett '%1'";
+Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT = "Describe this function..."; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_DO = "";
+Blockly.Msg.PROCEDURES_DEFNORETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29";
+Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE = "gjør noe";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE = "til";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TOOLTIP = "Opprett en funksjon som ikke har noe resultat.";
+Blockly.Msg.PROCEDURES_DEFRETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29";
+Blockly.Msg.PROCEDURES_DEFRETURN_RETURN = "returner";
+Blockly.Msg.PROCEDURES_DEFRETURN_TOOLTIP = "Oppretter en funksjon som har et resultat.";
+Blockly.Msg.PROCEDURES_DEF_DUPLICATE_WARNING = "Advarsel: Denne funksjonen har duplikate parametere.";
+Blockly.Msg.PROCEDURES_HIGHLIGHT_DEF = "Marker funksjonsdefinisjonen";
+Blockly.Msg.PROCEDURES_IFRETURN_HELPURL = "http://c2.com/cgi/wiki?GuardClause"; // untranslated
+Blockly.Msg.PROCEDURES_IFRETURN_TOOLTIP = "Hvis en verdi er sann, returner da en annen verdi.";
+Blockly.Msg.PROCEDURES_IFRETURN_WARNING = "Advarsel: Denne blokken kan bare benyttes innenfor en funksjonsdefinisjon.";
+Blockly.Msg.PROCEDURES_MUTATORARG_TITLE = "Navn på parameter:";
+Blockly.Msg.PROCEDURES_MUTATORARG_TOOLTIP = "Legg til en input til funksjonen.";
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TITLE = "parametere";
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TOOLTIP = "Legg til, fjern eller endre rekkefølgen på input til denne funksjonen.";
+Blockly.Msg.REDO = "Redo"; // untranslated
+Blockly.Msg.REMOVE_COMMENT = "Fjern kommentar";
+Blockly.Msg.RENAME_VARIABLE = "Gi nytt navn til variabel...";
+Blockly.Msg.RENAME_VARIABLE_TITLE = "Endre navnet til alle '%1' variabler til:";
+Blockly.Msg.TEXT_APPEND_APPENDTEXT = "tilføy tekst";
+Blockly.Msg.TEXT_APPEND_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_APPEND_TO = "til";
+Blockly.Msg.TEXT_APPEND_TOOLTIP = "Tilføy tekst til variabelen '%1'.";
+Blockly.Msg.TEXT_CHANGECASE_HELPURL = "https://github.com/google/blockly/wiki/Text#adjusting-text-case"; // untranslated
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_LOWERCASE = "til små bokstaver";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_TITLECASE = "til store forbokstaver";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_UPPERCASE = "til STORE BOKSTAVER";
+Blockly.Msg.TEXT_CHANGECASE_TOOLTIP = "Returnerer en kopi av teksten der store og små bokstaver er byttet om.";
+Blockly.Msg.TEXT_CHARAT_FIRST = "hent første bokstav";
+Blockly.Msg.TEXT_CHARAT_FROM_END = "hent bokstav # fra slutten";
+Blockly.Msg.TEXT_CHARAT_FROM_START = "hent bokstav #";
+Blockly.Msg.TEXT_CHARAT_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-text"; // untranslated
+Blockly.Msg.TEXT_CHARAT_INPUT_INTEXT = "i tekst";
+Blockly.Msg.TEXT_CHARAT_LAST = "hent den siste bokstaven";
+Blockly.Msg.TEXT_CHARAT_RANDOM = "hent en tilfeldig bokstav";
+Blockly.Msg.TEXT_CHARAT_TAIL = "";
+Blockly.Msg.TEXT_CHARAT_TOOLTIP = "Returnerer bokstaven på angitt plassering.";
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TOOLTIP = "Legg til et element til teksten.";
+Blockly.Msg.TEXT_CREATE_JOIN_TITLE_JOIN = "føy sammen";
+Blockly.Msg.TEXT_CREATE_JOIN_TOOLTIP = "Legg til, fjern eller forandre rekkefølgen for å forandre på denne tekstblokken.";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_END = "til bokstav # fra slutten";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_START = "til bokstav #";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_LAST = "til siste bokstav";
+Blockly.Msg.TEXT_GET_SUBSTRING_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_INPUT_IN_TEXT = "i tekst";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FIRST = "hent delstreng fra første bokstav";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_END = "hent delstreng fra bokstav # fra slutten";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_START = "hent delstreng fra bokstav #";
+Blockly.Msg.TEXT_GET_SUBSTRING_TAIL = "";
+Blockly.Msg.TEXT_GET_SUBSTRING_TOOLTIP = "Returnerer den angitte delen av teksten.";
+Blockly.Msg.TEXT_INDEXOF_HELPURL = "https://github.com/google/blockly/wiki/Text#finding-text"; // untranslated
+Blockly.Msg.TEXT_INDEXOF_INPUT_INTEXT = "i tekst";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_FIRST = "finn første forekomst av tekst";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_LAST = "finn siste forekomst av tekst";
+Blockly.Msg.TEXT_INDEXOF_TAIL = "";
+Blockly.Msg.TEXT_INDEXOF_TOOLTIP = "Returnerer posisjonen for første/siste forekomsten av den første tekst i den andre teksten. Returnerer %1 hvis teksten ikke blir funnet.";
+Blockly.Msg.TEXT_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Text#checking-for-empty-text"; // untranslated
+Blockly.Msg.TEXT_ISEMPTY_TITLE = "%1 er tom";
+Blockly.Msg.TEXT_ISEMPTY_TOOLTIP = "Returnerer sann hvis den angitte teksten er tom.";
+Blockly.Msg.TEXT_JOIN_HELPURL = "https://github.com/google/blockly/wiki/Text#text-creation"; // untranslated
+Blockly.Msg.TEXT_JOIN_TITLE_CREATEWITH = "lage tekst med";
+Blockly.Msg.TEXT_JOIN_TOOLTIP = "Opprett en tekst ved å sette sammen et antall elementer.";
+Blockly.Msg.TEXT_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_LENGTH_TITLE = "lengden av %1";
+Blockly.Msg.TEXT_LENGTH_TOOLTIP = "Returnerer antall bokstaver (inkludert mellomrom) i den angitte teksten.";
+Blockly.Msg.TEXT_PRINT_HELPURL = "https://github.com/google/blockly/wiki/Text#printing-text"; // untranslated
+Blockly.Msg.TEXT_PRINT_TITLE = "skriv ut %1";
+Blockly.Msg.TEXT_PRINT_TOOLTIP = "Skriv ut angitt tekst, tall eller annet innhold.";
+Blockly.Msg.TEXT_PROMPT_HELPURL = "https://github.com/google/blockly/wiki/Text#getting-input-from-the-user"; // untranslated
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_NUMBER = "Be brukeren om et tall.";
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_TEXT = "Spør brukeren om tekst.";
+Blockly.Msg.TEXT_PROMPT_TYPE_NUMBER = "spør om et tall med en melding";
+Blockly.Msg.TEXT_PROMPT_TYPE_TEXT = "spør om tekst med en melding";
+Blockly.Msg.TEXT_TEXT_HELPURL = "https://en.wikipedia.org/wiki/String_(computer_science)";
+Blockly.Msg.TEXT_TEXT_TOOLTIP = "En bokstav, ett ord eller en linje med tekst.";
+Blockly.Msg.TEXT_TRIM_HELPURL = "https://github.com/google/blockly/wiki/Text#trimming-removing-spaces"; // untranslated
+Blockly.Msg.TEXT_TRIM_OPERATOR_BOTH = "fjern mellomrom fra begge sider av";
+Blockly.Msg.TEXT_TRIM_OPERATOR_LEFT = "fjern mellomrom fra venstre side av";
+Blockly.Msg.TEXT_TRIM_OPERATOR_RIGHT = "fjern mellomrom fra høyre side av";
+Blockly.Msg.TEXT_TRIM_TOOLTIP = "Returner en kopi av teksten med mellomrom fjernet fra en eller begge sidene.";
+Blockly.Msg.TODAY = "I dag";
+Blockly.Msg.UNDO = "Undo"; // untranslated
+Blockly.Msg.VARIABLES_DEFAULT_NAME = "element";
+Blockly.Msg.VARIABLES_GET_CREATE_SET = "Opprett 'sett %1'";
+Blockly.Msg.VARIABLES_GET_HELPURL = "https://github.com/google/blockly/wiki/Variables#get"; // untranslated
+Blockly.Msg.VARIABLES_GET_TOOLTIP = "Returnerer verdien av denne variabelen.";
+Blockly.Msg.VARIABLES_SET = "sett %1 til %2";
+Blockly.Msg.VARIABLES_SET_CREATE_GET = "Opprett 'hent %1'";
+Blockly.Msg.VARIABLES_SET_HELPURL = "https://github.com/google/blockly/wiki/Variables#set"; // untranslated
+Blockly.Msg.VARIABLES_SET_TOOLTIP = "Setter verdien av denne variablen lik parameteren.";
+Blockly.Msg.VARIABLE_ALREADY_EXISTS = "A variable named '%1' already exists."; // untranslated
+Blockly.Msg.PROCEDURES_DEFRETURN_TITLE = Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE;
+Blockly.Msg.CONTROLS_IF_IF_TITLE_IF = Blockly.Msg.CONTROLS_IF_MSG_IF;
+Blockly.Msg.CONTROLS_WHILEUNTIL_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_MSG_THEN = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_ELSE_TITLE_ELSE = Blockly.Msg.CONTROLS_IF_MSG_ELSE;
+Blockly.Msg.PROCEDURES_DEFRETURN_PROCEDURE = Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE;
+Blockly.Msg.LISTS_GET_SUBLIST_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.LISTS_GET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.PROCEDURES_DEFRETURN_DO = Blockly.Msg.PROCEDURES_DEFNORETURN_DO;
+Blockly.Msg.CONTROLS_IF_ELSEIF_TITLE_ELSEIF = Blockly.Msg.CONTROLS_IF_MSG_ELSEIF;
+Blockly.Msg.LISTS_GET_INDEX_HELPURL = Blockly.Msg.LISTS_INDEX_OF_HELPURL;
+Blockly.Msg.CONTROLS_FOREACH_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_SET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TITLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_APPEND_VARIABLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.LISTS_INDEX_OF_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.PROCEDURES_DEFRETURN_COMMENT = Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT; \ No newline at end of file
diff --git a/blockly/msg/js/nl.js b/blockly/msg/js/nl.js
new file mode 100644
index 0000000..6574d34
--- /dev/null
+++ b/blockly/msg/js/nl.js
@@ -0,0 +1,391 @@
+// This file was automatically generated. Do not modify.
+
+'use strict';
+
+goog.provide('Blockly.Msg.nl');
+
+goog.require('Blockly.Msg');
+
+Blockly.Msg.ADD_COMMENT = "Reactie toevoegen";
+Blockly.Msg.CHANGE_VALUE_TITLE = "Waarde wijzigen:";
+Blockly.Msg.CLEAN_UP = "Blokken opschonen";
+Blockly.Msg.COLLAPSE_ALL = "Blokken samenvouwen";
+Blockly.Msg.COLLAPSE_BLOCK = "Blok samenvouwen";
+Blockly.Msg.COLOUR_BLEND_COLOUR1 = "kleur 1";
+Blockly.Msg.COLOUR_BLEND_COLOUR2 = "kleur 2";
+Blockly.Msg.COLOUR_BLEND_HELPURL = "http://meyerweb.com/eric/tools/color-blend/";
+Blockly.Msg.COLOUR_BLEND_RATIO = "verhouding";
+Blockly.Msg.COLOUR_BLEND_TITLE = "mengen";
+Blockly.Msg.COLOUR_BLEND_TOOLTIP = "Mengt twee kleuren samen met een bepaalde verhouding (0.0 - 1.0).";
+Blockly.Msg.COLOUR_PICKER_HELPURL = "https://nl.wikipedia.org/wiki/Kleur";
+Blockly.Msg.COLOUR_PICKER_TOOLTIP = "Kies een kleur in het palet.";
+Blockly.Msg.COLOUR_RANDOM_HELPURL = "http://randomcolour.com"; // untranslated
+Blockly.Msg.COLOUR_RANDOM_TITLE = "willekeurige kleur";
+Blockly.Msg.COLOUR_RANDOM_TOOLTIP = "Kies een willekeurige kleur.";
+Blockly.Msg.COLOUR_RGB_BLUE = "blauw";
+Blockly.Msg.COLOUR_RGB_GREEN = "groen";
+Blockly.Msg.COLOUR_RGB_HELPURL = "http://www.december.com/html/spec/colorper.html";
+Blockly.Msg.COLOUR_RGB_RED = "rood";
+Blockly.Msg.COLOUR_RGB_TITLE = "kleuren met";
+Blockly.Msg.COLOUR_RGB_TOOLTIP = "Maak een kleur met de opgegeven hoeveelheid rood, groen en blauw. Alle waarden moeten tussen 0 en 100 liggen.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_HELPURL = "https://github.com/google/blockly/wiki/Loops#loop-termination-blocks";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK = "uit lus breken";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE = "doorgaan met de volgende iteratie van de lus";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK = "uit de bovenliggende lus breken";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE = "De rest van deze lus overslaan en doorgaan met de volgende herhaling.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_WARNING = "Waarschuwing: dit blok mag alleen gebruikt worden in een lus.";
+Blockly.Msg.CONTROLS_FOREACH_HELPURL = "https://github.com/google/blockly/wiki/Loops#for-each"; // untranslated
+Blockly.Msg.CONTROLS_FOREACH_TITLE = "voor ieder item %1 in lijst %2";
+Blockly.Msg.CONTROLS_FOREACH_TOOLTIP = "Voor ieder item in een lijst, stel de variabele \"%1\" in op het item en voer daarna opdrachten uit.";
+Blockly.Msg.CONTROLS_FOR_HELPURL = "https://github.com/google/blockly/wiki/Loops#count-with";
+Blockly.Msg.CONTROLS_FOR_TITLE = "rekenen met %1 van %2 tot %3 in stappen van %4";
+Blockly.Msg.CONTROLS_FOR_TOOLTIP = "Laat de variabele \"%1\" de waarden aannemen van het beginnummer tot het laatste nummer, tellende met het opgegeven interval, en met uitvoering van de opgegeven blokken.";
+Blockly.Msg.CONTROLS_IF_ELSEIF_TOOLTIP = "Voeg een voorwaarde toe aan het als-blok.";
+Blockly.Msg.CONTROLS_IF_ELSE_TOOLTIP = "Voeg een laatste, vang-alles conditie toe aan het als-statement.";
+Blockly.Msg.CONTROLS_IF_HELPURL = "https://github.com/google/blockly/wiki/IfElse";
+Blockly.Msg.CONTROLS_IF_IF_TOOLTIP = "Voeg stukken toe, verwijder of wijzig de volgorde om dit \"als\"-blok te wijzigen.";
+Blockly.Msg.CONTROLS_IF_MSG_ELSE = "anders";
+Blockly.Msg.CONTROLS_IF_MSG_ELSEIF = "anders als";
+Blockly.Msg.CONTROLS_IF_MSG_IF = "als";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_1 = "Als een waarde waar is, voer dan opdrachten uit.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_2 = "Als een waarde waar is, voert dan het eerste blok met opdrachten uit. Voer andere het tweede blok met opdrachten uit.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_3 = "Als de eerste waarde waar is, voer dan het eerste blok met opdrachten uit. Voer anders, als de tweede waarde waar is, het tweede blok met opdrachten uit.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_4 = "Als de eerste waarde \"waar\" is, voer dan het eerste blok uit. Voer anders wanneer de tweede waarde \"waar\" is, het tweede blok uit. Als geen van beide waarden waar zijn, voer dan het laatste blok uit.";
+Blockly.Msg.CONTROLS_REPEAT_HELPURL = "https://nl.wikipedia.org/wiki/Repetitie_(informatica)#For_en_Foreach";
+Blockly.Msg.CONTROLS_REPEAT_INPUT_DO = "voer uit";
+Blockly.Msg.CONTROLS_REPEAT_TITLE = "%1 keer herhalen";
+Blockly.Msg.CONTROLS_REPEAT_TOOLTIP = "Voer een aantal opdrachten meerdere keren uit.";
+Blockly.Msg.CONTROLS_WHILEUNTIL_HELPURL = "https://github.com/google/blockly/wiki/Loops#repeat";
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "herhalen totdat";
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "herhalen zolang";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "Terwijl een waarde onwaar is de volgende opdrachten uitvoeren.";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "Terwijl een waarde waar is de volgende opdrachten uitvoeren.";
+Blockly.Msg.DELETE_ALL_BLOCKS = "Alle %1 blokken verwijderen?";
+Blockly.Msg.DELETE_BLOCK = "Blok verwijderen";
+Blockly.Msg.DELETE_VARIABLE = "Delete the '%1' variable"; // untranslated
+Blockly.Msg.DELETE_VARIABLE_CONFIRMATION = "Delete %1 uses of the '%2' variable?"; // untranslated
+Blockly.Msg.DELETE_X_BLOCKS = "%1 blokken verwijderen";
+Blockly.Msg.DISABLE_BLOCK = "Blok uitschakelen";
+Blockly.Msg.DUPLICATE_BLOCK = "Duplicaat";
+Blockly.Msg.ENABLE_BLOCK = "Blok inschakelen";
+Blockly.Msg.EXPAND_ALL = "Blokken uitvouwen";
+Blockly.Msg.EXPAND_BLOCK = "Blok uitvouwen";
+Blockly.Msg.EXTERNAL_INPUTS = "Externe invoer";
+Blockly.Msg.HELP = "Hulp";
+Blockly.Msg.INLINE_INPUTS = "Inline invoer";
+Blockly.Msg.LISTS_CREATE_EMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-empty-list";
+Blockly.Msg.LISTS_CREATE_EMPTY_TITLE = "maak een lege lijst";
+Blockly.Msg.LISTS_CREATE_EMPTY_TOOLTIP = "Geeft een lijst terug met lengte 0, zonder items";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TITLE_ADD = "lijst";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TOOLTIP = "Voeg stukken toe, verwijder ze of wijzig de volgorde om dit lijstblok aan te passen.";
+Blockly.Msg.LISTS_CREATE_WITH_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
+Blockly.Msg.LISTS_CREATE_WITH_INPUT_WITH = "maak een lijst met";
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TOOLTIP = "Voeg iets toe aan de lijst.";
+Blockly.Msg.LISTS_CREATE_WITH_TOOLTIP = "Maak een lijst met een willekeurig aantal items.";
+Blockly.Msg.LISTS_GET_INDEX_FIRST = "eerste";
+Blockly.Msg.LISTS_GET_INDEX_FROM_END = "# van einde";
+Blockly.Msg.LISTS_GET_INDEX_FROM_START = "#";
+Blockly.Msg.LISTS_GET_INDEX_GET = "haal op";
+Blockly.Msg.LISTS_GET_INDEX_GET_REMOVE = "haal op en verwijder";
+Blockly.Msg.LISTS_GET_INDEX_LAST = "laatste";
+Blockly.Msg.LISTS_GET_INDEX_RANDOM = "willekeurig";
+Blockly.Msg.LISTS_GET_INDEX_REMOVE = "verwijder";
+Blockly.Msg.LISTS_GET_INDEX_TAIL = ""; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FIRST = "Geeft het eerste item in een lijst terug.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FROM = "Geeft het item op de opgegeven positie in een lijst.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_LAST = "Geeft het laatste item in een lijst terug.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_RANDOM = "Geeft een willekeurig item uit een lijst.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST = "Geeft het laatste item in een lijst terug en verwijdert het.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM = "Geeft het item op de opgegeven positie in een lijst terug en verwijdert het.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST = "Geeft het laatste item uit een lijst terug en verwijdert het.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM = "Geeft een willekeurig item in een lijst terug en verwijdert het.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST = "Verwijdert het eerste item in een lijst.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM = "Verwijdert het item op de opgegeven positie in een lijst.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST = "Verwijdert het laatste item uit een lijst.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM = "Verwijdert een willekeurig item uit een lijst.";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_END = "naar # vanaf einde";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_START = "naar item";
+Blockly.Msg.LISTS_GET_SUBLIST_END_LAST = "naar laatste";
+Blockly.Msg.LISTS_GET_SUBLIST_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-a-sublist";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FIRST = "haal sublijst op vanaf eerste";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_END = "haal sublijst op van positie vanaf einde";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_START = "haal sublijst op vanaf positie";
+Blockly.Msg.LISTS_GET_SUBLIST_TAIL = ""; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_TOOLTIP = "Maakt een kopie van het opgegeven deel van de lijst.";
+Blockly.Msg.LISTS_INDEX_FROM_END_TOOLTIP = "Item %1 is het laatste item.";
+Blockly.Msg.LISTS_INDEX_FROM_START_TOOLTIP = "Item %1 is het eerste item.";
+Blockly.Msg.LISTS_INDEX_OF_FIRST = "zoek eerste voorkomen van item";
+Blockly.Msg.LISTS_INDEX_OF_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-items-from-a-list";
+Blockly.Msg.LISTS_INDEX_OF_LAST = "zoek laatste voorkomen van item";
+Blockly.Msg.LISTS_INDEX_OF_TOOLTIP = "Geeft de index terug van het eerste of laatste voorkomen van een item in de lijst. Geeft %1 terug als het item niet is gevonden.";
+Blockly.Msg.LISTS_INLIST = "in lijst";
+Blockly.Msg.LISTS_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#is-empty"; // untranslated
+Blockly.Msg.LISTS_ISEMPTY_TITLE = "%1 is leeg";
+Blockly.Msg.LISTS_ISEMPTY_TOOLTIP = "Geeft waar terug als de lijst leeg is.";
+Blockly.Msg.LISTS_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Lists#length-of";
+Blockly.Msg.LISTS_LENGTH_TITLE = "lengte van %1";
+Blockly.Msg.LISTS_LENGTH_TOOLTIP = "Geeft de lengte van een lijst terug.";
+Blockly.Msg.LISTS_REPEAT_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with";
+Blockly.Msg.LISTS_REPEAT_TITLE = "Maak lijst met item %1, %2 keer herhaald";
+Blockly.Msg.LISTS_REPEAT_TOOLTIP = "Maakt een lijst die bestaat uit de opgegeven waarde, het opgegeven aantal keer herhaald.";
+Blockly.Msg.LISTS_SET_INDEX_HELPURL = "https://github.com/google/blockly/wiki/Lists#in-list--set";
+Blockly.Msg.LISTS_SET_INDEX_INPUT_TO = "als";
+Blockly.Msg.LISTS_SET_INDEX_INSERT = "tussenvoegen op";
+Blockly.Msg.LISTS_SET_INDEX_SET = "stel in";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST = "Voegt het item toe aan het begin van de lijst.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FROM = "Voegt het item op een opgegeven positie in een lijst in.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_LAST = "Voeg het item aan het einde van een lijst toe.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM = "Voegt het item op een willekeurige positie in de lijst in.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FIRST = "Stelt het eerste item in een lijst in.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FROM = "Stelt het item op de opgegeven positie in de lijst in.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_LAST = "Stelt het laatste item van een lijst in.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_RANDOM = "Stelt een willekeurig item uit de lijst in.";
+Blockly.Msg.LISTS_SORT_HELPURL = "https://github.com/google/blockly/wiki/Lists#sorting-a-list";
+Blockly.Msg.LISTS_SORT_ORDER_ASCENDING = "oplopend";
+Blockly.Msg.LISTS_SORT_ORDER_DESCENDING = "aflopend";
+Blockly.Msg.LISTS_SORT_TITLE = "sorteer %1 %2 %3";
+Blockly.Msg.LISTS_SORT_TOOLTIP = "Sorteer een kopie van een lijst.";
+Blockly.Msg.LISTS_SORT_TYPE_IGNORECASE = "alfabetisch, negeer hoofd-/kleine letters";
+Blockly.Msg.LISTS_SORT_TYPE_NUMERIC = "numerieke";
+Blockly.Msg.LISTS_SORT_TYPE_TEXT = "in alfabetische volgorde";
+Blockly.Msg.LISTS_SPLIT_HELPURL = "https://github.com/google/blockly/wiki/Lists#splitting-strings-and-joining-lists"; // untranslated
+Blockly.Msg.LISTS_SPLIT_LIST_FROM_TEXT = "lijst maken van tekst";
+Blockly.Msg.LISTS_SPLIT_TEXT_FROM_LIST = "tekst maken van lijst";
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_JOIN = "Lijst van tekstdelen samenvoegen in één stuk tekst, waarbij de tekstdelen gescheiden zijn door een scheidingsteken.";
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_SPLIT = "Tekst splitsen in een lijst van teksten op basis van een scheidingsteken.";
+Blockly.Msg.LISTS_SPLIT_WITH_DELIMITER = "met scheidingsteken";
+Blockly.Msg.LOGIC_BOOLEAN_FALSE = "onwaar";
+Blockly.Msg.LOGIC_BOOLEAN_HELPURL = "https://github.com/google/blockly/wiki/Logic#values";
+Blockly.Msg.LOGIC_BOOLEAN_TOOLTIP = "Geeft \"waar\" of \"onwaar\" terug.";
+Blockly.Msg.LOGIC_BOOLEAN_TRUE = "waar";
+Blockly.Msg.LOGIC_COMPARE_HELPURL = "https://nl.wikipedia.org/wiki/Ongelijkheid_(wiskunde)";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_EQ = "Geeft \"waar\", als beide waarden gelijk aan elkaar zijn.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GT = "Geeft \"waar\" terug als de eerste invoer meer is dan de tweede invoer.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GTE = "Geeft \"waar\" terug als de eerste invoer groter is of gelijk aan de tweede invoer.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LT = "Geeft \"waar\" als de eerste invoer kleiner is dan de tweede invoer.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LTE = "Geeft \"waar\" terug als de eerste invoer kleiner of gelijk is aan de tweede invoer.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_NEQ = "Geeft \"waar\" terug als de waarden niet gelijk zijn aan elkaar.";
+Blockly.Msg.LOGIC_NEGATE_HELPURL = "https://github.com/google/blockly/wiki/Logic#not";
+Blockly.Msg.LOGIC_NEGATE_TITLE = "niet %1";
+Blockly.Msg.LOGIC_NEGATE_TOOLTIP = "Geeft \"waar\" terug als de invoer \"onwaar\" is. Geeft \"onwaar\" als de invoer \"waar\" is.";
+Blockly.Msg.LOGIC_NULL = "niets";
+Blockly.Msg.LOGIC_NULL_HELPURL = "https://en.wikipedia.org/wiki/Nullable_type";
+Blockly.Msg.LOGIC_NULL_TOOLTIP = "Geeft niets terug.";
+Blockly.Msg.LOGIC_OPERATION_AND = "en";
+Blockly.Msg.LOGIC_OPERATION_HELPURL = "https://github.com/google/blockly/wiki/Logic#logical-operations";
+Blockly.Msg.LOGIC_OPERATION_OR = "of";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_AND = "Geeft waar als beide waarden waar zijn.";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_OR = "Geeft \"waar\" terug als in ieder geval één van de waarden waar is.";
+Blockly.Msg.LOGIC_TERNARY_CONDITION = "test";
+Blockly.Msg.LOGIC_TERNARY_HELPURL = "https://en.wikipedia.org/wiki/%3F:";
+Blockly.Msg.LOGIC_TERNARY_IF_FALSE = "als onwaar";
+Blockly.Msg.LOGIC_TERNARY_IF_TRUE = "als waar";
+Blockly.Msg.LOGIC_TERNARY_TOOLTIP = "Test de voorwaarde in \"test\". Als de voorwaarde \"waar\" is, geef de waarde van \"als waar\" terug; geef anders de waarde van \"als onwaar\" terug.";
+Blockly.Msg.MATH_ADDITION_SYMBOL = "+";
+Blockly.Msg.MATH_ARITHMETIC_HELPURL = "https://nl.wikipedia.org/wiki/Rekenen";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_ADD = "Geeft de som van 2 getallen.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE = "Geeft de gedeelde waarde van twee getallen.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MINUS = "Geeft het verschil van de twee getallen.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MULTIPLY = "Geeft het product terug van de twee getallen.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_POWER = "Geeft het eerste getal tot de macht van het tweede getal.";
+Blockly.Msg.MATH_CHANGE_HELPURL = "https://en.wikipedia.org/wiki/Programming_idiom#Incrementing_a_counter";
+Blockly.Msg.MATH_CHANGE_TITLE = "%1 wijzigen met %2";
+Blockly.Msg.MATH_CHANGE_TOOLTIP = "Voegt een getal toe aan variabele \"%1\".";
+Blockly.Msg.MATH_CONSTANT_HELPURL = "https://nl.wikipedia.org/wiki/Wiskundige_constante";
+Blockly.Msg.MATH_CONSTANT_TOOLTIP = "Geeft een van de vaak voorkomende constante waardes: π (3.141…), e (2.718…), φ (1.618…), √2 (1.414…), √½ (0.707…), of ∞ (oneindig).";
+Blockly.Msg.MATH_CONSTRAIN_HELPURL = "https://en.wikipedia.org/wiki/Clamping_%28graphics%29"; // untranslated
+Blockly.Msg.MATH_CONSTRAIN_TITLE = "beperk %1 van minimaal %2 tot maximaal %3";
+Blockly.Msg.MATH_CONSTRAIN_TOOLTIP = "Beperk een getal tussen de twee opgegeven limieten (inclusief).";
+Blockly.Msg.MATH_DIVISION_SYMBOL = "÷";
+Blockly.Msg.MATH_IS_DIVISIBLE_BY = "is deelbaar door";
+Blockly.Msg.MATH_IS_EVEN = "is even";
+Blockly.Msg.MATH_IS_NEGATIVE = "is negatief";
+Blockly.Msg.MATH_IS_ODD = "is oneven";
+Blockly.Msg.MATH_IS_POSITIVE = "is positief";
+Blockly.Msg.MATH_IS_PRIME = "is priemgetal";
+Blockly.Msg.MATH_IS_TOOLTIP = "Test of een getal even, oneven, een priemgetal, geheel, positief of negatief is, of deelbaar is door een bepaald getal. Geeft \"waar\" of \"onwaar\".";
+Blockly.Msg.MATH_IS_WHOLE = "is geheel getal";
+Blockly.Msg.MATH_MODULO_HELPURL = "https://nl.wikipedia.org/wiki/Modulair_rekenen";
+Blockly.Msg.MATH_MODULO_TITLE = "restgetal van %1 ÷ %2";
+Blockly.Msg.MATH_MODULO_TOOLTIP = "Geeft het restgetal van het resultaat van de deling van de twee getallen.";
+Blockly.Msg.MATH_MULTIPLICATION_SYMBOL = "×";
+Blockly.Msg.MATH_NUMBER_HELPURL = "https://nl.wikipedia.org/wiki/Getal_%28wiskunde%29";
+Blockly.Msg.MATH_NUMBER_TOOLTIP = "Een getal.";
+Blockly.Msg.MATH_ONLIST_HELPURL = ""; // untranslated
+Blockly.Msg.MATH_ONLIST_OPERATOR_AVERAGE = "gemiddelde van lijst";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MAX = "hoogste uit lijst";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MEDIAN = "mediaan van lijst";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MIN = "laagste uit lijst";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MODE = "modi van lijst";
+Blockly.Msg.MATH_ONLIST_OPERATOR_RANDOM = "willekeurige item van lijst";
+Blockly.Msg.MATH_ONLIST_OPERATOR_STD_DEV = "standaarddeviatie van lijst";
+Blockly.Msg.MATH_ONLIST_OPERATOR_SUM = "som van lijst";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_AVERAGE = "Geeft het gemiddelde terug van de numerieke waardes in een lijst.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MAX = "Geeft het grootste getal in een lijst.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MEDIAN = "Geeft de mediaan in de lijst.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MIN = "Geeft het kleinste getal uit een lijst.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MODE = "Geeft een lijst van de meest voorkomende onderdelen in de lijst.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_RANDOM = "Geeft een willekeurig item uit de lijst terug.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_STD_DEV = "Geeft de standaardafwijking van de lijst.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_SUM = "Geeft de som van alle getallen in de lijst.";
+Blockly.Msg.MATH_POWER_SYMBOL = "^";
+Blockly.Msg.MATH_RANDOM_FLOAT_HELPURL = "https://nl.wikipedia.org/wiki/Toevalsgenerator";
+Blockly.Msg.MATH_RANDOM_FLOAT_TITLE_RANDOM = "willekeurige fractie";
+Blockly.Msg.MATH_RANDOM_FLOAT_TOOLTIP = "Geeft een willekeurige fractie tussen 0.0 (inclusief) en 1.0 (exclusief).";
+Blockly.Msg.MATH_RANDOM_INT_HELPURL = "https://nl.wikipedia.org/wiki/Toevalsgenerator";
+Blockly.Msg.MATH_RANDOM_INT_TITLE = "willekeurig geheel getal van %1 tot %2";
+Blockly.Msg.MATH_RANDOM_INT_TOOLTIP = "Geeft een willekeurig getal tussen de 2 opgegeven limieten in, inclusief.";
+Blockly.Msg.MATH_ROUND_HELPURL = "https://nl.wikipedia.org/wiki/Afronden";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUND = "afronden";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDDOWN = "naar beneden afronden";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDUP = "omhoog afronden";
+Blockly.Msg.MATH_ROUND_TOOLTIP = "Rondt een getal af omhoog of naar beneden.";
+Blockly.Msg.MATH_SINGLE_HELPURL = "https://nl.wikipedia.org/wiki/Vierkantswortel";
+Blockly.Msg.MATH_SINGLE_OP_ABSOLUTE = "absoluut";
+Blockly.Msg.MATH_SINGLE_OP_ROOT = "wortel";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ABS = "Geeft de absolute waarde van een getal.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_EXP = "Geeft e tot de macht van een getal.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LN = "Geeft het natuurlijk logaritme van een getal.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LOG10 = "Geeft het logaritme basis 10 van een getal.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_NEG = "Geeft de negatief van een getal.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_POW10 = "Geeft 10 tot de macht van een getal.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ROOT = "Geeft de wortel van een getal.";
+Blockly.Msg.MATH_SUBTRACTION_SYMBOL = "-";
+Blockly.Msg.MATH_TRIG_ACOS = "acos";
+Blockly.Msg.MATH_TRIG_ASIN = "asin";
+Blockly.Msg.MATH_TRIG_ATAN = "arctan";
+Blockly.Msg.MATH_TRIG_COS = "cos";
+Blockly.Msg.MATH_TRIG_HELPURL = "https://nl.wikipedia.org/wiki/Goniometrische_functie";
+Blockly.Msg.MATH_TRIG_SIN = "sin";
+Blockly.Msg.MATH_TRIG_TAN = "tan";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ACOS = "Geeft de arccosinus van een getal.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ASIN = "Geeft de arcsinus van een getal.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ATAN = "Geeft de arctangens van een getal.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_COS = "Geeft de cosinus van een graad (geen radialen).";
+Blockly.Msg.MATH_TRIG_TOOLTIP_SIN = "Geeft de sinus van een graad (geen radialen).";
+Blockly.Msg.MATH_TRIG_TOOLTIP_TAN = "Geeft de tangens van een graad (geen radialen).";
+Blockly.Msg.NEW_VARIABLE = "Nieuwe variabele...";
+Blockly.Msg.NEW_VARIABLE_TITLE = "Nieuwe variabelenaam:";
+Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; // untranslated
+Blockly.Msg.PROCEDURES_ALLOW_STATEMENTS = "statements toestaan";
+Blockly.Msg.PROCEDURES_BEFORE_PARAMS = "met:";
+Blockly.Msg.PROCEDURES_CALLNORETURN_HELPURL = "https://nl.wikipedia.org/wiki/Subprogramma";
+Blockly.Msg.PROCEDURES_CALLNORETURN_TOOLTIP = "Voer de door de gebruiker gedefinieerde functie \"%1\" uit.";
+Blockly.Msg.PROCEDURES_CALLRETURN_HELPURL = "https://nl.wikipedia.org/wiki/Subprogramma";
+Blockly.Msg.PROCEDURES_CALLRETURN_TOOLTIP = "Voer de door de gebruiker gedefinieerde functie \"%1\" uit en gebruik de uitvoer.";
+Blockly.Msg.PROCEDURES_CALL_BEFORE_PARAMS = "met:";
+Blockly.Msg.PROCEDURES_CREATE_DO = "Maak \"%1\"";
+Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT = "Deze functie beschrijven...";
+Blockly.Msg.PROCEDURES_DEFNORETURN_DO = ""; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_HELPURL = "https://nl.wikipedia.org/wiki/Subprogramma";
+Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE = "doe iets";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE = "om";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TOOLTIP = "Maakt een functie zonder uitvoer.";
+Blockly.Msg.PROCEDURES_DEFRETURN_HELPURL = "https://nl.wikipedia.org/wiki/Subprogramma";
+Blockly.Msg.PROCEDURES_DEFRETURN_RETURN = "uitvoeren";
+Blockly.Msg.PROCEDURES_DEFRETURN_TOOLTIP = "Maakt een functie met een uitvoer.";
+Blockly.Msg.PROCEDURES_DEF_DUPLICATE_WARNING = "Waarschuwing: deze functie heeft parameters met dezelfde naam.";
+Blockly.Msg.PROCEDURES_HIGHLIGHT_DEF = "Accentueer functiedefinitie";
+Blockly.Msg.PROCEDURES_IFRETURN_HELPURL = "http://c2.com/cgi/wiki?GuardClause";
+Blockly.Msg.PROCEDURES_IFRETURN_TOOLTIP = "Als de eerste waarde \"waar\" is, geef dan de tweede waarde terug.";
+Blockly.Msg.PROCEDURES_IFRETURN_WARNING = "Waarschuwing: dit blok mag alleen gebruikt worden binnen de definitie van een functie.";
+Blockly.Msg.PROCEDURES_MUTATORARG_TITLE = "invoernaam:";
+Blockly.Msg.PROCEDURES_MUTATORARG_TOOLTIP = "Een invoer aan de functie toevoegen.";
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TITLE = "ingangen";
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TOOLTIP = "Invoer van deze functie toevoegen, verwijderen of herordenen.";
+Blockly.Msg.REDO = "Opnieuw";
+Blockly.Msg.REMOVE_COMMENT = "Opmerking verwijderen";
+Blockly.Msg.RENAME_VARIABLE = "Variabele hernoemen...";
+Blockly.Msg.RENAME_VARIABLE_TITLE = "Alle variabelen \"%1\" hernoemen naar:";
+Blockly.Msg.TEXT_APPEND_APPENDTEXT = "tekst";
+Blockly.Msg.TEXT_APPEND_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification";
+Blockly.Msg.TEXT_APPEND_TO = "voeg toe aan";
+Blockly.Msg.TEXT_APPEND_TOOLTIP = "Voeg tekst toe aan de variabele \"%1\".";
+Blockly.Msg.TEXT_CHANGECASE_HELPURL = "https://github.com/google/blockly/wiki/Text#adjusting-text-case";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_LOWERCASE = "naar kleine letters";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_TITLECASE = "naar Hoofdletter Per Woord";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_UPPERCASE = "naar HOOFDLETTERS";
+Blockly.Msg.TEXT_CHANGECASE_TOOLTIP = "Geef een kopie van de tekst met veranderde hoofdletters terug.";
+Blockly.Msg.TEXT_CHARAT_FIRST = "haal eerste letter op";
+Blockly.Msg.TEXT_CHARAT_FROM_END = "haal letter # op vanaf einde";
+Blockly.Msg.TEXT_CHARAT_FROM_START = "haal letter # op";
+Blockly.Msg.TEXT_CHARAT_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-text";
+Blockly.Msg.TEXT_CHARAT_INPUT_INTEXT = "in tekst";
+Blockly.Msg.TEXT_CHARAT_LAST = "haal laatste letter op";
+Blockly.Msg.TEXT_CHARAT_RANDOM = "haal willekeurige letter op";
+Blockly.Msg.TEXT_CHARAT_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_CHARAT_TOOLTIP = "Geeft de letter op de opgegeven positie terug.";
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TOOLTIP = "Voegt een item aan de tekst toe.";
+Blockly.Msg.TEXT_CREATE_JOIN_TITLE_JOIN = "samenvoegen";
+Blockly.Msg.TEXT_CREATE_JOIN_TOOLTIP = "Toevoegen, verwijderen of volgorde wijzigen van secties om dit tekstblok opnieuw in te stellen.";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_END = "van letter # tot einde";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_START = "naar letter #";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_LAST = "naar laatste letter";
+Blockly.Msg.TEXT_GET_SUBSTRING_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text";
+Blockly.Msg.TEXT_GET_SUBSTRING_INPUT_IN_TEXT = "in tekst";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FIRST = "haal subtekst op van eerste letter";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_END = "haal subtekst op vanaf letter # vanaf einde";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_START = "haal subtekst op vanaf letter #";
+Blockly.Msg.TEXT_GET_SUBSTRING_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_TOOLTIP = "Geeft het opgegeven onderdeel van de tekst terug.";
+Blockly.Msg.TEXT_INDEXOF_HELPURL = "https://github.com/google/blockly/wiki/Text#finding-text";
+Blockly.Msg.TEXT_INDEXOF_INPUT_INTEXT = "in tekst";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_FIRST = "zoek eerste voorkomen van tekst";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_LAST = "zoek het laatste voorkomen van tekst";
+Blockly.Msg.TEXT_INDEXOF_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_INDEXOF_TOOLTIP = "Geeft de index terug van de eerste/laatste aanwezigheid van de eerste tekst in de tweede tekst. Geeft %1 terug als de tekst niet gevonden is.";
+Blockly.Msg.TEXT_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Text#checking-for-empty-text";
+Blockly.Msg.TEXT_ISEMPTY_TITLE = "%1 is leeg";
+Blockly.Msg.TEXT_ISEMPTY_TOOLTIP = "Geeft \"waar\" terug, als de opgegeven tekst leeg is.";
+Blockly.Msg.TEXT_JOIN_HELPURL = "https://github.com/google/blockly/wiki/Text#text-creation";
+Blockly.Msg.TEXT_JOIN_TITLE_CREATEWITH = "maak tekst met";
+Blockly.Msg.TEXT_JOIN_TOOLTIP = "Maakt een stuk tekst door één of meer items samen te voegen.";
+Blockly.Msg.TEXT_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification";
+Blockly.Msg.TEXT_LENGTH_TITLE = "lengte van %1";
+Blockly.Msg.TEXT_LENGTH_TOOLTIP = "Geeft het aantal tekens terug (inclusief spaties) in de opgegeven tekst.";
+Blockly.Msg.TEXT_PRINT_HELPURL = "https://github.com/google/blockly/wiki/Text#printing-text";
+Blockly.Msg.TEXT_PRINT_TITLE = "tekst weergeven: %1";
+Blockly.Msg.TEXT_PRINT_TOOLTIP = "Drukt de opgegeven tekst, getal of een andere waarde af.";
+Blockly.Msg.TEXT_PROMPT_HELPURL = "https://github.com/google/blockly/wiki/Text#getting-input-from-the-user";
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_NUMBER = "Vraagt de gebruiker om een getal in te voeren.";
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_TEXT = "Vraagt de gebruiker om invoer.";
+Blockly.Msg.TEXT_PROMPT_TYPE_NUMBER = "vraagt de gebruiker om een getal met de tekst";
+Blockly.Msg.TEXT_PROMPT_TYPE_TEXT = "vraagt om invoer met bericht";
+Blockly.Msg.TEXT_TEXT_HELPURL = "https://nl.wikipedia.org/wiki/String_%28informatica%29";
+Blockly.Msg.TEXT_TEXT_TOOLTIP = "Een letter, woord of een regel tekst.";
+Blockly.Msg.TEXT_TRIM_HELPURL = "https://github.com/google/blockly/wiki/Text#trimming-removing-spaces";
+Blockly.Msg.TEXT_TRIM_OPERATOR_BOTH = "spaties van beide kanten afhalen van";
+Blockly.Msg.TEXT_TRIM_OPERATOR_LEFT = "spaties van de linkerkant verwijderen van";
+Blockly.Msg.TEXT_TRIM_OPERATOR_RIGHT = "spaties van de rechterkant verwijderen van";
+Blockly.Msg.TEXT_TRIM_TOOLTIP = "Geeft een kopie van de tekst met verwijderde spaties van één of beide kanten.";
+Blockly.Msg.TODAY = "Vandaag";
+Blockly.Msg.UNDO = "Ongedaan maken";
+Blockly.Msg.VARIABLES_DEFAULT_NAME = "item";
+Blockly.Msg.VARIABLES_GET_CREATE_SET = "Maak \"verander %1\"";
+Blockly.Msg.VARIABLES_GET_HELPURL = "https://github.com/google/blockly/wiki/Variables#get";
+Blockly.Msg.VARIABLES_GET_TOOLTIP = "Geeft de waarde van deze variabele.";
+Blockly.Msg.VARIABLES_SET = "stel %1 in op %2";
+Blockly.Msg.VARIABLES_SET_CREATE_GET = "Maak 'opvragen van %1'";
+Blockly.Msg.VARIABLES_SET_HELPURL = "https://github.com/google/blockly/wiki/Variables#set";
+Blockly.Msg.VARIABLES_SET_TOOLTIP = "Verandert de waarde van de variabele naar de waarde van de invoer.";
+Blockly.Msg.VARIABLE_ALREADY_EXISTS = "A variable named '%1' already exists."; // untranslated
+Blockly.Msg.PROCEDURES_DEFRETURN_TITLE = Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE;
+Blockly.Msg.CONTROLS_IF_IF_TITLE_IF = Blockly.Msg.CONTROLS_IF_MSG_IF;
+Blockly.Msg.CONTROLS_WHILEUNTIL_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_MSG_THEN = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_ELSE_TITLE_ELSE = Blockly.Msg.CONTROLS_IF_MSG_ELSE;
+Blockly.Msg.PROCEDURES_DEFRETURN_PROCEDURE = Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE;
+Blockly.Msg.LISTS_GET_SUBLIST_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.LISTS_GET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.PROCEDURES_DEFRETURN_DO = Blockly.Msg.PROCEDURES_DEFNORETURN_DO;
+Blockly.Msg.CONTROLS_IF_ELSEIF_TITLE_ELSEIF = Blockly.Msg.CONTROLS_IF_MSG_ELSEIF;
+Blockly.Msg.LISTS_GET_INDEX_HELPURL = Blockly.Msg.LISTS_INDEX_OF_HELPURL;
+Blockly.Msg.CONTROLS_FOREACH_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_SET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TITLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_APPEND_VARIABLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.LISTS_INDEX_OF_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.PROCEDURES_DEFRETURN_COMMENT = Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT; \ No newline at end of file
diff --git a/blockly/msg/js/oc.js b/blockly/msg/js/oc.js
new file mode 100644
index 0000000..5e682d0
--- /dev/null
+++ b/blockly/msg/js/oc.js
@@ -0,0 +1,391 @@
+// This file was automatically generated. Do not modify.
+
+'use strict';
+
+goog.provide('Blockly.Msg.oc');
+
+goog.require('Blockly.Msg');
+
+Blockly.Msg.ADD_COMMENT = "Apondre un comentari";
+Blockly.Msg.CHANGE_VALUE_TITLE = "Modificar la valor :";
+Blockly.Msg.CLEAN_UP = "Clean up Blocks"; // untranslated
+Blockly.Msg.COLLAPSE_ALL = "Redusir los blòts";
+Blockly.Msg.COLLAPSE_BLOCK = "Redusir lo blòt";
+Blockly.Msg.COLOUR_BLEND_COLOUR1 = "color 1";
+Blockly.Msg.COLOUR_BLEND_COLOUR2 = "color 2";
+Blockly.Msg.COLOUR_BLEND_HELPURL = "http://meyerweb.com/eric/tools/color-blend/"; // untranslated
+Blockly.Msg.COLOUR_BLEND_RATIO = "ratio";
+Blockly.Msg.COLOUR_BLEND_TITLE = "mesclar";
+Blockly.Msg.COLOUR_BLEND_TOOLTIP = "Blends two colours together with a given ratio (0.0 - 1.0)."; // untranslated
+Blockly.Msg.COLOUR_PICKER_HELPURL = "https://oc.wikipedia.org/wiki/Color";
+Blockly.Msg.COLOUR_PICKER_TOOLTIP = "Choose a colour from the palette."; // untranslated
+Blockly.Msg.COLOUR_RANDOM_HELPURL = "http://randomcolour.com"; // untranslated
+Blockly.Msg.COLOUR_RANDOM_TITLE = "color aleatòria";
+Blockly.Msg.COLOUR_RANDOM_TOOLTIP = "Causir una color a l'azard.";
+Blockly.Msg.COLOUR_RGB_BLUE = "blau";
+Blockly.Msg.COLOUR_RGB_GREEN = "verd";
+Blockly.Msg.COLOUR_RGB_HELPURL = "http://www.december.com/html/spec/colorper.html"; // untranslated
+Blockly.Msg.COLOUR_RGB_RED = "roge";
+Blockly.Msg.COLOUR_RGB_TITLE = "colorar amb";
+Blockly.Msg.COLOUR_RGB_TOOLTIP = "Create a colour with the specified amount of red, green, and blue. All values must be between 0 and 100."; // untranslated
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_HELPURL = "https://github.com/google/blockly/wiki/Loops#loop-termination-blocks"; // untranslated
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK = "break out of loop"; // untranslated
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE = "continue with next iteration of loop"; // untranslated
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK = "Break out of the containing loop."; // untranslated
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE = "Skip the rest of this loop, and continue with the next iteration."; // untranslated
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_WARNING = "Warning: This block may only be used within a loop."; // untranslated
+Blockly.Msg.CONTROLS_FOREACH_HELPURL = "https://github.com/google/blockly/wiki/Loops#for-each"; // untranslated
+Blockly.Msg.CONTROLS_FOREACH_TITLE = "per cada element %1 dins la lista %2";
+Blockly.Msg.CONTROLS_FOREACH_TOOLTIP = "For each item in a list, set the variable '%1' to the item, and then do some statements."; // untranslated
+Blockly.Msg.CONTROLS_FOR_HELPURL = "https://github.com/google/blockly/wiki/Loops#count-with"; // untranslated
+Blockly.Msg.CONTROLS_FOR_TITLE = "comptar amb %1 de %2 a %3 per %4";
+Blockly.Msg.CONTROLS_FOR_TOOLTIP = "Have the variable '%1' take on the values from the start number to the end number, counting by the specified interval, and do the specified blocks."; // untranslated
+Blockly.Msg.CONTROLS_IF_ELSEIF_TOOLTIP = "Add a condition to the if block."; // untranslated
+Blockly.Msg.CONTROLS_IF_ELSE_TOOLTIP = "Add a final, catch-all condition to the if block."; // untranslated
+Blockly.Msg.CONTROLS_IF_HELPURL = "https://github.com/google/blockly/wiki/IfElse"; // untranslated
+Blockly.Msg.CONTROLS_IF_IF_TOOLTIP = "Add, remove, or reorder sections to reconfigure this if block."; // untranslated
+Blockly.Msg.CONTROLS_IF_MSG_ELSE = "siquenon";
+Blockly.Msg.CONTROLS_IF_MSG_ELSEIF = "siquenon se";
+Blockly.Msg.CONTROLS_IF_MSG_IF = "se";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_1 = "If a value is true, then do some statements."; // untranslated
+Blockly.Msg.CONTROLS_IF_TOOLTIP_2 = "If a value is true, then do the first block of statements. Otherwise, do the second block of statements."; // untranslated
+Blockly.Msg.CONTROLS_IF_TOOLTIP_3 = "If the first value is true, then do the first block of statements. Otherwise, if the second value is true, do the second block of statements."; // untranslated
+Blockly.Msg.CONTROLS_IF_TOOLTIP_4 = "If the first value is true, then do the first block of statements. Otherwise, if the second value is true, do the second block of statements. If none of the values are true, do the last block of statements."; // untranslated
+Blockly.Msg.CONTROLS_REPEAT_HELPURL = "https://oc.wikipedia.org/wiki/For_loop";
+Blockly.Msg.CONTROLS_REPEAT_INPUT_DO = "far";
+Blockly.Msg.CONTROLS_REPEAT_TITLE = "repetir %1 còps";
+Blockly.Msg.CONTROLS_REPEAT_TOOLTIP = "Do some statements several times."; // untranslated
+Blockly.Msg.CONTROLS_WHILEUNTIL_HELPURL = "https://github.com/google/blockly/wiki/Loops#repeat"; // untranslated
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "repetir fins a";
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "repetir tant que";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "While a value is false, then do some statements."; // untranslated
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "While a value is true, then do some statements."; // untranslated
+Blockly.Msg.DELETE_ALL_BLOCKS = "Suprimir totes los %1 blòts ?";
+Blockly.Msg.DELETE_BLOCK = "Suprimir lo blòt";
+Blockly.Msg.DELETE_VARIABLE = "Delete the '%1' variable"; // untranslated
+Blockly.Msg.DELETE_VARIABLE_CONFIRMATION = "Delete %1 uses of the '%2' variable?"; // untranslated
+Blockly.Msg.DELETE_X_BLOCKS = "Suprimir %1 blòts";
+Blockly.Msg.DISABLE_BLOCK = "Desactivar lo blòt";
+Blockly.Msg.DUPLICATE_BLOCK = "Duplicar";
+Blockly.Msg.ENABLE_BLOCK = "Activar lo blòt";
+Blockly.Msg.EXPAND_ALL = "Desvolopar los blòts";
+Blockly.Msg.EXPAND_BLOCK = "Desvolopar lo blòt";
+Blockly.Msg.EXTERNAL_INPUTS = "Entradas extèrnas";
+Blockly.Msg.HELP = "Ajuda";
+Blockly.Msg.INLINE_INPUTS = "Entradas en linha";
+Blockly.Msg.LISTS_CREATE_EMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-empty-list"; // untranslated
+Blockly.Msg.LISTS_CREATE_EMPTY_TITLE = "create empty list"; // untranslated
+Blockly.Msg.LISTS_CREATE_EMPTY_TOOLTIP = "Returns a list, of length 0, containing no data records"; // untranslated
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TITLE_ADD = "lista";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TOOLTIP = "Add, remove, or reorder sections to reconfigure this list block."; // untranslated
+Blockly.Msg.LISTS_CREATE_WITH_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
+Blockly.Msg.LISTS_CREATE_WITH_INPUT_WITH = "crear una lista amb";
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TOOLTIP = "Add an item to the list."; // untranslated
+Blockly.Msg.LISTS_CREATE_WITH_TOOLTIP = "Create a list with any number of items."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_FIRST = "primièr";
+Blockly.Msg.LISTS_GET_INDEX_FROM_END = "# dempuèi la fin";
+Blockly.Msg.LISTS_GET_INDEX_FROM_START = "#"; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_GET = "obténer";
+Blockly.Msg.LISTS_GET_INDEX_GET_REMOVE = "obténer e suprimir";
+Blockly.Msg.LISTS_GET_INDEX_LAST = "darrièr";
+Blockly.Msg.LISTS_GET_INDEX_RANDOM = "aleatòri";
+Blockly.Msg.LISTS_GET_INDEX_REMOVE = "suprimit";
+Blockly.Msg.LISTS_GET_INDEX_TAIL = ""; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FIRST = "Returns the first item in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FROM = "Returns the item at the specified position in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_LAST = "Returns the last item in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_RANDOM = "Returns a random item in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST = "Removes and returns the first item in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM = "Removes and returns the item at the specified position in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST = "Removes and returns the last item in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM = "Removes and returns a random item in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST = "Removes the first item in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM = "Removes the item at the specified position in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST = "Removes the last item in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM = "Removes a random item in a list."; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_END = "fins a # dempuèi la fin";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_START = "fins a #";
+Blockly.Msg.LISTS_GET_SUBLIST_END_LAST = "fins a la fin";
+Blockly.Msg.LISTS_GET_SUBLIST_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-a-sublist"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_START_FIRST = "get sub-list from first"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_END = "get sub-list from # from end"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_START = "get sub-list from #"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_TAIL = ""; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_TOOLTIP = "Creates a copy of the specified portion of a list."; // untranslated
+Blockly.Msg.LISTS_INDEX_FROM_END_TOOLTIP = "%1 is the last item."; // untranslated
+Blockly.Msg.LISTS_INDEX_FROM_START_TOOLTIP = "%1 is the first item."; // untranslated
+Blockly.Msg.LISTS_INDEX_OF_FIRST = "find first occurrence of item"; // untranslated
+Blockly.Msg.LISTS_INDEX_OF_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-items-from-a-list"; // untranslated
+Blockly.Msg.LISTS_INDEX_OF_LAST = "find last occurrence of item"; // untranslated
+Blockly.Msg.LISTS_INDEX_OF_TOOLTIP = "Returns the index of the first/last occurrence of the item in the list. Returns %1 if item is not found."; // untranslated
+Blockly.Msg.LISTS_INLIST = "dins la lista";
+Blockly.Msg.LISTS_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#is-empty"; // untranslated
+Blockly.Msg.LISTS_ISEMPTY_TITLE = "%1 is empty"; // untranslated
+Blockly.Msg.LISTS_ISEMPTY_TOOLTIP = "Returns true if the list is empty."; // untranslated
+Blockly.Msg.LISTS_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Lists#length-of"; // untranslated
+Blockly.Msg.LISTS_LENGTH_TITLE = "length of %1"; // untranslated
+Blockly.Msg.LISTS_LENGTH_TOOLTIP = "Returns the length of a list."; // untranslated
+Blockly.Msg.LISTS_REPEAT_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
+Blockly.Msg.LISTS_REPEAT_TITLE = "create list with item %1 repeated %2 times"; // untranslated
+Blockly.Msg.LISTS_REPEAT_TOOLTIP = "Creates a list consisting of the given value repeated the specified number of times."; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_HELPURL = "https://github.com/google/blockly/wiki/Lists#in-list--set"; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_INPUT_TO = "coma";
+Blockly.Msg.LISTS_SET_INDEX_INSERT = "inserir en";
+Blockly.Msg.LISTS_SET_INDEX_SET = "metre";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST = "Inserts the item at the start of a list."; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FROM = "Inserts the item at the specified position in a list."; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_LAST = "Append the item to the end of a list."; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM = "Inserts the item randomly in a list."; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FIRST = "Sets the first item in a list."; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FROM = "Sets the item at the specified position in a list."; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_LAST = "Sets the last item in a list."; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_RANDOM = "Sets a random item in a list."; // untranslated
+Blockly.Msg.LISTS_SORT_HELPURL = "https://github.com/google/blockly/wiki/Lists#sorting-a-list"; // untranslated
+Blockly.Msg.LISTS_SORT_ORDER_ASCENDING = "ascending"; // untranslated
+Blockly.Msg.LISTS_SORT_ORDER_DESCENDING = "descending"; // untranslated
+Blockly.Msg.LISTS_SORT_TITLE = "sort %1 %2 %3"; // untranslated
+Blockly.Msg.LISTS_SORT_TOOLTIP = "Sort a copy of a list."; // untranslated
+Blockly.Msg.LISTS_SORT_TYPE_IGNORECASE = "alphabetic, ignore case"; // untranslated
+Blockly.Msg.LISTS_SORT_TYPE_NUMERIC = "numeric"; // untranslated
+Blockly.Msg.LISTS_SORT_TYPE_TEXT = "alphabetic"; // untranslated
+Blockly.Msg.LISTS_SPLIT_HELPURL = "https://github.com/google/blockly/wiki/Lists#splitting-strings-and-joining-lists"; // untranslated
+Blockly.Msg.LISTS_SPLIT_LIST_FROM_TEXT = "make list from text"; // untranslated
+Blockly.Msg.LISTS_SPLIT_TEXT_FROM_LIST = "make text from list"; // untranslated
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_JOIN = "Join a list of texts into one text, separated by a delimiter."; // untranslated
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_SPLIT = "Split text into a list of texts, breaking at each delimiter."; // untranslated
+Blockly.Msg.LISTS_SPLIT_WITH_DELIMITER = "with delimiter"; // untranslated
+Blockly.Msg.LOGIC_BOOLEAN_FALSE = "fals";
+Blockly.Msg.LOGIC_BOOLEAN_HELPURL = "https://github.com/google/blockly/wiki/Logic#values"; // untranslated
+Blockly.Msg.LOGIC_BOOLEAN_TOOLTIP = "Returns either true or false."; // untranslated
+Blockly.Msg.LOGIC_BOOLEAN_TRUE = "verai";
+Blockly.Msg.LOGIC_COMPARE_HELPURL = "https://en.wikipedia.org/wiki/Inequality_(mathematics)"; // untranslated
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_EQ = "Return true if both inputs equal each other."; // untranslated
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GT = "Return true if the first input is greater than the second input."; // untranslated
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GTE = "Return true if the first input is greater than or equal to the second input."; // untranslated
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LT = "Return true if the first input is smaller than the second input."; // untranslated
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LTE = "Return true if the first input is smaller than or equal to the second input."; // untranslated
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_NEQ = "Return true if both inputs are not equal to each other."; // untranslated
+Blockly.Msg.LOGIC_NEGATE_HELPURL = "https://github.com/google/blockly/wiki/Logic#not"; // untranslated
+Blockly.Msg.LOGIC_NEGATE_TITLE = "pas %1";
+Blockly.Msg.LOGIC_NEGATE_TOOLTIP = "Returns true if the input is false. Returns false if the input is true."; // untranslated
+Blockly.Msg.LOGIC_NULL = "nul";
+Blockly.Msg.LOGIC_NULL_HELPURL = "https://en.wikipedia.org/wiki/Nullable_type"; // untranslated
+Blockly.Msg.LOGIC_NULL_TOOLTIP = "Renvia nul.";
+Blockly.Msg.LOGIC_OPERATION_AND = "e";
+Blockly.Msg.LOGIC_OPERATION_HELPURL = "https://github.com/google/blockly/wiki/Logic#logical-operations"; // untranslated
+Blockly.Msg.LOGIC_OPERATION_OR = "o";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_AND = "Return true if both inputs are true."; // untranslated
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_OR = "Return true if at least one of the inputs is true."; // untranslated
+Blockly.Msg.LOGIC_TERNARY_CONDITION = "tèst";
+Blockly.Msg.LOGIC_TERNARY_HELPURL = "https://en.wikipedia.org/wiki/%3F:"; // untranslated
+Blockly.Msg.LOGIC_TERNARY_IF_FALSE = "se fals";
+Blockly.Msg.LOGIC_TERNARY_IF_TRUE = "se verai";
+Blockly.Msg.LOGIC_TERNARY_TOOLTIP = "Check the condition in 'test'. If the condition is true, returns the 'if true' value; otherwise returns the 'if false' value."; // untranslated
+Blockly.Msg.MATH_ADDITION_SYMBOL = "+"; // untranslated
+Blockly.Msg.MATH_ARITHMETIC_HELPURL = "https://oc.wikipedia.org/wiki/Aritmetica";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_ADD = "Return the sum of the two numbers."; // untranslated
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE = "Return the quotient of the two numbers."; // untranslated
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MINUS = "Return the difference of the two numbers."; // untranslated
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MULTIPLY = "Return the product of the two numbers."; // untranslated
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_POWER = "Return the first number raised to the power of the second number."; // untranslated
+Blockly.Msg.MATH_CHANGE_HELPURL = "https://en.wikipedia.org/wiki/Programming_idiom#Incrementing_a_counter"; // untranslated
+Blockly.Msg.MATH_CHANGE_TITLE = "incrementar %1 per %2";
+Blockly.Msg.MATH_CHANGE_TOOLTIP = "Add a number to variable '%1'."; // untranslated
+Blockly.Msg.MATH_CONSTANT_HELPURL = "https://en.wikipedia.org/wiki/Mathematical_constant"; // untranslated
+Blockly.Msg.MATH_CONSTANT_TOOLTIP = "Return one of the common constants: π (3.141…), e (2.718…), φ (1.618…), sqrt(2) (1.414…), sqrt(½) (0.707…), or ∞ (infinity)."; // untranslated
+Blockly.Msg.MATH_CONSTRAIN_HELPURL = "https://en.wikipedia.org/wiki/Clamping_%28graphics%29"; // untranslated
+Blockly.Msg.MATH_CONSTRAIN_TITLE = "constrain %1 low %2 high %3"; // untranslated
+Blockly.Msg.MATH_CONSTRAIN_TOOLTIP = "Constrain a number to be between the specified limits (inclusive)."; // untranslated
+Blockly.Msg.MATH_DIVISION_SYMBOL = "÷"; // untranslated
+Blockly.Msg.MATH_IS_DIVISIBLE_BY = "es devesible per";
+Blockly.Msg.MATH_IS_EVEN = "es par";
+Blockly.Msg.MATH_IS_NEGATIVE = "es negatiu";
+Blockly.Msg.MATH_IS_ODD = "es impar";
+Blockly.Msg.MATH_IS_POSITIVE = "es positiu";
+Blockly.Msg.MATH_IS_PRIME = "es primièr";
+Blockly.Msg.MATH_IS_TOOLTIP = "Check if a number is an even, odd, prime, whole, positive, negative, or if it is divisible by certain number. Returns true or false."; // untranslated
+Blockly.Msg.MATH_IS_WHOLE = "es entièr";
+Blockly.Msg.MATH_MODULO_HELPURL = "https://en.wikipedia.org/wiki/Modulo_operation"; // untranslated
+Blockly.Msg.MATH_MODULO_TITLE = "remainder of %1 ÷ %2"; // untranslated
+Blockly.Msg.MATH_MODULO_TOOLTIP = "Return the remainder from dividing the two numbers."; // untranslated
+Blockly.Msg.MATH_MULTIPLICATION_SYMBOL = "×"; // untranslated
+Blockly.Msg.MATH_NUMBER_HELPURL = "https://oc.wikipedia.org/wiki/Nombre";
+Blockly.Msg.MATH_NUMBER_TOOLTIP = "Un nombre.";
+Blockly.Msg.MATH_ONLIST_HELPURL = ""; // untranslated
+Blockly.Msg.MATH_ONLIST_OPERATOR_AVERAGE = "mejana de la lista";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MAX = "maximum de la lista";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MEDIAN = "mediana de la lista";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MIN = "minimum de la lista";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MODE = "modes of list"; // untranslated
+Blockly.Msg.MATH_ONLIST_OPERATOR_RANDOM = "random item of list"; // untranslated
+Blockly.Msg.MATH_ONLIST_OPERATOR_STD_DEV = "standard deviation of list"; // untranslated
+Blockly.Msg.MATH_ONLIST_OPERATOR_SUM = "soma de la lista";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_AVERAGE = "Return the average (arithmetic mean) of the numeric values in the list."; // untranslated
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MAX = "Return the largest number in the list."; // untranslated
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MEDIAN = "Return the median number in the list."; // untranslated
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MIN = "Return the smallest number in the list."; // untranslated
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MODE = "Return a list of the most common item(s) in the list."; // untranslated
+Blockly.Msg.MATH_ONLIST_TOOLTIP_RANDOM = "Return a random element from the list."; // untranslated
+Blockly.Msg.MATH_ONLIST_TOOLTIP_STD_DEV = "Return the standard deviation of the list."; // untranslated
+Blockly.Msg.MATH_ONLIST_TOOLTIP_SUM = "Return the sum of all the numbers in the list."; // untranslated
+Blockly.Msg.MATH_POWER_SYMBOL = "^"; // untranslated
+Blockly.Msg.MATH_RANDOM_FLOAT_HELPURL = "https://en.wikipedia.org/wiki/Random_number_generation"; // untranslated
+Blockly.Msg.MATH_RANDOM_FLOAT_TITLE_RANDOM = "random fraction"; // untranslated
+Blockly.Msg.MATH_RANDOM_FLOAT_TOOLTIP = "Return a random fraction between 0.0 (inclusive) and 1.0 (exclusive)."; // untranslated
+Blockly.Msg.MATH_RANDOM_INT_HELPURL = "https://en.wikipedia.org/wiki/Random_number_generation"; // untranslated
+Blockly.Msg.MATH_RANDOM_INT_TITLE = "random integer from %1 to %2"; // untranslated
+Blockly.Msg.MATH_RANDOM_INT_TOOLTIP = "Return a random integer between the two specified limits, inclusive."; // untranslated
+Blockly.Msg.MATH_ROUND_HELPURL = "https://en.wikipedia.org/wiki/Rounding"; // untranslated
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUND = "arredondir";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDDOWN = "arredondir a l’inferior";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDUP = "arredondir al superior";
+Blockly.Msg.MATH_ROUND_TOOLTIP = "Round a number up or down."; // untranslated
+Blockly.Msg.MATH_SINGLE_HELPURL = "https://en.wikipedia.org/wiki/Square_root"; // untranslated
+Blockly.Msg.MATH_SINGLE_OP_ABSOLUTE = "absolut";
+Blockly.Msg.MATH_SINGLE_OP_ROOT = "raiç carrada";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ABS = "Return the absolute value of a number."; // untranslated
+Blockly.Msg.MATH_SINGLE_TOOLTIP_EXP = "Return e to the power of a number."; // untranslated
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LN = "Return the natural logarithm of a number."; // untranslated
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LOG10 = "Return the base 10 logarithm of a number."; // untranslated
+Blockly.Msg.MATH_SINGLE_TOOLTIP_NEG = "Return the negation of a number."; // untranslated
+Blockly.Msg.MATH_SINGLE_TOOLTIP_POW10 = "Return 10 to the power of a number."; // untranslated
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ROOT = "Return the square root of a number."; // untranslated
+Blockly.Msg.MATH_SUBTRACTION_SYMBOL = "-"; // untranslated
+Blockly.Msg.MATH_TRIG_ACOS = "acos"; // untranslated
+Blockly.Msg.MATH_TRIG_ASIN = "asin"; // untranslated
+Blockly.Msg.MATH_TRIG_ATAN = "atan"; // untranslated
+Blockly.Msg.MATH_TRIG_COS = "cos"; // untranslated
+Blockly.Msg.MATH_TRIG_HELPURL = "https://en.wikipedia.org/wiki/Trigonometric_functions"; // untranslated
+Blockly.Msg.MATH_TRIG_SIN = "sin"; // untranslated
+Blockly.Msg.MATH_TRIG_TAN = "tan"; // untranslated
+Blockly.Msg.MATH_TRIG_TOOLTIP_ACOS = "Return the arccosine of a number."; // untranslated
+Blockly.Msg.MATH_TRIG_TOOLTIP_ASIN = "Return the arcsine of a number."; // untranslated
+Blockly.Msg.MATH_TRIG_TOOLTIP_ATAN = "Return the arctangent of a number."; // untranslated
+Blockly.Msg.MATH_TRIG_TOOLTIP_COS = "Return the cosine of a degree (not radian)."; // untranslated
+Blockly.Msg.MATH_TRIG_TOOLTIP_SIN = "Return the sine of a degree (not radian)."; // untranslated
+Blockly.Msg.MATH_TRIG_TOOLTIP_TAN = "Return the tangent of a degree (not radian)."; // untranslated
+Blockly.Msg.NEW_VARIABLE = "Variabla novèla…";
+Blockly.Msg.NEW_VARIABLE_TITLE = "Nom de la novèla variabla :";
+Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; // untranslated
+Blockly.Msg.PROCEDURES_ALLOW_STATEMENTS = "allow statements"; // untranslated
+Blockly.Msg.PROCEDURES_BEFORE_PARAMS = "amb :";
+Blockly.Msg.PROCEDURES_CALLNORETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_CALLNORETURN_TOOLTIP = "Run the user-defined function '%1'."; // untranslated
+Blockly.Msg.PROCEDURES_CALLRETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_CALLRETURN_TOOLTIP = "Run the user-defined function '%1' and use its output."; // untranslated
+Blockly.Msg.PROCEDURES_CALL_BEFORE_PARAMS = "amb :";
+Blockly.Msg.PROCEDURES_CREATE_DO = "Crear '%1'";
+Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT = "Describe this function..."; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_DO = ""; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE = "far quicòm";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE = "a";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TOOLTIP = "Creates a function with no output."; // untranslated
+Blockly.Msg.PROCEDURES_DEFRETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_DEFRETURN_RETURN = "retorn";
+Blockly.Msg.PROCEDURES_DEFRETURN_TOOLTIP = "Creates a function with an output."; // untranslated
+Blockly.Msg.PROCEDURES_DEF_DUPLICATE_WARNING = "Warning: This function has duplicate parameters."; // untranslated
+Blockly.Msg.PROCEDURES_HIGHLIGHT_DEF = "Highlight function definition"; // untranslated
+Blockly.Msg.PROCEDURES_IFRETURN_HELPURL = "http://c2.com/cgi/wiki?GuardClause"; // untranslated
+Blockly.Msg.PROCEDURES_IFRETURN_TOOLTIP = "If a value is true, then return a second value."; // untranslated
+Blockly.Msg.PROCEDURES_IFRETURN_WARNING = "Warning: This block may be used only within a function definition."; // untranslated
+Blockly.Msg.PROCEDURES_MUTATORARG_TITLE = "nom de l’entrada :";
+Blockly.Msg.PROCEDURES_MUTATORARG_TOOLTIP = "Add an input to the function."; // untranslated
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TITLE = "entradas";
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TOOLTIP = "Add, remove, or reorder inputs to this function."; // untranslated
+Blockly.Msg.REDO = "Redo"; // untranslated
+Blockly.Msg.REMOVE_COMMENT = "Suprimir un comentari";
+Blockly.Msg.RENAME_VARIABLE = "Renomenar la variabla…";
+Blockly.Msg.RENAME_VARIABLE_TITLE = "Rename all '%1' variables to:"; // untranslated
+Blockly.Msg.TEXT_APPEND_APPENDTEXT = "apondre lo tèxte";
+Blockly.Msg.TEXT_APPEND_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_APPEND_TO = "a";
+Blockly.Msg.TEXT_APPEND_TOOLTIP = "Append some text to variable '%1'."; // untranslated
+Blockly.Msg.TEXT_CHANGECASE_HELPURL = "https://github.com/google/blockly/wiki/Text#adjusting-text-case"; // untranslated
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_LOWERCASE = "en minusculas";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_TITLECASE = "to Title Case"; // untranslated
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_UPPERCASE = "en MAJUSCULAS";
+Blockly.Msg.TEXT_CHANGECASE_TOOLTIP = "Return a copy of the text in a different case."; // untranslated
+Blockly.Msg.TEXT_CHARAT_FIRST = "obténer la primièra letra";
+Blockly.Msg.TEXT_CHARAT_FROM_END = "obténer la letra # dempuèi la fin";
+Blockly.Msg.TEXT_CHARAT_FROM_START = "obténer la letra #";
+Blockly.Msg.TEXT_CHARAT_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-text"; // untranslated
+Blockly.Msg.TEXT_CHARAT_INPUT_INTEXT = "dins lo tèxte";
+Blockly.Msg.TEXT_CHARAT_LAST = "obténer la darrièra letra";
+Blockly.Msg.TEXT_CHARAT_RANDOM = "obténer una letra a l'azard";
+Blockly.Msg.TEXT_CHARAT_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_CHARAT_TOOLTIP = "Renvia la letra a la posicion indicada.";
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TOOLTIP = "Add an item to the text."; // untranslated
+Blockly.Msg.TEXT_CREATE_JOIN_TITLE_JOIN = "join"; // untranslated
+Blockly.Msg.TEXT_CREATE_JOIN_TOOLTIP = "Add, remove, or reorder sections to reconfigure this text block."; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_END = "to letter # from end"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_START = "fins a la letra #";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_LAST = "to last letter"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_INPUT_IN_TEXT = "dins lo tèxte";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FIRST = "get substring from first letter"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_END = "get substring from letter # from end"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_START = "get substring from letter #"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_TOOLTIP = "Returns a specified portion of the text."; // untranslated
+Blockly.Msg.TEXT_INDEXOF_HELPURL = "https://github.com/google/blockly/wiki/Text#finding-text"; // untranslated
+Blockly.Msg.TEXT_INDEXOF_INPUT_INTEXT = "dins lo tèxte";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_FIRST = "find first occurrence of text"; // untranslated
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_LAST = "find last occurrence of text"; // untranslated
+Blockly.Msg.TEXT_INDEXOF_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_INDEXOF_TOOLTIP = "Returns the index of the first/last occurrence of the first text in the second text. Returns %1 if text is not found."; // untranslated
+Blockly.Msg.TEXT_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Text#checking-for-empty-text"; // untranslated
+Blockly.Msg.TEXT_ISEMPTY_TITLE = "%1 es void";
+Blockly.Msg.TEXT_ISEMPTY_TOOLTIP = "Returns true if the provided text is empty."; // untranslated
+Blockly.Msg.TEXT_JOIN_HELPURL = "https://github.com/google/blockly/wiki/Text#text-creation"; // untranslated
+Blockly.Msg.TEXT_JOIN_TITLE_CREATEWITH = "create text with"; // untranslated
+Blockly.Msg.TEXT_JOIN_TOOLTIP = "Create a piece of text by joining together any number of items."; // untranslated
+Blockly.Msg.TEXT_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_LENGTH_TITLE = "longor de %1";
+Blockly.Msg.TEXT_LENGTH_TOOLTIP = "Returns the number of letters (including spaces) in the provided text."; // untranslated
+Blockly.Msg.TEXT_PRINT_HELPURL = "https://github.com/google/blockly/wiki/Text#printing-text"; // untranslated
+Blockly.Msg.TEXT_PRINT_TITLE = "afichar %1";
+Blockly.Msg.TEXT_PRINT_TOOLTIP = "Print the specified text, number or other value."; // untranslated
+Blockly.Msg.TEXT_PROMPT_HELPURL = "https://github.com/google/blockly/wiki/Text#getting-input-from-the-user"; // untranslated
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_NUMBER = "Prompt for user for a number."; // untranslated
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_TEXT = "Prompt for user for some text."; // untranslated
+Blockly.Msg.TEXT_PROMPT_TYPE_NUMBER = "prompt for number with message"; // untranslated
+Blockly.Msg.TEXT_PROMPT_TYPE_TEXT = "prompt for text with message"; // untranslated
+Blockly.Msg.TEXT_TEXT_HELPURL = "https://en.wikipedia.org/wiki/String_(computer_science)"; // untranslated
+Blockly.Msg.TEXT_TEXT_TOOLTIP = "A letter, word, or line of text."; // untranslated
+Blockly.Msg.TEXT_TRIM_HELPURL = "https://github.com/google/blockly/wiki/Text#trimming-removing-spaces"; // untranslated
+Blockly.Msg.TEXT_TRIM_OPERATOR_BOTH = "trim spaces from both sides of"; // untranslated
+Blockly.Msg.TEXT_TRIM_OPERATOR_LEFT = "trim spaces from left side of"; // untranslated
+Blockly.Msg.TEXT_TRIM_OPERATOR_RIGHT = "trim spaces from right side of"; // untranslated
+Blockly.Msg.TEXT_TRIM_TOOLTIP = "Return a copy of the text with spaces removed from one or both ends."; // untranslated
+Blockly.Msg.TODAY = "Today"; // untranslated
+Blockly.Msg.UNDO = "Undo"; // untranslated
+Blockly.Msg.VARIABLES_DEFAULT_NAME = "element";
+Blockly.Msg.VARIABLES_GET_CREATE_SET = "Crear 'fixar %1'";
+Blockly.Msg.VARIABLES_GET_HELPURL = "https://github.com/google/blockly/wiki/Variables#get"; // untranslated
+Blockly.Msg.VARIABLES_GET_TOOLTIP = "Returns the value of this variable."; // untranslated
+Blockly.Msg.VARIABLES_SET = "fixar %1 a %2";
+Blockly.Msg.VARIABLES_SET_CREATE_GET = "Create 'get %1'"; // untranslated
+Blockly.Msg.VARIABLES_SET_HELPURL = "https://github.com/google/blockly/wiki/Variables#set"; // untranslated
+Blockly.Msg.VARIABLES_SET_TOOLTIP = "Sets this variable to be equal to the input."; // untranslated
+Blockly.Msg.VARIABLE_ALREADY_EXISTS = "A variable named '%1' already exists."; // untranslated
+Blockly.Msg.PROCEDURES_DEFRETURN_TITLE = Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE;
+Blockly.Msg.CONTROLS_IF_IF_TITLE_IF = Blockly.Msg.CONTROLS_IF_MSG_IF;
+Blockly.Msg.CONTROLS_WHILEUNTIL_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_MSG_THEN = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_ELSE_TITLE_ELSE = Blockly.Msg.CONTROLS_IF_MSG_ELSE;
+Blockly.Msg.PROCEDURES_DEFRETURN_PROCEDURE = Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE;
+Blockly.Msg.LISTS_GET_SUBLIST_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.LISTS_GET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.PROCEDURES_DEFRETURN_DO = Blockly.Msg.PROCEDURES_DEFNORETURN_DO;
+Blockly.Msg.CONTROLS_IF_ELSEIF_TITLE_ELSEIF = Blockly.Msg.CONTROLS_IF_MSG_ELSEIF;
+Blockly.Msg.LISTS_GET_INDEX_HELPURL = Blockly.Msg.LISTS_INDEX_OF_HELPURL;
+Blockly.Msg.CONTROLS_FOREACH_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_SET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TITLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_APPEND_VARIABLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.LISTS_INDEX_OF_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.PROCEDURES_DEFRETURN_COMMENT = Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT; \ No newline at end of file
diff --git a/blockly/msg/js/pl.js b/blockly/msg/js/pl.js
new file mode 100644
index 0000000..44da10c
--- /dev/null
+++ b/blockly/msg/js/pl.js
@@ -0,0 +1,391 @@
+// This file was automatically generated. Do not modify.
+
+'use strict';
+
+goog.provide('Blockly.Msg.pl');
+
+goog.require('Blockly.Msg');
+
+Blockly.Msg.ADD_COMMENT = "Dodaj komentarz";
+Blockly.Msg.CHANGE_VALUE_TITLE = "Zmień wartość:";
+Blockly.Msg.CLEAN_UP = "Uporządkuj bloki";
+Blockly.Msg.COLLAPSE_ALL = "Zwiń bloki";
+Blockly.Msg.COLLAPSE_BLOCK = "Zwiń blok";
+Blockly.Msg.COLOUR_BLEND_COLOUR1 = "kolor 1";
+Blockly.Msg.COLOUR_BLEND_COLOUR2 = "kolor 2";
+Blockly.Msg.COLOUR_BLEND_HELPURL = "http://meyerweb.com/eric/tools/color-blend/";
+Blockly.Msg.COLOUR_BLEND_RATIO = "proporcja";
+Blockly.Msg.COLOUR_BLEND_TITLE = "wymieszaj";
+Blockly.Msg.COLOUR_BLEND_TOOLTIP = "Miesza dwa kolory w danej proporcji (0.0 - 1.0).";
+Blockly.Msg.COLOUR_PICKER_HELPURL = "https://en.wikipedia.org/wiki/Color";
+Blockly.Msg.COLOUR_PICKER_TOOLTIP = "Wybierz kolor z palety.";
+Blockly.Msg.COLOUR_RANDOM_HELPURL = "http://randomcolour.com"; // untranslated
+Blockly.Msg.COLOUR_RANDOM_TITLE = "losowy kolor";
+Blockly.Msg.COLOUR_RANDOM_TOOLTIP = "Wybierz kolor w sposób losowy.";
+Blockly.Msg.COLOUR_RGB_BLUE = "niebieski";
+Blockly.Msg.COLOUR_RGB_GREEN = "zielony";
+Blockly.Msg.COLOUR_RGB_HELPURL = "http://www.december.com/html/spec/colorper.html";
+Blockly.Msg.COLOUR_RGB_RED = "czerwony";
+Blockly.Msg.COLOUR_RGB_TITLE = "kolor z";
+Blockly.Msg.COLOUR_RGB_TOOLTIP = "Połącz czerwony, zielony i niebieski w odpowiednich proporcjach, tak aby powstał nowy kolor. Zawartość każdego z nich określa liczba z przedziału od 0 do 100.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_HELPURL = "https://github.com/google/blockly/wiki/Loops#loop-termination-blocks"; // untranslated
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK = "wyjdź z pętli";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE = "przejdź do kolejnej iteracji pętli";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK = "Wyjdź z zawierającej pętli.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE = "Pomiń resztę pętli i kontynuuj w kolejnej iteracji.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_WARNING = "Uwaga: Ten blok może być użyty tylko w pętli.";
+Blockly.Msg.CONTROLS_FOREACH_HELPURL = "https://github.com/google/blockly/wiki/Loops#for-each"; // untranslated
+Blockly.Msg.CONTROLS_FOREACH_TITLE = "dla każdego elementu %1 na liście %2";
+Blockly.Msg.CONTROLS_FOREACH_TOOLTIP = "Dla każdego elementu listy ustaw zmienną %1 na ten element, a następnie wykonaj kilka instrukcji.";
+Blockly.Msg.CONTROLS_FOR_HELPURL = "https://github.com/google/blockly/wiki/Loops#count-with"; // untranslated
+Blockly.Msg.CONTROLS_FOR_TITLE = "licz z %1 od %2 do %3 co %4 (wartość kroku)";
+Blockly.Msg.CONTROLS_FOR_TOOLTIP = "Przypisuje zmiennej %1 wartości od numeru startowego do numeru końcowego, licząc co określony interwał, wykonując określone bloki.";
+Blockly.Msg.CONTROLS_IF_ELSEIF_TOOLTIP = "Dodaj warunek do bloku „jeśli”.";
+Blockly.Msg.CONTROLS_IF_ELSE_TOOLTIP = "Dodaj ostatni warunek do bloku „jeśli”, gdy żaden wcześniejszy nie był spełniony.";
+Blockly.Msg.CONTROLS_IF_HELPURL = "https://github.com/google/blockly/wiki/IfElse"; // untranslated
+Blockly.Msg.CONTROLS_IF_IF_TOOLTIP = "Dodaj, usuń lub zmień kolejność bloków, żeby zmodyfikować ten blok „jeśli”.";
+Blockly.Msg.CONTROLS_IF_MSG_ELSE = "w przeciwnym razie";
+Blockly.Msg.CONTROLS_IF_MSG_ELSEIF = "w przeciwnym razie, jeśli";
+Blockly.Msg.CONTROLS_IF_MSG_IF = "jeśli";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_1 = "Jeśli wartość jest prawdziwa, to wykonaj kilka instrukcji.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_2 = "Jeśli wartość jest prawdziwa, to wykonaj pierwszy blok instrukcji. W przeciwnym razie, wykonaj drugi blok instrukcji.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_3 = "Jeśli pierwsza wartość jest prawdziwa, to wykonaj pierwszy blok instrukcji. W przeciwnym razie, jeśli druga wartość jest prawdziwa, to wykonaj drugi blok instrukcji.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_4 = "Jeśli pierwsza wartość jest prawdziwa, wykonaj pierwszy blok instrukcji. W przeciwnym razie jeśli druga wartość jest prawdziwa, wykonaj drugi blok instrukcji. Jeżeli żadna z wartości nie jest prawdziwa, wykonaj ostatni blok instrukcji.";
+Blockly.Msg.CONTROLS_REPEAT_HELPURL = "https://en.wikipedia.org/wiki/For_loop";
+Blockly.Msg.CONTROLS_REPEAT_INPUT_DO = "wykonaj";
+Blockly.Msg.CONTROLS_REPEAT_TITLE = "powtórz %1 razy";
+Blockly.Msg.CONTROLS_REPEAT_TOOLTIP = "Wykonaj niektóre instrukcje kilka razy.";
+Blockly.Msg.CONTROLS_WHILEUNTIL_HELPURL = "https://github.com/google/blockly/wiki/Loops#repeat"; // untranslated
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "powtarzaj aż";
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "powtarzaj dopóki";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "Gdy wartość jest nieprawdziwa, wykonaj kilka instrukcji.";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "Gdy wartość jest prawdziwa, wykonaj kilka instrukcji.";
+Blockly.Msg.DELETE_ALL_BLOCKS = "Usunąć wszystkie %1 bloki(ów)?";
+Blockly.Msg.DELETE_BLOCK = "Usuń blok";
+Blockly.Msg.DELETE_VARIABLE = "Delete the '%1' variable"; // untranslated
+Blockly.Msg.DELETE_VARIABLE_CONFIRMATION = "Delete %1 uses of the '%2' variable?"; // untranslated
+Blockly.Msg.DELETE_X_BLOCKS = "Usuń %1 bloki(ów)";
+Blockly.Msg.DISABLE_BLOCK = "Wyłącz blok";
+Blockly.Msg.DUPLICATE_BLOCK = "Duplikuj";
+Blockly.Msg.ENABLE_BLOCK = "Włącz blok";
+Blockly.Msg.EXPAND_ALL = "Rozwiń bloki";
+Blockly.Msg.EXPAND_BLOCK = "Rozwiń blok";
+Blockly.Msg.EXTERNAL_INPUTS = "Zewnętrzne wejścia";
+Blockly.Msg.HELP = "Pomoc";
+Blockly.Msg.INLINE_INPUTS = "Wbudowane wejścia";
+Blockly.Msg.LISTS_CREATE_EMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-empty-list";
+Blockly.Msg.LISTS_CREATE_EMPTY_TITLE = "utwórz pustą listę";
+Blockly.Msg.LISTS_CREATE_EMPTY_TOOLTIP = "Zwraca listę, o długości 0, nie zawierającą rekordów z danymi";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TITLE_ADD = "lista";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TOOLTIP = "Dodaj, usuń lub zmień kolejność sekcji żeby skonfigurować ten blok listy.";
+Blockly.Msg.LISTS_CREATE_WITH_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
+Blockly.Msg.LISTS_CREATE_WITH_INPUT_WITH = "Tworzenie listy z";
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TOOLTIP = "Dodaj element do listy.";
+Blockly.Msg.LISTS_CREATE_WITH_TOOLTIP = "Utwórz listę z dowolną ilością elementów.";
+Blockly.Msg.LISTS_GET_INDEX_FIRST = "pierwszy";
+Blockly.Msg.LISTS_GET_INDEX_FROM_END = "# od końca";
+Blockly.Msg.LISTS_GET_INDEX_FROM_START = "#";
+Blockly.Msg.LISTS_GET_INDEX_GET = "pobierz";
+Blockly.Msg.LISTS_GET_INDEX_GET_REMOVE = "Pobierz i usuń";
+Blockly.Msg.LISTS_GET_INDEX_LAST = "ostatni";
+Blockly.Msg.LISTS_GET_INDEX_RANDOM = "losowy";
+Blockly.Msg.LISTS_GET_INDEX_REMOVE = "usuń";
+Blockly.Msg.LISTS_GET_INDEX_TAIL = "";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FIRST = "Zwraca pierwszy element z listy.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FROM = "Zwraca element z konkretnej pozycji na liście.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_LAST = "Zwraca ostatni element z listy.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_RANDOM = "Zwraca losowy element z listy.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST = "Usuwa i zwraca pierwszy element z listy.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM = "Usuwa i zwraca element z określonej pozycji na liście.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST = "Usuwa i zwraca ostatni element z listy.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM = "Usuwa i zwraca losowy element z listy.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST = "Usuwa pierwszy element z listy.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM = "Usuwa element z określonej pozycji na liście.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST = "Usuwa ostatni element z listy.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM = "Usuwa losowy element z listy.";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_END = "do # od końca";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_START = "do #";
+Blockly.Msg.LISTS_GET_SUBLIST_END_LAST = "do ostatniego";
+Blockly.Msg.LISTS_GET_SUBLIST_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-a-sublist"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_START_FIRST = "Pobierz listę podrzędną z pierwszego";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_END = "Pobierz listę podrzędną z # od końca";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_START = "Pobierz listę podrzędną z #";
+Blockly.Msg.LISTS_GET_SUBLIST_TAIL = "";
+Blockly.Msg.LISTS_GET_SUBLIST_TOOLTIP = "Tworzy kopię z określoną część listy.";
+Blockly.Msg.LISTS_INDEX_FROM_END_TOOLTIP = "%1 to ostatni element.";
+Blockly.Msg.LISTS_INDEX_FROM_START_TOOLTIP = "%1 to pierwszy element.";
+Blockly.Msg.LISTS_INDEX_OF_FIRST = "znaleźć pierwsze wystąpienie elementu";
+Blockly.Msg.LISTS_INDEX_OF_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-items-from-a-list"; // untranslated
+Blockly.Msg.LISTS_INDEX_OF_LAST = "znajduje ostatanie wystąpienie elementu";
+Blockly.Msg.LISTS_INDEX_OF_TOOLTIP = "Zwraca indeks pierwszego/ostatniego wystąpienia elementu na liście. Zwraca wartość %1, jeśli tekst nie zostanie znaleziony.";
+Blockly.Msg.LISTS_INLIST = "na liście";
+Blockly.Msg.LISTS_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#is-empty"; // untranslated
+Blockly.Msg.LISTS_ISEMPTY_TITLE = "%1 jest pusty";
+Blockly.Msg.LISTS_ISEMPTY_TOOLTIP = "Zwraca \"prawda\" jeśli lista jest pusta.";
+Blockly.Msg.LISTS_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Lists#length-of"; // untranslated
+Blockly.Msg.LISTS_LENGTH_TITLE = "długość %1";
+Blockly.Msg.LISTS_LENGTH_TOOLTIP = "Zwraca długość listy.";
+Blockly.Msg.LISTS_REPEAT_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
+Blockly.Msg.LISTS_REPEAT_TITLE = "stwórz listę, powtarzając element %1 %2 razy";
+Blockly.Msg.LISTS_REPEAT_TOOLTIP = "Tworzy listę składającą się z podanej wartości powtórzonej odpowiednią liczbę razy.";
+Blockly.Msg.LISTS_SET_INDEX_HELPURL = "https://github.com/google/blockly/wiki/Lists#in-list--set"; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_INPUT_TO = "jako";
+Blockly.Msg.LISTS_SET_INDEX_INSERT = "wstaw w";
+Blockly.Msg.LISTS_SET_INDEX_SET = "ustaw";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST = "Wstawia element na początku listy.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FROM = "Wstawia element w odpowiednim miejscu na liście.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_LAST = "Dodaj element na koniec listy.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM = "Wstawia element w losowym miejscu na liście.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FIRST = "Ustawia pierwszy element na liście.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FROM = "Ustawia element w określonym miejscu na liście.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_LAST = "Ustawia ostatni element na liście.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_RANDOM = "Ustawia losowy element na liście.";
+Blockly.Msg.LISTS_SORT_HELPURL = "https://github.com/google/blockly/wiki/Lists#sorting-a-list";
+Blockly.Msg.LISTS_SORT_ORDER_ASCENDING = "rosnąco";
+Blockly.Msg.LISTS_SORT_ORDER_DESCENDING = "malejąco";
+Blockly.Msg.LISTS_SORT_TITLE = "sortuj %1 %2 %3";
+Blockly.Msg.LISTS_SORT_TOOLTIP = "Sortuj kopię listy.";
+Blockly.Msg.LISTS_SORT_TYPE_IGNORECASE = "alfabetycznie, bez uwzględniania wielkości liter";
+Blockly.Msg.LISTS_SORT_TYPE_NUMERIC = "numerycznie";
+Blockly.Msg.LISTS_SORT_TYPE_TEXT = "alfabetycznie";
+Blockly.Msg.LISTS_SPLIT_HELPURL = "https://github.com/google/blockly/wiki/Lists#splitting-strings-and-joining-lists"; // untranslated
+Blockly.Msg.LISTS_SPLIT_LIST_FROM_TEXT = "stwórz listę z tekstu";
+Blockly.Msg.LISTS_SPLIT_TEXT_FROM_LIST = "stwórz tekst z listy";
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_JOIN = "Łączy listę tekstów w jeden tekst, rozdzielany separatorem.";
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_SPLIT = "Rozdziela tekst na listę mniejszych tekstów, dzieląc na każdym separatorze.";
+Blockly.Msg.LISTS_SPLIT_WITH_DELIMITER = "z separatorem";
+Blockly.Msg.LOGIC_BOOLEAN_FALSE = "fałsz";
+Blockly.Msg.LOGIC_BOOLEAN_HELPURL = "https://github.com/google/blockly/wiki/Logic#values"; // untranslated
+Blockly.Msg.LOGIC_BOOLEAN_TOOLTIP = "Zwraca 'prawda' lub 'fałsz'.";
+Blockly.Msg.LOGIC_BOOLEAN_TRUE = "prawda";
+Blockly.Msg.LOGIC_COMPARE_HELPURL = "https://pl.wikipedia.org/wiki/Nierówność";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_EQ = "Zwróć \"prawda\", jeśli oba wejścia są sobie równe.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GT = "Zwróć \"prawda\" jeśli pierwsze wejście jest większe od drugiego.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GTE = "Zwróć \"prawda\", jeśli pierwsze wejście jest większe lub równe drugiemu.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LT = "Zwróć \"prawda\" jeśli pierwsze wejście jest większe od drugiego.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LTE = "Zwróć \"prawda\", jeśli pierwsze wejście jest większe lub równe drugiemu.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_NEQ = "Zwróć \"prawda\", jeśli oba wejścia są sobie nierówne.";
+Blockly.Msg.LOGIC_NEGATE_HELPURL = "https://github.com/google/blockly/wiki/Logic#not"; // untranslated
+Blockly.Msg.LOGIC_NEGATE_TITLE = "nie %1";
+Blockly.Msg.LOGIC_NEGATE_TOOLTIP = "Zwraca \"prawda\", jeśli dane wejściowe są fałszywe. Zwraca \"fałsz\", jeśli dana wejściowa jest prawdziwa.";
+Blockly.Msg.LOGIC_NULL = "nic";
+Blockly.Msg.LOGIC_NULL_HELPURL = "https://en.wikipedia.org/wiki/Nullable_type";
+Blockly.Msg.LOGIC_NULL_TOOLTIP = "Zwraca nic.";
+Blockly.Msg.LOGIC_OPERATION_AND = "i";
+Blockly.Msg.LOGIC_OPERATION_HELPURL = "https://github.com/google/blockly/wiki/Logic#logical-operations"; // untranslated
+Blockly.Msg.LOGIC_OPERATION_OR = "lub";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_AND = "Zwróć \"prawda\" jeśli oba dane elementy mają wartość \"prawda\".";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_OR = "Zwróć \"prawda\" jeśli co najmniej jeden dany element ma wartość \"prawda\".";
+Blockly.Msg.LOGIC_TERNARY_CONDITION = "test";
+Blockly.Msg.LOGIC_TERNARY_HELPURL = "https://en.wikipedia.org/wiki/%3F:";
+Blockly.Msg.LOGIC_TERNARY_IF_FALSE = "jeśli fałsz";
+Blockly.Msg.LOGIC_TERNARY_IF_TRUE = "jeśli prawda";
+Blockly.Msg.LOGIC_TERNARY_TOOLTIP = "Sprawdź warunek w „test”. Jeśli warunek jest prawdziwy, to zwróci „jeśli prawda”; jeśli nie jest prawdziwy to zwróci „jeśli fałsz”.";
+Blockly.Msg.MATH_ADDITION_SYMBOL = "+";
+Blockly.Msg.MATH_ARITHMETIC_HELPURL = "https://pl.wikipedia.org/wiki/Arytmetyka";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_ADD = "Zwróć sumę dwóch liczb.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE = "Zwróć iloraz dwóch liczb.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MINUS = "Zwróć różnicę dwóch liczb.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MULTIPLY = "Zwróć iloczyn dwóch liczb.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_POWER = "Zwróć pierwszą liczbę podniesioną do potęgi o wykładniku drugiej liczby.";
+Blockly.Msg.MATH_CHANGE_HELPURL = "https://en.wikipedia.org/wiki/Programming_idiom#Incrementing_a_counter";
+Blockly.Msg.MATH_CHANGE_TITLE = "zmień %1 o %2";
+Blockly.Msg.MATH_CHANGE_TOOLTIP = "Dodaj liczbę do zmiennej '%1'.";
+Blockly.Msg.MATH_CONSTANT_HELPURL = "https://pl.wikipedia.org/wiki/Stała_(matematyka)";
+Blockly.Msg.MATH_CONSTANT_TOOLTIP = "Zwróć jedną wspólną stałą: π (3.141), e (2.718...), φ (1.618...), sqrt(2) (1.414...), sqrt(½) (0.707...) lub ∞ (nieskończoność).";
+Blockly.Msg.MATH_CONSTRAIN_HELPURL = "https://en.wikipedia.org/wiki/Clamping_%28graphics%29"; // untranslated
+Blockly.Msg.MATH_CONSTRAIN_TITLE = "ogranicz %1 z dołu %2 z góry %3";
+Blockly.Msg.MATH_CONSTRAIN_TOOLTIP = "Ogranicz liczbę, aby była w określonych granicach (włącznie).";
+Blockly.Msg.MATH_DIVISION_SYMBOL = "/";
+Blockly.Msg.MATH_IS_DIVISIBLE_BY = "jest podzielna przez";
+Blockly.Msg.MATH_IS_EVEN = "jest parzysta";
+Blockly.Msg.MATH_IS_NEGATIVE = "jest ujemna";
+Blockly.Msg.MATH_IS_ODD = "jest nieparzysta";
+Blockly.Msg.MATH_IS_POSITIVE = "jest dodatnia";
+Blockly.Msg.MATH_IS_PRIME = "jest liczbą pierwszą";
+Blockly.Msg.MATH_IS_TOOLTIP = "Sprawdź, czy liczba jest parzysta, nieparzysta, pierwsza, całkowita, dodatnia, ujemna, lub czy jest podzielna przez podaną liczbę. Zwraca wartość \"prawda\" lub \"fałsz\".";
+Blockly.Msg.MATH_IS_WHOLE = "jest liczbą całkowitą";
+Blockly.Msg.MATH_MODULO_HELPURL = "https://pl.wikipedia.org/wiki/Modulo";
+Blockly.Msg.MATH_MODULO_TITLE = "reszta z dzielenia %1 przez %2";
+Blockly.Msg.MATH_MODULO_TOOLTIP = "Zwróć resztę z dzielenia dwóch liczb przez siebie.";
+Blockly.Msg.MATH_MULTIPLICATION_SYMBOL = "×";
+Blockly.Msg.MATH_NUMBER_HELPURL = "https://en.wikipedia.org/wiki/Number";
+Blockly.Msg.MATH_NUMBER_TOOLTIP = "Liczba.";
+Blockly.Msg.MATH_ONLIST_HELPURL = "";
+Blockly.Msg.MATH_ONLIST_OPERATOR_AVERAGE = "średnia elementów listy";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MAX = "maksymalna wartość z listy";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MEDIAN = "mediana listy";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MIN = "minimalna wartość z listy";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MODE = "dominanty listy";
+Blockly.Msg.MATH_ONLIST_OPERATOR_RANDOM = "losowy element z listy";
+Blockly.Msg.MATH_ONLIST_OPERATOR_STD_DEV = "odchylenie standardowe listy";
+Blockly.Msg.MATH_ONLIST_OPERATOR_SUM = "suma elementów listy";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_AVERAGE = "Zwróć średnią (średnią arytmetyczną) wartości liczbowych z listy.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MAX = "Zwróć największą liczbę w liście.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MEDIAN = "Zwróć medianę listy.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MIN = "Zwróć najmniejszą liczbę w liście.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MODE = "Zwróć listę najczęściej występujących elementów w liście.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_RANDOM = "Zwróć losowy element z listy.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_STD_DEV = "Zwróć odchylenie standardowe listy.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_SUM = "Zwróć sumę wszystkich liczb z listy.";
+Blockly.Msg.MATH_POWER_SYMBOL = "^";
+Blockly.Msg.MATH_RANDOM_FLOAT_HELPURL = "https://en.wikipedia.org/wiki/Random_number_generation";
+Blockly.Msg.MATH_RANDOM_FLOAT_TITLE_RANDOM = "losowy ułamek";
+Blockly.Msg.MATH_RANDOM_FLOAT_TOOLTIP = "Zwróć losowy ułamek między 0.0 (włącznie), a 1.0 (wyłącznie).";
+Blockly.Msg.MATH_RANDOM_INT_HELPURL = "https://en.wikipedia.org/wiki/Random_number_generation";
+Blockly.Msg.MATH_RANDOM_INT_TITLE = "losowa liczba całkowita od %1 do %2";
+Blockly.Msg.MATH_RANDOM_INT_TOOLTIP = "Zwróć losową liczbę całkowitą w ramach dwóch wyznaczonych granic, włącznie.";
+Blockly.Msg.MATH_ROUND_HELPURL = "https://pl.wikipedia.org/wiki/Zaokrąglanie";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUND = "zaokrąglij";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDDOWN = "zaokrąglij w dół";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDUP = "zaokrąglij w górę";
+Blockly.Msg.MATH_ROUND_TOOLTIP = "Zaokrąglij w górę lub w dół.";
+Blockly.Msg.MATH_SINGLE_HELPURL = "https://pl.wikipedia.org/wiki/Pierwiastek_kwadratowy";
+Blockly.Msg.MATH_SINGLE_OP_ABSOLUTE = "wartość bezwzględna";
+Blockly.Msg.MATH_SINGLE_OP_ROOT = "pierwiastek kwadratowy";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ABS = "Zwróć wartość bezwzględną danej liczby.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_EXP = "Zwróć e do potęgi danej liczby.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LN = "Zwróć logarytm naturalny danej liczby.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LOG10 = "Zwraca logarytm dziesiętny danej liczby.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_NEG = "Zwróć negację danej liczby.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_POW10 = "Zwróć 10 do potęgi danej liczby.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ROOT = "Zwróć pierwiastek kwadratowy danej liczby.";
+Blockly.Msg.MATH_SUBTRACTION_SYMBOL = "-";
+Blockly.Msg.MATH_TRIG_ACOS = "arccos";
+Blockly.Msg.MATH_TRIG_ASIN = "arcsin";
+Blockly.Msg.MATH_TRIG_ATAN = "arctg";
+Blockly.Msg.MATH_TRIG_COS = "cos";
+Blockly.Msg.MATH_TRIG_HELPURL = "https://pl.wikipedia.org/wiki/Funkcje_trygonometryczne";
+Blockly.Msg.MATH_TRIG_SIN = "sin";
+Blockly.Msg.MATH_TRIG_TAN = "tg";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ACOS = "Zwróć arcus cosinus danej liczby.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ASIN = "Zwróć arcus sinus danej liczby.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ATAN = "Zwróć arcus tangens danej liczby.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_COS = "Zwróć wartość cosinusa o stopniu (nie w radianach).";
+Blockly.Msg.MATH_TRIG_TOOLTIP_SIN = "Zwróć wartość sinusa o stopniu (nie w radianach).";
+Blockly.Msg.MATH_TRIG_TOOLTIP_TAN = "Zwróć tangens o stopniu (nie w radianach).";
+Blockly.Msg.NEW_VARIABLE = "Nowa zmienna...";
+Blockly.Msg.NEW_VARIABLE_TITLE = "Nowa nazwa zmiennej:";
+Blockly.Msg.ORDINAL_NUMBER_SUFFIX = "";
+Blockly.Msg.PROCEDURES_ALLOW_STATEMENTS = "zezwól na instrukcje";
+Blockly.Msg.PROCEDURES_BEFORE_PARAMS = "z:";
+Blockly.Msg.PROCEDURES_CALLNORETURN_HELPURL = "https://pl.wikipedia.org/wiki/Podprogram";
+Blockly.Msg.PROCEDURES_CALLNORETURN_TOOLTIP = "Uruchom funkcję zdefiniowaną przez użytkownika '%1'.";
+Blockly.Msg.PROCEDURES_CALLRETURN_HELPURL = "https://pl.wikipedia.org/wiki/Podprogram";
+Blockly.Msg.PROCEDURES_CALLRETURN_TOOLTIP = "Uruchom funkcję zdefiniowaną przez użytkownika '%1' i skorzystaj z jej wyniku.";
+Blockly.Msg.PROCEDURES_CALL_BEFORE_PARAMS = "z:";
+Blockly.Msg.PROCEDURES_CREATE_DO = "Stwórz '%1'";
+Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT = "Opisz tę funkcję...";
+Blockly.Msg.PROCEDURES_DEFNORETURN_DO = "";
+Blockly.Msg.PROCEDURES_DEFNORETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29";
+Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE = "zrób coś";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE = "do";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TOOLTIP = "Tworzy funkcję bez wyniku.";
+Blockly.Msg.PROCEDURES_DEFRETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29";
+Blockly.Msg.PROCEDURES_DEFRETURN_RETURN = "zwróć";
+Blockly.Msg.PROCEDURES_DEFRETURN_TOOLTIP = "Tworzy funkcję z wynikiem.";
+Blockly.Msg.PROCEDURES_DEF_DUPLICATE_WARNING = "Uwaga: Ta funkcja ma powtórzone parametry.";
+Blockly.Msg.PROCEDURES_HIGHLIGHT_DEF = "Podświetl definicję funkcji";
+Blockly.Msg.PROCEDURES_IFRETURN_HELPURL = "http://c2.com/cgi/wiki?GuardClause"; // untranslated
+Blockly.Msg.PROCEDURES_IFRETURN_TOOLTIP = "Jeśli wartość jest prawdziwa, zwróć drugą wartość.";
+Blockly.Msg.PROCEDURES_IFRETURN_WARNING = "Uwaga: Ten blok może być używany tylko w definicji funkcji.";
+Blockly.Msg.PROCEDURES_MUTATORARG_TITLE = "nazwa wejścia:";
+Blockly.Msg.PROCEDURES_MUTATORARG_TOOLTIP = "Dodaj dane wejściowe do funkcji.";
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TITLE = "wejścia";
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TOOLTIP = "Dodaj, usuń lub zmień kolejność danych wejściowych dla tej funkcji.";
+Blockly.Msg.REDO = "Ponów";
+Blockly.Msg.REMOVE_COMMENT = "Usuń komentarz";
+Blockly.Msg.RENAME_VARIABLE = "Zmień nazwę zmiennej...";
+Blockly.Msg.RENAME_VARIABLE_TITLE = "Zmień nazwy wszystkich '%1' zmiennych na:";
+Blockly.Msg.TEXT_APPEND_APPENDTEXT = "dołącz tekst";
+Blockly.Msg.TEXT_APPEND_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_APPEND_TO = "do";
+Blockly.Msg.TEXT_APPEND_TOOLTIP = "Dołącz tekst do zmiennej '%1'.";
+Blockly.Msg.TEXT_CHANGECASE_HELPURL = "https://github.com/google/blockly/wiki/Text#adjusting-text-case"; // untranslated
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_LOWERCASE = "zmień na małe litery";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_TITLECASE = "zmień na od Wielkich Liter";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_UPPERCASE = "zmień na WIELKIE LITERY";
+Blockly.Msg.TEXT_CHANGECASE_TOOLTIP = "Zwraca kopię tekstu z inną wielkością liter.";
+Blockly.Msg.TEXT_CHARAT_FIRST = "pobierz pierwszą literę";
+Blockly.Msg.TEXT_CHARAT_FROM_END = "pobierz literę # od końca";
+Blockly.Msg.TEXT_CHARAT_FROM_START = "pobierz literę #";
+Blockly.Msg.TEXT_CHARAT_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-text"; // untranslated
+Blockly.Msg.TEXT_CHARAT_INPUT_INTEXT = "z tekstu";
+Blockly.Msg.TEXT_CHARAT_LAST = "pobierz ostatnią literę";
+Blockly.Msg.TEXT_CHARAT_RANDOM = "pobierz losową literę";
+Blockly.Msg.TEXT_CHARAT_TAIL = "";
+Blockly.Msg.TEXT_CHARAT_TOOLTIP = "Zwraca literę z określonej pozycji.";
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TOOLTIP = "Dodaj element do tekstu.";
+Blockly.Msg.TEXT_CREATE_JOIN_TITLE_JOIN = "połącz";
+Blockly.Msg.TEXT_CREATE_JOIN_TOOLTIP = "Dodaj, usuń lub zmień kolejność sekcji, aby zmodyfikować blok tekstowy.";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_END = "do # litery od końca";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_START = "do # litery";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_LAST = "do ostatniej litery";
+Blockly.Msg.TEXT_GET_SUBSTRING_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_INPUT_IN_TEXT = "w tekście";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FIRST = "pobierz podciąg od pierwszej litery";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_END = "pobierz podciąg od # litery od końca";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_START = "pobierz podciąg od # litery";
+Blockly.Msg.TEXT_GET_SUBSTRING_TAIL = "";
+Blockly.Msg.TEXT_GET_SUBSTRING_TOOLTIP = "Zwraca określoną część tekstu.";
+Blockly.Msg.TEXT_INDEXOF_HELPURL = "https://github.com/google/blockly/wiki/Text#finding-text"; // untranslated
+Blockly.Msg.TEXT_INDEXOF_INPUT_INTEXT = "w tekście";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_FIRST = "znajdź pierwsze wystąpienie tekstu";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_LAST = "znajdź ostatnie wystąpienie tekstu";
+Blockly.Msg.TEXT_INDEXOF_TAIL = "";
+Blockly.Msg.TEXT_INDEXOF_TOOLTIP = "Zwraca indeks pierwszego/ostatniego wystąpienia pierwszego tekstu w drugim tekście. Zwraca wartość %1, jeśli tekst nie został znaleziony.";
+Blockly.Msg.TEXT_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Text#checking-for-empty-text"; // untranslated
+Blockly.Msg.TEXT_ISEMPTY_TITLE = "%1 jest pusty";
+Blockly.Msg.TEXT_ISEMPTY_TOOLTIP = "Zwraca prawda (true), jeśli podany tekst jest pusty.";
+Blockly.Msg.TEXT_JOIN_HELPURL = "https://github.com/google/blockly/wiki/Text#text-creation"; // untranslated
+Blockly.Msg.TEXT_JOIN_TITLE_CREATEWITH = "utwórz tekst z";
+Blockly.Msg.TEXT_JOIN_TOOLTIP = "Tworzy fragment tekstu, łącząc ze sobą dowolną liczbę tekstów.";
+Blockly.Msg.TEXT_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_LENGTH_TITLE = "długość %1";
+Blockly.Msg.TEXT_LENGTH_TOOLTIP = "Zwraca liczbę liter (łącznie ze spacjami) w podanym tekście.";
+Blockly.Msg.TEXT_PRINT_HELPURL = "https://github.com/google/blockly/wiki/Text#printing-text"; // untranslated
+Blockly.Msg.TEXT_PRINT_TITLE = "wydrukuj %1";
+Blockly.Msg.TEXT_PRINT_TOOLTIP = "Drukuj określony tekst, liczbę lub inną wartość.";
+Blockly.Msg.TEXT_PROMPT_HELPURL = "https://github.com/google/blockly/wiki/Text#getting-input-from-the-user"; // untranslated
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_NUMBER = "Zapytaj użytkownika o liczbę.";
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_TEXT = "Zapytaj użytkownika o jakiś tekst.";
+Blockly.Msg.TEXT_PROMPT_TYPE_NUMBER = "poproś o liczbę z tą wiadomością";
+Blockly.Msg.TEXT_PROMPT_TYPE_TEXT = "poproś o tekst z tą wiadomością";
+Blockly.Msg.TEXT_TEXT_HELPURL = "https://pl.wikipedia.org/wiki/Tekstowy_typ_danych";
+Blockly.Msg.TEXT_TEXT_TOOLTIP = "Litera, wyraz lub linia tekstu.";
+Blockly.Msg.TEXT_TRIM_HELPURL = "https://github.com/google/blockly/wiki/Text#trimming-removing-spaces"; // untranslated
+Blockly.Msg.TEXT_TRIM_OPERATOR_BOTH = "usuń spacje po obu stronach";
+Blockly.Msg.TEXT_TRIM_OPERATOR_LEFT = "usuń spacje z lewej strony";
+Blockly.Msg.TEXT_TRIM_OPERATOR_RIGHT = "usuń spacje z prawej strony";
+Blockly.Msg.TEXT_TRIM_TOOLTIP = "Zwraca kopię tekstu z usuniętymi spacjami z jednego lub z obu końców tekstu.";
+Blockly.Msg.TODAY = "Dzisiaj";
+Blockly.Msg.UNDO = "Cofnij";
+Blockly.Msg.VARIABLES_DEFAULT_NAME = "element";
+Blockly.Msg.VARIABLES_GET_CREATE_SET = "Utwórz blok 'ustaw %1'";
+Blockly.Msg.VARIABLES_GET_HELPURL = "https://github.com/google/blockly/wiki/Variables#get"; // untranslated
+Blockly.Msg.VARIABLES_GET_TOOLTIP = "Zwraca wartość tej zmiennej.";
+Blockly.Msg.VARIABLES_SET = "przypisz %1 wartość %2";
+Blockly.Msg.VARIABLES_SET_CREATE_GET = "Utwórz blok 'pobierz %1'";
+Blockly.Msg.VARIABLES_SET_HELPURL = "https://github.com/google/blockly/wiki/Variables#set"; // untranslated
+Blockly.Msg.VARIABLES_SET_TOOLTIP = "Nadaj tej zmiennej wartość.";
+Blockly.Msg.VARIABLE_ALREADY_EXISTS = "A variable named '%1' already exists."; // untranslated
+Blockly.Msg.PROCEDURES_DEFRETURN_TITLE = Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE;
+Blockly.Msg.CONTROLS_IF_IF_TITLE_IF = Blockly.Msg.CONTROLS_IF_MSG_IF;
+Blockly.Msg.CONTROLS_WHILEUNTIL_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_MSG_THEN = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_ELSE_TITLE_ELSE = Blockly.Msg.CONTROLS_IF_MSG_ELSE;
+Blockly.Msg.PROCEDURES_DEFRETURN_PROCEDURE = Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE;
+Blockly.Msg.LISTS_GET_SUBLIST_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.LISTS_GET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.PROCEDURES_DEFRETURN_DO = Blockly.Msg.PROCEDURES_DEFNORETURN_DO;
+Blockly.Msg.CONTROLS_IF_ELSEIF_TITLE_ELSEIF = Blockly.Msg.CONTROLS_IF_MSG_ELSEIF;
+Blockly.Msg.LISTS_GET_INDEX_HELPURL = Blockly.Msg.LISTS_INDEX_OF_HELPURL;
+Blockly.Msg.CONTROLS_FOREACH_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_SET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TITLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_APPEND_VARIABLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.LISTS_INDEX_OF_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.PROCEDURES_DEFRETURN_COMMENT = Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT; \ No newline at end of file
diff --git a/blockly/msg/js/pms.js b/blockly/msg/js/pms.js
new file mode 100644
index 0000000..a1cf30f
--- /dev/null
+++ b/blockly/msg/js/pms.js
@@ -0,0 +1,391 @@
+// This file was automatically generated. Do not modify.
+
+'use strict';
+
+goog.provide('Blockly.Msg.pms');
+
+goog.require('Blockly.Msg');
+
+Blockly.Msg.ADD_COMMENT = "Gionté un coment";
+Blockly.Msg.CHANGE_VALUE_TITLE = "Modifiché ël valor:";
+Blockly.Msg.CLEAN_UP = "Dëscancelé ij blòch";
+Blockly.Msg.COLLAPSE_ALL = "Arduve ij blòch";
+Blockly.Msg.COLLAPSE_BLOCK = "Arduve ël blòch";
+Blockly.Msg.COLOUR_BLEND_COLOUR1 = "color 1";
+Blockly.Msg.COLOUR_BLEND_COLOUR2 = "color 2";
+Blockly.Msg.COLOUR_BLEND_HELPURL = "http://meyerweb.com/eric/tools/color-blend/"; // untranslated
+Blockly.Msg.COLOUR_BLEND_RATIO = "rapòrt";
+Blockly.Msg.COLOUR_BLEND_TITLE = "mës-cé";
+Blockly.Msg.COLOUR_BLEND_TOOLTIP = "A mës-cia doi color ansema con un rapòrt dàit (0,0 - 1,0).";
+Blockly.Msg.COLOUR_PICKER_HELPURL = "https://en.wikipedia.org/wiki/Color";
+Blockly.Msg.COLOUR_PICKER_TOOLTIP = "Serne un color ant la taulòssa.";
+Blockly.Msg.COLOUR_RANDOM_HELPURL = "http://randomcolour.com"; // untranslated
+Blockly.Msg.COLOUR_RANDOM_TITLE = "color a asar";
+Blockly.Msg.COLOUR_RANDOM_TOOLTIP = "Serne un color a asar.";
+Blockly.Msg.COLOUR_RGB_BLUE = "bleu";
+Blockly.Msg.COLOUR_RGB_GREEN = "verd";
+Blockly.Msg.COLOUR_RGB_HELPURL = "http://www.december.com/html/spec/colorper.html"; // untranslated
+Blockly.Msg.COLOUR_RGB_RED = "ross";
+Blockly.Msg.COLOUR_RGB_TITLE = "coloré con";
+Blockly.Msg.COLOUR_RGB_TOOLTIP = "Creé un color con la quantità spessificà ëd ross, verd e bleu. Tuti ij valor a devo esse antra 0 e 100.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_HELPURL = "https://github.com/google/blockly/wiki/Loops#loop-termination-blocks"; // untranslated
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK = "seurte da la liassa";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE = "continué con l'iterassion sucessiva dla liassa";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK = "Seurte da la liassa anglobanta.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE = "Sauté ël rest ëd sa liassa, e continué con l'iterassion apress.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_WARNING = "Atension: Ës blòch a peul mach esse dovrà andrinta a na liassa.";
+Blockly.Msg.CONTROLS_FOREACH_HELPURL = "https://github.com/google/blockly/wiki/Loops#for-each"; // untranslated
+Blockly.Msg.CONTROLS_FOREACH_TITLE = "për minca n'element %1 ant la lista %2";
+Blockly.Msg.CONTROLS_FOREACH_TOOLTIP = "Për minca element an na lista, dé ël valor ëd l'element a la variàbil '%1', peui eseguì chèiche anstrussion.";
+Blockly.Msg.CONTROLS_FOR_HELPURL = "https://github.com/google/blockly/wiki/Loops#count-with"; // untranslated
+Blockly.Msg.CONTROLS_FOR_TITLE = "conté con %1 da %2 a %3 për %4";
+Blockly.Msg.CONTROLS_FOR_TOOLTIP = "Fé an manera che la variàbil \"%1\" a pija ij valor dal nùmer inissial fin-a al nùmer final, an contand për l'antërval ëspessificà, e eseguì ij bloch ëspessificà.";
+Blockly.Msg.CONTROLS_IF_ELSEIF_TOOLTIP = "Gionté na condission al blòch si.";
+Blockly.Msg.CONTROLS_IF_ELSE_TOOLTIP = "Gionté na condission final ch'a cheuj tut al blòch si.";
+Blockly.Msg.CONTROLS_IF_HELPURL = "https://github.com/google/blockly/wiki/IfElse"; // untranslated
+Blockly.Msg.CONTROLS_IF_IF_TOOLTIP = "Gionté, gavé o riordiné le session për cinfiguré torna ës blòch si.";
+Blockly.Msg.CONTROLS_IF_MSG_ELSE = "dësnò";
+Blockly.Msg.CONTROLS_IF_MSG_ELSEIF = "dësnò si";
+Blockly.Msg.CONTROLS_IF_MSG_IF = "si";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_1 = "Si un valor a l'é ver, antlora eseguì chèiche anstrussion.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_2 = "Si un valor a l'é ver, antlora eseguì ël prim blòch d'anstrussion. Dësnò, eseguì ël second blòch d'anstrussion.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_3 = "Si ël prim valor a l'é ver, antlora fé andé ël prim blòch d'anstrussion. Dësnò, si ël second valor a l'é ver, fé andé ël second blòch d'anstrussion.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_4 = "Si ël prim valor a l'é ver, antlora fé andé ël prim blòch d'anstrussion. Dësnò, si ël second valor a l'é ver, fé andé ël second blòcj d'anstrussion. Si gnun dij valor a l'é ver, fé andé l'ùltim blòch d'anstrussion.";
+Blockly.Msg.CONTROLS_REPEAT_HELPURL = "https://en.wikipedia.org/wiki/For_loop";
+Blockly.Msg.CONTROLS_REPEAT_INPUT_DO = "fé";
+Blockly.Msg.CONTROLS_REPEAT_TITLE = "arpete %1 vire";
+Blockly.Msg.CONTROLS_REPEAT_TOOLTIP = "Eseguì chèiche anstrussion vàire vire.";
+Blockly.Msg.CONTROLS_WHILEUNTIL_HELPURL = "https://github.com/google/blockly/wiki/Loops#repeat"; // untranslated
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "arpete fin-a a";
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "arpete antramentre che";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "Cand un valor a l'é fàuss, eseguì chèiche anstrussion.";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "Cand un valor a l'é ver, eseguì chèiche anstrussion.";
+Blockly.Msg.DELETE_ALL_BLOCKS = "Scancelé tuti ij %1 blòch?";
+Blockly.Msg.DELETE_BLOCK = "Scancelé ël blòch";
+Blockly.Msg.DELETE_VARIABLE = "Eliminé la variàbil '%1'";
+Blockly.Msg.DELETE_VARIABLE_CONFIRMATION = "Eliminé %1 utilisassion ëd la variàbil '%2'?";
+Blockly.Msg.DELETE_X_BLOCKS = "Scancelé %1 blòch";
+Blockly.Msg.DISABLE_BLOCK = "Disativé ël blòch";
+Blockly.Msg.DUPLICATE_BLOCK = "Dupliché";
+Blockly.Msg.ENABLE_BLOCK = "Ativé ël blòch";
+Blockly.Msg.EXPAND_ALL = "Dësvlupé ij blòch";
+Blockly.Msg.EXPAND_BLOCK = "Dësvlupé ël blòch";
+Blockly.Msg.EXTERNAL_INPUTS = "Imission esterne";
+Blockly.Msg.HELP = "Agiut";
+Blockly.Msg.INLINE_INPUTS = "Imission an linia";
+Blockly.Msg.LISTS_CREATE_EMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-empty-list"; // untranslated
+Blockly.Msg.LISTS_CREATE_EMPTY_TITLE = "creé na lista veuida";
+Blockly.Msg.LISTS_CREATE_EMPTY_TOOLTIP = "Smon-e na lista, ëd longheur 0, ch'a conten gnun-a argistrassion";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TITLE_ADD = "lista";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TOOLTIP = "Gionté, gavé o riordiné le session për configuré torna cost blòch ëd lista.";
+Blockly.Msg.LISTS_CREATE_WITH_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with";
+Blockly.Msg.LISTS_CREATE_WITH_INPUT_WITH = "creé na lista con";
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TOOLTIP = "Gionté n'element a la lista.";
+Blockly.Msg.LISTS_CREATE_WITH_TOOLTIP = "Creé na lista con un nùmer qualsëssìa d'element.";
+Blockly.Msg.LISTS_GET_INDEX_FIRST = "prim";
+Blockly.Msg.LISTS_GET_INDEX_FROM_END = "# da la fin";
+Blockly.Msg.LISTS_GET_INDEX_FROM_START = "#"; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_GET = "oten-e";
+Blockly.Msg.LISTS_GET_INDEX_GET_REMOVE = "oten-e e eliminé";
+Blockly.Msg.LISTS_GET_INDEX_LAST = "ùltim";
+Blockly.Msg.LISTS_GET_INDEX_RANDOM = "a l'ancàpit";
+Blockly.Msg.LISTS_GET_INDEX_REMOVE = "eliminé";
+Blockly.Msg.LISTS_GET_INDEX_TAIL = ""; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FIRST = "A smon ël prim element an na lista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FROM = "A smon l'element a la posission ëspessificà an na lista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_LAST = "A smon l'ùltim element an na lista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_RANDOM = "A smon n'element a l'ancàpit an na lista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST = "A gava e a smon ël prim element an na lista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM = "A gava e a smon l'element a la posission ëspessificà an na lista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST = "A gava e a smon l'ùltim element an na lista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM = "A gava e a smon n'element a l'ancàpit an na lista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST = "A gava ël prim element an na lista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM = "A gava l'element a la posission ëspessificà an na lista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST = "A gava l'ùltim element an na lista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM = "A gava n'element a l'ancàpit da na lista.";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_END = "fin-a a # da la fin";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_START = "fin-a a #";
+Blockly.Msg.LISTS_GET_SUBLIST_END_LAST = "fin-a a l'ùltim";
+Blockly.Msg.LISTS_GET_SUBLIST_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-a-sublist"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_START_FIRST = "oten-e la sot-lista dal prim";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_END = "oten-e la sot-lista da # da la fin";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_START = "oten-e la sot-lista da #";
+Blockly.Msg.LISTS_GET_SUBLIST_TAIL = ""; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_TOOLTIP = "A crea na còpia dël tòch ëspessificà ëd na lista.";
+Blockly.Msg.LISTS_INDEX_FROM_END_TOOLTIP = "%1 a l'é l'ùltim element.";
+Blockly.Msg.LISTS_INDEX_FROM_START_TOOLTIP = "%1 a l'é ël prim element.";
+Blockly.Msg.LISTS_INDEX_OF_FIRST = "trové la prima ocorensa dl'element";
+Blockly.Msg.LISTS_INDEX_OF_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-items-from-a-list"; // untranslated
+Blockly.Msg.LISTS_INDEX_OF_LAST = "trové l'ùltima ocorensa dl'element";
+Blockly.Msg.LISTS_INDEX_OF_TOOLTIP = "A smon l'ìndes ëd la prima/ùltima ocorensa dl'element ant la lista. A smon %1 se l'element a l'é nen trovà.";
+Blockly.Msg.LISTS_INLIST = "ant la lista";
+Blockly.Msg.LISTS_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#is-empty"; // untranslated
+Blockly.Msg.LISTS_ISEMPTY_TITLE = "%1 a l'é veuid";
+Blockly.Msg.LISTS_ISEMPTY_TOOLTIP = "A smon ver se la lista a l'é veuida.";
+Blockly.Msg.LISTS_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Lists#length-of"; // untranslated
+Blockly.Msg.LISTS_LENGTH_TITLE = "longheur ëd %1";
+Blockly.Msg.LISTS_LENGTH_TOOLTIP = "A smon la longheur ¨d na lista.";
+Blockly.Msg.LISTS_REPEAT_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
+Blockly.Msg.LISTS_REPEAT_TITLE = "creé na lista con l'element %1 arpetù %2 vire";
+Blockly.Msg.LISTS_REPEAT_TOOLTIP = "A crea na lista ch'a consist dël valor dàit arpetù ël nùmer ëspessificà ëd vire.";
+Blockly.Msg.LISTS_SET_INDEX_HELPURL = "https://github.com/google/blockly/wiki/Lists#in-list--set"; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_INPUT_TO = "tanme";
+Blockly.Msg.LISTS_SET_INDEX_INSERT = "anserì an";
+Blockly.Msg.LISTS_SET_INDEX_SET = "buté";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST = "A anseriss l'element al prinsipi ëd na lista.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FROM = "A anseriss l'element a la posission ëspessificà an na lista.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_LAST = "Gionté l'element a la fin ëd na lista.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM = "A anseriss l'element a l'ancàpit an na lista.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FIRST = "A fissa ël prim element an na lista.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FROM = "A fissa l'element a la posission ëspessificà an na lista.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_LAST = "A fissa l'ùltim element an na lista.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_RANDOM = "A fissa n'element a l'ancàpit an na lista.";
+Blockly.Msg.LISTS_SORT_HELPURL = "https://github.com/google/blockly/wiki/Lists#sorting-a-list";
+Blockly.Msg.LISTS_SORT_ORDER_ASCENDING = "chërsent";
+Blockly.Msg.LISTS_SORT_ORDER_DESCENDING = "calant";
+Blockly.Msg.LISTS_SORT_TITLE = "ordiné %1 %2 %3";
+Blockly.Msg.LISTS_SORT_TOOLTIP = "Ordiné na còpia ëd na lista.";
+Blockly.Msg.LISTS_SORT_TYPE_IGNORECASE = "alfabétich, ignorand ël caràter minùscol o majùscol";
+Blockly.Msg.LISTS_SORT_TYPE_NUMERIC = "numérich";
+Blockly.Msg.LISTS_SORT_TYPE_TEXT = "alfabétich";
+Blockly.Msg.LISTS_SPLIT_HELPURL = "https://github.com/google/blockly/wiki/Lists#splitting-strings-and-joining-lists";
+Blockly.Msg.LISTS_SPLIT_LIST_FROM_TEXT = "fé na lista da 'n test";
+Blockly.Msg.LISTS_SPLIT_TEXT_FROM_LIST = "fé 'n test da na lista";
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_JOIN = "Gionze na lista ëd test ant un test sol, separandje con un separator.";
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_SPLIT = "Divide un test an na lista ëd test, tajand a minca 'n separator.";
+Blockly.Msg.LISTS_SPLIT_WITH_DELIMITER = "con ël separator";
+Blockly.Msg.LOGIC_BOOLEAN_FALSE = "fàuss";
+Blockly.Msg.LOGIC_BOOLEAN_HELPURL = "https://github.com/google/blockly/wiki/Logic#values"; // untranslated
+Blockly.Msg.LOGIC_BOOLEAN_TOOLTIP = "A rëspond ver o fàuss.";
+Blockly.Msg.LOGIC_BOOLEAN_TRUE = "ver";
+Blockly.Msg.LOGIC_COMPARE_HELPURL = "https://en.wikipedia.org/wiki/Inequality_(mathematics)";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_EQ = "Rësponde ver si le doe imission a son uguaj.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GT = "Rësponde ver si la prima imission a l'é pi granda che la sconda.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GTE = "Rësponde ver si la prima imission a l'é pi granda o ugual a la sconda.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LT = "Rësponde ver si la prima imission a l'é pi cita dla sconda.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LTE = "Rësponde ver si la prima imission a l'é pi cita o ugual a la sconda.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_NEQ = "Rësponde ver si le doe imission a son nen uguaj.";
+Blockly.Msg.LOGIC_NEGATE_HELPURL = "https://github.com/google/blockly/wiki/Logic#not"; // untranslated
+Blockly.Msg.LOGIC_NEGATE_TITLE = "nen %1";
+Blockly.Msg.LOGIC_NEGATE_TOOLTIP = "A rëspond ver se l'imission a l'é fàussa. A rëspond fàuss se l'imission a l'é vera.";
+Blockly.Msg.LOGIC_NULL = "gnente";
+Blockly.Msg.LOGIC_NULL_HELPURL = "https://en.wikipedia.org/wiki/Nullable_type"; // untranslated
+Blockly.Msg.LOGIC_NULL_TOOLTIP = "A rëspond gnente.";
+Blockly.Msg.LOGIC_OPERATION_AND = "e";
+Blockly.Msg.LOGIC_OPERATION_HELPURL = "https://github.com/google/blockly/wiki/Logic#logical-operations"; // untranslated
+Blockly.Msg.LOGIC_OPERATION_OR = "o";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_AND = "Rësponde ver se tute doe j'imission a son vere.";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_OR = "Rësponde ver se almanch un-a d'imission a l'é vera.";
+Blockly.Msg.LOGIC_TERNARY_CONDITION = "preuva";
+Blockly.Msg.LOGIC_TERNARY_HELPURL = "https://en.wikipedia.org/wiki/%3F:"; // untranslated
+Blockly.Msg.LOGIC_TERNARY_IF_FALSE = "se fàuss";
+Blockly.Msg.LOGIC_TERNARY_IF_TRUE = "se ver";
+Blockly.Msg.LOGIC_TERNARY_TOOLTIP = "Controlé la condission an 'preuva'. Se la condission a l'é vera, a rëspond con ël valor 'se ver'; dësnò a rëspond con ël valor 'se fàuss'.";
+Blockly.Msg.MATH_ADDITION_SYMBOL = "+"; // untranslated
+Blockly.Msg.MATH_ARITHMETIC_HELPURL = "https://en.wikipedia.org/wiki/Arithmetic";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_ADD = "A smon la soma ëd doi nùmer.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE = "A smon ël cossient dij doi nùmer.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MINUS = "A smon la diferensa dij doi nùmer.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MULTIPLY = "A smon ël prodot dij doi nùmer.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_POWER = "A smon ël prim nùmer alvà a la potensa dël second.";
+Blockly.Msg.MATH_CHANGE_HELPURL = "https://en.wikipedia.org/wiki/Programming_idiom#Incrementing_a_counter";
+Blockly.Msg.MATH_CHANGE_TITLE = "ancrementé %1 për %2";
+Blockly.Msg.MATH_CHANGE_TOOLTIP = "Gionté un nùmer a la variàbil '%1'.";
+Blockly.Msg.MATH_CONSTANT_HELPURL = "https://en.wikipedia.org/wiki/Mathematical_constant";
+Blockly.Msg.MATH_CONSTANT_TOOLTIP = "A smon un-a dle costante comun-e π (3.141…), e (2.718…), φ (1.618…), sqrt(2) (1.414…), sqrt(½) (0.707…) o ∞ (infinì).";
+Blockly.Msg.MATH_CONSTRAIN_HELPURL = "https://en.wikipedia.org/wiki/Clamping_%28graphics%29"; // untranslated
+Blockly.Msg.MATH_CONSTRAIN_TITLE = "limité %1 antra %2 e %3";
+Blockly.Msg.MATH_CONSTRAIN_TOOLTIP = "Limité un nùmer a esse antra le limitassion ëspessificà (comprèise).";
+Blockly.Msg.MATH_DIVISION_SYMBOL = "÷"; // untranslated
+Blockly.Msg.MATH_IS_DIVISIBLE_BY = "a l'é divisìbil për";
+Blockly.Msg.MATH_IS_EVEN = "a l'é cobi";
+Blockly.Msg.MATH_IS_NEGATIVE = "a l'é negativ";
+Blockly.Msg.MATH_IS_ODD = "a l'é dëscobi";
+Blockly.Msg.MATH_IS_POSITIVE = "a l'é positiv";
+Blockly.Msg.MATH_IS_PRIME = "a l'é prim";
+Blockly.Msg.MATH_IS_TOOLTIP = "A contròla si un nùmer a l'é cobi, dëscobi, prim, antreghm positiv, negativ, o s'a l'é divisìbil për un nùmer dàit. A rëspond ver o fàuss.";
+Blockly.Msg.MATH_IS_WHOLE = "a l'é antregh";
+Blockly.Msg.MATH_MODULO_HELPURL = "https://en.wikipedia.org/wiki/Modulo_operation";
+Blockly.Msg.MATH_MODULO_TITLE = "resta ëd %1:%2";
+Blockly.Msg.MATH_MODULO_TOOLTIP = "A smon la resta ëd la division dij doi nùmer.";
+Blockly.Msg.MATH_MULTIPLICATION_SYMBOL = "×"; // untranslated
+Blockly.Msg.MATH_NUMBER_HELPURL = "https://en.wikipedia.org/wiki/Number";
+Blockly.Msg.MATH_NUMBER_TOOLTIP = "Un nùmer.";
+Blockly.Msg.MATH_ONLIST_HELPURL = ""; // untranslated
+Blockly.Msg.MATH_ONLIST_OPERATOR_AVERAGE = "media dla lista";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MAX = "màssim ëd la lista";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MEDIAN = "mesan-a dla lista";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MIN = "mìnim ëd la lista";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MODE = "mòde dla lista";
+Blockly.Msg.MATH_ONLIST_OPERATOR_RANDOM = "element a l'ancàpit ëd la lista";
+Blockly.Msg.MATH_ONLIST_OPERATOR_STD_DEV = "deviassion ëstàndard ëd la lista";
+Blockly.Msg.MATH_ONLIST_OPERATOR_SUM = "soma dla lista";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_AVERAGE = "A smon la media (aritmética) dij valor numérich ant la lista.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MAX = "A smon ël pi gròss nùmer ëd la lista.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MEDIAN = "A smon ël nùmer mesan ëd la lista.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MIN = "A smon ël pi cit nùmer ëd la lista.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MODE = "A smon na lista dj'element pi frequent ëd la lista.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_RANDOM = "A smon n'element a l'ancàpit da la lista.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_STD_DEV = "A smon la deviassion ëstàndard ëd la lista.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_SUM = "A smon la soma ëd tuti ij nùmer ant la lista.";
+Blockly.Msg.MATH_POWER_SYMBOL = "^"; // untranslated
+Blockly.Msg.MATH_RANDOM_FLOAT_HELPURL = "https://en.wikipedia.org/wiki/Random_number_generation";
+Blockly.Msg.MATH_RANDOM_FLOAT_TITLE_RANDOM = "frassion aleatòria";
+Blockly.Msg.MATH_RANDOM_FLOAT_TOOLTIP = "A smon na frassion aleatòria antra 0,0 (comprèis) e 1,0 (esclus).";
+Blockly.Msg.MATH_RANDOM_INT_HELPURL = "https://en.wikipedia.org/wiki/Random_number_generation";
+Blockly.Msg.MATH_RANDOM_INT_TITLE = "antregh aleatòri antra %1 e %2";
+Blockly.Msg.MATH_RANDOM_INT_TOOLTIP = "A smon n'antregh aleatòri antra ij doi lìmit ëspessificà, comprèis.";
+Blockly.Msg.MATH_ROUND_HELPURL = "https://en.wikipedia.org/wiki/Rounding";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUND = "ariondé";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDDOWN = "ariondé për difet";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDUP = "ariondé për ecess";
+Blockly.Msg.MATH_ROUND_TOOLTIP = "A arionda un nùmer për difet o ecess.";
+Blockly.Msg.MATH_SINGLE_HELPURL = "https://en.wikipedia.org/wiki/Square_root";
+Blockly.Msg.MATH_SINGLE_OP_ABSOLUTE = "assolù";
+Blockly.Msg.MATH_SINGLE_OP_ROOT = "rèis quadra";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ABS = "A smon ël valor assolù d'un nùmer.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_EXP = "A smon e a la potensa d'un nùmer.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LN = "A smon ël logaritm natural d'un nùmer.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LOG10 = "A smon ël logaritm an base 10 d'un nùmer.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_NEG = "A smon l'opòst d'un nùmer.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_POW10 = "A smon 10 a la potensa d'un nùmer.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ROOT = "A smon la rèis quadra d'un nùmer.";
+Blockly.Msg.MATH_SUBTRACTION_SYMBOL = "-"; // untranslated
+Blockly.Msg.MATH_TRIG_ACOS = "acos"; // untranslated
+Blockly.Msg.MATH_TRIG_ASIN = "asin"; // untranslated
+Blockly.Msg.MATH_TRIG_ATAN = "atan"; // untranslated
+Blockly.Msg.MATH_TRIG_COS = "cos"; // untranslated
+Blockly.Msg.MATH_TRIG_HELPURL = "https://en.wikipedia.org/wiki/Trigonometric_functions";
+Blockly.Msg.MATH_TRIG_SIN = "sin"; // untranslated
+Blockly.Msg.MATH_TRIG_TAN = "tan"; // untranslated
+Blockly.Msg.MATH_TRIG_TOOLTIP_ACOS = "A smon l'arch-cosen d'un nùmer.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ASIN = "A smon l'arch-sen d'un nùmer.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ATAN = "A smon l'arch-tangenta d'un nùmer.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_COS = "A smon ël cosen ëd n'àngol an gré (pa an radiant).";
+Blockly.Msg.MATH_TRIG_TOOLTIP_SIN = "A smon ël sen ëd n'àngol an gré (pa an radiant).";
+Blockly.Msg.MATH_TRIG_TOOLTIP_TAN = "A smon la tangenta ëd n'àngol an gré (pa an radiant).";
+Blockly.Msg.NEW_VARIABLE = "Creé na variàbil...";
+Blockly.Msg.NEW_VARIABLE_TITLE = "Nòm ëd la neuva variàbil:";
+Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; // untranslated
+Blockly.Msg.PROCEDURES_ALLOW_STATEMENTS = "përmëtte le diciairassion";
+Blockly.Msg.PROCEDURES_BEFORE_PARAMS = "con:";
+Blockly.Msg.PROCEDURES_CALLNORETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29";
+Blockly.Msg.PROCEDURES_CALLNORETURN_TOOLTIP = "Eseguì la fonsion '%1' definìa da l'utent.";
+Blockly.Msg.PROCEDURES_CALLRETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29";
+Blockly.Msg.PROCEDURES_CALLRETURN_TOOLTIP = "Eseguì la fonsion '%1' definìa da l'utent e dovré sò arzultà.";
+Blockly.Msg.PROCEDURES_CALL_BEFORE_PARAMS = "con:";
+Blockly.Msg.PROCEDURES_CREATE_DO = "Creé '%1'";
+Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT = "Descrive sa fonsion...";
+Blockly.Msg.PROCEDURES_DEFNORETURN_DO = ""; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE = "fé cheicòs";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE = "a";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TOOLTIP = "A crea na fonsion sensa surtìa.";
+Blockly.Msg.PROCEDURES_DEFRETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_DEFRETURN_RETURN = "artorn";
+Blockly.Msg.PROCEDURES_DEFRETURN_TOOLTIP = "A crea na fonsion con na surtìa.";
+Blockly.Msg.PROCEDURES_DEF_DUPLICATE_WARNING = "Atension: Costa fonsion a l'ha dij paràmeter duplicà.";
+Blockly.Msg.PROCEDURES_HIGHLIGHT_DEF = "Sot-ligné la definission dla fonsion";
+Blockly.Msg.PROCEDURES_IFRETURN_HELPURL = "http://c2.com/cgi/wiki?GuardClause";
+Blockly.Msg.PROCEDURES_IFRETURN_TOOLTIP = "Se un valor a l'é ver, antlora smon-e un second valor.";
+Blockly.Msg.PROCEDURES_IFRETURN_WARNING = "Atension: Ës blòch a podria esse dovrà mach an na definission ëd fonsion.";
+Blockly.Msg.PROCEDURES_MUTATORARG_TITLE = "nòm ëd l'imission:";
+Blockly.Msg.PROCEDURES_MUTATORARG_TOOLTIP = "Gionté n'imission a la fonsion.";
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TITLE = "imission";
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TOOLTIP = "Gionté, gavé o riordiné j'imission ëd sa fonsion.";
+Blockly.Msg.REDO = "Fé torna";
+Blockly.Msg.REMOVE_COMMENT = "Scancelé un coment";
+Blockly.Msg.RENAME_VARIABLE = "Arnomé la variàbil...";
+Blockly.Msg.RENAME_VARIABLE_TITLE = "Arnomé tute le variàbij '%1' 'me:";
+Blockly.Msg.TEXT_APPEND_APPENDTEXT = "taché ël test";
+Blockly.Msg.TEXT_APPEND_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_APPEND_TO = "a";
+Blockly.Msg.TEXT_APPEND_TOOLTIP = "Taché dël test a la variàbil '%1'.";
+Blockly.Msg.TEXT_CHANGECASE_HELPURL = "https://github.com/google/blockly/wiki/Text#adjusting-text-case"; // untranslated
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_LOWERCASE = "an minùscul";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_TITLECASE = "an Majùscol A L'Ancamin Ëd Minca Paròla";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_UPPERCASE = "an MAJÙSCOL";
+Blockly.Msg.TEXT_CHANGECASE_TOOLTIP = "A smon na còpia dël test ant un caràter diferent.";
+Blockly.Msg.TEXT_CHARAT_FIRST = "oten-e la prima litra";
+Blockly.Msg.TEXT_CHARAT_FROM_END = "oten-e la litra # da la fin";
+Blockly.Msg.TEXT_CHARAT_FROM_START = "oten-e la litra #";
+Blockly.Msg.TEXT_CHARAT_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-text"; // untranslated
+Blockly.Msg.TEXT_CHARAT_INPUT_INTEXT = "ant ël test";
+Blockly.Msg.TEXT_CHARAT_LAST = "oten-e l'ùltima litra";
+Blockly.Msg.TEXT_CHARAT_RANDOM = "oten-e na litra a l'ancàpit";
+Blockly.Msg.TEXT_CHARAT_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_CHARAT_TOOLTIP = "A smon la litra ant la posission ëspessificà.";
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TOOLTIP = "Gionté n'element al test.";
+Blockly.Msg.TEXT_CREATE_JOIN_TITLE_JOIN = "gionze";
+Blockly.Msg.TEXT_CREATE_JOIN_TOOLTIP = "Gionté, gavé o riordiné le session për configuré torna ës blòch ëd test.";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_END = "fin-a a la litra # da la fin";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_START = "fin-a a la litra #";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_LAST = "fin-a a l'ùltima litra";
+Blockly.Msg.TEXT_GET_SUBSTRING_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_INPUT_IN_TEXT = "ant ël test";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FIRST = "oten-e la sota-stringa da la prima litra";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_END = "oten-e la sota-stringa da la litra # da la fin";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_START = "oten-e la sota-stringa da la litra #";
+Blockly.Msg.TEXT_GET_SUBSTRING_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_TOOLTIP = "A smon un tòch ëspessificà dël test.";
+Blockly.Msg.TEXT_INDEXOF_HELPURL = "https://github.com/google/blockly/wiki/Text#finding-text"; // untranslated
+Blockly.Msg.TEXT_INDEXOF_INPUT_INTEXT = "ant ël test";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_FIRST = "trové la prima ocorensa dël test";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_LAST = "trové l'ùltima ocorensa dël test";
+Blockly.Msg.TEXT_INDEXOF_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_INDEXOF_TOOLTIP = "A smon l'ìndes dla prima/ùltima ocorensa dël prim test ant ël second test. A smon %1 se ël test a l'é nen trovà.";
+Blockly.Msg.TEXT_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Text#checking-for-empty-text"; // untranslated
+Blockly.Msg.TEXT_ISEMPTY_TITLE = "%1 a l'é veuid";
+Blockly.Msg.TEXT_ISEMPTY_TOOLTIP = "A smon ver se ël test fornì a l'é veuid.";
+Blockly.Msg.TEXT_JOIN_HELPURL = "https://github.com/google/blockly/wiki/Text#text-creation"; // untranslated
+Blockly.Msg.TEXT_JOIN_TITLE_CREATEWITH = "creé ël test con";
+Blockly.Msg.TEXT_JOIN_TOOLTIP = "Creé un tòch ëd test an gionzend un nùmer qualsëssìa d'element.";
+Blockly.Msg.TEXT_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_LENGTH_TITLE = "longheur ëd %1";
+Blockly.Msg.TEXT_LENGTH_TOOLTIP = "A smon ël nùmer ëd litre (spassi comprèis) ant ël test fornì.";
+Blockly.Msg.TEXT_PRINT_HELPURL = "https://github.com/google/blockly/wiki/Text#printing-text"; // untranslated
+Blockly.Msg.TEXT_PRINT_TITLE = "smon-e %1";
+Blockly.Msg.TEXT_PRINT_TOOLTIP = "Smon-e ël test, ël nùmer o n'àutr valor ëspessificà.";
+Blockly.Msg.TEXT_PROMPT_HELPURL = "https://github.com/google/blockly/wiki/Text#getting-input-from-the-user"; // untranslated
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_NUMBER = "Ciamé un nùmer a l'utent.";
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_TEXT = "Ciamé un test a l'utent.";
+Blockly.Msg.TEXT_PROMPT_TYPE_NUMBER = "anvit për un nùmer con un mëssagi";
+Blockly.Msg.TEXT_PROMPT_TYPE_TEXT = "anvit për un test con un mëssagi";
+Blockly.Msg.TEXT_TEXT_HELPURL = "https://en.wikipedia.org/wiki/String_(computer_science)";
+Blockly.Msg.TEXT_TEXT_TOOLTIP = "Na litra, na paròla o na linia ëd test.";
+Blockly.Msg.TEXT_TRIM_HELPURL = "https://github.com/google/blockly/wiki/Text#trimming-removing-spaces"; // untranslated
+Blockly.Msg.TEXT_TRIM_OPERATOR_BOTH = "gavé jë spassi da le doe bande ëd";
+Blockly.Msg.TEXT_TRIM_OPERATOR_LEFT = "gavé jë spassi da la banda snistra ëd";
+Blockly.Msg.TEXT_TRIM_OPERATOR_RIGHT = "gavé jë spassi da la banda drita ëd";
+Blockly.Msg.TEXT_TRIM_TOOLTIP = "A smon na còpia dël test con jë spassi gavà da n'estremità o da tute doe.";
+Blockly.Msg.TODAY = "Ancheuj";
+Blockly.Msg.UNDO = "Anulé";
+Blockly.Msg.VARIABLES_DEFAULT_NAME = "element";
+Blockly.Msg.VARIABLES_GET_CREATE_SET = "Creé 'fissé %1'";
+Blockly.Msg.VARIABLES_GET_HELPURL = "https://github.com/google/blockly/wiki/Variables#get"; // untranslated
+Blockly.Msg.VARIABLES_GET_TOOLTIP = "A smon ël valor ëd sa variàbil.";
+Blockly.Msg.VARIABLES_SET = "fissé %1 a %2";
+Blockly.Msg.VARIABLES_SET_CREATE_GET = "Creé 'oten-e %1'";
+Blockly.Msg.VARIABLES_SET_HELPURL = "https://github.com/google/blockly/wiki/Variables#set"; // untranslated
+Blockly.Msg.VARIABLES_SET_TOOLTIP = "Fissé costa variàbil ugual al valor d'imission.";
+Blockly.Msg.VARIABLE_ALREADY_EXISTS = "Na variàbil con ël nòm '%1' a esist già.";
+Blockly.Msg.PROCEDURES_DEFRETURN_TITLE = Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE;
+Blockly.Msg.CONTROLS_IF_IF_TITLE_IF = Blockly.Msg.CONTROLS_IF_MSG_IF;
+Blockly.Msg.CONTROLS_WHILEUNTIL_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_MSG_THEN = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_ELSE_TITLE_ELSE = Blockly.Msg.CONTROLS_IF_MSG_ELSE;
+Blockly.Msg.PROCEDURES_DEFRETURN_PROCEDURE = Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE;
+Blockly.Msg.LISTS_GET_SUBLIST_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.LISTS_GET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.PROCEDURES_DEFRETURN_DO = Blockly.Msg.PROCEDURES_DEFNORETURN_DO;
+Blockly.Msg.CONTROLS_IF_ELSEIF_TITLE_ELSEIF = Blockly.Msg.CONTROLS_IF_MSG_ELSEIF;
+Blockly.Msg.LISTS_GET_INDEX_HELPURL = Blockly.Msg.LISTS_INDEX_OF_HELPURL;
+Blockly.Msg.CONTROLS_FOREACH_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_SET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TITLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_APPEND_VARIABLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.LISTS_INDEX_OF_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.PROCEDURES_DEFRETURN_COMMENT = Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT; \ No newline at end of file
diff --git a/blockly/msg/js/pt-br.js b/blockly/msg/js/pt-br.js
new file mode 100644
index 0000000..ba41b5e
--- /dev/null
+++ b/blockly/msg/js/pt-br.js
@@ -0,0 +1,391 @@
+// This file was automatically generated. Do not modify.
+
+'use strict';
+
+goog.provide('Blockly.Msg.pt.br');
+
+goog.require('Blockly.Msg');
+
+Blockly.Msg.ADD_COMMENT = "Adicionar comentário";
+Blockly.Msg.CHANGE_VALUE_TITLE = "Mudar valor:";
+Blockly.Msg.CLEAN_UP = "Limpar blocos";
+Blockly.Msg.COLLAPSE_ALL = "Recolher blocos";
+Blockly.Msg.COLLAPSE_BLOCK = "Recolher bloco";
+Blockly.Msg.COLOUR_BLEND_COLOUR1 = "cor 1";
+Blockly.Msg.COLOUR_BLEND_COLOUR2 = "cor 2";
+Blockly.Msg.COLOUR_BLEND_HELPURL = "http://meyerweb.com/eric/tools/color-blend/"; // untranslated
+Blockly.Msg.COLOUR_BLEND_RATIO = "proporção";
+Blockly.Msg.COLOUR_BLEND_TITLE = "misturar";
+Blockly.Msg.COLOUR_BLEND_TOOLTIP = "Mistura duas cores em uma dada proporção (0,0 - 1,0).";
+Blockly.Msg.COLOUR_PICKER_HELPURL = "https://pt.wikipedia.org/wiki/Cor";
+Blockly.Msg.COLOUR_PICKER_TOOLTIP = "Escolher uma cor da palheta de cores.";
+Blockly.Msg.COLOUR_RANDOM_HELPURL = "http://randomcolour.com"; // untranslated
+Blockly.Msg.COLOUR_RANDOM_TITLE = "cor aleatória";
+Blockly.Msg.COLOUR_RANDOM_TOOLTIP = "Escolher cor de forma aleatória.";
+Blockly.Msg.COLOUR_RGB_BLUE = "azul";
+Blockly.Msg.COLOUR_RGB_GREEN = "verde";
+Blockly.Msg.COLOUR_RGB_HELPURL = "http://www.december.com/html/spec/colorper.html"; // untranslated
+Blockly.Msg.COLOUR_RGB_RED = "vermelho";
+Blockly.Msg.COLOUR_RGB_TITLE = "colorir com";
+Blockly.Msg.COLOUR_RGB_TOOLTIP = "Cria uma cor de acordo com a quantidade especificada de vermelho, verde e azul. Todos os valores devem estar entre 0 e 100.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_HELPURL = "https://github.com/google/blockly/wiki/Loops#loop-termination-blocks"; // untranslated
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK = "encerra o laço";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE = "continua com a próxima iteração do laço";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK = "Encerra o laço.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE = "Ignora o resto deste laço, e continua com a próxima iteração.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_WARNING = "Atenção: Este bloco só pode ser usado dentro de um laço.";
+Blockly.Msg.CONTROLS_FOREACH_HELPURL = "https://github.com/google/blockly/wiki/Loops#for-each"; // untranslated
+Blockly.Msg.CONTROLS_FOREACH_TITLE = "para cada item %1 na lista %2";
+Blockly.Msg.CONTROLS_FOREACH_TOOLTIP = "Para cada item em uma lista, atribuir o item à variável '%1' e então realiza algumas instruções.";
+Blockly.Msg.CONTROLS_FOR_HELPURL = "https://github.com/google/blockly/wiki/Loops#count-with"; // untranslated
+Blockly.Msg.CONTROLS_FOR_TITLE = "contar com %1 de %2 até %3 por %4";
+Blockly.Msg.CONTROLS_FOR_TOOLTIP = "Faz com que a variável '%1' assuma os valores do número inicial ao número final, contando de acordo com o intervalo especificado e executa os blocos especificados.";
+Blockly.Msg.CONTROLS_IF_ELSEIF_TOOLTIP = "Acrescente uma condição para o bloco se.";
+Blockly.Msg.CONTROLS_IF_ELSE_TOOLTIP = "Acrescente uma condição final para o bloco se.";
+Blockly.Msg.CONTROLS_IF_HELPURL = "https://github.com/google/blockly/wiki/IfElse"; // untranslated
+Blockly.Msg.CONTROLS_IF_IF_TOOLTIP = "Acrescente, remova ou reordene seções para reconfigurar este bloco.";
+Blockly.Msg.CONTROLS_IF_MSG_ELSE = "senão";
+Blockly.Msg.CONTROLS_IF_MSG_ELSEIF = "senão se";
+Blockly.Msg.CONTROLS_IF_MSG_IF = "se";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_1 = "Se um valor for verdadeiro, então realize algumas instruções.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_2 = "Se um valor for verdadeiro, então realize o primeiro bloco de instruções. Senão, realize o segundo bloco de instruções.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_3 = "Se o primeiro valor é verdadeiro, então realize o primeiro bloco de instruções. Senão, se o segundo valor é verdadeiro, realize o segundo bloco de instruções.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_4 = "Se o primeiro valor for verdadeiro, então realize o primeiro bloco de instruções. Senão, se o segundo valor é verdadeiro, realize o segundo bloco de instruções. Se nenhum dos blocos for verdadeiro, realize o último bloco de instruções.";
+Blockly.Msg.CONTROLS_REPEAT_HELPURL = "https://pt.wikipedia.org/wiki/Estrutura_de_repeti%C3%A7%C3%A3o#Repeti.C3.A7.C3.A3o_com_vari.C3.A1vel_de_controle";
+Blockly.Msg.CONTROLS_REPEAT_INPUT_DO = "faça";
+Blockly.Msg.CONTROLS_REPEAT_TITLE = "repita %1 vezes";
+Blockly.Msg.CONTROLS_REPEAT_TOOLTIP = "Faça algumas instruções várias vezes.";
+Blockly.Msg.CONTROLS_WHILEUNTIL_HELPURL = "https://github.com/google/blockly/wiki/Loops#repeat"; // untranslated
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "repita até";
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "repita enquanto";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "Enquanto um valor for falso, então faça algumas instruções.";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "Enquanto um valor for verdadeiro, então faça algumas instruções.";
+Blockly.Msg.DELETE_ALL_BLOCKS = "Apagar todos os %1 blocos?";
+Blockly.Msg.DELETE_BLOCK = "Remover bloco";
+Blockly.Msg.DELETE_VARIABLE = "Delete the '%1' variable"; // untranslated
+Blockly.Msg.DELETE_VARIABLE_CONFIRMATION = "Delete %1 uses of the '%2' variable?"; // untranslated
+Blockly.Msg.DELETE_X_BLOCKS = "Remover %1 blocos";
+Blockly.Msg.DISABLE_BLOCK = "Desabilitar bloco";
+Blockly.Msg.DUPLICATE_BLOCK = "Duplicar";
+Blockly.Msg.ENABLE_BLOCK = "Habilitar bloco";
+Blockly.Msg.EXPAND_ALL = "Expandir blocos";
+Blockly.Msg.EXPAND_BLOCK = "Expandir bloco";
+Blockly.Msg.EXTERNAL_INPUTS = "Entradas externas";
+Blockly.Msg.HELP = "Ajuda";
+Blockly.Msg.INLINE_INPUTS = "Entradas incorporadas";
+Blockly.Msg.LISTS_CREATE_EMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-empty-list"; // untranslated
+Blockly.Msg.LISTS_CREATE_EMPTY_TITLE = "criar lista vazia";
+Blockly.Msg.LISTS_CREATE_EMPTY_TOOLTIP = "Retorna uma lista, de tamanho 0, contendo nenhum registro";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TITLE_ADD = "lista";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TOOLTIP = "Acrescenta, remove ou reordena seções para reconfigurar este bloco de lista.";
+Blockly.Msg.LISTS_CREATE_WITH_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
+Blockly.Msg.LISTS_CREATE_WITH_INPUT_WITH = "criar lista com";
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TOOLTIP = "Acrescenta um item à lista.";
+Blockly.Msg.LISTS_CREATE_WITH_TOOLTIP = "Cria uma lista com a quantidade de itens informada.";
+Blockly.Msg.LISTS_GET_INDEX_FIRST = "primeiro";
+Blockly.Msg.LISTS_GET_INDEX_FROM_END = "nº a partir do final";
+Blockly.Msg.LISTS_GET_INDEX_FROM_START = "nº";
+Blockly.Msg.LISTS_GET_INDEX_GET = "obter";
+Blockly.Msg.LISTS_GET_INDEX_GET_REMOVE = "obter e remover";
+Blockly.Msg.LISTS_GET_INDEX_LAST = "último";
+Blockly.Msg.LISTS_GET_INDEX_RANDOM = "aleatório";
+Blockly.Msg.LISTS_GET_INDEX_REMOVE = "remover";
+Blockly.Msg.LISTS_GET_INDEX_TAIL = ""; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FIRST = "Retorna o primeiro item em uma lista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FROM = "Retorna o item da lista na posição especificada.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_LAST = "Retorna o último item em uma lista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_RANDOM = "Retorna um item aleatório de uma lista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST = "Remove e retorna o primeiro item de uma lista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM = "Remove e retorna o item na posição especificada em uma lista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST = "Remove e retorna o último item de uma lista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM = "Remove e retorna um item aleatório de uma lista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST = "Remove o primeiro item de uma lista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM = "Remove o item na posição especificada em uma lista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST = "Remove o último item de uma lista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM = "Remove um item aleatório de uma lista.";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_END = "até nº a partir do final";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_START = "até nº";
+Blockly.Msg.LISTS_GET_SUBLIST_END_LAST = "até último";
+Blockly.Msg.LISTS_GET_SUBLIST_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-a-sublist"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_START_FIRST = "obtém sublista a partir do primeiro";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_END = "obtém sublista de nº a partir do final";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_START = "obtém sublista de nº";
+Blockly.Msg.LISTS_GET_SUBLIST_TAIL = ""; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_TOOLTIP = "Cria uma cópia da porção especificada de uma lista.";
+Blockly.Msg.LISTS_INDEX_FROM_END_TOOLTIP = "%1 é o último item.";
+Blockly.Msg.LISTS_INDEX_FROM_START_TOOLTIP = "%1 é o primeiro item.";
+Blockly.Msg.LISTS_INDEX_OF_FIRST = "encontre a primeira ocorrência do item";
+Blockly.Msg.LISTS_INDEX_OF_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-items-from-a-list"; // untranslated
+Blockly.Msg.LISTS_INDEX_OF_LAST = "encontre a última ocorrência do item";
+Blockly.Msg.LISTS_INDEX_OF_TOOLTIP = "Retorna o índice da primeira/última ocorrência do item na lista. Retorna %1 se o item não for encontrado.";
+Blockly.Msg.LISTS_INLIST = "na lista";
+Blockly.Msg.LISTS_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#is-empty"; // untranslated
+Blockly.Msg.LISTS_ISEMPTY_TITLE = "%1 é vazia";
+Blockly.Msg.LISTS_ISEMPTY_TOOLTIP = "Retorna ao verdadeiro se a lista estiver vazia.";
+Blockly.Msg.LISTS_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Lists#length-of"; // untranslated
+Blockly.Msg.LISTS_LENGTH_TITLE = "tamanho de %1";
+Blockly.Msg.LISTS_LENGTH_TOOLTIP = "Retorna o tamanho de uma lista.";
+Blockly.Msg.LISTS_REPEAT_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
+Blockly.Msg.LISTS_REPEAT_TITLE = "criar lista com item %1 repetido %2 vezes";
+Blockly.Msg.LISTS_REPEAT_TOOLTIP = "Cria uma lista consistindo no valor informado repetido o número de vezes especificado.";
+Blockly.Msg.LISTS_SET_INDEX_HELPURL = "https://github.com/google/blockly/wiki/Lists#in-list--set"; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_INPUT_TO = "como";
+Blockly.Msg.LISTS_SET_INDEX_INSERT = "inserir em";
+Blockly.Msg.LISTS_SET_INDEX_SET = "definir";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST = "Insere o item no início de uma lista.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FROM = "Insere o item na posição especificada em uma lista.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_LAST = "Insere o item no final de uma lista.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM = "Insere o item em uma posição qualquer de uma lista.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FIRST = "Define o primeiro item de uma lista.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FROM = "Define o item da posição especificada de uma lista.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_LAST = "Define o último item de uma lista.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_RANDOM = "Define um item aleatório de uma lista.";
+Blockly.Msg.LISTS_SORT_HELPURL = "https://github.com/google/blockly/wiki/Lists#sorting-a-list";
+Blockly.Msg.LISTS_SORT_ORDER_ASCENDING = "ascendente";
+Blockly.Msg.LISTS_SORT_ORDER_DESCENDING = "descendente";
+Blockly.Msg.LISTS_SORT_TITLE = "ordenar %1 %2 %3";
+Blockly.Msg.LISTS_SORT_TOOLTIP = "Ordenar uma cópia de uma lista.";
+Blockly.Msg.LISTS_SORT_TYPE_IGNORECASE = "alfabético, ignorar maiúscula/minúscula";
+Blockly.Msg.LISTS_SORT_TYPE_NUMERIC = "numérico";
+Blockly.Msg.LISTS_SORT_TYPE_TEXT = "alfabético";
+Blockly.Msg.LISTS_SPLIT_HELPURL = "https://github.com/google/blockly/wiki/Lists#splitting-strings-and-joining-lists"; // untranslated
+Blockly.Msg.LISTS_SPLIT_LIST_FROM_TEXT = "Fazer uma lista a partir do texto";
+Blockly.Msg.LISTS_SPLIT_TEXT_FROM_LIST = "fazer um texto a partir da lista";
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_JOIN = "Juntar uma lista de textos em um único texto, separado por um delimitador.";
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_SPLIT = "Dividir o texto em uma lista de textos, separando-o em cada delimitador.";
+Blockly.Msg.LISTS_SPLIT_WITH_DELIMITER = "com delimitador";
+Blockly.Msg.LOGIC_BOOLEAN_FALSE = "falso";
+Blockly.Msg.LOGIC_BOOLEAN_HELPURL = "https://github.com/google/blockly/wiki/Logic#values"; // untranslated
+Blockly.Msg.LOGIC_BOOLEAN_TOOLTIP = "Retorna verdadeiro ou falso.";
+Blockly.Msg.LOGIC_BOOLEAN_TRUE = "verdadeiro";
+Blockly.Msg.LOGIC_COMPARE_HELPURL = "https://pt.wikipedia.org/wiki/Inequa%C3%A7%C3%A3o";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_EQ = "Retorna verdadeiro se ambas as entradas forem iguais.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GT = "Retorna verdadeiro se a primeira entrada for maior que a segunda entrada.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GTE = "Retorna verdadeiro se a primeira entrada for maior ou igual à segunda entrada.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LT = "Retorna verdadeiro se a primeira entrada for menor que a segunda entrada.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LTE = "Retorna verdadeiro se a primeira entrada for menor ou igual à segunda entrada.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_NEQ = "Retorna verdadeiro se ambas as entradas forem diferentes.";
+Blockly.Msg.LOGIC_NEGATE_HELPURL = "https://github.com/google/blockly/wiki/Logic#not"; // untranslated
+Blockly.Msg.LOGIC_NEGATE_TITLE = "não %1";
+Blockly.Msg.LOGIC_NEGATE_TOOLTIP = "Retorna verdadeiro se a entrada for falsa. Retorna falsa se a entrada for verdadeira.";
+Blockly.Msg.LOGIC_NULL = "nulo";
+Blockly.Msg.LOGIC_NULL_HELPURL = "https://en.wikipedia.org/wiki/Nullable_type"; // untranslated
+Blockly.Msg.LOGIC_NULL_TOOLTIP = "Retorna nulo.";
+Blockly.Msg.LOGIC_OPERATION_AND = "e";
+Blockly.Msg.LOGIC_OPERATION_HELPURL = "https://github.com/google/blockly/wiki/Logic#logical-operations"; // untranslated
+Blockly.Msg.LOGIC_OPERATION_OR = "ou";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_AND = "Retorna verdadeiro se ambas as entradas forem verdadeiras.";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_OR = "Retorna verdadeiro se uma das estradas for verdadeira.";
+Blockly.Msg.LOGIC_TERNARY_CONDITION = "teste";
+Blockly.Msg.LOGIC_TERNARY_HELPURL = "https://en.wikipedia.org/wiki/%3F:"; // untranslated
+Blockly.Msg.LOGIC_TERNARY_IF_FALSE = "se falso";
+Blockly.Msg.LOGIC_TERNARY_IF_TRUE = "se verdadeiro";
+Blockly.Msg.LOGIC_TERNARY_TOOLTIP = "Avalia a condição em \"teste\". Se a condição for verdadeira retorna o valor \"se verdadeiro\", senão retorna o valor \"se falso\".";
+Blockly.Msg.MATH_ADDITION_SYMBOL = "+"; // untranslated
+Blockly.Msg.MATH_ARITHMETIC_HELPURL = "https://pt.wikipedia.org/wiki/Aritm%C3%A9tica";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_ADD = "Retorna a soma dos dois números.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE = "Retorna o quociente da divisão dos dois números.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MINUS = "Retorna a diferença entre os dois números.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MULTIPLY = "Retorna o produto dos dois números.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_POWER = "Retorna o primeiro número elevado à potência do segundo número.";
+Blockly.Msg.MATH_CHANGE_HELPURL = "https://pt.wikipedia.org/wiki/Adi%C3%A7%C3%A3o";
+Blockly.Msg.MATH_CHANGE_TITLE = "alterar %1 por %2";
+Blockly.Msg.MATH_CHANGE_TOOLTIP = "Soma um número à variável \"%1\".";
+Blockly.Msg.MATH_CONSTANT_HELPURL = "https://pt.wikipedia.org/wiki/Anexo:Lista_de_constantes_matem%C3%A1ticas";
+Blockly.Msg.MATH_CONSTANT_TOOLTIP = "Retorna uma das constantes comuns: π (3.141…), e (2.718…), φ (1.618…), sqrt(2) (1.414…), sqrt(½) (0.707…), ou ∞ (infinito).";
+Blockly.Msg.MATH_CONSTRAIN_HELPURL = "https://en.wikipedia.org/wiki/Clamping_%28graphics%29"; // untranslated
+Blockly.Msg.MATH_CONSTRAIN_TITLE = "restringe %1 inferior %2 superior %3";
+Blockly.Msg.MATH_CONSTRAIN_TOOLTIP = "Restringe um número entre os limites especificados (inclusivo).";
+Blockly.Msg.MATH_DIVISION_SYMBOL = "÷"; // untranslated
+Blockly.Msg.MATH_IS_DIVISIBLE_BY = "é divisível por";
+Blockly.Msg.MATH_IS_EVEN = "é par";
+Blockly.Msg.MATH_IS_NEGATIVE = "é negativo";
+Blockly.Msg.MATH_IS_ODD = "é ímpar";
+Blockly.Msg.MATH_IS_POSITIVE = "é positivo";
+Blockly.Msg.MATH_IS_PRIME = "é primo";
+Blockly.Msg.MATH_IS_TOOLTIP = "Verifica se um número é par, ímpar, inteiro, positivo, negativo, ou se é divisível por outro número. Retorna verdadeiro ou falso.";
+Blockly.Msg.MATH_IS_WHOLE = "é inteiro";
+Blockly.Msg.MATH_MODULO_HELPURL = "https://pt.wikipedia.org/wiki/Opera%C3%A7%C3%A3o_m%C3%B3dulo";
+Blockly.Msg.MATH_MODULO_TITLE = "resto da divisão de %1 ÷ %2";
+Blockly.Msg.MATH_MODULO_TOOLTIP = "Retorna o resto da divisão de dois números.";
+Blockly.Msg.MATH_MULTIPLICATION_SYMBOL = "×"; // untranslated
+Blockly.Msg.MATH_NUMBER_HELPURL = "https://pt.wikipedia.org/wiki/N%C3%BAmero";
+Blockly.Msg.MATH_NUMBER_TOOLTIP = "Um número.";
+Blockly.Msg.MATH_ONLIST_HELPURL = ""; // untranslated
+Blockly.Msg.MATH_ONLIST_OPERATOR_AVERAGE = "média da lista";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MAX = "maior da lista";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MEDIAN = "mediana da lista";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MIN = "menor da lista";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MODE = "moda da lista";
+Blockly.Msg.MATH_ONLIST_OPERATOR_RANDOM = "item aleatório da lista";
+Blockly.Msg.MATH_ONLIST_OPERATOR_STD_DEV = "desvio padrão da lista";
+Blockly.Msg.MATH_ONLIST_OPERATOR_SUM = "soma de uma lista";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_AVERAGE = "Retorna a média aritmética dos números da lista.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MAX = "Retorna o maior número da lista.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MEDIAN = "Retorna a mediana dos números da lista.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MIN = "Retorna o menor número da lista.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MODE = "Retorna uma lista do(s) item(ns) mais comum(ns) da lista.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_RANDOM = "Retorna um elemento aleatório da lista.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_STD_DEV = "Retorna o desvio padrão dos números da lista.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_SUM = "Retorna a soma de todos os números na lista.";
+Blockly.Msg.MATH_POWER_SYMBOL = "^"; // untranslated
+Blockly.Msg.MATH_RANDOM_FLOAT_HELPURL = "https://pt.wikipedia.org/wiki/Gerador_de_n%C3%BAmeros_pseudoaleat%C3%B3rios";
+Blockly.Msg.MATH_RANDOM_FLOAT_TITLE_RANDOM = "fração aleatória";
+Blockly.Msg.MATH_RANDOM_FLOAT_TOOLTIP = "Retorna uma fração aleatória entre 0.0 (inclusivo) e 1.0 (exclusivo).";
+Blockly.Msg.MATH_RANDOM_INT_HELPURL = "https://pt.wikipedia.org/wiki/Gerador_de_n%C3%BAmeros_pseudoaleat%C3%B3rios";
+Blockly.Msg.MATH_RANDOM_INT_TITLE = "inteiro aleatório entre %1 e %2";
+Blockly.Msg.MATH_RANDOM_INT_TOOLTIP = "Retorna um número inteiro entre os dois limites informados, inclusivo.";
+Blockly.Msg.MATH_ROUND_HELPURL = "https://pt.wikipedia.org/wiki/Arredondamento";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUND = "arredonda";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDDOWN = "arredonda para baixo";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDUP = "arredonda para cima";
+Blockly.Msg.MATH_ROUND_TOOLTIP = "Arredonda um número para cima ou para baixo.";
+Blockly.Msg.MATH_SINGLE_HELPURL = "https://pt.wikipedia.org/wiki/Raiz_quadrada";
+Blockly.Msg.MATH_SINGLE_OP_ABSOLUTE = "absoluto";
+Blockly.Msg.MATH_SINGLE_OP_ROOT = "raiz quadrada";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ABS = "Retorna o valor absoluto de um número.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_EXP = "Retorna o número e elevado à potência de um número.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LN = "Retorna o logaritmo natural de um número.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LOG10 = "Retorna o logaritmo em base 10 de um número.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_NEG = "Retorna o oposto de um número.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_POW10 = "Retorna 10 elevado à potência de um número.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ROOT = "Retorna a raiz quadrada de um número.";
+Blockly.Msg.MATH_SUBTRACTION_SYMBOL = "-"; // untranslated
+Blockly.Msg.MATH_TRIG_ACOS = "acos"; // untranslated
+Blockly.Msg.MATH_TRIG_ASIN = "asin"; // untranslated
+Blockly.Msg.MATH_TRIG_ATAN = "atan"; // untranslated
+Blockly.Msg.MATH_TRIG_COS = "cos"; // untranslated
+Blockly.Msg.MATH_TRIG_HELPURL = "https://pt.wikipedia.org/wiki/Fun%C3%A7%C3%A3o_trigonom%C3%A9trica";
+Blockly.Msg.MATH_TRIG_SIN = "sin"; // untranslated
+Blockly.Msg.MATH_TRIG_TAN = "tan"; // untranslated
+Blockly.Msg.MATH_TRIG_TOOLTIP_ACOS = "Retorna o arco cosseno de um número.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ASIN = "Retorna o arco seno de um número.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ATAN = "Retorna o arco tangente de um número.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_COS = "Retorna o cosseno de um grau (não radiano).";
+Blockly.Msg.MATH_TRIG_TOOLTIP_SIN = "Retorna o seno de um grau (não radiano).";
+Blockly.Msg.MATH_TRIG_TOOLTIP_TAN = "Retorna a tangente de um grau (não radiano).";
+Blockly.Msg.NEW_VARIABLE = "Nova variável...";
+Blockly.Msg.NEW_VARIABLE_TITLE = "Nome da nova variável:";
+Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; // untranslated
+Blockly.Msg.PROCEDURES_ALLOW_STATEMENTS = "permitir declarações";
+Blockly.Msg.PROCEDURES_BEFORE_PARAMS = "com:";
+Blockly.Msg.PROCEDURES_CALLNORETURN_HELPURL = "https://pt.wikipedia.org/wiki/Sub-rotina";
+Blockly.Msg.PROCEDURES_CALLNORETURN_TOOLTIP = "Executa a função definida pelo usuário \"%1\".";
+Blockly.Msg.PROCEDURES_CALLRETURN_HELPURL = "https://pt.wikipedia.org/wiki/Sub-rotina";
+Blockly.Msg.PROCEDURES_CALLRETURN_TOOLTIP = "Executa a função definida pelo usuário \"%1\" e usa seu retorno.";
+Blockly.Msg.PROCEDURES_CALL_BEFORE_PARAMS = "com:";
+Blockly.Msg.PROCEDURES_CREATE_DO = "Criar \"%1\"";
+Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT = "Descreva esta função...";
+Blockly.Msg.PROCEDURES_DEFNORETURN_DO = ""; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE = "faça algo";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE = "para";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TOOLTIP = "Cria uma função que não tem retorno.";
+Blockly.Msg.PROCEDURES_DEFRETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_DEFRETURN_RETURN = "retorna";
+Blockly.Msg.PROCEDURES_DEFRETURN_TOOLTIP = "Cria uma função que possui um valor de retorno.";
+Blockly.Msg.PROCEDURES_DEF_DUPLICATE_WARNING = "Atenção: Esta função tem parâmetros duplicados.";
+Blockly.Msg.PROCEDURES_HIGHLIGHT_DEF = "Destacar definição da função";
+Blockly.Msg.PROCEDURES_IFRETURN_HELPURL = "http://c2.com/cgi/wiki?GuardClause";
+Blockly.Msg.PROCEDURES_IFRETURN_TOOLTIP = "Se um valor é verdadeiro, então retorna um valor.";
+Blockly.Msg.PROCEDURES_IFRETURN_WARNING = "Atenção: Este bloco só pode ser utilizado dentro da definição de uma função.";
+Blockly.Msg.PROCEDURES_MUTATORARG_TITLE = "nome da entrada:";
+Blockly.Msg.PROCEDURES_MUTATORARG_TOOLTIP = "Adiciona uma entrada para esta função";
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TITLE = "entradas";
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TOOLTIP = "Adiciona, remove, ou reordena as entradas para esta função.";
+Blockly.Msg.REDO = "Refazer";
+Blockly.Msg.REMOVE_COMMENT = "Remover comentário";
+Blockly.Msg.RENAME_VARIABLE = "Renomear variável...";
+Blockly.Msg.RENAME_VARIABLE_TITLE = "Renomear todas as variáveis '%1' para:";
+Blockly.Msg.TEXT_APPEND_APPENDTEXT = "acrescentar texto";
+Blockly.Msg.TEXT_APPEND_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_APPEND_TO = "para";
+Blockly.Msg.TEXT_APPEND_TOOLTIP = "Acrescentar um pedaço de texto à variável \"%1\".";
+Blockly.Msg.TEXT_CHANGECASE_HELPURL = "https://github.com/google/blockly/wiki/Text#adjusting-text-case"; // untranslated
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_LOWERCASE = "para minúsculas";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_TITLECASE = "para Nomes Próprios";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_UPPERCASE = "para MAIÚSCULAS";
+Blockly.Msg.TEXT_CHANGECASE_TOOLTIP = "Retorna uma cópia do texto em um formato diferente.";
+Blockly.Msg.TEXT_CHARAT_FIRST = "obter primeira letra";
+Blockly.Msg.TEXT_CHARAT_FROM_END = "obter letra # a partir do final";
+Blockly.Msg.TEXT_CHARAT_FROM_START = "obter letra nº";
+Blockly.Msg.TEXT_CHARAT_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-text"; // untranslated
+Blockly.Msg.TEXT_CHARAT_INPUT_INTEXT = "no texto";
+Blockly.Msg.TEXT_CHARAT_LAST = "obter última letra";
+Blockly.Msg.TEXT_CHARAT_RANDOM = "obter letra aleatória";
+Blockly.Msg.TEXT_CHARAT_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_CHARAT_TOOLTIP = "Retorna a letra na posição especificada.";
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TOOLTIP = "Acrescentar um item ao texto.";
+Blockly.Msg.TEXT_CREATE_JOIN_TITLE_JOIN = "unir";
+Blockly.Msg.TEXT_CREATE_JOIN_TOOLTIP = "Acrescenta, remove ou reordena seções para reconfigurar este bloco de texto.";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_END = "até letra nº a partir do final";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_START = "até letra nº";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_LAST = "até última letra";
+Blockly.Msg.TEXT_GET_SUBSTRING_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_INPUT_IN_TEXT = "no texto";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FIRST = "obter trecho de primeira letra";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_END = "obter trecho de letra nº a partir do final";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_START = "obter trecho de letra nº";
+Blockly.Msg.TEXT_GET_SUBSTRING_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_TOOLTIP = "Retorna o trecho de texto especificado.";
+Blockly.Msg.TEXT_INDEXOF_HELPURL = "https://github.com/google/blockly/wiki/Text#finding-text"; // untranslated
+Blockly.Msg.TEXT_INDEXOF_INPUT_INTEXT = "no texto";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_FIRST = "encontre a primeira ocorrência do item";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_LAST = "encontre a última ocorrência do texto";
+Blockly.Msg.TEXT_INDEXOF_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_INDEXOF_TOOLTIP = "Retorna a posição da primeira/última ocorrência do primeiro texto no segundo texto. Retorna %1 se o texto não for encontrado.";
+Blockly.Msg.TEXT_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Text#checking-for-empty-text"; // untranslated
+Blockly.Msg.TEXT_ISEMPTY_TITLE = "%1 é vazio";
+Blockly.Msg.TEXT_ISEMPTY_TOOLTIP = "Retorna verdadeiro se o texto fornecido for vazio.";
+Blockly.Msg.TEXT_JOIN_HELPURL = "https://github.com/google/blockly/wiki/Text#text-creation"; // untranslated
+Blockly.Msg.TEXT_JOIN_TITLE_CREATEWITH = "criar texto com";
+Blockly.Msg.TEXT_JOIN_TOOLTIP = "Criar um pedaço de texto juntando qualquer número de itens.";
+Blockly.Msg.TEXT_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_LENGTH_TITLE = "tamanho de %1";
+Blockly.Msg.TEXT_LENGTH_TOOLTIP = "Retorna o número de letras (incluindo espaços) no texto fornecido.";
+Blockly.Msg.TEXT_PRINT_HELPURL = "https://github.com/google/blockly/wiki/Text#printing-text"; // untranslated
+Blockly.Msg.TEXT_PRINT_TITLE = "imprime %1";
+Blockly.Msg.TEXT_PRINT_TOOLTIP = "Imprime o texto, número ou valor especificado.";
+Blockly.Msg.TEXT_PROMPT_HELPURL = "https://github.com/google/blockly/wiki/Text#getting-input-from-the-user"; // untranslated
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_NUMBER = "Pede ao usuário um número.";
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_TEXT = "Pede ao usuário um texto.";
+Blockly.Msg.TEXT_PROMPT_TYPE_NUMBER = "Pede um número com uma mensagem";
+Blockly.Msg.TEXT_PROMPT_TYPE_TEXT = "Pede um texto com uma mensagem";
+Blockly.Msg.TEXT_TEXT_HELPURL = "https://pt.wikipedia.org/wiki/Cadeia_de_caracteres";
+Blockly.Msg.TEXT_TEXT_TOOLTIP = "Uma letra, palavra ou linha de texto.";
+Blockly.Msg.TEXT_TRIM_HELPURL = "https://github.com/google/blockly/wiki/Text#trimming-removing-spaces"; // untranslated
+Blockly.Msg.TEXT_TRIM_OPERATOR_BOTH = "remover espaços de ambos os lados de";
+Blockly.Msg.TEXT_TRIM_OPERATOR_LEFT = "remover espaços à esquerda de";
+Blockly.Msg.TEXT_TRIM_OPERATOR_RIGHT = "remover espaços à direita de";
+Blockly.Msg.TEXT_TRIM_TOOLTIP = "Retorna uma cópia do texto com os espaços removidos de uma ou ambas extremidades.";
+Blockly.Msg.TODAY = "Hoje";
+Blockly.Msg.UNDO = "Desfazer";
+Blockly.Msg.VARIABLES_DEFAULT_NAME = "item";
+Blockly.Msg.VARIABLES_GET_CREATE_SET = "Criar \"definir %1\"";
+Blockly.Msg.VARIABLES_GET_HELPURL = "https://github.com/google/blockly/wiki/Variables#get"; // untranslated
+Blockly.Msg.VARIABLES_GET_TOOLTIP = "Retorna o valor desta variável.";
+Blockly.Msg.VARIABLES_SET = "definir %1 para %2";
+Blockly.Msg.VARIABLES_SET_CREATE_GET = "Criar \"obter %1\"";
+Blockly.Msg.VARIABLES_SET_HELPURL = "https://github.com/google/blockly/wiki/Variables#set"; // untranslated
+Blockly.Msg.VARIABLES_SET_TOOLTIP = "Define esta variável para o valor da entrada.";
+Blockly.Msg.VARIABLE_ALREADY_EXISTS = "A variable named '%1' already exists."; // untranslated
+Blockly.Msg.PROCEDURES_DEFRETURN_TITLE = Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE;
+Blockly.Msg.CONTROLS_IF_IF_TITLE_IF = Blockly.Msg.CONTROLS_IF_MSG_IF;
+Blockly.Msg.CONTROLS_WHILEUNTIL_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_MSG_THEN = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_ELSE_TITLE_ELSE = Blockly.Msg.CONTROLS_IF_MSG_ELSE;
+Blockly.Msg.PROCEDURES_DEFRETURN_PROCEDURE = Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE;
+Blockly.Msg.LISTS_GET_SUBLIST_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.LISTS_GET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.PROCEDURES_DEFRETURN_DO = Blockly.Msg.PROCEDURES_DEFNORETURN_DO;
+Blockly.Msg.CONTROLS_IF_ELSEIF_TITLE_ELSEIF = Blockly.Msg.CONTROLS_IF_MSG_ELSEIF;
+Blockly.Msg.LISTS_GET_INDEX_HELPURL = Blockly.Msg.LISTS_INDEX_OF_HELPURL;
+Blockly.Msg.CONTROLS_FOREACH_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_SET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TITLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_APPEND_VARIABLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.LISTS_INDEX_OF_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.PROCEDURES_DEFRETURN_COMMENT = Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT; \ No newline at end of file
diff --git a/blockly/msg/js/pt.js b/blockly/msg/js/pt.js
new file mode 100644
index 0000000..3242d85
--- /dev/null
+++ b/blockly/msg/js/pt.js
@@ -0,0 +1,391 @@
+// This file was automatically generated. Do not modify.
+
+'use strict';
+
+goog.provide('Blockly.Msg.pt');
+
+goog.require('Blockly.Msg');
+
+Blockly.Msg.ADD_COMMENT = "Adicionar Comentário";
+Blockly.Msg.CHANGE_VALUE_TITLE = "Alterar valor:";
+Blockly.Msg.CLEAN_UP = "Limpar os blocos";
+Blockly.Msg.COLLAPSE_ALL = "Recolher Blocos";
+Blockly.Msg.COLLAPSE_BLOCK = "Colapsar Bloco";
+Blockly.Msg.COLOUR_BLEND_COLOUR1 = "cor 1";
+Blockly.Msg.COLOUR_BLEND_COLOUR2 = "cor 2";
+Blockly.Msg.COLOUR_BLEND_HELPURL = "http://meyerweb.com/eric/tools/color-blend/";
+Blockly.Msg.COLOUR_BLEND_RATIO = "proporção";
+Blockly.Msg.COLOUR_BLEND_TITLE = "misturar";
+Blockly.Msg.COLOUR_BLEND_TOOLTIP = "Mistura duas cores dada uma proporção (0.0 - 1.0).";
+Blockly.Msg.COLOUR_PICKER_HELPURL = "http://pt.wikipedia.org/wiki/Cor";
+Blockly.Msg.COLOUR_PICKER_TOOLTIP = "Escolhe uma cor da paleta de cores.";
+Blockly.Msg.COLOUR_RANDOM_HELPURL = "http://randomcolour.com"; // untranslated
+Blockly.Msg.COLOUR_RANDOM_TITLE = "cor aleatória";
+Blockly.Msg.COLOUR_RANDOM_TOOLTIP = "Escolher cor de forma aleatória.";
+Blockly.Msg.COLOUR_RGB_BLUE = "azul";
+Blockly.Msg.COLOUR_RGB_GREEN = "verde";
+Blockly.Msg.COLOUR_RGB_HELPURL = "http://www.december.com/html/spec/colorper.html";
+Blockly.Msg.COLOUR_RGB_RED = "vermelho";
+Blockly.Msg.COLOUR_RGB_TITLE = "pinte com";
+Blockly.Msg.COLOUR_RGB_TOOLTIP = "Cria uma cor de acordo com a quantidade especificada de vermelho, verde e azul. Todos os valores devem estar entre 0 e 100.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_HELPURL = "https://github.com/google/blockly/wiki/Loops#loop-termination-blocks"; // untranslated
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK = "sair do ciclo";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE = "continuar com a próxima iteração do ciclo";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK = "Sair do ciclo que está contido.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE = "Ignora o resto deste ciclo e continua na próxima iteração.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_WARNING = "Atenção: Este bloco só pode ser usado dentro de um ciclo.";
+Blockly.Msg.CONTROLS_FOREACH_HELPURL = "https://github.com/google/blockly/wiki/Loops#for-each"; // untranslated
+Blockly.Msg.CONTROLS_FOREACH_TITLE = "para cada item %1 na lista %2";
+Blockly.Msg.CONTROLS_FOREACH_TOOLTIP = "Para cada item numa lista, define a variável \"%1\" para o item e então faz algumas instruções.";
+Blockly.Msg.CONTROLS_FOR_HELPURL = "https://github.com/google/blockly/wiki/Loops#count-with"; // untranslated
+Blockly.Msg.CONTROLS_FOR_TITLE = "contar com %1 de %2 até %3 de %3 em %4";
+Blockly.Msg.CONTROLS_FOR_TOOLTIP = "Faz com que a variável \"%1\" assuma os valores desde o número inicial até ao número final, contando de acordo com o intervalo especificado e executa os blocos especificados.";
+Blockly.Msg.CONTROLS_IF_ELSEIF_TOOLTIP = "Acrescente uma condição ao bloco se.";
+Blockly.Msg.CONTROLS_IF_ELSE_TOOLTIP = "Acrescente uma condição de excepação final para o bloco se.";
+Blockly.Msg.CONTROLS_IF_HELPURL = "https://github.com/google/blockly/wiki/IfElse"; // untranslated
+Blockly.Msg.CONTROLS_IF_IF_TOOLTIP = "Acrescente, remova ou reordene secções para reconfigurar este bloco se.";
+Blockly.Msg.CONTROLS_IF_MSG_ELSE = "senão";
+Blockly.Msg.CONTROLS_IF_MSG_ELSEIF = "senão se";
+Blockly.Msg.CONTROLS_IF_MSG_IF = "se";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_1 = "Se um valor é verdadeiro, então realize alguns passos.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_2 = "Se um valor é verdadeiro, então realize o primeiro bloco de instruções. Senão, realize o segundo bloco de instruções";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_3 = "Se o primeiro valor é verdadeiro, então realize o primeiro bloco de instruções. Senão, se o segundo valor é verdadeiro, realize o segundo bloco de instruções.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_4 = "Se o primeiro valor é verdadeiro, então realize o primeiro bloco de instruções. Senão, se o segundo valor é verdadeiro, realize o segundo bloco de instruções. Se nenhum dos blocos for verdadeiro, realize o último bloco de instruções.";
+Blockly.Msg.CONTROLS_REPEAT_HELPURL = "http://pt.wikipedia.org/wiki/Estrutura_de_repeti%C3%A7%C3%A3o#Repeti.C3.A7.C3.A3o_com_vari.C3.A1vel_de_controle";
+Blockly.Msg.CONTROLS_REPEAT_INPUT_DO = "faça";
+Blockly.Msg.CONTROLS_REPEAT_TITLE = "repita %1 vez";
+Blockly.Msg.CONTROLS_REPEAT_TOOLTIP = "Faça algumas instruções várias vezes.";
+Blockly.Msg.CONTROLS_WHILEUNTIL_HELPURL = "https://github.com/google/blockly/wiki/Loops#repeat"; // untranslated
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "repita até";
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "repita enquanto";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "Enquanto um valor for falso, então faça algumas instruções.";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "Enquanto um valor for verdadeiro, então faça algumas instruções.";
+Blockly.Msg.DELETE_ALL_BLOCKS = "Apagar todos os %1 blocos?";
+Blockly.Msg.DELETE_BLOCK = "Remover Bloco";
+Blockly.Msg.DELETE_VARIABLE = "Delete the '%1' variable"; // untranslated
+Blockly.Msg.DELETE_VARIABLE_CONFIRMATION = "Delete %1 uses of the '%2' variable?"; // untranslated
+Blockly.Msg.DELETE_X_BLOCKS = "Remover %1 Blocos";
+Blockly.Msg.DISABLE_BLOCK = "Desabilitar Bloco";
+Blockly.Msg.DUPLICATE_BLOCK = "Duplicar";
+Blockly.Msg.ENABLE_BLOCK = "Habilitar Bloco";
+Blockly.Msg.EXPAND_ALL = "Expandir Blocos";
+Blockly.Msg.EXPAND_BLOCK = "Expandir Bloco";
+Blockly.Msg.EXTERNAL_INPUTS = "Entradas externas";
+Blockly.Msg.HELP = "Ajuda";
+Blockly.Msg.INLINE_INPUTS = "Entradas Internas";
+Blockly.Msg.LISTS_CREATE_EMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-empty-list";
+Blockly.Msg.LISTS_CREATE_EMPTY_TITLE = "criar lista vazia";
+Blockly.Msg.LISTS_CREATE_EMPTY_TOOLTIP = "Retorna uma lista, de tamanho 0, contendo nenhum registo";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TITLE_ADD = "lista";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TOOLTIP = "Acrescente, remova ou reordene as seções para reconfigurar este bloco lista.";
+Blockly.Msg.LISTS_CREATE_WITH_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
+Blockly.Msg.LISTS_CREATE_WITH_INPUT_WITH = "criar lista com";
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TOOLTIP = "Acrescenta um item à lista.";
+Blockly.Msg.LISTS_CREATE_WITH_TOOLTIP = "Cria uma lista com qualquer número de itens.";
+Blockly.Msg.LISTS_GET_INDEX_FIRST = "primeiro";
+Blockly.Msg.LISTS_GET_INDEX_FROM_END = "# a partir do final";
+Blockly.Msg.LISTS_GET_INDEX_FROM_START = "#";
+Blockly.Msg.LISTS_GET_INDEX_GET = "obter";
+Blockly.Msg.LISTS_GET_INDEX_GET_REMOVE = "obter e remover";
+Blockly.Msg.LISTS_GET_INDEX_LAST = "último";
+Blockly.Msg.LISTS_GET_INDEX_RANDOM = "aleatório";
+Blockly.Msg.LISTS_GET_INDEX_REMOVE = "remover";
+Blockly.Msg.LISTS_GET_INDEX_TAIL = ""; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FIRST = "Retorna o primeiro item de uma lista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FROM = "Retorna o item na posição especificada da lista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_LAST = "Retorna o último item de uma lista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_RANDOM = "Retorna um item aleatório de uma lista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST = "Remove e retorna o primeiro item de uma lista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM = "Remove e retorna o item na posição especificada de uma lista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST = "Remove e retorna o último item de uma lista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM = "Remove e retorna um item aleatório de uma lista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST = "Remove o primeiro item de uma lista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM = "Remove o item de uma posição especifica da lista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST = "Remove o último item de uma lista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM = "Remove um item aleatório de uma lista.";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_END = "até #, a partir do final";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_START = "até #";
+Blockly.Msg.LISTS_GET_SUBLIST_END_LAST = "para o último";
+Blockly.Msg.LISTS_GET_SUBLIST_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-a-sublist"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_START_FIRST = "obtem sublista da primeira lista";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_END = "obtem sublista de # a partir do final";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_START = "obtem sublista de #";
+Blockly.Msg.LISTS_GET_SUBLIST_TAIL = ""; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_TOOLTIP = "Cria uma cópia da porção especificada de uma lista.";
+Blockly.Msg.LISTS_INDEX_FROM_END_TOOLTIP = "%1 é o último item.";
+Blockly.Msg.LISTS_INDEX_FROM_START_TOOLTIP = "%1 é o primeiro item.";
+Blockly.Msg.LISTS_INDEX_OF_FIRST = "encontre a primeira ocorrência do item";
+Blockly.Msg.LISTS_INDEX_OF_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-items-from-a-list"; // untranslated
+Blockly.Msg.LISTS_INDEX_OF_LAST = "encontre a última ocorrência do item";
+Blockly.Msg.LISTS_INDEX_OF_TOOLTIP = "Retorna a posição da primeira/última ocorrência do item na lista. Retorna %1 se o item não for encontrado.";
+Blockly.Msg.LISTS_INLIST = "na lista";
+Blockly.Msg.LISTS_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#is-empty"; // untranslated
+Blockly.Msg.LISTS_ISEMPTY_TITLE = "%1 está vazia";
+Blockly.Msg.LISTS_ISEMPTY_TOOLTIP = "Retona verdadeiro se a lista estiver vazia.";
+Blockly.Msg.LISTS_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Lists#length-of"; // untranslated
+Blockly.Msg.LISTS_LENGTH_TITLE = "tamanho de %1";
+Blockly.Msg.LISTS_LENGTH_TOOLTIP = "Retorna o tamanho de uma lista.";
+Blockly.Msg.LISTS_REPEAT_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
+Blockly.Msg.LISTS_REPEAT_TITLE = "criar lista com o item %1 repetido %2 vezes";
+Blockly.Msg.LISTS_REPEAT_TOOLTIP = "Cria uma lista constituída por um dado valor repetido o número de vezes especificado.";
+Blockly.Msg.LISTS_SET_INDEX_HELPURL = "https://github.com/google/blockly/wiki/Lists#in-list--set"; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_INPUT_TO = "como";
+Blockly.Msg.LISTS_SET_INDEX_INSERT = "inserir em";
+Blockly.Msg.LISTS_SET_INDEX_SET = "definir";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST = "Insere o item no início da lista.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FROM = "Insere o item numa posição especificada numa lista.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_LAST = "Insere o item no final da lista.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM = "Insere o item numa posição aleatória de uma lista.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FIRST = "Define o primeiro item de uma lista.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FROM = "Define o item na posição especificada de uma lista.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_LAST = "Define o último item de uma lista.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_RANDOM = "Define um item aleatório de uma lista.";
+Blockly.Msg.LISTS_SORT_HELPURL = "https://github.com/google/blockly/wiki/Lists#sorting-a-list"; // untranslated
+Blockly.Msg.LISTS_SORT_ORDER_ASCENDING = "ascending"; // untranslated
+Blockly.Msg.LISTS_SORT_ORDER_DESCENDING = "descending"; // untranslated
+Blockly.Msg.LISTS_SORT_TITLE = "sort %1 %2 %3"; // untranslated
+Blockly.Msg.LISTS_SORT_TOOLTIP = "Sort a copy of a list."; // untranslated
+Blockly.Msg.LISTS_SORT_TYPE_IGNORECASE = "alphabetic, ignore case"; // untranslated
+Blockly.Msg.LISTS_SORT_TYPE_NUMERIC = "numeric"; // untranslated
+Blockly.Msg.LISTS_SORT_TYPE_TEXT = "alphabetic"; // untranslated
+Blockly.Msg.LISTS_SPLIT_HELPURL = "https://github.com/google/blockly/wiki/Lists#splitting-strings-and-joining-lists"; // untranslated
+Blockly.Msg.LISTS_SPLIT_LIST_FROM_TEXT = "fazer lista a partir de texto";
+Blockly.Msg.LISTS_SPLIT_TEXT_FROM_LIST = "fazer texto a partir da lista";
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_JOIN = "Juntar uma lista de textos num único texto, separado por um delimitador.";
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_SPLIT = "Dividir o texto numa lista de textos, separando-o em cada delimitador.";
+Blockly.Msg.LISTS_SPLIT_WITH_DELIMITER = "com delimitador";
+Blockly.Msg.LOGIC_BOOLEAN_FALSE = "falso";
+Blockly.Msg.LOGIC_BOOLEAN_HELPURL = "https://github.com/google/blockly/wiki/Logic#values"; // untranslated
+Blockly.Msg.LOGIC_BOOLEAN_TOOLTIP = "Retorna verdadeiro ou falso.";
+Blockly.Msg.LOGIC_BOOLEAN_TRUE = "verdadeiro";
+Blockly.Msg.LOGIC_COMPARE_HELPURL = "http://pt.wikipedia.org/wiki/Inequa%C3%A7%C3%A3o";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_EQ = "Retorna verdadeiro se ambas as entradas forem iguais entre si.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GT = "Retorna verdadeiro se a primeira entrada for maior que a segunda entrada.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GTE = "Retorna verdadeiro se a primeira entrada for maior ou igual à segunda entrada.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LT = "Retorna verdadeiro se a primeira entrada for menor que a segunda entrada.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LTE = "Retorna verdadeiro se a primeira entrada for menor ou igual à segunda entrada.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_NEQ = "Retorna verdadeiro se ambas as entradas forem diferentes entre si.";
+Blockly.Msg.LOGIC_NEGATE_HELPURL = "https://github.com/google/blockly/wiki/Logic#not"; // untranslated
+Blockly.Msg.LOGIC_NEGATE_TITLE = "não %1";
+Blockly.Msg.LOGIC_NEGATE_TOOLTIP = "Retorna verdadeiro se a entrada for falsa. Retorna falso se a entrada for verdadeira.";
+Blockly.Msg.LOGIC_NULL = "nulo";
+Blockly.Msg.LOGIC_NULL_HELPURL = "http://en.wikipedia.org/wiki/Nullable_type";
+Blockly.Msg.LOGIC_NULL_TOOLTIP = "Retorna nulo.";
+Blockly.Msg.LOGIC_OPERATION_AND = "e";
+Blockly.Msg.LOGIC_OPERATION_HELPURL = "https://github.com/google/blockly/wiki/Logic#logical-operations"; // untranslated
+Blockly.Msg.LOGIC_OPERATION_OR = "ou";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_AND = "Retorna verdadeiro se ambas as entradas forem verdadeiras.";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_OR = "Retorna verdadeiro se pelo menos uma das estradas for verdadeira.";
+Blockly.Msg.LOGIC_TERNARY_CONDITION = "teste";
+Blockly.Msg.LOGIC_TERNARY_HELPURL = "http://en.wikipedia.org/wiki/%3F:";
+Blockly.Msg.LOGIC_TERNARY_IF_FALSE = "se falso";
+Blockly.Msg.LOGIC_TERNARY_IF_TRUE = "se verdadeiro";
+Blockly.Msg.LOGIC_TERNARY_TOOLTIP = "Avalia a condição em \"teste\". Se a condição for verdadeira retorna o valor \"se verdadeiro\", senão retorna o valor \"se falso\".";
+Blockly.Msg.MATH_ADDITION_SYMBOL = "+";
+Blockly.Msg.MATH_ARITHMETIC_HELPURL = "http://pt.wikipedia.org/wiki/Aritm%C3%A9tica";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_ADD = "Retorna a soma de dois números.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE = "Retorna o quociente da divisão de dois números.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MINUS = "Retorna a diferença de dois números.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MULTIPLY = "Retorna o produto de dois números.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_POWER = "Retorna o primeiro número elevado à potência do segundo número.";
+Blockly.Msg.MATH_CHANGE_HELPURL = "http://pt.wikipedia.org/wiki/Adi%C3%A7%C3%A3o";
+Blockly.Msg.MATH_CHANGE_TITLE = "alterar %1 por %2";
+Blockly.Msg.MATH_CHANGE_TOOLTIP = "Soma um número à variável \"%1\".";
+Blockly.Msg.MATH_CONSTANT_HELPURL = "http://pt.wikipedia.org/wiki/Anexo:Lista_de_constantes_matem%C3%A1ticas";
+Blockly.Msg.MATH_CONSTANT_TOOLTIP = "Retorna uma das constantes comuns: π (3.141…), e (2.718…), φ (1.618…), sqrt(2) (1.414…), sqrt(½) (0.707…), ou ∞ (infinito).";
+Blockly.Msg.MATH_CONSTRAIN_HELPURL = "https://en.wikipedia.org/wiki/Clamping_%28graphics%29"; // untranslated
+Blockly.Msg.MATH_CONSTRAIN_TITLE = "restringe %1 inferior %2 superior %3";
+Blockly.Msg.MATH_CONSTRAIN_TOOLTIP = "Restringe um número entre os limites especificados (inclusive).";
+Blockly.Msg.MATH_DIVISION_SYMBOL = "÷";
+Blockly.Msg.MATH_IS_DIVISIBLE_BY = "é divisível por";
+Blockly.Msg.MATH_IS_EVEN = "é par";
+Blockly.Msg.MATH_IS_NEGATIVE = "é negativo";
+Blockly.Msg.MATH_IS_ODD = "é impar";
+Blockly.Msg.MATH_IS_POSITIVE = "é positivo";
+Blockly.Msg.MATH_IS_PRIME = "é primo";
+Blockly.Msg.MATH_IS_TOOLTIP = "Verifica se um número é par, impar, primo, inteiro, positivo, negativo, ou se é divisível por outro número. Retorna verdadeiro ou falso.";
+Blockly.Msg.MATH_IS_WHOLE = "é inteiro";
+Blockly.Msg.MATH_MODULO_HELPURL = "http://pt.wikipedia.org/wiki/Opera%C3%A7%C3%A3o_m%C3%B3dulo";
+Blockly.Msg.MATH_MODULO_TITLE = "resto da divisão de %1 ÷ %2";
+Blockly.Msg.MATH_MODULO_TOOLTIP = "Retorna o resto da divisão de dois números.";
+Blockly.Msg.MATH_MULTIPLICATION_SYMBOL = "×";
+Blockly.Msg.MATH_NUMBER_HELPURL = "http://pt.wikipedia.org/wiki/N%C3%BAmero";
+Blockly.Msg.MATH_NUMBER_TOOLTIP = "Um número.";
+Blockly.Msg.MATH_ONLIST_HELPURL = ""; // untranslated
+Blockly.Msg.MATH_ONLIST_OPERATOR_AVERAGE = "média de uma lista";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MAX = "maior de uma lista";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MEDIAN = "mediana de uma lista";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MIN = "menor de uma lista";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MODE = "moda de uma lista";
+Blockly.Msg.MATH_ONLIST_OPERATOR_RANDOM = "item aleatório de uma lista";
+Blockly.Msg.MATH_ONLIST_OPERATOR_STD_DEV = "desvio padrão de uma lista";
+Blockly.Msg.MATH_ONLIST_OPERATOR_SUM = "soma da lista";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_AVERAGE = "Retorna a média aritmética dos valores números da lista.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MAX = "Retorna o maior número da lista.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MEDIAN = "Retorna a mediana da lista.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MIN = "Retorna o menor número da lista.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MODE = "Retorna a lista de item(ns) mais comum(ns) da lista.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_RANDOM = "Retorna um elemento aleatório da lista.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_STD_DEV = "Retorna o desvio padrão dos números da lista.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_SUM = "Retorna a soma de todos os números da lista.";
+Blockly.Msg.MATH_POWER_SYMBOL = "^";
+Blockly.Msg.MATH_RANDOM_FLOAT_HELPURL = "http://pt.wikipedia.org/wiki/N%C3%BAmero_aleat%C3%B3rio";
+Blockly.Msg.MATH_RANDOM_FLOAT_TITLE_RANDOM = "fração aleatória";
+Blockly.Msg.MATH_RANDOM_FLOAT_TOOLTIP = "Insere uma fração aleatória entre 0.0 (inclusive) e 1.0 (exclusive).";
+Blockly.Msg.MATH_RANDOM_INT_HELPURL = "http://pt.wikipedia.org/wiki/N%C3%BAmero_aleat%C3%B3rio";
+Blockly.Msg.MATH_RANDOM_INT_TITLE = "inteiro aleatório entre %1 e %2";
+Blockly.Msg.MATH_RANDOM_INT_TOOLTIP = "Retorna um número inteiro entre os dois limites especificados, inclusive.";
+Blockly.Msg.MATH_ROUND_HELPURL = "http://pt.wikipedia.org/wiki/Arredondamento";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUND = "arredonda";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDDOWN = "arredonda para baixo";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDUP = "arredonda para cima";
+Blockly.Msg.MATH_ROUND_TOOLTIP = "Arredonda um número para cima ou para baixo.";
+Blockly.Msg.MATH_SINGLE_HELPURL = "http://pt.wikipedia.org/wiki/Raiz_quadrada";
+Blockly.Msg.MATH_SINGLE_OP_ABSOLUTE = "absoluto";
+Blockly.Msg.MATH_SINGLE_OP_ROOT = "raíz quadrada";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ABS = "Retorna o valor absoluto de um número.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_EXP = "Retorna o número e elevado à potência de um número.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LN = "Retorna o logarítmo natural de um número.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LOG10 = "Retorna o logarítmo em base 10 de um número.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_NEG = "Retorna o oposto de um número.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_POW10 = "Retorna 10 elevado à potência de um número.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ROOT = "Retorna a raiz quadrada de um número.";
+Blockly.Msg.MATH_SUBTRACTION_SYMBOL = "-";
+Blockly.Msg.MATH_TRIG_ACOS = "acos";
+Blockly.Msg.MATH_TRIG_ASIN = "asin";
+Blockly.Msg.MATH_TRIG_ATAN = "atan";
+Blockly.Msg.MATH_TRIG_COS = "cos";
+Blockly.Msg.MATH_TRIG_HELPURL = "http://pt.wikipedia.org/wiki/Fun%C3%A7%C3%A3o_trigonom%C3%A9trica";
+Blockly.Msg.MATH_TRIG_SIN = "sin";
+Blockly.Msg.MATH_TRIG_TAN = "tan";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ACOS = "Retorna o arco cosseno de um número.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ASIN = "Retorna o arco seno de um número.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ATAN = "Retorna o arco tangente de um número.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_COS = "Retorna o cosseno de um grau (não radiano).";
+Blockly.Msg.MATH_TRIG_TOOLTIP_SIN = "Retorna o seno de um grau (não radiano).";
+Blockly.Msg.MATH_TRIG_TOOLTIP_TAN = "Retorna a tangente de um grau (não radiano).";
+Blockly.Msg.NEW_VARIABLE = "Nova variável...";
+Blockly.Msg.NEW_VARIABLE_TITLE = "Nome da nova variável:";
+Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; // untranslated
+Blockly.Msg.PROCEDURES_ALLOW_STATEMENTS = "permitir declarações";
+Blockly.Msg.PROCEDURES_BEFORE_PARAMS = "com:";
+Blockly.Msg.PROCEDURES_CALLNORETURN_HELPURL = "http://pt.wikipedia.org/wiki/Sub-rotina";
+Blockly.Msg.PROCEDURES_CALLNORETURN_TOOLTIP = "Executa a função \"%1\".";
+Blockly.Msg.PROCEDURES_CALLRETURN_HELPURL = "http://pt.wikipedia.org/wiki/Sub-rotina";
+Blockly.Msg.PROCEDURES_CALLRETURN_TOOLTIP = "Executa a função \"%1\" e usa o seu retorno.";
+Blockly.Msg.PROCEDURES_CALL_BEFORE_PARAMS = "com:";
+Blockly.Msg.PROCEDURES_CREATE_DO = "Criar \"%1\"";
+Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT = "Descreva esta função...";
+Blockly.Msg.PROCEDURES_DEFNORETURN_DO = ""; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_HELPURL = "http://en.wikipedia.org/wiki/Procedure_%28computer_science%29";
+Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE = "faz algo";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE = "para";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TOOLTIP = "Cria uma função que não tem retorno.";
+Blockly.Msg.PROCEDURES_DEFRETURN_HELPURL = "http://en.wikipedia.org/wiki/Procedure_%28computer_science%29";
+Blockly.Msg.PROCEDURES_DEFRETURN_RETURN = "retorna";
+Blockly.Msg.PROCEDURES_DEFRETURN_TOOLTIP = "Cria uma função que possui um valor de retorno.";
+Blockly.Msg.PROCEDURES_DEF_DUPLICATE_WARNING = "Atenção: Esta função tem parâmetros duplicados.";
+Blockly.Msg.PROCEDURES_HIGHLIGHT_DEF = "Destacar definição da função";
+Blockly.Msg.PROCEDURES_IFRETURN_HELPURL = "http://c2.com/cgi/wiki?GuardClause"; // untranslated
+Blockly.Msg.PROCEDURES_IFRETURN_TOOLTIP = "se o valor é verdadeiro, então retorna um segundo valor.";
+Blockly.Msg.PROCEDURES_IFRETURN_WARNING = "Atenção: Este bloco só pode ser utilizado dentro da definição de uma função.";
+Blockly.Msg.PROCEDURES_MUTATORARG_TITLE = "nome da entrada:";
+Blockly.Msg.PROCEDURES_MUTATORARG_TOOLTIP = "Adicionar uma entrada para a função.";
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TITLE = "entradas";
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TOOLTIP = "Adicionar, remover ou reordenar as entradas para esta função.";
+Blockly.Msg.REDO = "Refazer";
+Blockly.Msg.REMOVE_COMMENT = "Remover Comentário";
+Blockly.Msg.RENAME_VARIABLE = "Renomear variável...";
+Blockly.Msg.RENAME_VARIABLE_TITLE = "Renomear todas as variáveis '%1' para:";
+Blockly.Msg.TEXT_APPEND_APPENDTEXT = "acrescentar texto";
+Blockly.Msg.TEXT_APPEND_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_APPEND_TO = "para";
+Blockly.Msg.TEXT_APPEND_TOOLTIP = "Acrescentar um pedaço de texto à variável \"%1\".";
+Blockly.Msg.TEXT_CHANGECASE_HELPURL = "https://github.com/google/blockly/wiki/Text#adjusting-text-case"; // untranslated
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_LOWERCASE = "para minúsculas";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_TITLECASE = "para Iniciais Maiúsculas";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_UPPERCASE = "para MAIÚSCULAS";
+Blockly.Msg.TEXT_CHANGECASE_TOOLTIP = "Retorna uma cópia do texto em formato diferente.";
+Blockly.Msg.TEXT_CHARAT_FIRST = "obter primeira letra";
+Blockly.Msg.TEXT_CHARAT_FROM_END = "obter letra nº a partir do final";
+Blockly.Msg.TEXT_CHARAT_FROM_START = "obter letra nº";
+Blockly.Msg.TEXT_CHARAT_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-text"; // untranslated
+Blockly.Msg.TEXT_CHARAT_INPUT_INTEXT = "no texto";
+Blockly.Msg.TEXT_CHARAT_LAST = "obter última letra";
+Blockly.Msg.TEXT_CHARAT_RANDOM = "obter letra aleatória";
+Blockly.Msg.TEXT_CHARAT_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_CHARAT_TOOLTIP = "Retorna a letra na posição especificada.";
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TOOLTIP = "Acrescentar um item ao texto.";
+Blockly.Msg.TEXT_CREATE_JOIN_TITLE_JOIN = "unir";
+Blockly.Msg.TEXT_CREATE_JOIN_TOOLTIP = "Acrescenta, remove ou reordena seções para reconfigurar este bloco de texto.";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_END = "até letra nº a partir do final";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_START = "até letra nº";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_LAST = "até última letra";
+Blockly.Msg.TEXT_GET_SUBSTRING_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_INPUT_IN_TEXT = "no texto";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FIRST = "obter subsequência a partir da primeira letra";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_END = "obter subsequência de tamanho # a partir do final";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_START = "obter subsequência de tamanho #";
+Blockly.Msg.TEXT_GET_SUBSTRING_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_TOOLTIP = "Retorna a parte especificada do texto.";
+Blockly.Msg.TEXT_INDEXOF_HELPURL = "https://github.com/google/blockly/wiki/Text#finding-text"; // untranslated
+Blockly.Msg.TEXT_INDEXOF_INPUT_INTEXT = "no texto";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_FIRST = "primeira ocorrência do texto";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_LAST = "última ocorrência do texto";
+Blockly.Msg.TEXT_INDEXOF_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_INDEXOF_TOOLTIP = "Retorna a posição da primeira/última ocorrência do primeiro texto no segundo texto. Retorna %1 se o texto não for encontrado.";
+Blockly.Msg.TEXT_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Text#checking-for-empty-text"; // untranslated
+Blockly.Msg.TEXT_ISEMPTY_TITLE = "%1 está vazio";
+Blockly.Msg.TEXT_ISEMPTY_TOOLTIP = "Retorna verdadeiro se o texto fornecido estiver vazio.";
+Blockly.Msg.TEXT_JOIN_HELPURL = "https://github.com/google/blockly/wiki/Text#text-creation"; // untranslated
+Blockly.Msg.TEXT_JOIN_TITLE_CREATEWITH = "criar texto com";
+Blockly.Msg.TEXT_JOIN_TOOLTIP = "Criar um pedaço de texto juntando qualquer número de itens.";
+Blockly.Msg.TEXT_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_LENGTH_TITLE = "tamanho de %1";
+Blockly.Msg.TEXT_LENGTH_TOOLTIP = "Devolve o número de letras (incluindo espaços) do texto fornecido.";
+Blockly.Msg.TEXT_PRINT_HELPURL = "https://github.com/google/blockly/wiki/Text#printing-text"; // untranslated
+Blockly.Msg.TEXT_PRINT_TITLE = "imprime %1";
+Blockly.Msg.TEXT_PRINT_TOOLTIP = "Imprime o texto, número ou outro valor especificado.";
+Blockly.Msg.TEXT_PROMPT_HELPURL = "https://github.com/google/blockly/wiki/Text#getting-input-from-the-user"; // untranslated
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_NUMBER = "Pede ao utilizador um número.";
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_TEXT = "Pede ao utilizador um texto.";
+Blockly.Msg.TEXT_PROMPT_TYPE_NUMBER = "pede um número com a mensagem";
+Blockly.Msg.TEXT_PROMPT_TYPE_TEXT = "Pede um texto com a mensagem";
+Blockly.Msg.TEXT_TEXT_HELPURL = "http://pt.wikipedia.org/wiki/Cadeia_de_caracteres";
+Blockly.Msg.TEXT_TEXT_TOOLTIP = "Uma letra, palavra ou linha de texto.";
+Blockly.Msg.TEXT_TRIM_HELPURL = "https://github.com/google/blockly/wiki/Text#trimming-removing-spaces"; // untranslated
+Blockly.Msg.TEXT_TRIM_OPERATOR_BOTH = "remover espaços de ambos os lados";
+Blockly.Msg.TEXT_TRIM_OPERATOR_LEFT = "remover espaços à esquerda de";
+Blockly.Msg.TEXT_TRIM_OPERATOR_RIGHT = "remover espaços à direita";
+Blockly.Msg.TEXT_TRIM_TOOLTIP = "Retorna uma cópia do texto com os espaços removidos de uma ou ambas as extremidades.";
+Blockly.Msg.TODAY = "Hoje";
+Blockly.Msg.UNDO = "Desfazer";
+Blockly.Msg.VARIABLES_DEFAULT_NAME = "item";
+Blockly.Msg.VARIABLES_GET_CREATE_SET = "Criar \"definir %1\"";
+Blockly.Msg.VARIABLES_GET_HELPURL = "https://github.com/google/blockly/wiki/Variables#get"; // untranslated
+Blockly.Msg.VARIABLES_GET_TOOLTIP = "Retorna o valor desta variável.";
+Blockly.Msg.VARIABLES_SET = "definir %1 para %2";
+Blockly.Msg.VARIABLES_SET_CREATE_GET = "Criar \"obter %1\"";
+Blockly.Msg.VARIABLES_SET_HELPURL = "https://github.com/google/blockly/wiki/Variables#set"; // untranslated
+Blockly.Msg.VARIABLES_SET_TOOLTIP = "Define esta variável para o valor inserido.";
+Blockly.Msg.VARIABLE_ALREADY_EXISTS = "A variable named '%1' already exists."; // untranslated
+Blockly.Msg.PROCEDURES_DEFRETURN_TITLE = Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE;
+Blockly.Msg.CONTROLS_IF_IF_TITLE_IF = Blockly.Msg.CONTROLS_IF_MSG_IF;
+Blockly.Msg.CONTROLS_WHILEUNTIL_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_MSG_THEN = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_ELSE_TITLE_ELSE = Blockly.Msg.CONTROLS_IF_MSG_ELSE;
+Blockly.Msg.PROCEDURES_DEFRETURN_PROCEDURE = Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE;
+Blockly.Msg.LISTS_GET_SUBLIST_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.LISTS_GET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.PROCEDURES_DEFRETURN_DO = Blockly.Msg.PROCEDURES_DEFNORETURN_DO;
+Blockly.Msg.CONTROLS_IF_ELSEIF_TITLE_ELSEIF = Blockly.Msg.CONTROLS_IF_MSG_ELSEIF;
+Blockly.Msg.LISTS_GET_INDEX_HELPURL = Blockly.Msg.LISTS_INDEX_OF_HELPURL;
+Blockly.Msg.CONTROLS_FOREACH_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_SET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TITLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_APPEND_VARIABLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.LISTS_INDEX_OF_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.PROCEDURES_DEFRETURN_COMMENT = Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT; \ No newline at end of file
diff --git a/blockly/msg/js/ro.js b/blockly/msg/js/ro.js
new file mode 100644
index 0000000..3626c8c
--- /dev/null
+++ b/blockly/msg/js/ro.js
@@ -0,0 +1,391 @@
+// This file was automatically generated. Do not modify.
+
+'use strict';
+
+goog.provide('Blockly.Msg.ro');
+
+goog.require('Blockly.Msg');
+
+Blockly.Msg.ADD_COMMENT = "Adaugă un comentariu";
+Blockly.Msg.CHANGE_VALUE_TITLE = "Schimbaţi valoarea:";
+Blockly.Msg.CLEAN_UP = "Clean up Blocks"; // untranslated
+Blockly.Msg.COLLAPSE_ALL = "Restrange blocurile";
+Blockly.Msg.COLLAPSE_BLOCK = "Restrange blocul";
+Blockly.Msg.COLOUR_BLEND_COLOUR1 = "culoare 1";
+Blockly.Msg.COLOUR_BLEND_COLOUR2 = "culoare 2";
+Blockly.Msg.COLOUR_BLEND_HELPURL = "http://meyerweb.com/eric/tools/color-blend/";
+Blockly.Msg.COLOUR_BLEND_RATIO = "Raport";
+Blockly.Msg.COLOUR_BLEND_TITLE = "amestec";
+Blockly.Msg.COLOUR_BLEND_TOOLTIP = "Amestecă două culori cu un raport dat (0.0 - 1.0).";
+Blockly.Msg.COLOUR_PICKER_HELPURL = "https://ro.wikipedia.org/wiki/Culoare";
+Blockly.Msg.COLOUR_PICKER_TOOLTIP = "Alege o culoare din paleta de culori.";
+Blockly.Msg.COLOUR_RANDOM_HELPURL = "http://randomcolour.com"; // untranslated
+Blockly.Msg.COLOUR_RANDOM_TITLE = "culoare aleatorie";
+Blockly.Msg.COLOUR_RANDOM_TOOLTIP = "Alege o culoare la întâmplare.";
+Blockly.Msg.COLOUR_RGB_BLUE = "albastru";
+Blockly.Msg.COLOUR_RGB_GREEN = "verde";
+Blockly.Msg.COLOUR_RGB_HELPURL = "http://www.december.com/html/spec/colorper.html";
+Blockly.Msg.COLOUR_RGB_RED = "roşu";
+Blockly.Msg.COLOUR_RGB_TITLE = "colorează cu";
+Blockly.Msg.COLOUR_RGB_TOOLTIP = "Creează o culoare cu suma specificată de roşu, verde şi albastru. Toate valorile trebuie să fie între 0 şi 100.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_HELPURL = "https://github.com/google/blockly/wiki/Loops#loop-termination-blocks"; // untranslated
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK = "ieşi din bucla";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE = "continuă cu următoarea iterație a buclei";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK = "Ieși din bucla care conţine.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE = "Sari peste restul aceastei bucle, şi continuă cu urmatoarea iteratie.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_WARNING = "Avertisment: Acest bloc pote fi utilizat numai în interiorul unei bucle.";
+Blockly.Msg.CONTROLS_FOREACH_HELPURL = "https://github.com/google/blockly/wiki/Loops#for-each"; // untranslated
+Blockly.Msg.CONTROLS_FOREACH_TITLE = "pentru fiecare element %1 în listă %2";
+Blockly.Msg.CONTROLS_FOREACH_TOOLTIP = "Pentru fiecare element din listă, setaţi variabila '%1' ca valoarea elementului, şi apoi faceţi unele declaraţii.";
+Blockly.Msg.CONTROLS_FOR_HELPURL = "https://github.com/google/blockly/wiki/Loops#count-with"; // untranslated
+Blockly.Msg.CONTROLS_FOR_TITLE = "numără cu %1 de la %2 la %3 prin %4";
+Blockly.Msg.CONTROLS_FOR_TOOLTIP = "Cu variablia \"%1\" ia o valoare din numărul început la numărul final, numara in intervalul specificat, apoi face blocurile specificate.";
+Blockly.Msg.CONTROLS_IF_ELSEIF_TOOLTIP = "Adăugaţi o condiţie in blocul if.";
+Blockly.Msg.CONTROLS_IF_ELSE_TOOLTIP = "Adauga o stare finala, cuprinde toata conditia din blocul if.";
+Blockly.Msg.CONTROLS_IF_HELPURL = "https://github.com/google/blockly/wiki/IfElse"; // untranslated
+Blockly.Msg.CONTROLS_IF_IF_TOOLTIP = "Adaugă, elimină sau reordonează secţiuni pentru a reconfigura acest bloc if.";
+Blockly.Msg.CONTROLS_IF_MSG_ELSE = "altfel";
+Blockly.Msg.CONTROLS_IF_MSG_ELSEIF = "altfel dacă";
+Blockly.Msg.CONTROLS_IF_MSG_IF = "dacă";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_1 = "Dacă o valoare este adevărată, atunci fa unele declaraţii.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_2 = "Dacă o valoare este adevărat, atunci face primul bloc de declaraţii. Altfel, face al doilea bloc de declaraţii.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_3 = "Dacă prima valoare este adevărat, atunci face primul bloc de declaraţii. Altfel, dacă a doua valoare este adevărat, face al doilea bloc de declaraţii.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_4 = "Dacă prima valoare este adevărat, atunci face primul bloc de declaraţii. Altfel, dacă a doua valoare este adevărat, face al doilea bloc de declaraţii. În cazul în care niciuna din valorilor nu este adevărat, face ultimul bloc de declaraţii.";
+Blockly.Msg.CONTROLS_REPEAT_HELPURL = "https://en.wikipedia.org/wiki/For_loop";
+Blockly.Msg.CONTROLS_REPEAT_INPUT_DO = "fă";
+Blockly.Msg.CONTROLS_REPEAT_TITLE = "repetă de %1 ori";
+Blockly.Msg.CONTROLS_REPEAT_TOOLTIP = "Face unele afirmaţii de mai multe ori.";
+Blockly.Msg.CONTROLS_WHILEUNTIL_HELPURL = "https://github.com/google/blockly/wiki/Loops#repeat"; // untranslated
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "Repetaţi până când";
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "repetă în timp ce";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "În timp ce o valoare este adevărat, atunci face unele declaraţii.";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "În timp ce o valoare este adevărat, atunci face unele declaraţii.";
+Blockly.Msg.DELETE_ALL_BLOCKS = "Ștergi toate cele %1 (de) blocuri?";
+Blockly.Msg.DELETE_BLOCK = "Șterge Bloc";
+Blockly.Msg.DELETE_VARIABLE = "Delete the '%1' variable"; // untranslated
+Blockly.Msg.DELETE_VARIABLE_CONFIRMATION = "Delete %1 uses of the '%2' variable?"; // untranslated
+Blockly.Msg.DELETE_X_BLOCKS = "Ștergeți %1 Blocuri";
+Blockly.Msg.DISABLE_BLOCK = "Dezactivaţi bloc";
+Blockly.Msg.DUPLICATE_BLOCK = "Duplicati";
+Blockly.Msg.ENABLE_BLOCK = "Permite bloc";
+Blockly.Msg.EXPAND_ALL = "Extinde blocuri";
+Blockly.Msg.EXPAND_BLOCK = "Extinde bloc";
+Blockly.Msg.EXTERNAL_INPUTS = "Intrări externe";
+Blockly.Msg.HELP = "Ajutor";
+Blockly.Msg.INLINE_INPUTS = "Intrări în linie";
+Blockly.Msg.LISTS_CREATE_EMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-empty-list";
+Blockly.Msg.LISTS_CREATE_EMPTY_TITLE = "creează listă goală";
+Blockly.Msg.LISTS_CREATE_EMPTY_TOOLTIP = "Returnează o listă, de lungime 0, care nu conţine înregistrări de date";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TITLE_ADD = "listă";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TOOLTIP = "Adaugă, elimină sau reordonează secţiuni ca să reconfiguraţi aceste blocuri de listă.";
+Blockly.Msg.LISTS_CREATE_WITH_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
+Blockly.Msg.LISTS_CREATE_WITH_INPUT_WITH = "creează listă cu";
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TOOLTIP = "Adăugaţi un element la listă.";
+Blockly.Msg.LISTS_CREATE_WITH_TOOLTIP = "Creaţi o listă cu orice număr de elemente.";
+Blockly.Msg.LISTS_GET_INDEX_FIRST = "primul";
+Blockly.Msg.LISTS_GET_INDEX_FROM_END = "# de la sfârșit";
+Blockly.Msg.LISTS_GET_INDEX_FROM_START = "#";
+Blockly.Msg.LISTS_GET_INDEX_GET = "obţine";
+Blockly.Msg.LISTS_GET_INDEX_GET_REMOVE = "obţine şi elimină";
+Blockly.Msg.LISTS_GET_INDEX_LAST = "ultimul";
+Blockly.Msg.LISTS_GET_INDEX_RANDOM = "aleator";
+Blockly.Msg.LISTS_GET_INDEX_REMOVE = "elimină";
+Blockly.Msg.LISTS_GET_INDEX_TAIL = ""; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FIRST = "Returnează primul element dintr-o listă.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FROM = "Returneaza elementul la poziţia specificată într-o listă.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_LAST = "Returnează ultimul element într-o listă.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_RANDOM = "Returneaza un element aleatoriu într-o listă.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST = "Elimină şi returnează primul element într-o listă.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM = "Elimină şi returneaza elementul la poziţia specificată într-o listă.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST = "Elimină şi returnează ultimul element într-o listă.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM = "Elimină şi returnează un element aleatoriu într-o listă.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST = "Elimină primul element într-o listă.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM = "Elimină elementul la poziţia specificată într-o listă.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST = "Elimină ultimul element într-o listă.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM = "Elimină un element aleatoriu într-o listă.";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_END = "la # de la sfarsit";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_START = "la #";
+Blockly.Msg.LISTS_GET_SUBLIST_END_LAST = "la ultima";
+Blockly.Msg.LISTS_GET_SUBLIST_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-a-sublist"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_START_FIRST = "obţine sub-lista de la primul";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_END = "obţine sub-lista de la # de la sfârşitul";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_START = "obţine sub-lista de la #";
+Blockly.Msg.LISTS_GET_SUBLIST_TAIL = ""; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_TOOLTIP = "Creează o copie a porţiunii specificate dintr-o listă.";
+Blockly.Msg.LISTS_INDEX_FROM_END_TOOLTIP = "%1 este ultimul element.";
+Blockly.Msg.LISTS_INDEX_FROM_START_TOOLTIP = "%1 este primul element.";
+Blockly.Msg.LISTS_INDEX_OF_FIRST = "Găseşte prima apariţie a elementului";
+Blockly.Msg.LISTS_INDEX_OF_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-items-from-a-list"; // untranslated
+Blockly.Msg.LISTS_INDEX_OF_LAST = "găseşte ultima apariţie a elementului";
+Blockly.Msg.LISTS_INDEX_OF_TOOLTIP = "Revine la indexul de la prima/ultima apariție a elementului din listă. Returnează %1 dacă elementul nu este găsit.";
+Blockly.Msg.LISTS_INLIST = "în listă";
+Blockly.Msg.LISTS_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#is-empty"; // untranslated
+Blockly.Msg.LISTS_ISEMPTY_TITLE = "%1 este gol";
+Blockly.Msg.LISTS_ISEMPTY_TOOLTIP = "Returnează adevărat dacă lista este goală.";
+Blockly.Msg.LISTS_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Lists#length-of"; // untranslated
+Blockly.Msg.LISTS_LENGTH_TITLE = "lungime de %1";
+Blockly.Msg.LISTS_LENGTH_TOOLTIP = "Returnează lungimea unei liste.";
+Blockly.Msg.LISTS_REPEAT_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
+Blockly.Msg.LISTS_REPEAT_TITLE = "creaza lista cu %1 elemente repetate de %2 ori";
+Blockly.Msg.LISTS_REPEAT_TOOLTIP = "Creează o listă alcătuită dintr-o anumită valoare repetată de numărul specificat de ori.";
+Blockly.Msg.LISTS_SET_INDEX_HELPURL = "https://github.com/google/blockly/wiki/Lists#in-list--set"; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_INPUT_TO = "ca";
+Blockly.Msg.LISTS_SET_INDEX_INSERT = "introduceţi la";
+Blockly.Msg.LISTS_SET_INDEX_SET = "seteaza";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST = "Inserează elementul la începutul unei liste.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FROM = "Inserează elementul la poziţia specificată într-o listă.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_LAST = "Adăugă elementul la sfârşitul unei liste.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM = "Inserează elementul aleatoriu într-o listă.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FIRST = "Setează primul element într-o listă.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FROM = "Setează elementul la poziţia specificată într-o listă.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_LAST = "Setează ultimul element într-o listă.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_RANDOM = "Setează un element aleator într-o listă.";
+Blockly.Msg.LISTS_SORT_HELPURL = "https://github.com/google/blockly/wiki/Lists#sorting-a-list"; // untranslated
+Blockly.Msg.LISTS_SORT_ORDER_ASCENDING = "ascending"; // untranslated
+Blockly.Msg.LISTS_SORT_ORDER_DESCENDING = "descending"; // untranslated
+Blockly.Msg.LISTS_SORT_TITLE = "sort %1 %2 %3"; // untranslated
+Blockly.Msg.LISTS_SORT_TOOLTIP = "Sort a copy of a list."; // untranslated
+Blockly.Msg.LISTS_SORT_TYPE_IGNORECASE = "alphabetic, ignore case"; // untranslated
+Blockly.Msg.LISTS_SORT_TYPE_NUMERIC = "numeric"; // untranslated
+Blockly.Msg.LISTS_SORT_TYPE_TEXT = "alphabetic"; // untranslated
+Blockly.Msg.LISTS_SPLIT_HELPURL = "https://github.com/google/blockly/wiki/Lists#splitting-strings-and-joining-lists"; // untranslated
+Blockly.Msg.LISTS_SPLIT_LIST_FROM_TEXT = "convertește textul în listă";
+Blockly.Msg.LISTS_SPLIT_TEXT_FROM_LIST = "convertește lista în text";
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_JOIN = "Concatenează o listă de texte (alternate cu separatorul) într-un text unic";
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_SPLIT = "Împarte textul într-o listă de texte, despărțite prin fiecare separator";
+Blockly.Msg.LISTS_SPLIT_WITH_DELIMITER = "cu separatorul";
+Blockly.Msg.LOGIC_BOOLEAN_FALSE = "fals";
+Blockly.Msg.LOGIC_BOOLEAN_HELPURL = "https://github.com/google/blockly/wiki/Logic#values"; // untranslated
+Blockly.Msg.LOGIC_BOOLEAN_TOOLTIP = "Returnează adevărat sau fals.";
+Blockly.Msg.LOGIC_BOOLEAN_TRUE = "adevărat";
+Blockly.Msg.LOGIC_COMPARE_HELPURL = "https://en.wikipedia.org/wiki/Inequality_(mathematics)";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_EQ = "Returnează adevărat dacă ambele intrări sunt egale.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GT = "Returnează adevărat dacă prima intrare este mai mare decât a doua intrare.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GTE = "Returnează adevărat dacă prima intrare este mai mare sau egală cu a doua intrare.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LT = "Returnează adevărat dacă prima intrare este mai mică decât a doua intrare.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LTE = "Returnează adevărat dacă prima intrare este mai mică sau egală cu a doua intrare.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_NEQ = "Returnează adevărat daca cele două intrări nu sunt egale.";
+Blockly.Msg.LOGIC_NEGATE_HELPURL = "https://github.com/google/blockly/wiki/Logic#not"; // untranslated
+Blockly.Msg.LOGIC_NEGATE_TITLE = "non %1";
+Blockly.Msg.LOGIC_NEGATE_TOOLTIP = "Returnează adevărat dacă intrarea este falsă. Returnează fals dacă intrarea este adevărată.";
+Blockly.Msg.LOGIC_NULL = "nul";
+Blockly.Msg.LOGIC_NULL_HELPURL = "https://en.wikipedia.org/wiki/Nullable_type";
+Blockly.Msg.LOGIC_NULL_TOOLTIP = "returnează nul.";
+Blockly.Msg.LOGIC_OPERATION_AND = "şi";
+Blockly.Msg.LOGIC_OPERATION_HELPURL = "https://github.com/google/blockly/wiki/Logic#logical-operations"; // untranslated
+Blockly.Msg.LOGIC_OPERATION_OR = "sau";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_AND = "Returnează adevărat daca ambele intrări sunt adevărate.";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_OR = "Returnează adevărat dacă cel puţin una din intrări este adevărată.";
+Blockly.Msg.LOGIC_TERNARY_CONDITION = "test";
+Blockly.Msg.LOGIC_TERNARY_HELPURL = "https://en.wikipedia.org/wiki/%3F:";
+Blockly.Msg.LOGIC_TERNARY_IF_FALSE = "dacă este fals";
+Blockly.Msg.LOGIC_TERNARY_IF_TRUE = "dacă este adevărat";
+Blockly.Msg.LOGIC_TERNARY_TOOLTIP = "Verifică condiţia din \"test\". Dacă condiţia este adevărată, returnează valoarea \"în cazul în care adevărat\"; în caz contrar întoarce valoarea \"în cazul în care e fals\".";
+Blockly.Msg.MATH_ADDITION_SYMBOL = "+";
+Blockly.Msg.MATH_ARITHMETIC_HELPURL = "https://ro.wikipedia.org/wiki/Aritmetic%C4%83";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_ADD = "Returnează suma a două numere.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE = "Returnează câtul celor două numere.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MINUS = "Returneaza diferenţa dintre cele două numere.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MULTIPLY = "Returnează produsul celor două numere.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_POWER = "Returneaza numărul rezultat prin ridicarea primului număr la puterea celui de-al doilea.";
+Blockly.Msg.MATH_CHANGE_HELPURL = "https://en.wikipedia.org/wiki/Programming_idiom#Incrementing_a_counter";
+Blockly.Msg.MATH_CHANGE_TITLE = "schimbă %1 de %2";
+Blockly.Msg.MATH_CHANGE_TOOLTIP = "Adaugă un număr variabilei '%1'.";
+Blockly.Msg.MATH_CONSTANT_HELPURL = "https://ro.wikipedia.org/wiki/Constant%C4%83_matematic%C4%83";
+Blockly.Msg.MATH_CONSTANT_TOOLTIP = "Întoarcă una din constantele comune: π (3.141...), e (2.718...), φ (1,618...), sqrt(2) (1.414...), sqrt(½) (0.707...) sau ∞ (infinitate).";
+Blockly.Msg.MATH_CONSTRAIN_HELPURL = "https://en.wikipedia.org/wiki/Clamping_%28graphics%29"; // untranslated
+Blockly.Msg.MATH_CONSTRAIN_TITLE = "constrânge %1 redus %2 ridicat %3";
+Blockly.Msg.MATH_CONSTRAIN_TOOLTIP = "Constrânge un număr să fie între limitele specificate (inclusiv).";
+Blockly.Msg.MATH_DIVISION_SYMBOL = "÷";
+Blockly.Msg.MATH_IS_DIVISIBLE_BY = "este divizibil cu";
+Blockly.Msg.MATH_IS_EVEN = "este par";
+Blockly.Msg.MATH_IS_NEGATIVE = "este negativ";
+Blockly.Msg.MATH_IS_ODD = "este impar";
+Blockly.Msg.MATH_IS_POSITIVE = "este pozitiv";
+Blockly.Msg.MATH_IS_PRIME = "este prim";
+Blockly.Msg.MATH_IS_TOOLTIP = "Verifică dacă un număr este un par, impar, prim, întreg, pozitiv, negativ, sau dacă este divizibil cu un anumit număr. Returnează true sau false.";
+Blockly.Msg.MATH_IS_WHOLE = "este întreg";
+Blockly.Msg.MATH_MODULO_HELPURL = "https://en.wikipedia.org/wiki/Modulo_operation";
+Blockly.Msg.MATH_MODULO_TITLE = "restul la %1 ÷ %2";
+Blockly.Msg.MATH_MODULO_TOOLTIP = "Întoarce restul din împărţirea celor două numere.";
+Blockly.Msg.MATH_MULTIPLICATION_SYMBOL = "×";
+Blockly.Msg.MATH_NUMBER_HELPURL = "https://en.wikipedia.org/wiki/Number";
+Blockly.Msg.MATH_NUMBER_TOOLTIP = "Un număr.";
+Blockly.Msg.MATH_ONLIST_HELPURL = ""; // untranslated
+Blockly.Msg.MATH_ONLIST_OPERATOR_AVERAGE = "media listei";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MAX = "maximul listei";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MEDIAN = "media listei";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MIN = "minimul listei";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MODE = "moduri de listă";
+Blockly.Msg.MATH_ONLIST_OPERATOR_RANDOM = "element aleatoriu din lista";
+Blockly.Msg.MATH_ONLIST_OPERATOR_STD_DEV = "deviația standard a listei";
+Blockly.Msg.MATH_ONLIST_OPERATOR_SUM = "suma listei";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_AVERAGE = "Întoarce media (aritmetică) a valorilor numerice în listă.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MAX = "Întoarce cel mai mare număr din listă.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MEDIAN = "Întoarce numărul median în listă.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MIN = "Returnează cel mai mic număr din listă.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MODE = "Returnează o listă cu cel(e) mai frecvent(e) element(e) din listă.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_RANDOM = "Returnează un element aleatoriu din listă.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_STD_DEV = "Întoarce deviația standard a listei.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_SUM = "Returnează suma tuturor numerelor din lista.";
+Blockly.Msg.MATH_POWER_SYMBOL = "^";
+Blockly.Msg.MATH_RANDOM_FLOAT_HELPURL = "https://en.wikipedia.org/wiki/Random_number_generation";
+Blockly.Msg.MATH_RANDOM_FLOAT_TITLE_RANDOM = "fracții aleatorii";
+Blockly.Msg.MATH_RANDOM_FLOAT_TOOLTIP = "Returnează o fracţie aleatoare între 0.0 (inclusiv) si 1.0 (exclusiv).";
+Blockly.Msg.MATH_RANDOM_INT_HELPURL = "https://en.wikipedia.org/wiki/Random_number_generation";
+Blockly.Msg.MATH_RANDOM_INT_TITLE = "un număr întreg aleator de la %1 la %2";
+Blockly.Msg.MATH_RANDOM_INT_TOOLTIP = "Returnează un număr întreg aleator aflat între cele două limite specificate, inclusiv.";
+Blockly.Msg.MATH_ROUND_HELPURL = "https://en.wikipedia.org/wiki/Rounding";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUND = "rotund";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDDOWN = "rotunjit";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDUP = "rotunjește în sus";
+Blockly.Msg.MATH_ROUND_TOOLTIP = "Rotunjirea unui număr în sus sau în jos.";
+Blockly.Msg.MATH_SINGLE_HELPURL = "https://en.wikipedia.org/wiki/Square_root";
+Blockly.Msg.MATH_SINGLE_OP_ABSOLUTE = "absolută";
+Blockly.Msg.MATH_SINGLE_OP_ROOT = "rădăcina pătrată";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ABS = "Returnează valoarea absolută a unui număr.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_EXP = "Returnează e la puterea unui număr.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LN = "Întoarce logaritmul natural al unui număr.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LOG10 = "Returnează logaritmul în baza 10 a unui număr.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_NEG = "Returnează negaţia unui număr.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_POW10 = "Returnează 10 la puterea unui număr.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ROOT = "Returnează rădăcina pătrată a unui număr.";
+Blockly.Msg.MATH_SUBTRACTION_SYMBOL = "-";
+Blockly.Msg.MATH_TRIG_ACOS = "arccos";
+Blockly.Msg.MATH_TRIG_ASIN = "arcsin";
+Blockly.Msg.MATH_TRIG_ATAN = "arctg";
+Blockly.Msg.MATH_TRIG_COS = "cos";
+Blockly.Msg.MATH_TRIG_HELPURL = "https://en.wikipedia.org/wiki/Trigonometric_functions";
+Blockly.Msg.MATH_TRIG_SIN = "sin";
+Blockly.Msg.MATH_TRIG_TAN = "tg";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ACOS = "Returnează arccosinusul unui număr.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ASIN = "Returnează arcsinusul unui număr.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ATAN = "Returnează arctangenta unui număr.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_COS = "Întoarce cosinusul unui grad (nu radianul).";
+Blockly.Msg.MATH_TRIG_TOOLTIP_SIN = "Întoarce cosinusul unui grad (nu radianul).";
+Blockly.Msg.MATH_TRIG_TOOLTIP_TAN = "Întoarce tangenta unui grad (nu radianul).";
+Blockly.Msg.NEW_VARIABLE = "Variabilă nouă...";
+Blockly.Msg.NEW_VARIABLE_TITLE = "Noul nume de variabilă:";
+Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; // untranslated
+Blockly.Msg.PROCEDURES_ALLOW_STATEMENTS = "permite declarațiile";
+Blockly.Msg.PROCEDURES_BEFORE_PARAMS = "cu:";
+Blockly.Msg.PROCEDURES_CALLNORETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29";
+Blockly.Msg.PROCEDURES_CALLNORETURN_TOOLTIP = "Executați funcția '%1 'definită de utilizator.";
+Blockly.Msg.PROCEDURES_CALLRETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29";
+Blockly.Msg.PROCEDURES_CALLRETURN_TOOLTIP = "Executați funcția '%1 'definită de utilizator şi folosiţi producţia sa.";
+Blockly.Msg.PROCEDURES_CALL_BEFORE_PARAMS = "cu:";
+Blockly.Msg.PROCEDURES_CREATE_DO = "Creaţi '%1'";
+Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT = "Describe this function..."; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_DO = ""; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29";
+Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE = "fă ceva";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE = "la";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TOOLTIP = "Crează o funcţie cu nici o ieşire.";
+Blockly.Msg.PROCEDURES_DEFRETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29";
+Blockly.Msg.PROCEDURES_DEFRETURN_RETURN = "returnează";
+Blockly.Msg.PROCEDURES_DEFRETURN_TOOLTIP = "Creează o funcţie cu o ieşire.";
+Blockly.Msg.PROCEDURES_DEF_DUPLICATE_WARNING = "Atenţie: Această funcţie are parametri duplicaţi.";
+Blockly.Msg.PROCEDURES_HIGHLIGHT_DEF = "Evidenţiază definiţia funcţiei";
+Blockly.Msg.PROCEDURES_IFRETURN_HELPURL = "http://c2.com/cgi/wiki?GuardClause"; // untranslated
+Blockly.Msg.PROCEDURES_IFRETURN_TOOLTIP = "Dacă o valoare este adevărată, atunci returnează valoarea a doua.";
+Blockly.Msg.PROCEDURES_IFRETURN_WARNING = "Avertisment: Acest bloc poate fi utilizat numai în definiţia unei funcţii.";
+Blockly.Msg.PROCEDURES_MUTATORARG_TITLE = "nume de intrare:";
+Blockly.Msg.PROCEDURES_MUTATORARG_TOOLTIP = "Adaugă un parametru de intrare pentru funcție.";
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TITLE = "intrări";
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TOOLTIP = "Adăugă, șterge sau reordonează parametrii de intrare ai acestei funcții.";
+Blockly.Msg.REDO = "Redo"; // untranslated
+Blockly.Msg.REMOVE_COMMENT = "Elimină comentariu";
+Blockly.Msg.RENAME_VARIABLE = "Redenumirea variabilei...";
+Blockly.Msg.RENAME_VARIABLE_TITLE = "Redenumeşte toate variabilele '%1' în:";
+Blockly.Msg.TEXT_APPEND_APPENDTEXT = "Adăugaţi text";
+Blockly.Msg.TEXT_APPEND_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_APPEND_TO = "la";
+Blockly.Msg.TEXT_APPEND_TOOLTIP = "Adăugaţi text la variabila '%1'.";
+Blockly.Msg.TEXT_CHANGECASE_HELPURL = "https://github.com/google/blockly/wiki/Text#adjusting-text-case"; // untranslated
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_LOWERCASE = "la litere mici";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_TITLECASE = "către Titlul de caz";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_UPPERCASE = "la MAJUSCULE";
+Blockly.Msg.TEXT_CHANGECASE_TOOLTIP = "Întoarce o copie a textului într-un caz diferit.";
+Blockly.Msg.TEXT_CHARAT_FIRST = "obţine prima litera";
+Blockly.Msg.TEXT_CHARAT_FROM_END = "obţine litera # de la sfârșit";
+Blockly.Msg.TEXT_CHARAT_FROM_START = "obtine litera #";
+Blockly.Msg.TEXT_CHARAT_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-text"; // untranslated
+Blockly.Msg.TEXT_CHARAT_INPUT_INTEXT = "în text";
+Blockly.Msg.TEXT_CHARAT_LAST = "obţine o litera oarecare";
+Blockly.Msg.TEXT_CHARAT_RANDOM = "obtine o litera oarecare";
+Blockly.Msg.TEXT_CHARAT_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_CHARAT_TOOLTIP = "Returnează litera la poziția specificată.";
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TOOLTIP = "Adaugă un element în text.";
+Blockly.Msg.TEXT_CREATE_JOIN_TITLE_JOIN = "alăturaţi-vă";
+Blockly.Msg.TEXT_CREATE_JOIN_TOOLTIP = "Adaugă, elimină sau reordonează secțiuni ca să reconfigureze blocul text.";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_END = "la litera # de la sfarsit";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_START = "la litera #";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_LAST = "la ultima literă";
+Blockly.Msg.TEXT_GET_SUBSTRING_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_INPUT_IN_TEXT = "în text";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FIRST = "obţine un subșir de la prima literă";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_END = "obține un subșir de la litera # de la sfârșit";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_START = "obține subșir de la litera #";
+Blockly.Msg.TEXT_GET_SUBSTRING_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_TOOLTIP = "Returnează o anumită parte din text.";
+Blockly.Msg.TEXT_INDEXOF_HELPURL = "https://github.com/google/blockly/wiki/Text#finding-text"; // untranslated
+Blockly.Msg.TEXT_INDEXOF_INPUT_INTEXT = "în text";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_FIRST = "găseşte prima apariţie a textului";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_LAST = "găseşte ultima apariţie a textului";
+Blockly.Msg.TEXT_INDEXOF_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_INDEXOF_TOOLTIP = "Returnează indicele primei/ultimei apariţii din primul text în al doilea text. Returnează %1 dacă textul nu este găsit.";
+Blockly.Msg.TEXT_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Text#checking-for-empty-text"; // untranslated
+Blockly.Msg.TEXT_ISEMPTY_TITLE = "%1 este gol";
+Blockly.Msg.TEXT_ISEMPTY_TOOLTIP = "Returnează adevărat dacă textul furnizat este gol.";
+Blockly.Msg.TEXT_JOIN_HELPURL = "https://github.com/google/blockly/wiki/Text#text-creation"; // untranslated
+Blockly.Msg.TEXT_JOIN_TITLE_CREATEWITH = "crează text cu";
+Blockly.Msg.TEXT_JOIN_TOOLTIP = "Creaţi o bucată de text prin unirea oricărui număr de elemente.";
+Blockly.Msg.TEXT_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_LENGTH_TITLE = "lungime de %1";
+Blockly.Msg.TEXT_LENGTH_TOOLTIP = "Returnează numărul de litere (inclusiv spaţiile) în textul furnizat.";
+Blockly.Msg.TEXT_PRINT_HELPURL = "https://github.com/google/blockly/wiki/Text#printing-text"; // untranslated
+Blockly.Msg.TEXT_PRINT_TITLE = "imprimare %1";
+Blockly.Msg.TEXT_PRINT_TOOLTIP = "Afișează textul specificat, numărul sau altă valoare.";
+Blockly.Msg.TEXT_PROMPT_HELPURL = "https://github.com/google/blockly/wiki/Text#getting-input-from-the-user"; // untranslated
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_NUMBER = "Solicită utilizatorul pentru un număr.";
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_TEXT = "Solicită utilizatorul pentru text.";
+Blockly.Msg.TEXT_PROMPT_TYPE_NUMBER = "solicită pentru număr cu mesaj";
+Blockly.Msg.TEXT_PROMPT_TYPE_TEXT = "solicită pentru text cu mesaj";
+Blockly.Msg.TEXT_TEXT_HELPURL = "https://en.wikipedia.org/wiki/String_(computer_science)";
+Blockly.Msg.TEXT_TEXT_TOOLTIP = "O literă, cuvânt sau linie de text.";
+Blockly.Msg.TEXT_TRIM_HELPURL = "https://github.com/google/blockly/wiki/Text#trimming-removing-spaces"; // untranslated
+Blockly.Msg.TEXT_TRIM_OPERATOR_BOTH = "taie spațiile de pe ambele părți ale";
+Blockly.Msg.TEXT_TRIM_OPERATOR_LEFT = "tăiaţi spațiile din partea stângă a";
+Blockly.Msg.TEXT_TRIM_OPERATOR_RIGHT = "taie spațiile din partea dreaptă a";
+Blockly.Msg.TEXT_TRIM_TOOLTIP = "Returnează o copie a textului fără spațiile de la unul sau ambele capete.";
+Blockly.Msg.TODAY = "Astăzi";
+Blockly.Msg.UNDO = "Undo"; // untranslated
+Blockly.Msg.VARIABLES_DEFAULT_NAME = "element";
+Blockly.Msg.VARIABLES_GET_CREATE_SET = "Crează 'set %1'";
+Blockly.Msg.VARIABLES_GET_HELPURL = "https://github.com/google/blockly/wiki/Variables#get"; // untranslated
+Blockly.Msg.VARIABLES_GET_TOOLTIP = "Returnează valoarea acestei variabile.";
+Blockly.Msg.VARIABLES_SET = "seteaza %1 la %2";
+Blockly.Msg.VARIABLES_SET_CREATE_GET = "Crează 'get %1'";
+Blockly.Msg.VARIABLES_SET_HELPURL = "https://github.com/google/blockly/wiki/Variables#set"; // untranslated
+Blockly.Msg.VARIABLES_SET_TOOLTIP = "Setează această variabilă sa fie egală la intrare.";
+Blockly.Msg.VARIABLE_ALREADY_EXISTS = "A variable named '%1' already exists."; // untranslated
+Blockly.Msg.PROCEDURES_DEFRETURN_TITLE = Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE;
+Blockly.Msg.CONTROLS_IF_IF_TITLE_IF = Blockly.Msg.CONTROLS_IF_MSG_IF;
+Blockly.Msg.CONTROLS_WHILEUNTIL_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_MSG_THEN = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_ELSE_TITLE_ELSE = Blockly.Msg.CONTROLS_IF_MSG_ELSE;
+Blockly.Msg.PROCEDURES_DEFRETURN_PROCEDURE = Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE;
+Blockly.Msg.LISTS_GET_SUBLIST_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.LISTS_GET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.PROCEDURES_DEFRETURN_DO = Blockly.Msg.PROCEDURES_DEFNORETURN_DO;
+Blockly.Msg.CONTROLS_IF_ELSEIF_TITLE_ELSEIF = Blockly.Msg.CONTROLS_IF_MSG_ELSEIF;
+Blockly.Msg.LISTS_GET_INDEX_HELPURL = Blockly.Msg.LISTS_INDEX_OF_HELPURL;
+Blockly.Msg.CONTROLS_FOREACH_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_SET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TITLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_APPEND_VARIABLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.LISTS_INDEX_OF_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.PROCEDURES_DEFRETURN_COMMENT = Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT; \ No newline at end of file
diff --git a/blockly/msg/js/ru.js b/blockly/msg/js/ru.js
new file mode 100644
index 0000000..2a73ad4
--- /dev/null
+++ b/blockly/msg/js/ru.js
@@ -0,0 +1,391 @@
+// This file was automatically generated. Do not modify.
+
+'use strict';
+
+goog.provide('Blockly.Msg.ru');
+
+goog.require('Blockly.Msg');
+
+Blockly.Msg.ADD_COMMENT = "Добавить комментарий";
+Blockly.Msg.CHANGE_VALUE_TITLE = "Измените значение:";
+Blockly.Msg.CLEAN_UP = "Убрать блоки";
+Blockly.Msg.COLLAPSE_ALL = "Свернуть блоки";
+Blockly.Msg.COLLAPSE_BLOCK = "Свернуть блок";
+Blockly.Msg.COLOUR_BLEND_COLOUR1 = "цвет 1";
+Blockly.Msg.COLOUR_BLEND_COLOUR2 = "цвет 2";
+Blockly.Msg.COLOUR_BLEND_HELPURL = "http://meyerweb.com/eric/tools/color-blend/"; // untranslated
+Blockly.Msg.COLOUR_BLEND_RATIO = "доля цвета 1";
+Blockly.Msg.COLOUR_BLEND_TITLE = "смешать";
+Blockly.Msg.COLOUR_BLEND_TOOLTIP = "Смешивает два цвета в заданном соотношении (0.0 - 1.0).";
+Blockly.Msg.COLOUR_PICKER_HELPURL = "https://ru.wikipedia.org/wiki/Цвет";
+Blockly.Msg.COLOUR_PICKER_TOOLTIP = "Выберите цвет из палитры.";
+Blockly.Msg.COLOUR_RANDOM_HELPURL = "http://randomcolour.com"; // untranslated
+Blockly.Msg.COLOUR_RANDOM_TITLE = "случайный цвет";
+Blockly.Msg.COLOUR_RANDOM_TOOLTIP = "Выбирает цвет случайным образом.";
+Blockly.Msg.COLOUR_RGB_BLUE = "синего";
+Blockly.Msg.COLOUR_RGB_GREEN = "зелёного";
+Blockly.Msg.COLOUR_RGB_HELPURL = "http://www.december.com/html/spec/colorper.html"; // untranslated
+Blockly.Msg.COLOUR_RGB_RED = "красного";
+Blockly.Msg.COLOUR_RGB_TITLE = "цвет из";
+Blockly.Msg.COLOUR_RGB_TOOLTIP = "Создаёт цвет с указанной пропорцией красного, зеленого и синего. Все значения должны быть между 0 и 100.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_HELPURL = "https://github.com/google/blockly/wiki/Loops#loop-termination-blocks"; // untranslated
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK = "выйти из цикла";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE = "перейти к следующему шагу цикла";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK = "Прерывает этот цикл.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE = "Пропускает остаток цикла и переходит к следующему шагу.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_WARNING = "Предупреждение: этот блок может использоваться только внутри цикла.";
+Blockly.Msg.CONTROLS_FOREACH_HELPURL = "https://github.com/google/blockly/wiki/Loops#for-each"; // untranslated
+Blockly.Msg.CONTROLS_FOREACH_TITLE = "для каждого элемента %1 в списке %2";
+Blockly.Msg.CONTROLS_FOREACH_TOOLTIP = "Для каждого элемента в списке, присваивает переменной '%1' значение элемента и выполняет указанные команды.";
+Blockly.Msg.CONTROLS_FOR_HELPURL = "https://github.com/google/blockly/wiki/Loops#count-with"; // untranslated
+Blockly.Msg.CONTROLS_FOR_TITLE = "цикл по %1 от %2 до %3 с шагом %4";
+Blockly.Msg.CONTROLS_FOR_TOOLTIP = "Присваивает переменной '%1' значения от начального до конечного с заданным шагом и выполняет указанные команды.";
+Blockly.Msg.CONTROLS_IF_ELSEIF_TOOLTIP = "Добавляет условие к блоку \"если\"";
+Blockly.Msg.CONTROLS_IF_ELSE_TOOLTIP = "Добавить заключительный подблок для случая, когда все условия ложны.";
+Blockly.Msg.CONTROLS_IF_HELPURL = "https://github.com/google/blockly/wiki/IfElse"; // untranslated
+Blockly.Msg.CONTROLS_IF_IF_TOOLTIP = "Добавьте, удалите, переставьте фрагменты для переделки блока \"если\".";
+Blockly.Msg.CONTROLS_IF_MSG_ELSE = "иначе";
+Blockly.Msg.CONTROLS_IF_MSG_ELSEIF = "иначе если";
+Blockly.Msg.CONTROLS_IF_MSG_IF = "если";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_1 = "Если условие истинно, выполняет команды.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_2 = "Если условие истинно, выполняет первый блок команд. Иначе выполняется второй блок команд.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_3 = "Если первое условие истинно, то выполняет первый блок команд. Иначе, если второе условие истинно, выполняет второй блок команд.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_4 = "Если первое условие истинно, то выполняет первый блок команд. В противном случае, если второе условие истинно, выполняет второй блок команд. Если ни одно из условий не истинно, выполняет последний блок команд.";
+Blockly.Msg.CONTROLS_REPEAT_HELPURL = "https://ru.wikipedia.org/wiki/Цикл_(программирование)";
+Blockly.Msg.CONTROLS_REPEAT_INPUT_DO = "выполнить";
+Blockly.Msg.CONTROLS_REPEAT_TITLE = "повторить %1 раз";
+Blockly.Msg.CONTROLS_REPEAT_TOOLTIP = "Выполняет некоторые команды несколько раз.";
+Blockly.Msg.CONTROLS_WHILEUNTIL_HELPURL = "https://github.com/google/blockly/wiki/Loops#repeat"; // untranslated
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "повторять, пока не";
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "повторять, пока";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "Пока значение ложно, выполняет команды";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "Пока значение истинно, выполняет команды.";
+Blockly.Msg.DELETE_ALL_BLOCKS = "Удалить все блоки (%1)?";
+Blockly.Msg.DELETE_BLOCK = "Удалить блок";
+Blockly.Msg.DELETE_VARIABLE = "Удалить переменную '%1'";
+Blockly.Msg.DELETE_VARIABLE_CONFIRMATION = "Удалить %1 использований переменной '%2'?";
+Blockly.Msg.DELETE_X_BLOCKS = "Удалить %1 блоков";
+Blockly.Msg.DISABLE_BLOCK = "Отключить блок";
+Blockly.Msg.DUPLICATE_BLOCK = "Скопировать";
+Blockly.Msg.ENABLE_BLOCK = "Включить блок";
+Blockly.Msg.EXPAND_ALL = "Развернуть блоки";
+Blockly.Msg.EXPAND_BLOCK = "Развернуть блок";
+Blockly.Msg.EXTERNAL_INPUTS = "Вставки снаружи";
+Blockly.Msg.HELP = "Справка";
+Blockly.Msg.INLINE_INPUTS = "Вставки внутри";
+Blockly.Msg.LISTS_CREATE_EMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-empty-list"; // untranslated
+Blockly.Msg.LISTS_CREATE_EMPTY_TITLE = "создать пустой список";
+Blockly.Msg.LISTS_CREATE_EMPTY_TOOLTIP = "Возвращает список длины 0, не содержащий данных";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TITLE_ADD = "список";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TOOLTIP = "Добавьте, удалите, переставьте элементы для переделки блока списка.";
+Blockly.Msg.LISTS_CREATE_WITH_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with";
+Blockly.Msg.LISTS_CREATE_WITH_INPUT_WITH = "создать список из";
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TOOLTIP = "Добавляет элемент к списку.";
+Blockly.Msg.LISTS_CREATE_WITH_TOOLTIP = "Создаёт список с любым числом элементов.";
+Blockly.Msg.LISTS_GET_INDEX_FIRST = "первый";
+Blockly.Msg.LISTS_GET_INDEX_FROM_END = "№ с конца";
+Blockly.Msg.LISTS_GET_INDEX_FROM_START = "#"; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_GET = "взять";
+Blockly.Msg.LISTS_GET_INDEX_GET_REMOVE = "взять и удалить";
+Blockly.Msg.LISTS_GET_INDEX_LAST = "последний";
+Blockly.Msg.LISTS_GET_INDEX_RANDOM = "произвольный";
+Blockly.Msg.LISTS_GET_INDEX_REMOVE = "удалить";
+Blockly.Msg.LISTS_GET_INDEX_TAIL = ""; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FIRST = "Возвращает первый элемент списка.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FROM = "Возвращает элемент в указанной позиции списка.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_LAST = "Возвращает последний элемент списка.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_RANDOM = "Возвращает случайный элемент списка.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST = "Удаляет и возвращает первый элемент списка.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM = "Удаляет и возвращает элемент в указанной позиции списка.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST = "Удаляет и возвращает последний элемент списка.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM = "Удаляет и возвращает случайный элемент списка.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST = "Удаляет первый элемент списка.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM = "Удаляет элемент в указанной позиции списка.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST = "Удаляет последний элемент списка.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM = "Удаляет случайный элемент списка.";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_END = "по № с конца";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_START = "по №";
+Blockly.Msg.LISTS_GET_SUBLIST_END_LAST = "по последний";
+Blockly.Msg.LISTS_GET_SUBLIST_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-a-sublist"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_START_FIRST = "взять подсписок с первого";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_END = "взять подсписок с № с конца";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_START = "взять подсписок с №";
+Blockly.Msg.LISTS_GET_SUBLIST_TAIL = ""; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_TOOLTIP = "Создаёт копию указанной части списка.";
+Blockly.Msg.LISTS_INDEX_FROM_END_TOOLTIP = "%1 - последний элемент.";
+Blockly.Msg.LISTS_INDEX_FROM_START_TOOLTIP = "%1 - первый элемент.";
+Blockly.Msg.LISTS_INDEX_OF_FIRST = "найти первое вхождение элемента";
+Blockly.Msg.LISTS_INDEX_OF_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-items-from-a-list"; // untranslated
+Blockly.Msg.LISTS_INDEX_OF_LAST = "найти последнее вхождение элемента";
+Blockly.Msg.LISTS_INDEX_OF_TOOLTIP = "Возвращает номер позиции первого/последнего вхождения элемента в списке. Возвращает %1, если элемент не найден.";
+Blockly.Msg.LISTS_INLIST = "в списке";
+Blockly.Msg.LISTS_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#is-empty"; // untranslated
+Blockly.Msg.LISTS_ISEMPTY_TITLE = "%1 пуст";
+Blockly.Msg.LISTS_ISEMPTY_TOOLTIP = "Возвращает значение истина, если список пуст.";
+Blockly.Msg.LISTS_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Lists#length-of"; // untranslated
+Blockly.Msg.LISTS_LENGTH_TITLE = "длина %1";
+Blockly.Msg.LISTS_LENGTH_TOOLTIP = "Возвращает длину списка.";
+Blockly.Msg.LISTS_REPEAT_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
+Blockly.Msg.LISTS_REPEAT_TITLE = "создать список из элемента %1, повторяющегося %2 раз";
+Blockly.Msg.LISTS_REPEAT_TOOLTIP = "Создаёт список, состоящий из заданного числа копий элемента.";
+Blockly.Msg.LISTS_SET_INDEX_HELPURL = "https://github.com/google/blockly/wiki/Lists#in-list--set"; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_INPUT_TO = "=";
+Blockly.Msg.LISTS_SET_INDEX_INSERT = "вставить в";
+Blockly.Msg.LISTS_SET_INDEX_SET = "присвоить";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST = "Вставляет элемент в начало списка.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FROM = "Вставляет элемент в указанной позиции списка.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_LAST = "Добавляет элемент в конец списка.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM = "Вставляет элемент в случайное место в списке.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FIRST = "Присваивает значение первому элементу списка.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FROM = "Присваивает значение элементу в указанной позиции списка.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_LAST = "Присваивает значение последнему элементу списка.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_RANDOM = "Присваивает значение случайному элементу списка.";
+Blockly.Msg.LISTS_SORT_HELPURL = "https://github.com/google/blockly/wiki/Lists#sorting-a-list";
+Blockly.Msg.LISTS_SORT_ORDER_ASCENDING = "по возрастанию";
+Blockly.Msg.LISTS_SORT_ORDER_DESCENDING = "по убыванию";
+Blockly.Msg.LISTS_SORT_TITLE = "сортировать %1 %2 %3";
+Blockly.Msg.LISTS_SORT_TOOLTIP = "Сортировать копию списка.";
+Blockly.Msg.LISTS_SORT_TYPE_IGNORECASE = "по алфавиту, без учёта регистра";
+Blockly.Msg.LISTS_SORT_TYPE_NUMERIC = "числовая";
+Blockly.Msg.LISTS_SORT_TYPE_TEXT = "по алфавиту";
+Blockly.Msg.LISTS_SPLIT_HELPURL = "https://github.com/google/blockly/wiki/Lists#splitting-strings-and-joining-lists";
+Blockly.Msg.LISTS_SPLIT_LIST_FROM_TEXT = "сделать список из текста";
+Blockly.Msg.LISTS_SPLIT_TEXT_FROM_LIST = "собрать текст из списка";
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_JOIN = "Соединяет сптсок текстов в один текст с разделителями.";
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_SPLIT = "Разбивает текст в список текстов, по разделителям.";
+Blockly.Msg.LISTS_SPLIT_WITH_DELIMITER = "с разделителем";
+Blockly.Msg.LOGIC_BOOLEAN_FALSE = "ложь";
+Blockly.Msg.LOGIC_BOOLEAN_HELPURL = "https://github.com/google/blockly/wiki/Logic#values"; // untranslated
+Blockly.Msg.LOGIC_BOOLEAN_TOOLTIP = "Возвращает значение истина или ложь.";
+Blockly.Msg.LOGIC_BOOLEAN_TRUE = "истина";
+Blockly.Msg.LOGIC_COMPARE_HELPURL = "https://ru.wikipedia.org/wiki/Неравенство";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_EQ = "Возвращает положительное значение, если вводы равны.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GT = "Возвращает значение истина, если первая вставка больше второй.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GTE = "Возвращает значение истина, если первая вставка больше или равна второй.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LT = "Возвращает положительное значение, если первый ввод меньше второго.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LTE = "Возвращает значение истина, если первая вставка меньше или равна второй.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_NEQ = "Возвращает положительное значение, если вводы не равны.";
+Blockly.Msg.LOGIC_NEGATE_HELPURL = "https://github.com/google/blockly/wiki/Logic#not"; // untranslated
+Blockly.Msg.LOGIC_NEGATE_TITLE = "не %1";
+Blockly.Msg.LOGIC_NEGATE_TOOLTIP = "Возвращает значение истина, если вставка ложна. Возвращает значение ложь, если вставка истинна.";
+Blockly.Msg.LOGIC_NULL = "ничто";
+Blockly.Msg.LOGIC_NULL_HELPURL = "https://en.wikipedia.org/wiki/Nullable_type";
+Blockly.Msg.LOGIC_NULL_TOOLTIP = "Возвращает ничто.";
+Blockly.Msg.LOGIC_OPERATION_AND = "и";
+Blockly.Msg.LOGIC_OPERATION_HELPURL = "https://github.com/google/blockly/wiki/Logic#logical-operations"; // untranslated
+Blockly.Msg.LOGIC_OPERATION_OR = "или";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_AND = "Возвращает значение истина, если обе вставки истинны.";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_OR = "Возвращает значение истина, если хотя бы одна из вставок истинна.";
+Blockly.Msg.LOGIC_TERNARY_CONDITION = "выбрать по";
+Blockly.Msg.LOGIC_TERNARY_HELPURL = "https://ru.wikipedia.org/wiki/Тернарная_условная_операция";
+Blockly.Msg.LOGIC_TERNARY_IF_FALSE = "если ложь";
+Blockly.Msg.LOGIC_TERNARY_IF_TRUE = "если истина";
+Blockly.Msg.LOGIC_TERNARY_TOOLTIP = "Проверяет условие выбора. Если условие истинно, возвращает первое значение, в противном случае возвращает второе значение.";
+Blockly.Msg.MATH_ADDITION_SYMBOL = "+"; // untranslated
+Blockly.Msg.MATH_ARITHMETIC_HELPURL = "https://ru.wikipedia.org/wiki/Арифметика";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_ADD = "Возвращает сумму двух чисел.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE = "Возвращает частное от деления первого числа на второе.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MINUS = "Возвращает разность двух чисел.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MULTIPLY = "Возвращает произведение двух чисел.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_POWER = "Возвращает первое число, возведённое в степень второго числа.";
+Blockly.Msg.MATH_CHANGE_HELPURL = "https://ru.wikipedia.org/wiki/%D0%98%D0%B4%D0%B8%D0%BE%D0%BC%D0%B0_%28%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5%29#.D0.98.D0.BD.D0.BA.D1.80.D0.B5.D0.BC.D0.B5.D0.BD.D1.82";
+Blockly.Msg.MATH_CHANGE_TITLE = "увеличить %1 на %2";
+Blockly.Msg.MATH_CHANGE_TOOLTIP = "Добавляет число к переменной '%1'.";
+Blockly.Msg.MATH_CONSTANT_HELPURL = "https://ru.wikipedia.org/wiki/Математическая_константа";
+Blockly.Msg.MATH_CONSTANT_TOOLTIP = "Возвращает одну из распространённых констант: π (3.141...), e (2.718...), φ (1.618...), sqrt(2) (1.414...), sqrt(½) (0.707...) или ∞ (бесконечность).";
+Blockly.Msg.MATH_CONSTRAIN_HELPURL = "https://en.wikipedia.org/wiki/Clamping_%28graphics%29"; // untranslated
+Blockly.Msg.MATH_CONSTRAIN_TITLE = "ограничить %1 снизу %2 сверху %3";
+Blockly.Msg.MATH_CONSTRAIN_TOOLTIP = "Ограничивает число нижней и верхней границами (включительно).";
+Blockly.Msg.MATH_DIVISION_SYMBOL = "÷"; // untranslated
+Blockly.Msg.MATH_IS_DIVISIBLE_BY = "делится на";
+Blockly.Msg.MATH_IS_EVEN = "чётное";
+Blockly.Msg.MATH_IS_NEGATIVE = "отрицательное";
+Blockly.Msg.MATH_IS_ODD = "нечётное";
+Blockly.Msg.MATH_IS_POSITIVE = "положительное";
+Blockly.Msg.MATH_IS_PRIME = "простое";
+Blockly.Msg.MATH_IS_TOOLTIP = "Проверяет, является ли число чётным, нечётным, простым, целым, положительным, отрицательным или оно кратно определённому числу. Возвращает значение истина или ложь.";
+Blockly.Msg.MATH_IS_WHOLE = "целое";
+Blockly.Msg.MATH_MODULO_HELPURL = "https://ru.wikipedia.org/wiki/Деление_с_остатком";
+Blockly.Msg.MATH_MODULO_TITLE = "остаток от %1 : %2";
+Blockly.Msg.MATH_MODULO_TOOLTIP = "Возвращает остаток от деления двух чисел.";
+Blockly.Msg.MATH_MULTIPLICATION_SYMBOL = "×"; // untranslated
+Blockly.Msg.MATH_NUMBER_HELPURL = "https://ru.wikipedia.org/wiki/Число";
+Blockly.Msg.MATH_NUMBER_TOOLTIP = "Число.";
+Blockly.Msg.MATH_ONLIST_HELPURL = ""; // untranslated
+Blockly.Msg.MATH_ONLIST_OPERATOR_AVERAGE = "среднее арифметическое списка";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MAX = "наибольшее в списке";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MEDIAN = "медиана списка";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MIN = "наименьшее в списке";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MODE = "моды списка";
+Blockly.Msg.MATH_ONLIST_OPERATOR_RANDOM = "случайный элемент списка";
+Blockly.Msg.MATH_ONLIST_OPERATOR_STD_DEV = "стандартное отклонение списка";
+Blockly.Msg.MATH_ONLIST_OPERATOR_SUM = "сумма списка";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_AVERAGE = "Возвращает среднее арифметическое списка.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MAX = "Возвращает наибольшее число списка.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MEDIAN = "Возвращает медиану списка.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MIN = "Возвращает наименьшее число списка.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MODE = "Возвращает список наиболее часто встречающихся элементов списка.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_RANDOM = "Возвращает случайный элемент списка.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_STD_DEV = "Возвращает стандартное отклонение списка.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_SUM = "Возвращает сумму всех чисел в списке.";
+Blockly.Msg.MATH_POWER_SYMBOL = "^"; // untranslated
+Blockly.Msg.MATH_RANDOM_FLOAT_HELPURL = "https://ru.wikipedia.org/wiki/Генератор_псевдослучайных_чисел";
+Blockly.Msg.MATH_RANDOM_FLOAT_TITLE_RANDOM = "случайное число от 0 (включительно) до 1";
+Blockly.Msg.MATH_RANDOM_FLOAT_TOOLTIP = "Возвращает случайное число от 0.0 (включительно) до 1.0.";
+Blockly.Msg.MATH_RANDOM_INT_HELPURL = "https://ru.wikipedia.org/wiki/Генератор_псевдослучайных_чисел";
+Blockly.Msg.MATH_RANDOM_INT_TITLE = "случайное целое число от %1 для %2";
+Blockly.Msg.MATH_RANDOM_INT_TOOLTIP = "Возвращает случайное число между двумя заданными пределами (включая и их).";
+Blockly.Msg.MATH_ROUND_HELPURL = "https://ru.wikipedia.org/wiki/Округление";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUND = "округлить";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDDOWN = "округлить к меньшему";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDUP = "округлить к большему";
+Blockly.Msg.MATH_ROUND_TOOLTIP = "Округляет число до большего или меньшего.";
+Blockly.Msg.MATH_SINGLE_HELPURL = "https://ru.wikipedia.org/wiki/Квадратный_корень";
+Blockly.Msg.MATH_SINGLE_OP_ABSOLUTE = "модуль";
+Blockly.Msg.MATH_SINGLE_OP_ROOT = "квадратный корень";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ABS = "Возвращает модуль числа";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_EXP = "Возвращает е в указанной степени.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LN = "Возвращает натуральный логарифм числа.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LOG10 = "Возвращает десятичный логарифм числа.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_NEG = "Возвращает противоположное число.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_POW10 = "Возвращает 10 в указанной степени.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ROOT = "Возвращает квадратный корень числа.";
+Blockly.Msg.MATH_SUBTRACTION_SYMBOL = "-"; // untranslated
+Blockly.Msg.MATH_TRIG_ACOS = "acos"; // untranslated
+Blockly.Msg.MATH_TRIG_ASIN = "asin"; // untranslated
+Blockly.Msg.MATH_TRIG_ATAN = "atan"; // untranslated
+Blockly.Msg.MATH_TRIG_COS = "cos"; // untranslated
+Blockly.Msg.MATH_TRIG_HELPURL = "https://ru.wikipedia.org/wiki/Тригонометрические_функции";
+Blockly.Msg.MATH_TRIG_SIN = "sin"; // untranslated
+Blockly.Msg.MATH_TRIG_TAN = "tan"; // untranslated
+Blockly.Msg.MATH_TRIG_TOOLTIP_ACOS = "Возвращает арккосинус (в градусах).";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ASIN = "Возвращает арксинус (в градусах).";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ATAN = "Возвращает арктангенс (в градусах)";
+Blockly.Msg.MATH_TRIG_TOOLTIP_COS = "Возвращает косинус угла в градусах.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_SIN = "Возвращает синус угла в градусах.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_TAN = "Возвращает тангенс угла в градусах.";
+Blockly.Msg.NEW_VARIABLE = "Создать переменную…";
+Blockly.Msg.NEW_VARIABLE_TITLE = "Имя новой переменной:";
+Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; // untranslated
+Blockly.Msg.PROCEDURES_ALLOW_STATEMENTS = "разрешить операторы";
+Blockly.Msg.PROCEDURES_BEFORE_PARAMS = "с:";
+Blockly.Msg.PROCEDURES_CALLNORETURN_HELPURL = "https://ru.wikipedia.org/wiki/Функция_%28программирование%29";
+Blockly.Msg.PROCEDURES_CALLNORETURN_TOOLTIP = "Исполняет определённую пользователем процедуру '%1'.";
+Blockly.Msg.PROCEDURES_CALLRETURN_HELPURL = "https://ru.wikipedia.org/wiki/Функция_%28программирование%29";
+Blockly.Msg.PROCEDURES_CALLRETURN_TOOLTIP = "Исполняет определённую пользователем процедуру '%1' и возвращает вычисленное значение.";
+Blockly.Msg.PROCEDURES_CALL_BEFORE_PARAMS = "с:";
+Blockly.Msg.PROCEDURES_CREATE_DO = "Создать вызов '%1'";
+Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT = "Опишите эту функцию…";
+Blockly.Msg.PROCEDURES_DEFNORETURN_DO = ""; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE = "выполнить что-то";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE = "чтобы";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TOOLTIP = "Создаёт процедуру, не возвращающую значение.";
+Blockly.Msg.PROCEDURES_DEFRETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_DEFRETURN_RETURN = "вернуть";
+Blockly.Msg.PROCEDURES_DEFRETURN_TOOLTIP = "Создаёт процедуру, возвращающую значение.";
+Blockly.Msg.PROCEDURES_DEF_DUPLICATE_WARNING = "Предупреждение: эта функция имеет повторяющиеся параметры.";
+Blockly.Msg.PROCEDURES_HIGHLIGHT_DEF = "Выделить определение процедуры";
+Blockly.Msg.PROCEDURES_IFRETURN_HELPURL = "http://c2.com/cgi/wiki?GuardClause";
+Blockly.Msg.PROCEDURES_IFRETURN_TOOLTIP = "Если первое значение истинно, возвращает второе значение.";
+Blockly.Msg.PROCEDURES_IFRETURN_WARNING = "Предупреждение: Этот блок может использоваться только внутри определения функции.";
+Blockly.Msg.PROCEDURES_MUTATORARG_TITLE = "имя параметра:";
+Blockly.Msg.PROCEDURES_MUTATORARG_TOOLTIP = "Добавить входной параметр в функцию.";
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TITLE = "параметры";
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TOOLTIP = "Добавить, удалить или изменить порядок входных параметров для этой функции.";
+Blockly.Msg.REDO = "Повторить";
+Blockly.Msg.REMOVE_COMMENT = "Удалить комментарий";
+Blockly.Msg.RENAME_VARIABLE = "Переименовать переменную…";
+Blockly.Msg.RENAME_VARIABLE_TITLE = "Переименовать все переменные '%1' в:";
+Blockly.Msg.TEXT_APPEND_APPENDTEXT = "добавить текст";
+Blockly.Msg.TEXT_APPEND_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_APPEND_TO = "к";
+Blockly.Msg.TEXT_APPEND_TOOLTIP = "Добавить текст к переменной «%1».";
+Blockly.Msg.TEXT_CHANGECASE_HELPURL = "https://github.com/google/blockly/wiki/Text#adjusting-text-case"; // untranslated
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_LOWERCASE = "в строчные буквы";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_TITLECASE = "в Заглавные Начальные Буквы";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_UPPERCASE = "в ЗАГЛАВНЫЕ БУКВЫ";
+Blockly.Msg.TEXT_CHANGECASE_TOOLTIP = "Возвращает копию текста с ЗАГЛАВНЫМИ или строчными буквами.";
+Blockly.Msg.TEXT_CHARAT_FIRST = "взять первую букву";
+Blockly.Msg.TEXT_CHARAT_FROM_END = "взять букву № с конца";
+Blockly.Msg.TEXT_CHARAT_FROM_START = "взять букву №";
+Blockly.Msg.TEXT_CHARAT_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-text"; // untranslated
+Blockly.Msg.TEXT_CHARAT_INPUT_INTEXT = "в тексте";
+Blockly.Msg.TEXT_CHARAT_LAST = "взять последнюю букву";
+Blockly.Msg.TEXT_CHARAT_RANDOM = "взять случайную букву";
+Blockly.Msg.TEXT_CHARAT_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_CHARAT_TOOLTIP = "Возвращает букву в указанной позиции.";
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TOOLTIP = "Добавить элемент к тексту.";
+Blockly.Msg.TEXT_CREATE_JOIN_TITLE_JOIN = "соединить";
+Blockly.Msg.TEXT_CREATE_JOIN_TOOLTIP = "Добавьте, удалите, переставьте фрагменты для переделки текстового блока.";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_END = "по букву № с конца";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_START = "по букву №";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_LAST = "по последнюю букву";
+Blockly.Msg.TEXT_GET_SUBSTRING_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_INPUT_IN_TEXT = "в тексте";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FIRST = "взять подстроку с первой буквы";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_END = "взять подстроку с буквы № с конца";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_START = "взять подстроку с буквы №";
+Blockly.Msg.TEXT_GET_SUBSTRING_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_TOOLTIP = "Возвращает указанную часть текста.";
+Blockly.Msg.TEXT_INDEXOF_HELPURL = "https://github.com/google/blockly/wiki/Text#finding-text"; // untranslated
+Blockly.Msg.TEXT_INDEXOF_INPUT_INTEXT = "в тексте";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_FIRST = "найти первое вхождение текста";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_LAST = "найти последнее вхождение текста";
+Blockly.Msg.TEXT_INDEXOF_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_INDEXOF_TOOLTIP = "Возвращает номер позиции первого/последнего вхождения первого текста во втором. Возвращает %1, если текст не найден.";
+Blockly.Msg.TEXT_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Text#checking-for-empty-text"; // untranslated
+Blockly.Msg.TEXT_ISEMPTY_TITLE = "%1 пуст";
+Blockly.Msg.TEXT_ISEMPTY_TOOLTIP = "Возвращает значение истина, если предоставленный текст пуст.";
+Blockly.Msg.TEXT_JOIN_HELPURL = "https://github.com/google/blockly/wiki/Text#text-creation"; // untranslated
+Blockly.Msg.TEXT_JOIN_TITLE_CREATEWITH = "создать текст из";
+Blockly.Msg.TEXT_JOIN_TOOLTIP = "Создаёт фрагмент текста, объединяя любое число элементов";
+Blockly.Msg.TEXT_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_LENGTH_TITLE = "длина %1";
+Blockly.Msg.TEXT_LENGTH_TOOLTIP = "Возвращает число символов (включая пробелы) в заданном тексте.";
+Blockly.Msg.TEXT_PRINT_HELPURL = "https://github.com/google/blockly/wiki/Text#printing-text"; // untranslated
+Blockly.Msg.TEXT_PRINT_TITLE = "напечатать %1";
+Blockly.Msg.TEXT_PRINT_TOOLTIP = "Печатает текст, число или другой объект.";
+Blockly.Msg.TEXT_PROMPT_HELPURL = "https://github.com/google/blockly/wiki/Text#getting-input-from-the-user"; // untranslated
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_NUMBER = "Запросить у пользователя число.";
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_TEXT = "Запросить у пользователя текст.";
+Blockly.Msg.TEXT_PROMPT_TYPE_NUMBER = "запросить число с подсказкой";
+Blockly.Msg.TEXT_PROMPT_TYPE_TEXT = "запросить текст с подсказкой";
+Blockly.Msg.TEXT_TEXT_HELPURL = "https://ru.wikipedia.org/wiki/Строковый_тип";
+Blockly.Msg.TEXT_TEXT_TOOLTIP = "Буква, слово или строка текста.";
+Blockly.Msg.TEXT_TRIM_HELPURL = "https://github.com/google/blockly/wiki/Text#trimming-removing-spaces"; // untranslated
+Blockly.Msg.TEXT_TRIM_OPERATOR_BOTH = "обрезать пробелы с двух сторон";
+Blockly.Msg.TEXT_TRIM_OPERATOR_LEFT = "обрезать пробелы слева";
+Blockly.Msg.TEXT_TRIM_OPERATOR_RIGHT = "обрезать пробелы справа";
+Blockly.Msg.TEXT_TRIM_TOOLTIP = "Возвращает копию текста с пробелами, удалеными с одного или обоих концов.";
+Blockly.Msg.TODAY = "Сегодня";
+Blockly.Msg.UNDO = "Отменить";
+Blockly.Msg.VARIABLES_DEFAULT_NAME = "элемент";
+Blockly.Msg.VARIABLES_GET_CREATE_SET = "Создать блок \"присвоить\" для %1";
+Blockly.Msg.VARIABLES_GET_HELPURL = "https://github.com/google/blockly/wiki/Variables#get"; // untranslated
+Blockly.Msg.VARIABLES_GET_TOOLTIP = "Возвращает значение этой переменной.";
+Blockly.Msg.VARIABLES_SET = "присвоить %1 = %2";
+Blockly.Msg.VARIABLES_SET_CREATE_GET = "Создать вставку %1";
+Blockly.Msg.VARIABLES_SET_HELPURL = "https://github.com/google/blockly/wiki/Variables#set"; // untranslated
+Blockly.Msg.VARIABLES_SET_TOOLTIP = "Присваивает переменной значение вставки.";
+Blockly.Msg.VARIABLE_ALREADY_EXISTS = "Переменная с именем '%1' уже существует.";
+Blockly.Msg.PROCEDURES_DEFRETURN_TITLE = Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE;
+Blockly.Msg.CONTROLS_IF_IF_TITLE_IF = Blockly.Msg.CONTROLS_IF_MSG_IF;
+Blockly.Msg.CONTROLS_WHILEUNTIL_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_MSG_THEN = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_ELSE_TITLE_ELSE = Blockly.Msg.CONTROLS_IF_MSG_ELSE;
+Blockly.Msg.PROCEDURES_DEFRETURN_PROCEDURE = Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE;
+Blockly.Msg.LISTS_GET_SUBLIST_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.LISTS_GET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.PROCEDURES_DEFRETURN_DO = Blockly.Msg.PROCEDURES_DEFNORETURN_DO;
+Blockly.Msg.CONTROLS_IF_ELSEIF_TITLE_ELSEIF = Blockly.Msg.CONTROLS_IF_MSG_ELSEIF;
+Blockly.Msg.LISTS_GET_INDEX_HELPURL = Blockly.Msg.LISTS_INDEX_OF_HELPURL;
+Blockly.Msg.CONTROLS_FOREACH_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_SET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TITLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_APPEND_VARIABLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.LISTS_INDEX_OF_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.PROCEDURES_DEFRETURN_COMMENT = Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT; \ No newline at end of file
diff --git a/blockly/msg/js/sc.js b/blockly/msg/js/sc.js
new file mode 100644
index 0000000..bb4b2ff
--- /dev/null
+++ b/blockly/msg/js/sc.js
@@ -0,0 +1,391 @@
+// This file was automatically generated. Do not modify.
+
+'use strict';
+
+goog.provide('Blockly.Msg.sc');
+
+goog.require('Blockly.Msg');
+
+Blockly.Msg.ADD_COMMENT = "Agiunghe unu cumentu";
+Blockly.Msg.CHANGE_VALUE_TITLE = "Muda valori:";
+Blockly.Msg.CLEAN_UP = "Lìmpia is brocus";
+Blockly.Msg.COLLAPSE_ALL = "Serra e stringi Brocus";
+Blockly.Msg.COLLAPSE_BLOCK = "Serra e stringi Brocu";
+Blockly.Msg.COLOUR_BLEND_COLOUR1 = "colori 1";
+Blockly.Msg.COLOUR_BLEND_COLOUR2 = "colori 2";
+Blockly.Msg.COLOUR_BLEND_HELPURL = "http://meyerweb.com/eric/tools/color-blend/"; // untranslated
+Blockly.Msg.COLOUR_BLEND_RATIO = "raportu";
+Blockly.Msg.COLOUR_BLEND_TITLE = "mestura";
+Blockly.Msg.COLOUR_BLEND_TOOLTIP = "Amestura duus coloris cun unu raportu (0.0 - 1.0).";
+Blockly.Msg.COLOUR_PICKER_HELPURL = "https://en.wikipedia.org/wiki/Color";
+Blockly.Msg.COLOUR_PICKER_TOOLTIP = "Scebera unu colori de sa tauledda.";
+Blockly.Msg.COLOUR_RANDOM_HELPURL = "http://randomcolour.com"; // untranslated
+Blockly.Msg.COLOUR_RANDOM_TITLE = "Unu colori a brítiu";
+Blockly.Msg.COLOUR_RANDOM_TOOLTIP = "Scebera unu colori a brítiu.";
+Blockly.Msg.COLOUR_RGB_BLUE = "blue";
+Blockly.Msg.COLOUR_RGB_GREEN = "birdi";
+Blockly.Msg.COLOUR_RGB_HELPURL = "http://www.december.com/html/spec/colorper.html"; // untranslated
+Blockly.Msg.COLOUR_RGB_RED = "arrùbiu";
+Blockly.Msg.COLOUR_RGB_TITLE = "colora cun";
+Blockly.Msg.COLOUR_RGB_TOOLTIP = "Cuncorda unu colori cun su tanti de arrubiu, birdi, e blue. Totu is valoris depint essi intra 0 e 100.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_HELPURL = "https://github.com/google/blockly/wiki/Loops#loop-termination-blocks"; // untranslated
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK = "sàrtiat a foras de sa lòriga";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE = "sighit cun su repicu afatànti";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK = "Bessit de sa lòriga.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE = "Sartiat su chi abarrat de sa loriga, e sighit cun su repicu afatànti.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_WARNING = "Amonestu: Custu brocu ddu podis ponni sceti aintru de una lòriga.";
+Blockly.Msg.CONTROLS_FOREACH_HELPURL = "https://github.com/google/blockly/wiki/Loops#for-each"; // untranslated
+Blockly.Msg.CONTROLS_FOREACH_TITLE = "po dònnia item %1 in lista %2";
+Blockly.Msg.CONTROLS_FOREACH_TOOLTIP = "Po dònnia item in sa lista, ponit sa variàbili '%1' pari a s'item, e tandu fait pariga de cumandus.";
+Blockly.Msg.CONTROLS_FOR_HELPURL = "https://github.com/google/blockly/wiki/Loops#count-with"; // untranslated
+Blockly.Msg.CONTROLS_FOR_TITLE = "po %1 de %2 fintzas %3 a passus de %4";
+Blockly.Msg.CONTROLS_FOR_TOOLTIP = "Fait pigai a sa variàbili \"%1\" i valoris de su primu numeru a s'urtimu, a su passu impostau e fait su brocu.";
+Blockly.Msg.CONTROLS_IF_ELSEIF_TOOLTIP = "Aciungi una cunditzioni a su brocu si.";
+Blockly.Msg.CONTROLS_IF_ELSE_TOOLTIP = "Aciungi una urtima cunditzioni piga-totu a su brocu si.";
+Blockly.Msg.CONTROLS_IF_HELPURL = "https://github.com/google/blockly/wiki/IfElse"; // untranslated
+Blockly.Msg.CONTROLS_IF_IF_TOOLTIP = "Aciungi, fùlia, o assenta is partis po torrai a sètiu custu brocu si.";
+Blockly.Msg.CONTROLS_IF_MSG_ELSE = "sinuncas";
+Blockly.Msg.CONTROLS_IF_MSG_ELSEIF = "sinuncas si";
+Blockly.Msg.CONTROLS_IF_MSG_IF = "si";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_1 = "Si su valori est berus, tandu fait pariga de cumandus.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_2 = "Si su valori est berus, tandu fai su primu brocu de is cumandus. Sinuncas, fai su segundu brocu de is cumandus.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_3 = "Si su primu valori est beridadi, tandu fai su primu brocu de is cumandus. Sinuncas, si su segundu valori est beridadi, fai su segundu brocu de is cumandus.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_4 = "Si su primu valori est berus, tandu fai su primu brocu de is cumandus. Sinuncas, si su segundu valori est berus, fai su segundu brocu de is cumandus. Si mancu unu valori est berus, tandu fai s'urtimu brocu de is cumandus.";
+Blockly.Msg.CONTROLS_REPEAT_HELPURL = "https://en.wikipedia.org/wiki/For_loop";
+Blockly.Msg.CONTROLS_REPEAT_INPUT_DO = "fai";
+Blockly.Msg.CONTROLS_REPEAT_TITLE = "repiti %1 bortas";
+Blockly.Msg.CONTROLS_REPEAT_TOOLTIP = "Fait pariga de cumandus prus bortas.";
+Blockly.Msg.CONTROLS_WHILEUNTIL_HELPURL = "https://github.com/google/blockly/wiki/Loops#repeat"; // untranslated
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "repiti fintzas";
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "repiti interis";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "Interis su valori est frassu, tandu fai pariga de cumandus.";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "Interis su valori est berus, tandu fai pariga de cumandus.";
+Blockly.Msg.DELETE_ALL_BLOCKS = "Scancellu su %1 de is brocus?";
+Blockly.Msg.DELETE_BLOCK = "Fùlia Blocu";
+Blockly.Msg.DELETE_VARIABLE = "Delete the '%1' variable"; // untranslated
+Blockly.Msg.DELETE_VARIABLE_CONFIRMATION = "Delete %1 uses of the '%2' variable?"; // untranslated
+Blockly.Msg.DELETE_X_BLOCKS = "Fulia %1 Blocus";
+Blockly.Msg.DISABLE_BLOCK = "Disabìlita Blocu";
+Blockly.Msg.DUPLICATE_BLOCK = "Dùplica";
+Blockly.Msg.ENABLE_BLOCK = "Abìlita Blocu";
+Blockly.Msg.EXPAND_ALL = "Aberi Brocus";
+Blockly.Msg.EXPAND_BLOCK = "Aberi Brocu";
+Blockly.Msg.EXTERNAL_INPUTS = "Intradas esternas";
+Blockly.Msg.HELP = "Agiudu";
+Blockly.Msg.INLINE_INPUTS = "Intradas in lìnia";
+Blockly.Msg.LISTS_CREATE_EMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-empty-list"; // untranslated
+Blockly.Msg.LISTS_CREATE_EMPTY_TITLE = "fait una lista buida";
+Blockly.Msg.LISTS_CREATE_EMPTY_TOOLTIP = "Torrat una lista, de longària 0, chena records de datus.";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TITLE_ADD = "lista";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TOOLTIP = "Aciungi, fùlia, o assenta is partis po torrai a sètiu custu brocu lista.";
+Blockly.Msg.LISTS_CREATE_WITH_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
+Blockly.Msg.LISTS_CREATE_WITH_INPUT_WITH = "fait una lista cun";
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TOOLTIP = "Acciungi unu item a sa lista.";
+Blockly.Msg.LISTS_CREATE_WITH_TOOLTIP = "Fait una lista cun calisiollat numeru de items.";
+Blockly.Msg.LISTS_GET_INDEX_FIRST = "primu";
+Blockly.Msg.LISTS_GET_INDEX_FROM_END = "# de sa fini";
+Blockly.Msg.LISTS_GET_INDEX_FROM_START = "#"; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_GET = "piga";
+Blockly.Msg.LISTS_GET_INDEX_GET_REMOVE = "piga e fùlia";
+Blockly.Msg.LISTS_GET_INDEX_LAST = "urtimu";
+Blockly.Msg.LISTS_GET_INDEX_RANDOM = "a brìtiu (random)";
+Blockly.Msg.LISTS_GET_INDEX_REMOVE = "fùlia";
+Blockly.Msg.LISTS_GET_INDEX_TAIL = ""; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FIRST = "Torrat su primu elementu de una lista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FROM = "Torrat s'elementu de su postu inditau de una lista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_LAST = "Torrat s'urtimu elementu de una lista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_RANDOM = "Torrat un'elementu a brìtiu de una lista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST = "Fùliat e torrat su primu elementu de una lista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM = "Fùliat e torrat s'elementu de su postu inditau de una lista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST = "Fùliat e torrat s'urtimu elementu de una lista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM = "Fùliat e torrat un'elementu a brìtiu de una lista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST = "Fùliat su primu elementu de una lista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM = "Fùliat s'elementu de su postu inditau de una lista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST = "Fùliat s'urtimu elementu de una lista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM = "Fùliat unu elementu a brìtiu de una lista.";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_END = "a # de sa fini";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_START = "fintzas a #";
+Blockly.Msg.LISTS_GET_SUBLIST_END_LAST = "a s'urtimu";
+Blockly.Msg.LISTS_GET_SUBLIST_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-a-sublist"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_START_FIRST = "bogandi suta-lista de su primu";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_END = "bogandi suta-lista de # de sa fini.";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_START = "bogandi suta-lista de #";
+Blockly.Msg.LISTS_GET_SUBLIST_TAIL = ""; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_TOOLTIP = "Fait una copia de sa parti inditada de sa lista.";
+Blockly.Msg.LISTS_INDEX_FROM_END_TOOLTIP = "%1 est po s'urtimu elementu.";
+Blockly.Msg.LISTS_INDEX_FROM_START_TOOLTIP = "%1 est po su primu elementu.";
+Blockly.Msg.LISTS_INDEX_OF_FIRST = "circa prima ocasioni de s'item";
+Blockly.Msg.LISTS_INDEX_OF_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-items-from-a-list"; // untranslated
+Blockly.Msg.LISTS_INDEX_OF_LAST = "circa urtima ocasioni de s'item";
+Blockly.Msg.LISTS_INDEX_OF_TOOLTIP = "Torrat s'indixi de sa primu/urtima ocasioni de s'item in sa lista. Torrat %1 si s'item non s'agatat.";
+Blockly.Msg.LISTS_INLIST = "in lista";
+Blockly.Msg.LISTS_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#is-empty"; // untranslated
+Blockly.Msg.LISTS_ISEMPTY_TITLE = "%1 est buidu";
+Blockly.Msg.LISTS_ISEMPTY_TOOLTIP = "Torrat berus si sa lista est buida.";
+Blockly.Msg.LISTS_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Lists#length-of"; // untranslated
+Blockly.Msg.LISTS_LENGTH_TITLE = "longària de %1";
+Blockly.Msg.LISTS_LENGTH_TOOLTIP = "Torrat sa longària de una lista.";
+Blockly.Msg.LISTS_REPEAT_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
+Blockly.Msg.LISTS_REPEAT_TITLE = "fait una lista cun item %1 repitiu %2 bortas";
+Blockly.Msg.LISTS_REPEAT_TOOLTIP = "Fait una lista cun unu numeru giau repitiu su tanti de is bortas inditadas.";
+Blockly.Msg.LISTS_SET_INDEX_HELPURL = "https://github.com/google/blockly/wiki/Lists#in-list--set"; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_INPUT_TO = "a";
+Blockly.Msg.LISTS_SET_INDEX_INSERT = "inserta a";
+Blockly.Msg.LISTS_SET_INDEX_SET = "imposta";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST = "Insertat s'elementu a su cumintzu de sa lista.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FROM = "Insertat s'elementu in su postu inditau in una lista.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_LAST = "Aciungit s'elementu a sa fini de sa lista.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM = "Aciungit s'elementu a brítiu in sa lista.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FIRST = "Impostat su primu elementu in una lista.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FROM = "Impostat s'elementu in su postu inditau de una lista.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_LAST = "Impostat s'urtimu elementu in una lista.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_RANDOM = "Impostat unu elementu random in una lista.";
+Blockly.Msg.LISTS_SORT_HELPURL = "https://github.com/google/blockly/wiki/Lists#sorting-a-list"; // untranslated
+Blockly.Msg.LISTS_SORT_ORDER_ASCENDING = "ascending"; // untranslated
+Blockly.Msg.LISTS_SORT_ORDER_DESCENDING = "descending"; // untranslated
+Blockly.Msg.LISTS_SORT_TITLE = "sort %1 %2 %3"; // untranslated
+Blockly.Msg.LISTS_SORT_TOOLTIP = "Sort a copy of a list."; // untranslated
+Blockly.Msg.LISTS_SORT_TYPE_IGNORECASE = "alphabetic, ignore case"; // untranslated
+Blockly.Msg.LISTS_SORT_TYPE_NUMERIC = "numeric"; // untranslated
+Blockly.Msg.LISTS_SORT_TYPE_TEXT = "alphabetic"; // untranslated
+Blockly.Msg.LISTS_SPLIT_HELPURL = "https://github.com/google/blockly/wiki/Lists#splitting-strings-and-joining-lists"; // untranslated
+Blockly.Msg.LISTS_SPLIT_LIST_FROM_TEXT = "fai una lista de unu testu";
+Blockly.Msg.LISTS_SPLIT_TEXT_FROM_LIST = "fai unu testu de una lista";
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_JOIN = "Auni una lista de testus in d-unu sceti, ponendi separadoris.";
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_SPLIT = "Dividi su testu in un'elencu de testus, firmendi po dònnia separadori.";
+Blockly.Msg.LISTS_SPLIT_WITH_DELIMITER = "cun separadori";
+Blockly.Msg.LOGIC_BOOLEAN_FALSE = "frassu";
+Blockly.Msg.LOGIC_BOOLEAN_HELPURL = "https://github.com/google/blockly/wiki/Logic#values"; // untranslated
+Blockly.Msg.LOGIC_BOOLEAN_TOOLTIP = "Torrat berus o frassu.";
+Blockly.Msg.LOGIC_BOOLEAN_TRUE = "berus";
+Blockly.Msg.LOGIC_COMPARE_HELPURL = "https://en.wikipedia.org/wiki/Inequality_(mathematics)";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_EQ = "Torrat berus si is inputs funt unu uguali a s'àteru.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GT = "Torrat berus si su primu input est prus mannu de s'àteru.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GTE = "Torrat berus si su primu input est prus mannu o uguali a s'àteru.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LT = "Torrat berus si su primu input est prus piticu de s'àteru.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LTE = "Torrat berus si su primu input est prus piticu o uguali a s'àteru.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_NEQ = "Torrat berus si is inputs non funt unu uguali a s'àteru.";
+Blockly.Msg.LOGIC_NEGATE_HELPURL = "https://github.com/google/blockly/wiki/Logic#not"; // untranslated
+Blockly.Msg.LOGIC_NEGATE_TITLE = "non %1";
+Blockly.Msg.LOGIC_NEGATE_TOOLTIP = "Torrat berus si s'input est frassu. Torrat frassu si s'input est berus.";
+Blockly.Msg.LOGIC_NULL = "null";
+Blockly.Msg.LOGIC_NULL_HELPURL = "https://en.wikipedia.org/wiki/Nullable_type"; // untranslated
+Blockly.Msg.LOGIC_NULL_TOOLTIP = "Torrat null.";
+Blockly.Msg.LOGIC_OPERATION_AND = "and";
+Blockly.Msg.LOGIC_OPERATION_HELPURL = "https://github.com/google/blockly/wiki/Logic#logical-operations"; // untranslated
+Blockly.Msg.LOGIC_OPERATION_OR = "or";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_AND = "Torrat berus si ambos is inputs funt berus.";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_OR = "Torrat berus si assumancu unu de is inputs est berus.";
+Blockly.Msg.LOGIC_TERNARY_CONDITION = "cumpròa";
+Blockly.Msg.LOGIC_TERNARY_HELPURL = "https://en.wikipedia.org/wiki/%3F:"; // untranslated
+Blockly.Msg.LOGIC_TERNARY_IF_FALSE = "si frassu";
+Blockly.Msg.LOGIC_TERNARY_IF_TRUE = "si berus";
+Blockly.Msg.LOGIC_TERNARY_TOOLTIP = "‎Cumproa sa cunditzioni in 'cumproa'. Si sa cunditzioni est berus, torrat su valori 'si berus'; sinuncas torrat su valori 'si frassu'.";
+Blockly.Msg.MATH_ADDITION_SYMBOL = "+"; // untranslated
+Blockly.Msg.MATH_ARITHMETIC_HELPURL = "https://en.wikipedia.org/wiki/Arithmetic";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_ADD = "Torrat sa summa de is duus nùmerus.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE = "Torrat su cuotzienti de is duus nùmerus.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MINUS = "Torrat sa diferèntzia de is duus nùmerus.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MULTIPLY = "Torrat su produtu de is duus nùmerus.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_POWER = "Torrat su primu numeru artziau a sa potenza de su segundu nùmeru.";
+Blockly.Msg.MATH_CHANGE_HELPURL = "https://en.wikipedia.org/wiki/Programming_idiom#Incrementing_a_counter";
+Blockly.Msg.MATH_CHANGE_TITLE = "muda %1 de %2";
+Blockly.Msg.MATH_CHANGE_TOOLTIP = "Aciungi unu numeru a sa variabili '%1'.";
+Blockly.Msg.MATH_CONSTANT_HELPURL = "https://en.wikipedia.org/wiki/Mathematical_constant";
+Blockly.Msg.MATH_CONSTANT_TOOLTIP = "Torrat una de is costantis comunas: π (3.141…), e (2.718…), φ (1.618…), sqrt(2) (1.414…), sqrt(½) (0.707…), o ∞ (infiniu).";
+Blockly.Msg.MATH_CONSTRAIN_HELPURL = "https://en.wikipedia.org/wiki/Clamping_%28graphics%29"; // untranslated
+Blockly.Msg.MATH_CONSTRAIN_TITLE = "custringi %1 de %2 a %3";
+Blockly.Msg.MATH_CONSTRAIN_TOOLTIP = "Custringi unu numeru aintru de is liminaxus giaus (cumprendius).";
+Blockly.Msg.MATH_DIVISION_SYMBOL = "÷"; // untranslated
+Blockly.Msg.MATH_IS_DIVISIBLE_BY = "fait a ddu dividi po";
+Blockly.Msg.MATH_IS_EVEN = "est paris";
+Blockly.Msg.MATH_IS_NEGATIVE = "est negativu";
+Blockly.Msg.MATH_IS_ODD = "est dísparu";
+Blockly.Msg.MATH_IS_POSITIVE = "est positivu";
+Blockly.Msg.MATH_IS_PRIME = "est primu";
+Blockly.Msg.MATH_IS_TOOLTIP = "Cumprova si unu numeru est paris, dìsparis, primu, intreu, positivu, negativu o si fait a ddu dividi po unu numeru giau. Torrat berus o frassu.";
+Blockly.Msg.MATH_IS_WHOLE = "est intreu";
+Blockly.Msg.MATH_MODULO_HELPURL = "https://en.wikipedia.org/wiki/Modulo_operation";
+Blockly.Msg.MATH_MODULO_TITLE = "arrestu de %1 ÷ %2";
+Blockly.Msg.MATH_MODULO_TOOLTIP = "Torrat s'arrestu de sa divisioni de duus numerus.";
+Blockly.Msg.MATH_MULTIPLICATION_SYMBOL = "×"; // untranslated
+Blockly.Msg.MATH_NUMBER_HELPURL = "https://en.wikipedia.org/wiki/Number";
+Blockly.Msg.MATH_NUMBER_TOOLTIP = "Unu numeru";
+Blockly.Msg.MATH_ONLIST_HELPURL = ""; // untranslated
+Blockly.Msg.MATH_ONLIST_OPERATOR_AVERAGE = "mèdia de sa lista";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MAX = "massimu de sa lista";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MEDIAN = "medianu de sa lista";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MIN = "minimu de sa lista";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MODE = "modas de sa lista";
+Blockly.Msg.MATH_ONLIST_OPERATOR_RANDOM = "unu item a brìtiu de sa lista";
+Blockly.Msg.MATH_ONLIST_OPERATOR_STD_DEV = "deviadura standard de sa lista";
+Blockly.Msg.MATH_ONLIST_OPERATOR_SUM = "suma sa lista";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_AVERAGE = "Torrat sa mèdia (aritimètica) de is valoris de sa lista.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MAX = "Torrat su numeru prus mannu de sa lista";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MEDIAN = "Torrat su numeru medianu de sa lista.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MIN = "Torrat su numeru prus piticu de sa lista.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MODE = "Torrat una lista de is itams prus frecuentis de sa lista.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_RANDOM = "Torrat unu item a brìtiu de sa lista.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_STD_DEV = "Torrat sa deviadura standard de sa lista.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_SUM = "Torrat sa suma de totu is numerus de sa lista.";
+Blockly.Msg.MATH_POWER_SYMBOL = "^"; // untranslated
+Blockly.Msg.MATH_RANDOM_FLOAT_HELPURL = "https://en.wikipedia.org/wiki/Random_number_generation";
+Blockly.Msg.MATH_RANDOM_FLOAT_TITLE_RANDOM = "una fratzioni a brìtiu";
+Blockly.Msg.MATH_RANDOM_FLOAT_TOOLTIP = "Torrat una fratzioni a brìtiu intra 0.0 (cumpresu) e 1.0 (bogau).";
+Blockly.Msg.MATH_RANDOM_INT_HELPURL = "https://en.wikipedia.org/wiki/Random_number_generation";
+Blockly.Msg.MATH_RANDOM_INT_TITLE = "numeru intreu a brítiu de %1 a %2";
+Blockly.Msg.MATH_RANDOM_INT_TOOLTIP = "Torrat unu numeru intreu a brìtiu intra duus nùmerus giaus (cumpresus).";
+Blockly.Msg.MATH_ROUND_HELPURL = "https://en.wikipedia.org/wiki/Rounding";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUND = "arretunda";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDDOWN = "arretunda faci a bàsciu.";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDUP = "Arretunda faci a susu";
+Blockly.Msg.MATH_ROUND_TOOLTIP = "Arretunda unu numeru faci a susu o faci a bàsciu.";
+Blockly.Msg.MATH_SINGLE_HELPURL = "https://en.wikipedia.org/wiki/Square_root";
+Blockly.Msg.MATH_SINGLE_OP_ABSOLUTE = "assolutu";
+Blockly.Msg.MATH_SINGLE_OP_ROOT = "arraxina cuadra";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ABS = "Torrat su valori assolútu de unu numeru.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_EXP = "Torrat (e) a sa potèntzia de unu numeru.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LN = "Torrat su logaritmu naturali de unu numeru.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LOG10 = "Torrat su logaritmu a basi 10 de unu numeru.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_NEG = "Torrat su valori negau de unu numeru.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_POW10 = "Torrat (10) a sa potèntzia de unu numeru.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ROOT = "Torrat s'arraxina cuadra de unu numeru.";
+Blockly.Msg.MATH_SUBTRACTION_SYMBOL = "-"; // untranslated
+Blockly.Msg.MATH_TRIG_ACOS = "acos"; // untranslated
+Blockly.Msg.MATH_TRIG_ASIN = "asin"; // untranslated
+Blockly.Msg.MATH_TRIG_ATAN = "atan"; // untranslated
+Blockly.Msg.MATH_TRIG_COS = "cos"; // untranslated
+Blockly.Msg.MATH_TRIG_HELPURL = "https://en.wikipedia.org/wiki/Trigonometric_functions";
+Blockly.Msg.MATH_TRIG_SIN = "sin"; // untranslated
+Blockly.Msg.MATH_TRIG_TAN = "tan"; // untranslated
+Blockly.Msg.MATH_TRIG_TOOLTIP_ACOS = "Torrat su arccosinu de unu numeru.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ASIN = "Torrat su arcsinu de unu numeru.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ATAN = "Torrat su arctangenti de unu numeru.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_COS = "Torrat su cosinu de unu gradu (no radianti).";
+Blockly.Msg.MATH_TRIG_TOOLTIP_SIN = "Torrat su sinu de unu gradu (no radianti).";
+Blockly.Msg.MATH_TRIG_TOOLTIP_TAN = "Torrat sa tangenti de unu gradu (no radianti).";
+Blockly.Msg.NEW_VARIABLE = "Variabili noa...";
+Blockly.Msg.NEW_VARIABLE_TITLE = "Nòmini de sa variabili noa:";
+Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; // untranslated
+Blockly.Msg.PROCEDURES_ALLOW_STATEMENTS = "permiti decraratzionis";
+Blockly.Msg.PROCEDURES_BEFORE_PARAMS = "con:";
+Blockly.Msg.PROCEDURES_CALLNORETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29";
+Blockly.Msg.PROCEDURES_CALLNORETURN_TOOLTIP = "Arròllia sa funtzione '%1' cuncordada dae s'impitadore.";
+Blockly.Msg.PROCEDURES_CALLRETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29";
+Blockly.Msg.PROCEDURES_CALLRETURN_TOOLTIP = "Arròllia sa funtzione '%1' cuncordada dae s'impitadore e imprea s'output suu.";
+Blockly.Msg.PROCEDURES_CALL_BEFORE_PARAMS = "cun";
+Blockly.Msg.PROCEDURES_CREATE_DO = "Ingenerau'%1'";
+Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT = "Describe this function..."; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_DO = ""; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE = "fait calincuna cosa";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE = "po";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TOOLTIP = "Fait una funtzioni chena output.";
+Blockly.Msg.PROCEDURES_DEFRETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_DEFRETURN_RETURN = "torrat";
+Blockly.Msg.PROCEDURES_DEFRETURN_TOOLTIP = "Fait una funtzioni cun output.";
+Blockly.Msg.PROCEDURES_DEF_DUPLICATE_WARNING = "Amonestu: Custa funtzioni tenit parametrus duplicaus.";
+Blockly.Msg.PROCEDURES_HIGHLIGHT_DEF = "Marca sa definitzioni de funtzioni.";
+Blockly.Msg.PROCEDURES_IFRETURN_HELPURL = "http://c2.com/cgi/wiki?GuardClause"; // untranslated
+Blockly.Msg.PROCEDURES_IFRETURN_TOOLTIP = "Si unu valori est berus, tandu torrat unu segundu valori.";
+Blockly.Msg.PROCEDURES_IFRETURN_WARNING = "Amonestu: Custu brocu ddu podis ponni sceti aintru de una funtzioni.";
+Blockly.Msg.PROCEDURES_MUTATORARG_TITLE = "nomini input:";
+Blockly.Msg.PROCEDURES_MUTATORARG_TOOLTIP = "Aciungi un input a sa funtzioni.";
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TITLE = "inputs";
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TOOLTIP = "Aciungi, fùlia, o assenta is inputs a custa funtzioni.";
+Blockly.Msg.REDO = "Redo"; // untranslated
+Blockly.Msg.REMOVE_COMMENT = "Fùlia unu cumentu";
+Blockly.Msg.RENAME_VARIABLE = "Muda nòmini a variabili...";
+Blockly.Msg.RENAME_VARIABLE_TITLE = "A is variabilis '%1' muda nòmini a:";
+Blockly.Msg.TEXT_APPEND_APPENDTEXT = "acciungi su testu";
+Blockly.Msg.TEXT_APPEND_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_APPEND_TO = "a";
+Blockly.Msg.TEXT_APPEND_TOOLTIP = "Aciungit testu a sa variàbili '%1'.";
+Blockly.Msg.TEXT_CHANGECASE_HELPURL = "https://github.com/google/blockly/wiki/Text#adjusting-text-case"; // untranslated
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_LOWERCASE = "a minúdu";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_TITLECASE = "cun Primu lìtera a Mauschínu";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_UPPERCASE = "a mauschínu";
+Blockly.Msg.TEXT_CHANGECASE_TOOLTIP = "Torrat una copia de su testu inditau mudendi mauschínu/minúdu.";
+Blockly.Msg.TEXT_CHARAT_FIRST = "piga sa prima lìtera";
+Blockly.Msg.TEXT_CHARAT_FROM_END = "piga sa lìtera # de sa fini";
+Blockly.Msg.TEXT_CHARAT_FROM_START = "piga sa lìtera #";
+Blockly.Msg.TEXT_CHARAT_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-text"; // untranslated
+Blockly.Msg.TEXT_CHARAT_INPUT_INTEXT = "in su testu";
+Blockly.Msg.TEXT_CHARAT_LAST = "piga s'urtima lìtera";
+Blockly.Msg.TEXT_CHARAT_RANDOM = "piga una lìtera a brìtiu";
+Blockly.Msg.TEXT_CHARAT_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_CHARAT_TOOLTIP = "Torrat sa lìtera de su postu giau.";
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TOOLTIP = "Acciungi unu item a su testu.";
+Blockly.Msg.TEXT_CREATE_JOIN_TITLE_JOIN = "auni a pari";
+Blockly.Msg.TEXT_CREATE_JOIN_TOOLTIP = "Aciungi, fùlia, o assenta is partis po torrai a sètiu custu brocu de testu.";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_END = "a sa lìtera # de sa fini";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_START = "a sa lìtera #";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_LAST = "a s'urtima lìtera";
+Blockly.Msg.TEXT_GET_SUBSTRING_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_INPUT_IN_TEXT = "in su testu";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FIRST = "piga suta-stringa de sa primu lìtera";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_END = "piga suta-stringa de sa lìtera # fintzas a fini";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_START = "piga suta-stringa de sa lìtera #";
+Blockly.Msg.TEXT_GET_SUBSTRING_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_TOOLTIP = "Torrat su testu inditau.";
+Blockly.Msg.TEXT_INDEXOF_HELPURL = "https://github.com/google/blockly/wiki/Text#finding-text"; // untranslated
+Blockly.Msg.TEXT_INDEXOF_INPUT_INTEXT = "in su testu";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_FIRST = "circa prima ocasioni de su testu";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_LAST = "circa urtima ocasioni de su testu";
+Blockly.Msg.TEXT_INDEXOF_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_INDEXOF_TOOLTIP = "Torrat s'indixi de sa primu/urtima ocasioni de su primu testu in su segundu testu. Torrat %1 si su testu no ddu agatat.";
+Blockly.Msg.TEXT_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Text#checking-for-empty-text"; // untranslated
+Blockly.Msg.TEXT_ISEMPTY_TITLE = "%1 est buidu";
+Blockly.Msg.TEXT_ISEMPTY_TOOLTIP = "Torrat berus si su testu giau est buidu.";
+Blockly.Msg.TEXT_JOIN_HELPURL = "https://github.com/google/blockly/wiki/Text#text-creation"; // untranslated
+Blockly.Msg.TEXT_JOIN_TITLE_CREATEWITH = "scri testu cun";
+Blockly.Msg.TEXT_JOIN_TOOLTIP = "Fait unu testu ponendi a pari parigas de items.";
+Blockly.Msg.TEXT_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_LENGTH_TITLE = "longària de %1";
+Blockly.Msg.TEXT_LENGTH_TOOLTIP = "Torrat su numeru de lìteras (cun is spàtzius) in su testu giau.";
+Blockly.Msg.TEXT_PRINT_HELPURL = "https://github.com/google/blockly/wiki/Text#printing-text"; // untranslated
+Blockly.Msg.TEXT_PRINT_TITLE = "scri %1";
+Blockly.Msg.TEXT_PRINT_TOOLTIP = "Scri su testu, numeru o àteru valori.";
+Blockly.Msg.TEXT_PROMPT_HELPURL = "https://github.com/google/blockly/wiki/Text#getting-input-from-the-user"; // untranslated
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_NUMBER = "Pregonta unu nùmeru a s'impitadore.";
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_TEXT = "Pregonta testu a s'impitadore.";
+Blockly.Msg.TEXT_PROMPT_TYPE_NUMBER = "pregonta po unu numeru";
+Blockly.Msg.TEXT_PROMPT_TYPE_TEXT = "pregonta po su testu";
+Blockly.Msg.TEXT_TEXT_HELPURL = "https://en.wikipedia.org/wiki/String_(computer_science)";
+Blockly.Msg.TEXT_TEXT_TOOLTIP = "Una lìtera, paràula, o linia de testu.";
+Blockly.Msg.TEXT_TRIM_HELPURL = "https://github.com/google/blockly/wiki/Text#trimming-removing-spaces"; // untranslated
+Blockly.Msg.TEXT_TRIM_OPERATOR_BOTH = "bogat spàtzius de ambus càbudus de";
+Blockly.Msg.TEXT_TRIM_OPERATOR_LEFT = "bogat spàtzius de su càbudu de manca de";
+Blockly.Msg.TEXT_TRIM_OPERATOR_RIGHT = "bogat spàtzius de su càbudu de dereta de";
+Blockly.Msg.TEXT_TRIM_TOOLTIP = "Torrat una copia de su testu bogaus is spàtzius de unu o de ambus is càbudus.";
+Blockly.Msg.TODAY = "Oe";
+Blockly.Msg.UNDO = "Undo"; // untranslated
+Blockly.Msg.VARIABLES_DEFAULT_NAME = "item";
+Blockly.Msg.VARIABLES_GET_CREATE_SET = "Fait 'imposta %1'";
+Blockly.Msg.VARIABLES_GET_HELPURL = "https://github.com/google/blockly/wiki/Variables#get"; // untranslated
+Blockly.Msg.VARIABLES_GET_TOOLTIP = "Torrat su valori de custa variabili.";
+Blockly.Msg.VARIABLES_SET = "imposta %1 a %2";
+Blockly.Msg.VARIABLES_SET_CREATE_GET = "Fait 'piga %1'";
+Blockly.Msg.VARIABLES_SET_HELPURL = "https://github.com/google/blockly/wiki/Variables#set"; // untranslated
+Blockly.Msg.VARIABLES_SET_TOOLTIP = "Imposta custa variabili uguali a s'input.";
+Blockly.Msg.VARIABLE_ALREADY_EXISTS = "A variable named '%1' already exists."; // untranslated
+Blockly.Msg.PROCEDURES_DEFRETURN_TITLE = Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE;
+Blockly.Msg.CONTROLS_IF_IF_TITLE_IF = Blockly.Msg.CONTROLS_IF_MSG_IF;
+Blockly.Msg.CONTROLS_WHILEUNTIL_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_MSG_THEN = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_ELSE_TITLE_ELSE = Blockly.Msg.CONTROLS_IF_MSG_ELSE;
+Blockly.Msg.PROCEDURES_DEFRETURN_PROCEDURE = Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE;
+Blockly.Msg.LISTS_GET_SUBLIST_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.LISTS_GET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.PROCEDURES_DEFRETURN_DO = Blockly.Msg.PROCEDURES_DEFNORETURN_DO;
+Blockly.Msg.CONTROLS_IF_ELSEIF_TITLE_ELSEIF = Blockly.Msg.CONTROLS_IF_MSG_ELSEIF;
+Blockly.Msg.LISTS_GET_INDEX_HELPURL = Blockly.Msg.LISTS_INDEX_OF_HELPURL;
+Blockly.Msg.CONTROLS_FOREACH_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_SET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TITLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_APPEND_VARIABLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.LISTS_INDEX_OF_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.PROCEDURES_DEFRETURN_COMMENT = Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT; \ No newline at end of file
diff --git a/blockly/msg/js/sd.js b/blockly/msg/js/sd.js
new file mode 100644
index 0000000..7127dda
--- /dev/null
+++ b/blockly/msg/js/sd.js
@@ -0,0 +1,391 @@
+// This file was automatically generated. Do not modify.
+
+'use strict';
+
+goog.provide('Blockly.Msg.sd');
+
+goog.require('Blockly.Msg');
+
+Blockly.Msg.ADD_COMMENT = "تاثرات ڏيو";
+Blockly.Msg.CHANGE_VALUE_TITLE = "قدر بدلايو";
+Blockly.Msg.CLEAN_UP = "بندشون هٽايو";
+Blockly.Msg.COLLAPSE_ALL = "بلاڪَ ڍڪيو";
+Blockly.Msg.COLLAPSE_BLOCK = "بلاڪ ڍڪيو";
+Blockly.Msg.COLOUR_BLEND_COLOUR1 = "رنگ 1";
+Blockly.Msg.COLOUR_BLEND_COLOUR2 = "رنگ 2";
+Blockly.Msg.COLOUR_BLEND_HELPURL = "http://meyerweb.com/eric/tools/color-blend/"; // untranslated
+Blockly.Msg.COLOUR_BLEND_RATIO = "تناسب";
+Blockly.Msg.COLOUR_BLEND_TITLE = "blend"; // untranslated
+Blockly.Msg.COLOUR_BLEND_TOOLTIP = "ڄاڻايل تناسب سان ٻہ رنگ پاڻ ۾ ملايو (0.0-1.0).";
+Blockly.Msg.COLOUR_PICKER_HELPURL = "https://en.wikipedia.org/wiki/Color";
+Blockly.Msg.COLOUR_PICKER_TOOLTIP = "رنگ دٻيءَ مان رنگ چونڊيو.";
+Blockly.Msg.COLOUR_RANDOM_HELPURL = "http://randomcolour.com"; // untranslated
+Blockly.Msg.COLOUR_RANDOM_TITLE = "بلا ترتيب رنگ";
+Blockly.Msg.COLOUR_RANDOM_TOOLTIP = "ڪو بہ ‌ڃڳ چونڊيو.";
+Blockly.Msg.COLOUR_RGB_BLUE = "نيرو";
+Blockly.Msg.COLOUR_RGB_GREEN = "سائو";
+Blockly.Msg.COLOUR_RGB_HELPURL = "http://www.december.com/html/spec/colorper.html"; // untranslated
+Blockly.Msg.COLOUR_RGB_RED = "ڳاڙهو";
+Blockly.Msg.COLOUR_RGB_TITLE = "سان رڱيو";
+Blockly.Msg.COLOUR_RGB_TOOLTIP = "ڳاڙهي، سائي، ۽ نيري جو مقدار ڄاڻائي گھربل رنگ ٺاهيو. سمورا قدر 0 ۽ 100 جي وچ ۾ هجن.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_HELPURL = "https://github.com/google/blockly/wiki/Loops#loop-termination-blocks"; // untranslated
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK = "چڪر مان ٻاهر نڪرو";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE = "چڪر جاري رکندر نئين ڦيري پايو";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK = "Break out of the containing loop."; // untranslated
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE = "Skip the rest of this loop, and continue with the next iteration."; // untranslated
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_WARNING = "Warning: This block may only be used within a loop."; // untranslated
+Blockly.Msg.CONTROLS_FOREACH_HELPURL = "https://github.com/google/blockly/wiki/Loops#for-each"; // untranslated
+Blockly.Msg.CONTROLS_FOREACH_TITLE = "for each item %1 in list %2"; // untranslated
+Blockly.Msg.CONTROLS_FOREACH_TOOLTIP = "For each item in a list, set the variable '%1' to the item, and then do some statements."; // untranslated
+Blockly.Msg.CONTROLS_FOR_HELPURL = "https://github.com/google/blockly/wiki/Loops#count-with"; // untranslated
+Blockly.Msg.CONTROLS_FOR_TITLE = "count with %1 from %2 to %3 by %4"; // untranslated
+Blockly.Msg.CONTROLS_FOR_TOOLTIP = "Have the variable '%1' take on the values from the start number to the end number, counting by the specified interval, and do the specified blocks."; // untranslated
+Blockly.Msg.CONTROLS_IF_ELSEIF_TOOLTIP = "Add a condition to the if block."; // untranslated
+Blockly.Msg.CONTROLS_IF_ELSE_TOOLTIP = "Add a final, catch-all condition to the if block."; // untranslated
+Blockly.Msg.CONTROLS_IF_HELPURL = "https://github.com/google/blockly/wiki/IfElse"; // untranslated
+Blockly.Msg.CONTROLS_IF_IF_TOOLTIP = "Add, remove, or reorder sections to reconfigure this if block."; // untranslated
+Blockly.Msg.CONTROLS_IF_MSG_ELSE = "نہ تہ";
+Blockly.Msg.CONTROLS_IF_MSG_ELSEIF = "نہ تہ جي";
+Blockly.Msg.CONTROLS_IF_MSG_IF = "جيڪڏهن";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_1 = "If a value is true, then do some statements."; // untranslated
+Blockly.Msg.CONTROLS_IF_TOOLTIP_2 = "If a value is true, then do the first block of statements. Otherwise, do the second block of statements."; // untranslated
+Blockly.Msg.CONTROLS_IF_TOOLTIP_3 = "If the first value is true, then do the first block of statements. Otherwise, if the second value is true, do the second block of statements."; // untranslated
+Blockly.Msg.CONTROLS_IF_TOOLTIP_4 = "If the first value is true, then do the first block of statements. Otherwise, if the second value is true, do the second block of statements. If none of the values are true, do the last block of statements."; // untranslated
+Blockly.Msg.CONTROLS_REPEAT_HELPURL = "https://en.wikipedia.org/wiki/For_loop";
+Blockly.Msg.CONTROLS_REPEAT_INPUT_DO = "ڪريو";
+Blockly.Msg.CONTROLS_REPEAT_TITLE = "1٪ ڀيرا ورجايو";
+Blockly.Msg.CONTROLS_REPEAT_TOOLTIP = "Do some statements several times."; // untranslated
+Blockly.Msg.CONTROLS_WHILEUNTIL_HELPURL = "https://github.com/google/blockly/wiki/Loops#repeat"; // untranslated
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "ورجايو جيستائين";
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "ورجايو جڏهن";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "While a value is false, then do some statements."; // untranslated
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "While a value is true, then do some statements."; // untranslated
+Blockly.Msg.DELETE_ALL_BLOCKS = "Delete all %1 blocks?"; // untranslated
+Blockly.Msg.DELETE_BLOCK = "بلاڪ ڊاهيو";
+Blockly.Msg.DELETE_VARIABLE = "Delete the '%1' variable"; // untranslated
+Blockly.Msg.DELETE_VARIABLE_CONFIRMATION = "Delete %1 uses of the '%2' variable?"; // untranslated
+Blockly.Msg.DELETE_X_BLOCKS = "1٪ بلاڪ ڊاهيو";
+Blockly.Msg.DISABLE_BLOCK = "بلاڪ کي غيرفعال بڻايو";
+Blockly.Msg.DUPLICATE_BLOCK = "نقل";
+Blockly.Msg.ENABLE_BLOCK = "بلاڪ کي فعال بڻايو";
+Blockly.Msg.EXPAND_ALL = "بلاڪَ نمايو";
+Blockly.Msg.EXPAND_BLOCK = "بلاڪ نمايو";
+Blockly.Msg.EXTERNAL_INPUTS = "خارجي ڄاڻ";
+Blockly.Msg.HELP = "مدد";
+Blockly.Msg.INLINE_INPUTS = "Inline Inputs"; // untranslated
+Blockly.Msg.LISTS_CREATE_EMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-empty-list"; // untranslated
+Blockly.Msg.LISTS_CREATE_EMPTY_TITLE = "خالي فهرست تخليق ڪريو";
+Blockly.Msg.LISTS_CREATE_EMPTY_TOOLTIP = "Returns a list, of length 0, containing no data records"; // untranslated
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TITLE_ADD = "لسٽ";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TOOLTIP = "Add, remove, or reorder sections to reconfigure this list block."; // untranslated
+Blockly.Msg.LISTS_CREATE_WITH_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
+Blockly.Msg.LISTS_CREATE_WITH_INPUT_WITH = "create list with"; // untranslated
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TOOLTIP = "فهرست ۾ ڪا شي شامل ڪريو.";
+Blockly.Msg.LISTS_CREATE_WITH_TOOLTIP = "Create a list with any number of items."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_FIRST = "پهريون";
+Blockly.Msg.LISTS_GET_INDEX_FROM_END = "# آخر کان";
+Blockly.Msg.LISTS_GET_INDEX_FROM_START = "#"; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_GET = "get"; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_GET_REMOVE = "get and remove"; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_LAST = "آخري";
+Blockly.Msg.LISTS_GET_INDEX_RANDOM = "بي ترتيب";
+Blockly.Msg.LISTS_GET_INDEX_REMOVE = "هٽايو";
+Blockly.Msg.LISTS_GET_INDEX_TAIL = ""; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FIRST = "Returns the first item in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FROM = "Returns the item at the specified position in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_LAST = "Returns the last item in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_RANDOM = "Returns a random item in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST = "Removes and returns the first item in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM = "Removes and returns the item at the specified position in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST = "Removes and returns the last item in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM = "Removes and returns a random item in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST = "Removes the first item in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM = "Removes the item at the specified position in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST = "Removes the last item in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM = "Removes a random item in a list."; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_END = "ڏانهن # آخر کان";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_START = "ڏانهن #";
+Blockly.Msg.LISTS_GET_SUBLIST_END_LAST = "آخري ڏانهن";
+Blockly.Msg.LISTS_GET_SUBLIST_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-a-sublist"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_START_FIRST = "get sub-list from first"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_END = "get sub-list from # from end"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_START = "get sub-list from #"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_TAIL = ""; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_TOOLTIP = "Creates a copy of the specified portion of a list."; // untranslated
+Blockly.Msg.LISTS_INDEX_FROM_END_TOOLTIP = "%1 is the last item."; // untranslated
+Blockly.Msg.LISTS_INDEX_FROM_START_TOOLTIP = "%1 is the first item."; // untranslated
+Blockly.Msg.LISTS_INDEX_OF_FIRST = "find first occurrence of item"; // untranslated
+Blockly.Msg.LISTS_INDEX_OF_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-items-from-a-list"; // untranslated
+Blockly.Msg.LISTS_INDEX_OF_LAST = "find last occurrence of item"; // untranslated
+Blockly.Msg.LISTS_INDEX_OF_TOOLTIP = "Returns the index of the first/last occurrence of the item in the list. Returns %1 if item is not found."; // untranslated
+Blockly.Msg.LISTS_INLIST = "فهرست ۾";
+Blockly.Msg.LISTS_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#is-empty"; // untranslated
+Blockly.Msg.LISTS_ISEMPTY_TITLE = "%1 is empty"; // untranslated
+Blockly.Msg.LISTS_ISEMPTY_TOOLTIP = "Returns true if the list is empty."; // untranslated
+Blockly.Msg.LISTS_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Lists#length-of"; // untranslated
+Blockly.Msg.LISTS_LENGTH_TITLE = "length of %1"; // untranslated
+Blockly.Msg.LISTS_LENGTH_TOOLTIP = "Returns the length of a list."; // untranslated
+Blockly.Msg.LISTS_REPEAT_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
+Blockly.Msg.LISTS_REPEAT_TITLE = "create list with item %1 repeated %2 times"; // untranslated
+Blockly.Msg.LISTS_REPEAT_TOOLTIP = "Creates a list consisting of the given value repeated the specified number of times."; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_HELPURL = "https://github.com/google/blockly/wiki/Lists#in-list--set"; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_INPUT_TO = "جيان";
+Blockly.Msg.LISTS_SET_INDEX_INSERT = "تي داخل ڪريو";
+Blockly.Msg.LISTS_SET_INDEX_SET = "ميڙ";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST = "Inserts the item at the start of a list."; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FROM = "Inserts the item at the specified position in a list."; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_LAST = "Append the item to the end of a list."; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM = "Inserts the item randomly in a list."; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FIRST = "Sets the first item in a list."; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FROM = "Sets the item at the specified position in a list."; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_LAST = "Sets the last item in a list."; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_RANDOM = "Sets a random item in a list."; // untranslated
+Blockly.Msg.LISTS_SORT_HELPURL = "https://github.com/google/blockly/wiki/Lists#sorting-a-list"; // untranslated
+Blockly.Msg.LISTS_SORT_ORDER_ASCENDING = "ascending"; // untranslated
+Blockly.Msg.LISTS_SORT_ORDER_DESCENDING = "descending"; // untranslated
+Blockly.Msg.LISTS_SORT_TITLE = "sort %1 %2 %3"; // untranslated
+Blockly.Msg.LISTS_SORT_TOOLTIP = "Sort a copy of a list."; // untranslated
+Blockly.Msg.LISTS_SORT_TYPE_IGNORECASE = "alphabetic, ignore case"; // untranslated
+Blockly.Msg.LISTS_SORT_TYPE_NUMERIC = "numeric"; // untranslated
+Blockly.Msg.LISTS_SORT_TYPE_TEXT = "alphabetic"; // untranslated
+Blockly.Msg.LISTS_SPLIT_HELPURL = "https://github.com/google/blockly/wiki/Lists#splitting-strings-and-joining-lists"; // untranslated
+Blockly.Msg.LISTS_SPLIT_LIST_FROM_TEXT = "make list from text"; // untranslated
+Blockly.Msg.LISTS_SPLIT_TEXT_FROM_LIST = "make text from list"; // untranslated
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_JOIN = "Join a list of texts into one text, separated by a delimiter."; // untranslated
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_SPLIT = "Split text into a list of texts, breaking at each delimiter."; // untranslated
+Blockly.Msg.LISTS_SPLIT_WITH_DELIMITER = "with delimiter"; // untranslated
+Blockly.Msg.LOGIC_BOOLEAN_FALSE = "ڪُوڙ";
+Blockly.Msg.LOGIC_BOOLEAN_HELPURL = "https://github.com/google/blockly/wiki/Logic#values"; // untranslated
+Blockly.Msg.LOGIC_BOOLEAN_TOOLTIP = "درست يا غير درست وراڻي ٿو.";
+Blockly.Msg.LOGIC_BOOLEAN_TRUE = "سچ";
+Blockly.Msg.LOGIC_COMPARE_HELPURL = "https://en.wikipedia.org/wiki/Inequality_(mathematics)";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_EQ = "جيڪڏهن ٻئي ان پُٽس برابر آهن تہ درست وراڻيو";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GT = "جيڪڏهن پهريون ان پُٽ ٻين ان پُٽ کان وڏو آهي تہ درست وراڻيو.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GTE = "جيڪڏهن پهريون ان پُٽ ٻين ان پُٽ کان وڏو آهي يا ٻئي برابر آهن تہ درست وراڻيو.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LT = "جيڪڏهن پهريون ان پُٽ ٻين ان پُٽ کان ننڍو آهي تہ درست وراڻيو";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LTE = "جيڪڏهن پهريون ان پُٽ ٻين ان پُٽ کان ننڍو آهي يا ٻئي برابر آهن تہ درست وراڻيو";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_NEQ = "جيڪڏهن ٻئي ان پُٽس اڻ برابر آهن تہ درست وراڻيو";
+Blockly.Msg.LOGIC_NEGATE_HELPURL = "https://github.com/google/blockly/wiki/Logic#not"; // untranslated
+Blockly.Msg.LOGIC_NEGATE_TITLE = "نڪي %1";
+Blockly.Msg.LOGIC_NEGATE_TOOLTIP = "ان پُٽ غير درست آهي تہ درست وراڻيو. ان پُٽ درست آهي تہ غير درست وراڻيو.";
+Blockly.Msg.LOGIC_NULL = "null"; // untranslated
+Blockly.Msg.LOGIC_NULL_HELPURL = "https://en.wikipedia.org/wiki/Nullable_type"; // untranslated
+Blockly.Msg.LOGIC_NULL_TOOLTIP = "Returns null."; // untranslated
+Blockly.Msg.LOGIC_OPERATION_AND = "۽";
+Blockly.Msg.LOGIC_OPERATION_HELPURL = "https://github.com/google/blockly/wiki/Logic#logical-operations"; // untranslated
+Blockly.Msg.LOGIC_OPERATION_OR = "يا";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_AND = "جيڪڏهن ٻئي ان پُٽ درست آهن تہ درست وراڻيو.";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_OR = "جيڪڏهن ٻنهي ان پُٽس مان ڪو هڪ بہ درست آهي تہ درست وراڻيو.";
+Blockly.Msg.LOGIC_TERNARY_CONDITION = "test"; // untranslated
+Blockly.Msg.LOGIC_TERNARY_HELPURL = "https://en.wikipedia.org/wiki/%3F:"; // untranslated
+Blockly.Msg.LOGIC_TERNARY_IF_FALSE = "جيڪڏهن ڪوڙو";
+Blockly.Msg.LOGIC_TERNARY_IF_TRUE = "جيڪڏهن سچو";
+Blockly.Msg.LOGIC_TERNARY_TOOLTIP = "Check the condition in 'test'. If the condition is true, returns the 'if true' value; otherwise returns the 'if false' value."; // untranslated
+Blockly.Msg.MATH_ADDITION_SYMBOL = "+"; // untranslated
+Blockly.Msg.MATH_ARITHMETIC_HELPURL = "https://en.wikipedia.org/wiki/Arithmetic";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_ADD = "ٻن انگن جي جوڙ اپت ڏيو.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE = "ٻنهي انگن جي ونڊ ڏيو.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MINUS = "ٻنهي انگن جو تفاوت ڏيو.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MULTIPLY = "ٻنهي انگن جي ضرب اُپت ڏيو.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_POWER = "Return the first number raised to the power of the second number."; // untranslated
+Blockly.Msg.MATH_CHANGE_HELPURL = "https://en.wikipedia.org/wiki/Programming_idiom#Incrementing_a_counter"; // untranslated
+Blockly.Msg.MATH_CHANGE_TITLE = "%1 کي %2 سان مَٽايو";
+Blockly.Msg.MATH_CHANGE_TOOLTIP = "Add a number to variable '%1'."; // untranslated
+Blockly.Msg.MATH_CONSTANT_HELPURL = "https://en.wikipedia.org/wiki/رياضياتي استقلال";
+Blockly.Msg.MATH_CONSTANT_TOOLTIP = "Return one of the common constants: π (3.141…), e (2.718…), φ (1.618…), sqrt(2) (1.414…), sqrt(½) (0.707…), or ∞ (infinity)."; // untranslated
+Blockly.Msg.MATH_CONSTRAIN_HELPURL = "https://en.wikipedia.org/wiki/Clamping_%28graphics%29"; // untranslated
+Blockly.Msg.MATH_CONSTRAIN_TITLE = "constrain %1 low %2 high %3"; // untranslated
+Blockly.Msg.MATH_CONSTRAIN_TOOLTIP = "Constrain a number to be between the specified limits (inclusive)."; // untranslated
+Blockly.Msg.MATH_DIVISION_SYMBOL = "÷"; // untranslated
+Blockly.Msg.MATH_IS_DIVISIBLE_BY = "سان ونڊجندڙ آهي";
+Blockly.Msg.MATH_IS_EVEN = "ٻڌي آهي";
+Blockly.Msg.MATH_IS_NEGATIVE = "ڪاٽو آهي";
+Blockly.Msg.MATH_IS_ODD = "اِڪي آهي";
+Blockly.Msg.MATH_IS_POSITIVE = "واڌو آهي";
+Blockly.Msg.MATH_IS_PRIME = "مفرد آهي";
+Blockly.Msg.MATH_IS_TOOLTIP = "Check if a number is an even, odd, prime, whole, positive, negative, or if it is divisible by certain number. Returns true or false."; // untranslated
+Blockly.Msg.MATH_IS_WHOLE = "سڄو آهي";
+Blockly.Msg.MATH_MODULO_HELPURL = "https://en.wikipedia.org/wiki/Modulo_operation"; // untranslated
+Blockly.Msg.MATH_MODULO_TITLE = "remainder of %1 ÷ %2"; // untranslated
+Blockly.Msg.MATH_MODULO_TOOLTIP = "Return the remainder from dividing the two numbers."; // untranslated
+Blockly.Msg.MATH_MULTIPLICATION_SYMBOL = "×"; // untranslated
+Blockly.Msg.MATH_NUMBER_HELPURL = "https://en.wikipedia.org/wiki/Number"; // untranslated
+Blockly.Msg.MATH_NUMBER_TOOLTIP = "ڪو انگ.";
+Blockly.Msg.MATH_ONLIST_HELPURL = ""; // untranslated
+Blockly.Msg.MATH_ONLIST_OPERATOR_AVERAGE = "لسٽ جي سراسري";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MAX = "لسٽ جو وڏي ۾ وڏو قدر";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MEDIAN = "لسٽ جو مڌيان";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MIN = "لسٽ جو ننڍي ۾ ننڍو قدر";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MODE = "modes of list"; // untranslated
+Blockly.Msg.MATH_ONLIST_OPERATOR_RANDOM = "random item of list"; // untranslated
+Blockly.Msg.MATH_ONLIST_OPERATOR_STD_DEV = "standard deviation of list"; // untranslated
+Blockly.Msg.MATH_ONLIST_OPERATOR_SUM = "sum of list"; // untranslated
+Blockly.Msg.MATH_ONLIST_TOOLTIP_AVERAGE = "Return the average (arithmetic mean) of the numeric values in the list."; // untranslated
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MAX = "لسٽ ۾ وڏي کان وڏو قدر ڄاڻايو.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MEDIAN = "لسٽ جو مڌيان انگ ڄاڻايو.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MIN = "لسٽ ۾ ننڍي کان ننڍو قدر ڄاڻايو.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MODE = "Return a list of the most common item(s) in the list."; // untranslated
+Blockly.Msg.MATH_ONLIST_TOOLTIP_RANDOM = "Return a random element from the list."; // untranslated
+Blockly.Msg.MATH_ONLIST_TOOLTIP_STD_DEV = "Return the standard deviation of the list."; // untranslated
+Blockly.Msg.MATH_ONLIST_TOOLTIP_SUM = "Return the sum of all the numbers in the list."; // untranslated
+Blockly.Msg.MATH_POWER_SYMBOL = "^"; // untranslated
+Blockly.Msg.MATH_RANDOM_FLOAT_HELPURL = "https://en.wikipedia.org/wiki/Random_number_generation"; // untranslated
+Blockly.Msg.MATH_RANDOM_FLOAT_TITLE_RANDOM = "random fraction"; // untranslated
+Blockly.Msg.MATH_RANDOM_FLOAT_TOOLTIP = "Return a random fraction between 0.0 (inclusive) and 1.0 (exclusive)."; // untranslated
+Blockly.Msg.MATH_RANDOM_INT_HELPURL = "https://en.wikipedia.org/wiki/Random_number_generation"; // untranslated
+Blockly.Msg.MATH_RANDOM_INT_TITLE = "random integer from %1 to %2"; // untranslated
+Blockly.Msg.MATH_RANDOM_INT_TOOLTIP = "Return a random integer between the two specified limits, inclusive."; // untranslated
+Blockly.Msg.MATH_ROUND_HELPURL = "https://en.wikipedia.org/wiki/Rounding"; // untranslated
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUND = "round"; // untranslated
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDDOWN = "round down"; // untranslated
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDUP = "round up"; // untranslated
+Blockly.Msg.MATH_ROUND_TOOLTIP = "Round a number up or down."; // untranslated
+Blockly.Msg.MATH_SINGLE_HELPURL = "https://en.wikipedia.org/wiki/ٻيون مول";
+Blockly.Msg.MATH_SINGLE_OP_ABSOLUTE = "ٺپ";
+Blockly.Msg.MATH_SINGLE_OP_ROOT = "ٻيون مول";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ABS = "Return the absolute value of a number."; // untranslated
+Blockly.Msg.MATH_SINGLE_TOOLTIP_EXP = "Return e to the power of a number."; // untranslated
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LN = "ڪنهن انگ جو قدرتي لاگ ڄاڻايو.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LOG10 = "ڪنهن انگ جو 10 بنيادي لاگ ڄاڻايو.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_NEG = "ڪنهن انگ جو ڪاٽو ڄاڻايو.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_POW10 = "Return 10 to the power of a number."; // untranslated
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ROOT = "ڪنهن انگ جو ٻيون مول ڄاڻايو.";
+Blockly.Msg.MATH_SUBTRACTION_SYMBOL = "-"; // untranslated
+Blockly.Msg.MATH_TRIG_ACOS = "acos"; // untranslated
+Blockly.Msg.MATH_TRIG_ASIN = "asin"; // untranslated
+Blockly.Msg.MATH_TRIG_ATAN = "atan"; // untranslated
+Blockly.Msg.MATH_TRIG_COS = "cos"; // untranslated
+Blockly.Msg.MATH_TRIG_HELPURL = "https://en.wikipedia.org/wiki/ٽڪنڊور ڪاڄ";
+Blockly.Msg.MATH_TRIG_SIN = "sin"; // untranslated
+Blockly.Msg.MATH_TRIG_TAN = "tan"; // untranslated
+Blockly.Msg.MATH_TRIG_TOOLTIP_ACOS = "Return the arccosine of a number."; // untranslated
+Blockly.Msg.MATH_TRIG_TOOLTIP_ASIN = "Return the arcsine of a number."; // untranslated
+Blockly.Msg.MATH_TRIG_TOOLTIP_ATAN = "Return the arctangent of a number."; // untranslated
+Blockly.Msg.MATH_TRIG_TOOLTIP_COS = "Return the cosine of a degree (not radian)."; // untranslated
+Blockly.Msg.MATH_TRIG_TOOLTIP_SIN = "Return the sine of a degree (not radian)."; // untranslated
+Blockly.Msg.MATH_TRIG_TOOLTIP_TAN = "Return the tangent of a degree (not radian)."; // untranslated
+Blockly.Msg.NEW_VARIABLE = "نئون ڦرڻو...";
+Blockly.Msg.NEW_VARIABLE_TITLE = "ڦرڻي جو نئون نالو:";
+Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; // untranslated
+Blockly.Msg.PROCEDURES_ALLOW_STATEMENTS = "allow statements"; // untranslated
+Blockly.Msg.PROCEDURES_BEFORE_PARAMS = "سان:";
+Blockly.Msg.PROCEDURES_CALLNORETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_CALLNORETURN_TOOLTIP = "Run the user-defined function '%1'."; // untranslated
+Blockly.Msg.PROCEDURES_CALLRETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_CALLRETURN_TOOLTIP = "Run the user-defined function '%1' and use its output."; // untranslated
+Blockly.Msg.PROCEDURES_CALL_BEFORE_PARAMS = "سان:";
+Blockly.Msg.PROCEDURES_CREATE_DO = "تخليق ڪريو '%1'";
+Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT = "Describe this function..."; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_DO = ""; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE = "ڪجھ ڪريو";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE = "ڏانهن";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TOOLTIP = "Creates a function with no output."; // untranslated
+Blockly.Msg.PROCEDURES_DEFRETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_DEFRETURN_RETURN = "واپس ورو";
+Blockly.Msg.PROCEDURES_DEFRETURN_TOOLTIP = "Creates a function with an output."; // untranslated
+Blockly.Msg.PROCEDURES_DEF_DUPLICATE_WARNING = "Warning: This function has duplicate parameters."; // untranslated
+Blockly.Msg.PROCEDURES_HIGHLIGHT_DEF = "Highlight function definition"; // untranslated
+Blockly.Msg.PROCEDURES_IFRETURN_HELPURL = "http://c2.com/cgi/wiki?GuardClause"; // untranslated
+Blockly.Msg.PROCEDURES_IFRETURN_TOOLTIP = "If a value is true, then return a second value."; // untranslated
+Blockly.Msg.PROCEDURES_IFRETURN_WARNING = "Warning: This block may be used only within a function definition."; // untranslated
+Blockly.Msg.PROCEDURES_MUTATORARG_TITLE = "input name:"; // untranslated
+Blockly.Msg.PROCEDURES_MUTATORARG_TOOLTIP = "Add an input to the function."; // untranslated
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TITLE = "ان پُٽس";
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TOOLTIP = "Add, remove, or reorder inputs to this function."; // untranslated
+Blockly.Msg.REDO = "Redo"; // untranslated
+Blockly.Msg.REMOVE_COMMENT = "تاثرات مِٽايو";
+Blockly.Msg.RENAME_VARIABLE = "ڦرڻي کي نئون نالو ڏيو...";
+Blockly.Msg.RENAME_VARIABLE_TITLE = "Rename all '%1' variables to:"; // untranslated
+Blockly.Msg.TEXT_APPEND_APPENDTEXT = "append text"; // untranslated
+Blockly.Msg.TEXT_APPEND_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_APPEND_TO = "to"; // untranslated
+Blockly.Msg.TEXT_APPEND_TOOLTIP = "Append some text to variable '%1'."; // untranslated
+Blockly.Msg.TEXT_CHANGECASE_HELPURL = "https://github.com/google/blockly/wiki/Text#adjusting-text-case"; // untranslated
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_LOWERCASE = "ننڍن اکر ڏانهن";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_TITLECASE = "to Title Case"; // untranslated
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_UPPERCASE = "وڏن اکرن ڏانهن";
+Blockly.Msg.TEXT_CHANGECASE_TOOLTIP = "Return a copy of the text in a different case."; // untranslated
+Blockly.Msg.TEXT_CHARAT_FIRST = "get first letter"; // untranslated
+Blockly.Msg.TEXT_CHARAT_FROM_END = "get letter # from end"; // untranslated
+Blockly.Msg.TEXT_CHARAT_FROM_START = "get letter #"; // untranslated
+Blockly.Msg.TEXT_CHARAT_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-text"; // untranslated
+Blockly.Msg.TEXT_CHARAT_INPUT_INTEXT = "in text"; // untranslated
+Blockly.Msg.TEXT_CHARAT_LAST = "get last letter"; // untranslated
+Blockly.Msg.TEXT_CHARAT_RANDOM = "get random letter"; // untranslated
+Blockly.Msg.TEXT_CHARAT_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_CHARAT_TOOLTIP = "Returns the letter at the specified position."; // untranslated
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TOOLTIP = "Add an item to the text."; // untranslated
+Blockly.Msg.TEXT_CREATE_JOIN_TITLE_JOIN = "شامل ٿيو";
+Blockly.Msg.TEXT_CREATE_JOIN_TOOLTIP = "Add, remove, or reorder sections to reconfigure this text block."; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_END = "to letter # from end"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_START = "to letter #"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_END_LAST = "to last letter"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_INPUT_IN_TEXT = "in text"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FIRST = "get substring from first letter"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_END = "get substring from letter # from end"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_START = "get substring from letter #"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_TOOLTIP = "Returns a specified portion of the text."; // untranslated
+Blockly.Msg.TEXT_INDEXOF_HELPURL = "https://github.com/google/blockly/wiki/Text#finding-text"; // untranslated
+Blockly.Msg.TEXT_INDEXOF_INPUT_INTEXT = "in text"; // untranslated
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_FIRST = "find first occurrence of text"; // untranslated
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_LAST = "find last occurrence of text"; // untranslated
+Blockly.Msg.TEXT_INDEXOF_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_INDEXOF_TOOLTIP = "Returns the index of the first/last occurrence of the first text in the second text. Returns %1 if text is not found."; // untranslated
+Blockly.Msg.TEXT_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Text#checking-for-empty-text"; // untranslated
+Blockly.Msg.TEXT_ISEMPTY_TITLE = "%1 is empty"; // untranslated
+Blockly.Msg.TEXT_ISEMPTY_TOOLTIP = "Returns true if the provided text is empty."; // untranslated
+Blockly.Msg.TEXT_JOIN_HELPURL = "https://github.com/google/blockly/wiki/Text#text-creation"; // untranslated
+Blockly.Msg.TEXT_JOIN_TITLE_CREATEWITH = "create text with"; // untranslated
+Blockly.Msg.TEXT_JOIN_TOOLTIP = "Create a piece of text by joining together any number of items."; // untranslated
+Blockly.Msg.TEXT_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_LENGTH_TITLE = "length of %1"; // untranslated
+Blockly.Msg.TEXT_LENGTH_TOOLTIP = "Returns the number of letters (including spaces) in the provided text."; // untranslated
+Blockly.Msg.TEXT_PRINT_HELPURL = "https://github.com/google/blockly/wiki/Text#printing-text"; // untranslated
+Blockly.Msg.TEXT_PRINT_TITLE = "ڇاپيو %1";
+Blockly.Msg.TEXT_PRINT_TOOLTIP = "ڄاڻايل تحرير، انگ يا ڪو ٻيو قدر ڇاپيو.";
+Blockly.Msg.TEXT_PROMPT_HELPURL = "https://github.com/google/blockly/wiki/Text#getting-input-from-the-user"; // untranslated
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_NUMBER = "Prompt for user for a number."; // untranslated
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_TEXT = "Prompt for user for some text."; // untranslated
+Blockly.Msg.TEXT_PROMPT_TYPE_NUMBER = "prompt for number with message"; // untranslated
+Blockly.Msg.TEXT_PROMPT_TYPE_TEXT = "prompt for text with message"; // untranslated
+Blockly.Msg.TEXT_TEXT_HELPURL = "https://en.wikipedia.org/wiki/String_(computer_science)"; // untranslated
+Blockly.Msg.TEXT_TEXT_TOOLTIP = "A letter, word, or line of text."; // untranslated
+Blockly.Msg.TEXT_TRIM_HELPURL = "https://github.com/google/blockly/wiki/Text#trimming-removing-spaces"; // untranslated
+Blockly.Msg.TEXT_TRIM_OPERATOR_BOTH = "trim spaces from both sides of"; // untranslated
+Blockly.Msg.TEXT_TRIM_OPERATOR_LEFT = "trim spaces from left side of"; // untranslated
+Blockly.Msg.TEXT_TRIM_OPERATOR_RIGHT = "trim spaces from right side of"; // untranslated
+Blockly.Msg.TEXT_TRIM_TOOLTIP = "Return a copy of the text with spaces removed from one or both ends."; // untranslated
+Blockly.Msg.TODAY = "اڄ";
+Blockly.Msg.UNDO = "Undo"; // untranslated
+Blockly.Msg.VARIABLES_DEFAULT_NAME = "اسم";
+Blockly.Msg.VARIABLES_GET_CREATE_SET = "Create 'set %1'"; // untranslated
+Blockly.Msg.VARIABLES_GET_HELPURL = "https://github.com/google/blockly/wiki/Variables#get"; // untranslated
+Blockly.Msg.VARIABLES_GET_TOOLTIP = "Returns the value of this variable."; // untranslated
+Blockly.Msg.VARIABLES_SET = "set %1 to %2"; // untranslated
+Blockly.Msg.VARIABLES_SET_CREATE_GET = "Create 'get %1'"; // untranslated
+Blockly.Msg.VARIABLES_SET_HELPURL = "https://github.com/google/blockly/wiki/Variables#set"; // untranslated
+Blockly.Msg.VARIABLES_SET_TOOLTIP = "Sets this variable to be equal to the input."; // untranslated
+Blockly.Msg.VARIABLE_ALREADY_EXISTS = "A variable named '%1' already exists."; // untranslated
+Blockly.Msg.PROCEDURES_DEFRETURN_TITLE = Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE;
+Blockly.Msg.CONTROLS_IF_IF_TITLE_IF = Blockly.Msg.CONTROLS_IF_MSG_IF;
+Blockly.Msg.CONTROLS_WHILEUNTIL_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_MSG_THEN = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_ELSE_TITLE_ELSE = Blockly.Msg.CONTROLS_IF_MSG_ELSE;
+Blockly.Msg.PROCEDURES_DEFRETURN_PROCEDURE = Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE;
+Blockly.Msg.LISTS_GET_SUBLIST_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.LISTS_GET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.PROCEDURES_DEFRETURN_DO = Blockly.Msg.PROCEDURES_DEFNORETURN_DO;
+Blockly.Msg.CONTROLS_IF_ELSEIF_TITLE_ELSEIF = Blockly.Msg.CONTROLS_IF_MSG_ELSEIF;
+Blockly.Msg.LISTS_GET_INDEX_HELPURL = Blockly.Msg.LISTS_INDEX_OF_HELPURL;
+Blockly.Msg.CONTROLS_FOREACH_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_SET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TITLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_APPEND_VARIABLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.LISTS_INDEX_OF_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.PROCEDURES_DEFRETURN_COMMENT = Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT; \ No newline at end of file
diff --git a/blockly/msg/js/shn.js b/blockly/msg/js/shn.js
new file mode 100644
index 0000000..630a99b
--- /dev/null
+++ b/blockly/msg/js/shn.js
@@ -0,0 +1,391 @@
+// This file was automatically generated. Do not modify.
+
+'use strict';
+
+goog.provide('Blockly.Msg.shn');
+
+goog.require('Blockly.Msg');
+
+Blockly.Msg.ADD_COMMENT = "သႂ်ႇၶေႃႈၵႂၢမ်း";
+Blockly.Msg.CHANGE_VALUE_TITLE = "လႅၵ်ႈလၢႆႈၼမ်ႉၵတ်ႉ";
+Blockly.Msg.CLEAN_UP = "Clean up Blocks"; // untranslated
+Blockly.Msg.COLLAPSE_ALL = "ပလွၵ်ႉတင်းၼမ် လႅဝ်";
+Blockly.Msg.COLLAPSE_BLOCK = "ပလွၵ်ႉလႅဝ်";
+Blockly.Msg.COLOUR_BLEND_COLOUR1 = "သီ 1";
+Blockly.Msg.COLOUR_BLEND_COLOUR2 = "သီ 2";
+Blockly.Msg.COLOUR_BLEND_HELPURL = "http://meyerweb.com/eric/tools/color-blend/"; // untranslated
+Blockly.Msg.COLOUR_BLEND_RATIO = "သႅၼ်း";
+Blockly.Msg.COLOUR_BLEND_TITLE = "လေႃးလႄး";
+Blockly.Msg.COLOUR_BLEND_TOOLTIP = "ဢဝ်သီသွင်ဢၼ်လေႃးၵၼ် ၸွမ်းၼမ် သႅၼ်းဢၼ်ပၼ်ဝႆႉ (0.0 - 1.0).";
+Blockly.Msg.COLOUR_PICKER_HELPURL = "https://en.wikipedia.org/wiki/Color သီ";
+Blockly.Msg.COLOUR_PICKER_TOOLTIP = "လိူၵ်ႈသီ တမ်ႈတီႈ ၽႃးလႅတ်ႉ";
+Blockly.Msg.COLOUR_RANDOM_HELPURL = "http://randomcolour.com"; // untranslated
+Blockly.Msg.COLOUR_RANDOM_TITLE = "သီလၢမ်းလိမ်း";
+Blockly.Msg.COLOUR_RANDOM_TOOLTIP = "လိူၵ်ႈသီတမ်ႈတီႈလွၵ်းလၢမ်းလိမ်း";
+Blockly.Msg.COLOUR_RGB_BLUE = "သွမ်ႇ";
+Blockly.Msg.COLOUR_RGB_GREEN = "ၶဵဝ်";
+Blockly.Msg.COLOUR_RGB_HELPURL = "http://www.december.com/html/spec/colorper.html"; // untranslated
+Blockly.Msg.COLOUR_RGB_RED = "လီင်";
+Blockly.Msg.COLOUR_RGB_TITLE = "ႁူမ်ႈၵိုၵ်းသီ";
+Blockly.Msg.COLOUR_RGB_TOOLTIP = "ႁဵတ်းတူၺ်း သီဢၼ်ၼိုင်ႈ ၸွမ်းၼင်ႇမၵ်းမၼ်ႈဝႆႉ ၼႂ်းၶႂၢင်ႇ သီလႅင်, ၶဵဝ် လႄႈ သွမ်ႇ။ ၼမ်ႉၼၵ်းသီ တေလႆႈမီးၼႂ်းဝူင်ႈၵၢင် 0 တေႃႇ 100.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_HELPURL = "https://github.com/google/blockly/wiki/Loops#loop-termination-blocks"; // untranslated
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK = "ဢွၵ်ႇတီႈၶွပ်ႇမူၼ်း";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE = "သိုပ်ႇပၼ်ႇထႅင်ႈ ၶွပ်ႇမူၼ်းတၢင်ႇဢၼ်";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK = "ၵိုတ်းပႅတ်ႈ ၶွပ်ႇမူၼ်း ဢၼ်မီးဝႆႉ";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE = "ဝဵၼ်ႉဝႆႉ ၶွပ်ႇမူၼ်း ဢၼ်ၵိုတ်းၸိူဝ်ႈဝႆႉ, သေ သိုပ်ႇထႅင်ႈတၢင်ႇဢၼ်";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_WARNING = "ၾၢင်ႉ: ပလွၵ်ႉဢၼ်ၼႆႉ ၵူၺ်းၸႂ်ႉလူၺ်ႈတႃႇ ၶွပ်ႇမူၼ်းၵူၺ်း";
+Blockly.Msg.CONTROLS_FOREACH_HELPURL = "https://github.com/google/blockly/wiki/Loops#for-each"; // untranslated
+Blockly.Msg.CONTROLS_FOREACH_TITLE = "တႃႇၵူႈဢၼ်ဢၼ် ၼႂ်း %1 သဵၼ်ႈမၢႆ %2";
+Blockly.Msg.CONTROLS_FOREACH_TOOLTIP = "For each item in a list, set the variable '%1' to the item, and then do some statements."; // untranslated
+Blockly.Msg.CONTROLS_FOR_HELPURL = "https://github.com/google/blockly/wiki/Loops#count-with"; // untranslated
+Blockly.Msg.CONTROLS_FOR_TITLE = "တႄႇဢၢၼ်ႇၵိုၵ်း %1 တေႃႇ %2 တေႃႇ %3 လူၺ်ႈ %4";
+Blockly.Msg.CONTROLS_FOR_TOOLTIP = "Have the variable '%1' take on the values from the start number to the end number, counting by the specified interval, and do the specified blocks."; // untranslated
+Blockly.Msg.CONTROLS_IF_ELSEIF_TOOLTIP = "သင်ဝႃႈ ပလွၵ်ႉၸိုင် သႂ်ႇပၼ်လွင်ႈတၢင်းမၼ်း တမ်ႈ";
+Blockly.Msg.CONTROLS_IF_ELSE_TOOLTIP = "သႂ်ႇၵမ်းလိုၼ်း, သင်ဝႃႈ ပလွၵ်ႉၸိုင် ဢဝ်လွင်ႈတၢင်းမၼ်းတင်းသဵင်ႈ တမ်ႈ";
+Blockly.Msg.CONTROLS_IF_HELPURL = "https://github.com/google/blockly/wiki/IfElse"; // untranslated
+Blockly.Msg.CONTROLS_IF_IF_TOOLTIP = "Add, remove, or reorder sections to reconfigure this if block."; // untranslated
+Blockly.Msg.CONTROLS_IF_MSG_ELSE = "လိူဝ်သေၼၼ်ႉ";
+Blockly.Msg.CONTROLS_IF_MSG_ELSEIF = "သင်ဝႃႈ လိူဝ်သေၼၼ်ႉ";
+Blockly.Msg.CONTROLS_IF_MSG_IF = "သင်ဝႃႈ";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_1 = "ပေႃးဝႃႈ ၵႃႈၶၼ် (ၼမ်ႉၵတ်ႉ) မၢၼ်ႇမႅၼ်ႈယဝ်ႉၸိုင် ႁဵတ်းၶေႃႈၵဵပ်းထွၼ်ၵမ်ႈၽွင်ႈ";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_2 = "သင်ဝႃႈ ၵႃႈၶၼ်(ၼမ်ႉၵတ်ႉ)မၢၼ်ႇမႅၼ်ႈၸိုင် ႁဵတ်းပလွၵ်ႉဢွၼ်တၢင်းသုတ်း တီႈၼႂ်းၶေႃႈၵဵပ်းထွၼ်တ။ လိူဝ်သေၼၼ်ႉ ႁဵတ်းပႅတ်ႈ ပလွၵ်ႉသွင် တီႈၼႂ်းၶေႃႈၵဵပ်းထွၼ်";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_3 = "သင်ဝႃႈ ၵႃႈၶၼ်(ၼမ်ႉၵတ်ႉ)မၢႉၼိုင်ႈ မၢၼ်ႇမႅၼ်ႈၸိုင် ႁဵတ်းပလွၵ်ႉဢွၼ်တၢင်းသုတ်း တီႈၼႂ်းၶေႃႈၵဵပ်းထွၼ်တ။ သင်ဝႃႈ ၵႃႈၶၼ်(ၼမ်ႉၵတ်ႉ)မၢႆသွင်မၢၼ်ႇမႅၼ်ႈၸိုင် ႁဵတ်းပႅတ်ႈ ပလွၵ်ႉသွင် တီႈၼႂ်းၶေႃႈၵဵပ်းထွၼ်";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_4 = "သင်ဝႃႈ ၵႃႈၶၼ်(ၼမ်ႉၵတ်ႉ)မၢႆၼိုင်ႈ မၢၼ်ႇမႅၼ်ႈၸိုင် ႁဵတ်းပလွၵ်ႉဢွၼ်တၢင်းသုတ်း တီႈၼႂ်းၶေႃႈၵဵပ်းထွၼ်တ။ လိူဝ်သေၼၼ်ႉ, သင်ဝႃႈ ၵႃႈၶၼ် (ၼမ်ႉၵတ်ႉ) မၢႆသွင် မၢၼ်ႇမႅၼ်ႈၸိုင် ႁဵတ်းပႅတ်ႈ ပလွၵ်ႉသွင် တီႈၼႂ်းၶေႃႈၵဵပ်းထွၼ်တ။ သင်ဝႃႈ ၵႃႈၶၼ်(ၼမ်ႉၵတ်ႉ) ဢမ်ႇမီးလွင်ႈမၢၼ်ႇမႅၼ်ႈ သင်ၸိုင် ႁဵတ်းပႅတ်ႈပလွၵ်ႉ ၵမ်းလိုမ်း တီႈၼႂ်းၶေႃႈၵဵပ်းထွၼ်တ။";
+Blockly.Msg.CONTROLS_REPEAT_HELPURL = "https://en.wikipedia.org/wiki/For_loop တႃႇတူင်ႇမူၼ်း";
+Blockly.Msg.CONTROLS_REPEAT_INPUT_DO = "ႁဵတ်း";
+Blockly.Msg.CONTROLS_REPEAT_TITLE = "ပၼ်ႇၶိုၼ်း %1 ၵမ်း";
+Blockly.Msg.CONTROLS_REPEAT_TOOLTIP = "ႁဵတ်းၶေႃႈၵဵပ်းထွၼ်ၵမ်ႈၽွင်ႈ တင်းၼမ်";
+Blockly.Msg.CONTROLS_WHILEUNTIL_HELPURL = "https://github.com/google/blockly/wiki/Loops#repeat"; // untranslated
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "တိုၵ်ႉလိုမ်ႉထိုင်";
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "ၶၢဝ်းတိုၵ်ႉလိုမ်ႉ";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "ပေႃးဝႃႈ ၵႃႈၶၼ် (ၼမ်ႉၵတ်ႉ) ဢမ်ႇမၢၼ်ႇမႅၼ်ႈၸိုင် ႁဵတ်းၶေႃႈၵဵပ်းထွၼ် ၵမ်ႈၽွင်ႈ";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "ပေႃးဝႃႈ ၵႃႈၶၼ် (ၼမ်ႉၵတ်ႉ) မၢၼ်ႇမႅၼ်ႈယဝ်ႉၸိုင် ႁဵတ်းၶေႃႈၵဵပ်းထွၼ်ၵမ်ႈၽွင်ႈ";
+Blockly.Msg.DELETE_ALL_BLOCKS = "Delete all %1 blocks?"; // untranslated
+Blockly.Msg.DELETE_BLOCK = "မွတ်ႇပလွၵ်ႉ";
+Blockly.Msg.DELETE_VARIABLE = "Delete the '%1' variable"; // untranslated
+Blockly.Msg.DELETE_VARIABLE_CONFIRMATION = "Delete %1 uses of the '%2' variable?"; // untranslated
+Blockly.Msg.DELETE_X_BLOCKS = "မွတ်ႇပလွၵ်ႉ %1";
+Blockly.Msg.DISABLE_BLOCK = "ဢမ်ႇၸၢင်ႈပလွၵ်ႉ";
+Blockly.Msg.DUPLICATE_BLOCK = "ထုတ်ႇ";
+Blockly.Msg.ENABLE_BLOCK = "ၵမ်ႉထႅမ်ပၼ် ပလွၵ်ႉ";
+Blockly.Msg.EXPAND_ALL = "ၶႂၢၵ်ႈပလွၵ်ႉတင်းၼမ်";
+Blockly.Msg.EXPAND_BLOCK = "ၶႂၢၵ်ႈပလွၵ်ႉ";
+Blockly.Msg.EXTERNAL_INPUTS = "ၶိူင်ႈဢၼ်လုၵ်ႉတၢင်းၼွၵ်ႈၶဝ်ႈမႃး";
+Blockly.Msg.HELP = "ၸွႆႈထႅမ်";
+Blockly.Msg.INLINE_INPUTS = "ၶိူင်ႈဢၼ်ၶဝ်ႈမႃးၸွမ်းလႅင်း";
+Blockly.Msg.LISTS_CREATE_EMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-empty-list"; // untranslated
+Blockly.Msg.LISTS_CREATE_EMPTY_TITLE = "create empty list"; // untranslated
+Blockly.Msg.LISTS_CREATE_EMPTY_TOOLTIP = "Returns a list, of length 0, containing no data records"; // untranslated
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TITLE_ADD = "list"; // untranslated
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TOOLTIP = "Add, remove, or reorder sections to reconfigure this list block."; // untranslated
+Blockly.Msg.LISTS_CREATE_WITH_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
+Blockly.Msg.LISTS_CREATE_WITH_INPUT_WITH = "create list with"; // untranslated
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TOOLTIP = "Add an item to the list."; // untranslated
+Blockly.Msg.LISTS_CREATE_WITH_TOOLTIP = "Create a list with any number of items."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_FIRST = "first"; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_FROM_END = "# from end"; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_FROM_START = "#"; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_GET = "get"; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_GET_REMOVE = "get and remove"; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_LAST = "last"; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_RANDOM = "random"; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_REMOVE = "remove"; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TAIL = ""; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FIRST = "Returns the first item in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FROM = "Returns the item at the specified position in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_LAST = "Returns the last item in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_RANDOM = "Returns a random item in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST = "Removes and returns the first item in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM = "Removes and returns the item at the specified position in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST = "Removes and returns the last item in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM = "Removes and returns a random item in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST = "Removes the first item in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM = "Removes the item at the specified position in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST = "Removes the last item in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM = "Removes a random item in a list."; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_END = "to # from end"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_START = "to #"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_END_LAST = "to last"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-a-sublist"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_START_FIRST = "get sub-list from first"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_END = "get sub-list from # from end"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_START = "get sub-list from #"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_TAIL = ""; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_TOOLTIP = "Creates a copy of the specified portion of a list."; // untranslated
+Blockly.Msg.LISTS_INDEX_FROM_END_TOOLTIP = "%1 is the last item."; // untranslated
+Blockly.Msg.LISTS_INDEX_FROM_START_TOOLTIP = "%1 is the first item."; // untranslated
+Blockly.Msg.LISTS_INDEX_OF_FIRST = "find first occurrence of item"; // untranslated
+Blockly.Msg.LISTS_INDEX_OF_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-items-from-a-list"; // untranslated
+Blockly.Msg.LISTS_INDEX_OF_LAST = "find last occurrence of item"; // untranslated
+Blockly.Msg.LISTS_INDEX_OF_TOOLTIP = "Returns the index of the first/last occurrence of the item in the list. Returns %1 if item is not found."; // untranslated
+Blockly.Msg.LISTS_INLIST = "in list"; // untranslated
+Blockly.Msg.LISTS_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#is-empty"; // untranslated
+Blockly.Msg.LISTS_ISEMPTY_TITLE = "%1 is empty"; // untranslated
+Blockly.Msg.LISTS_ISEMPTY_TOOLTIP = "Returns true if the list is empty."; // untranslated
+Blockly.Msg.LISTS_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Lists#length-of"; // untranslated
+Blockly.Msg.LISTS_LENGTH_TITLE = "length of %1"; // untranslated
+Blockly.Msg.LISTS_LENGTH_TOOLTIP = "Returns the length of a list."; // untranslated
+Blockly.Msg.LISTS_REPEAT_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
+Blockly.Msg.LISTS_REPEAT_TITLE = "create list with item %1 repeated %2 times"; // untranslated
+Blockly.Msg.LISTS_REPEAT_TOOLTIP = "Creates a list consisting of the given value repeated the specified number of times."; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_HELPURL = "https://github.com/google/blockly/wiki/Lists#in-list--set"; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_INPUT_TO = "as"; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_INSERT = "insert at"; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_SET = "set"; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST = "Inserts the item at the start of a list."; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FROM = "Inserts the item at the specified position in a list."; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_LAST = "Append the item to the end of a list."; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM = "Inserts the item randomly in a list."; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FIRST = "Sets the first item in a list."; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FROM = "Sets the item at the specified position in a list."; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_LAST = "Sets the last item in a list."; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_RANDOM = "Sets a random item in a list."; // untranslated
+Blockly.Msg.LISTS_SORT_HELPURL = "https://github.com/google/blockly/wiki/Lists#sorting-a-list"; // untranslated
+Blockly.Msg.LISTS_SORT_ORDER_ASCENDING = "ascending"; // untranslated
+Blockly.Msg.LISTS_SORT_ORDER_DESCENDING = "descending"; // untranslated
+Blockly.Msg.LISTS_SORT_TITLE = "sort %1 %2 %3"; // untranslated
+Blockly.Msg.LISTS_SORT_TOOLTIP = "Sort a copy of a list."; // untranslated
+Blockly.Msg.LISTS_SORT_TYPE_IGNORECASE = "alphabetic, ignore case"; // untranslated
+Blockly.Msg.LISTS_SORT_TYPE_NUMERIC = "numeric"; // untranslated
+Blockly.Msg.LISTS_SORT_TYPE_TEXT = "alphabetic"; // untranslated
+Blockly.Msg.LISTS_SPLIT_HELPURL = "https://github.com/google/blockly/wiki/Lists#splitting-strings-and-joining-lists"; // untranslated
+Blockly.Msg.LISTS_SPLIT_LIST_FROM_TEXT = "make list from text"; // untranslated
+Blockly.Msg.LISTS_SPLIT_TEXT_FROM_LIST = "make text from list"; // untranslated
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_JOIN = "Join a list of texts into one text, separated by a delimiter."; // untranslated
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_SPLIT = "Split text into a list of texts, breaking at each delimiter."; // untranslated
+Blockly.Msg.LISTS_SPLIT_WITH_DELIMITER = "with delimiter"; // untranslated
+Blockly.Msg.LOGIC_BOOLEAN_FALSE = "ဢမ်ႇၼႅၼ်ႈၼႃ";
+Blockly.Msg.LOGIC_BOOLEAN_HELPURL = "https://github.com/google/blockly/wiki/Logic#values"; // untranslated
+Blockly.Msg.LOGIC_BOOLEAN_TOOLTIP = "မၢၼ်ႇမႅၼ်ႈလႄႈသင် ဢမ်ႇၼႅၼ်ႈၼႃလႄႈသင် ႁူၼ်ၶိုၼ်း";
+Blockly.Msg.LOGIC_BOOLEAN_TRUE = "မၢၼ်ႇမႅၼ်ႈ";
+Blockly.Msg.LOGIC_COMPARE_HELPURL = "https://en.wikipedia.org/wiki/Inequality_(ပၢႆးၼပ်ႉ)";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_EQ = "သင်ဝႃႈ ဢၼ်ၽိူမ်ႉသႂ်ႇ တင်းသွင် မိူၼ်တၢင်ႇဢၼ်ၸိုင် မႄးၶိုၼ်း ႁႂ်ႈမၢၼ်ႇမႅၼ်ႈ";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GT = "သင်ဝႃႈ ဢၼ်ၽိူမ်ႉသႂ်ႇ ဢွၼ်တၢင်း ယႂ်ႇလိူဝ် ဢၼ်ၽိူမ်ႉသႂ်ႇ မၢႆသွင်ၸိုင် မႄးၶိုၼ်း ႁႂ်ႈမၢၼ်ႇမႅၼ်ႈ";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GTE = "သင်ဝႃႈ ဢၼ်ၽိူမ်ႉသႂ်ႇ ဢွၼ်တၢင်း ယႂ်ႇလိူဝ် ဢမ်ႇၼၼ် ၽဵင်ႇပဵင်း ဢၼ်ၽိူမ်ႉသႂ်ႇ မၢႆသွင်ၸိုင် မႄးၶိုၼ်း ႁႂ်ႈမၢၼ်ႇမႅၼ်ႈ";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LT = "သင်ဝႃႈ ဢၼ်ၽိူမ်ႉသႂ်ႇ ဢွၼ်တၢင်း မိူၼ် ဢၼ်ၽိူမ်ႉသႂ်ႇ မၢႆသွင်ၸိုင် မႄးၶိုၼ်း ႁႂ်ႈမၢၼ်ႇမႅၼ်ႈ";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LTE = "သင်ဝႃႈ ဢၼ်ၽိူမ်ႉသႂ်ႇ ဢွၼ်တၢင်း မိူၼ် ဢမ်ႇၼၼ် ၽဵင်ႇပဵင်း ဢၼ်ၽိူမ်ႉသႂ်ႇ မၢႆသွင်ၸိုင် မႄးၶိုၼ်း ႁႂ်ႈမၢၼ်ႇမႅၼ်ႈ";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_NEQ = "သင်ဝႃႈ ဢၼ်ၽိူမ်ႉသႂ်ႇ တင်းသွင် ဢမ်ႇမိူၼ်တၢင်ႇဢၼ်ၸိုင် မႄးၶိုၼ်း ႁႂ်ႈမၢၼ်ႇမႅၼ်ႈ";
+Blockly.Msg.LOGIC_NEGATE_HELPURL = "https://github.com/google/blockly/wiki/Logic#not"; // untranslated
+Blockly.Msg.LOGIC_NEGATE_TITLE = "ဢမ်ႇၸႂ်ႈ %1";
+Blockly.Msg.LOGIC_NEGATE_TOOLTIP = "သင်ဝႃႈ ဢၼ်ၽိူမ်ႉသႂ်ႇ ဢမ်ႇၼႅၼ်ႈၼႃၸိုင် မႄးၶိုၼ်း ႁႂ်ႈမၢၼ်ႇမႅၼ်ႈ။ သင်ဝႃႈ ဢၼ်ၽိူမ်ႉသႂ်ႇ မၢၼ်ႇမႅၼ်ႈၸိုင် ၶိုၼ်းမူၼ်ႉမႄး ႁႂ်ႈၼႅၼ်ႈၼႃ";
+Blockly.Msg.LOGIC_NULL = "ဢမ်ႇၶဝ်ႈၶႂၢင်ႇ";
+Blockly.Msg.LOGIC_NULL_HELPURL = "https://en.wikipedia.org/wiki/Nullable_type"; // untranslated
+Blockly.Msg.LOGIC_NULL_TOOLTIP = "လဵဝ်ၶိုၼ်း ဢမ်ႇၶဝ်ႈၶႂၢင်ႇ";
+Blockly.Msg.LOGIC_OPERATION_AND = "လႄႈ";
+Blockly.Msg.LOGIC_OPERATION_HELPURL = "https://github.com/google/blockly/wiki/Logic#logical-operations"; // untranslated
+Blockly.Msg.LOGIC_OPERATION_OR = "ဢမ်ႇၼၼ်";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_AND = "သင်ဝႃႈ ဢၼ်ၽိူမ်ႉသႂ်ႇ တင်းသွင်ဢၼ် မၢၼ်ႇမႅၼ်ႈၸိုင်ၸိုင် မႄးၶိုၼ်း ႁႂ်ႈမၢၼ်ႇမႅၼ်ႈ";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_OR = "သင်ဝႃႈ ဢၼ်ၽိူမ်ႉသႂ်ႇ ၵမ်းလိုၼ်းသုတ်း မၢၼ်ႇမႅၼ်ႈၸိုင် မႄးၶိုၼ်း ႁႂ်ႈမၢၼ်ႇမႅၼ်ႈ";
+Blockly.Msg.LOGIC_TERNARY_CONDITION = "ၸၢမ်း";
+Blockly.Msg.LOGIC_TERNARY_HELPURL = "https://en.wikipedia.org/wiki/%3F:"; // untranslated
+Blockly.Msg.LOGIC_TERNARY_IF_FALSE = "သင်ဝႃႈ ဢမ်ႇၼႅၼ်ႈၼႃ";
+Blockly.Msg.LOGIC_TERNARY_IF_TRUE = "သင်ဝႃႈ မၢၼ်ႇမႅၼ်ႈ";
+Blockly.Msg.LOGIC_TERNARY_TOOLTIP = "ၸၢမ်းၵူတ်ႇတူၺ်း သၢႆငၢႆ။ သင်ဝႃႈ သၢႆငၢႆမၢၼ်ႇမႅၼ်ႈ, လဵဝ်ၶိုၼ်း ၵႃႈၶၼ် (ၼမ်ႉၵတ်ႉ) 'သင်မၢၼ်ႇမႅၼ်ႈ'; လိူဝ်ၼၼ်ႉ လဵဝ်ၶိုၼ်း ၵႃႈၶၼ် (ၼမ်ႉၵတ်ႉ) 'သင်ဢမ်ႇၼႅၼ်ႈၼႃ'။";
+Blockly.Msg.MATH_ADDITION_SYMBOL = "+"; // untranslated
+Blockly.Msg.MATH_ARITHMETIC_HELPURL = "https://en.wikipedia.org/wiki/ပၢႆးၼပ်ႉ";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_ADD = "လဵဝ်ၶိုၼ်း တၢင်းၼမ် ၼႂ်းမၢႆၼပ်ႉ သွင်";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE = "လဵဝ်ၶိုၼ်း ပမႃႇၼ ၼႂ်းမၢႆၼပ်ႉ သွင်";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MINUS = "လဵဝ်ၶိုၼ်း ဢၼ်ပႅၵ်ႇပိူင်ႈ ၼႂ်းမၢႆၼပ်ႉ သွင်";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MULTIPLY = "လဵဝ်ၶိုၼ်း ဢၼ်ဢဝ်ဢွၵ်ႇ ၼႂ်းမၢႆၼပ်ႉ သွင်";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_POWER = "လဵဝ်ၶိုၼ်း တူဝ်ၼပ်ႉမၢႆၼိုင်ႈၼႆႉ ၸွႆႈႁႅင်းပၼ် တူဝ်ၼပ်ႉမၢႆသွင်";
+Blockly.Msg.MATH_CHANGE_HELPURL = "https://en.wikipedia.org/wiki/Programming_idiom#Incrementing_a_counter"; // untranslated
+Blockly.Msg.MATH_CHANGE_TITLE = "change %1 by %2"; // untranslated
+Blockly.Msg.MATH_CHANGE_TOOLTIP = "Add a number to variable '%1'."; // untranslated
+Blockly.Msg.MATH_CONSTANT_HELPURL = "https://en.wikipedia.org/wiki/Mathematical_constant"; // untranslated
+Blockly.Msg.MATH_CONSTANT_TOOLTIP = "Return one of the common constants: π (3.141…), e (2.718…), φ (1.618…), sqrt(2) (1.414…), sqrt(½) (0.707…), or ∞ (infinity)."; // untranslated
+Blockly.Msg.MATH_CONSTRAIN_HELPURL = "https://en.wikipedia.org/wiki/Clamping_%28graphics%29"; // untranslated
+Blockly.Msg.MATH_CONSTRAIN_TITLE = "constrain %1 low %2 high %3"; // untranslated
+Blockly.Msg.MATH_CONSTRAIN_TOOLTIP = "Constrain a number to be between the specified limits (inclusive)."; // untranslated
+Blockly.Msg.MATH_DIVISION_SYMBOL = "÷"; // untranslated
+Blockly.Msg.MATH_IS_DIVISIBLE_BY = "is divisible by"; // untranslated
+Blockly.Msg.MATH_IS_EVEN = "ပဵၼ်ၵူပ်ႉ";
+Blockly.Msg.MATH_IS_NEGATIVE = "is negative"; // untranslated
+Blockly.Msg.MATH_IS_ODD = "ပဵၼ်ၵိၵ်ႈ";
+Blockly.Msg.MATH_IS_POSITIVE = "is positive"; // untranslated
+Blockly.Msg.MATH_IS_PRIME = "is prime"; // untranslated
+Blockly.Msg.MATH_IS_TOOLTIP = "Check if a number is an even, odd, prime, whole, positive, negative, or if it is divisible by certain number. Returns true or false."; // untranslated
+Blockly.Msg.MATH_IS_WHOLE = "is whole"; // untranslated
+Blockly.Msg.MATH_MODULO_HELPURL = "https://en.wikipedia.org/wiki/Modulo_operation"; // untranslated
+Blockly.Msg.MATH_MODULO_TITLE = "remainder of %1 ÷ %2"; // untranslated
+Blockly.Msg.MATH_MODULO_TOOLTIP = "Return the remainder from dividing the two numbers."; // untranslated
+Blockly.Msg.MATH_MULTIPLICATION_SYMBOL = "×"; // untranslated
+Blockly.Msg.MATH_NUMBER_HELPURL = "https://en.wikipedia.org/wiki/မၢႆၼပ်ႉ";
+Blockly.Msg.MATH_NUMBER_TOOLTIP = "မၢႆၼပ်ႉ ၼိုင်ႈဢၼ်";
+Blockly.Msg.MATH_ONLIST_HELPURL = ""; // untranslated
+Blockly.Msg.MATH_ONLIST_OPERATOR_AVERAGE = "average of list"; // untranslated
+Blockly.Msg.MATH_ONLIST_OPERATOR_MAX = "max of list"; // untranslated
+Blockly.Msg.MATH_ONLIST_OPERATOR_MEDIAN = "median of list"; // untranslated
+Blockly.Msg.MATH_ONLIST_OPERATOR_MIN = "min of list"; // untranslated
+Blockly.Msg.MATH_ONLIST_OPERATOR_MODE = "modes of list"; // untranslated
+Blockly.Msg.MATH_ONLIST_OPERATOR_RANDOM = "random item of list"; // untranslated
+Blockly.Msg.MATH_ONLIST_OPERATOR_STD_DEV = "standard deviation of list"; // untranslated
+Blockly.Msg.MATH_ONLIST_OPERATOR_SUM = "sum of list"; // untranslated
+Blockly.Msg.MATH_ONLIST_TOOLTIP_AVERAGE = "Return the average (arithmetic mean) of the numeric values in the list."; // untranslated
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MAX = "Return the largest number in the list."; // untranslated
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MEDIAN = "Return the median number in the list."; // untranslated
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MIN = "Return the smallest number in the list."; // untranslated
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MODE = "Return a list of the most common item(s) in the list."; // untranslated
+Blockly.Msg.MATH_ONLIST_TOOLTIP_RANDOM = "Return a random element from the list."; // untranslated
+Blockly.Msg.MATH_ONLIST_TOOLTIP_STD_DEV = "Return the standard deviation of the list."; // untranslated
+Blockly.Msg.MATH_ONLIST_TOOLTIP_SUM = "Return the sum of all the numbers in the list."; // untranslated
+Blockly.Msg.MATH_POWER_SYMBOL = "^"; // untranslated
+Blockly.Msg.MATH_RANDOM_FLOAT_HELPURL = "https://en.wikipedia.org/wiki/Random_number_generation"; // untranslated
+Blockly.Msg.MATH_RANDOM_FLOAT_TITLE_RANDOM = "random fraction"; // untranslated
+Blockly.Msg.MATH_RANDOM_FLOAT_TOOLTIP = "Return a random fraction between 0.0 (inclusive) and 1.0 (exclusive)."; // untranslated
+Blockly.Msg.MATH_RANDOM_INT_HELPURL = "https://en.wikipedia.org/wiki/Random_number_generation"; // untranslated
+Blockly.Msg.MATH_RANDOM_INT_TITLE = "random integer from %1 to %2"; // untranslated
+Blockly.Msg.MATH_RANDOM_INT_TOOLTIP = "Return a random integer between the two specified limits, inclusive."; // untranslated
+Blockly.Msg.MATH_ROUND_HELPURL = "https://en.wikipedia.org/wiki/Rounding"; // untranslated
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUND = "round"; // untranslated
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDDOWN = "round down"; // untranslated
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDUP = "round up"; // untranslated
+Blockly.Msg.MATH_ROUND_TOOLTIP = "Round a number up or down."; // untranslated
+Blockly.Msg.MATH_SINGLE_HELPURL = "https://en.wikipedia.org/wiki/Square_root (မၢႆတူပ်ႉမိူၼ်)";
+Blockly.Msg.MATH_SINGLE_OP_ABSOLUTE = "ပၵတိ";
+Blockly.Msg.MATH_SINGLE_OP_ROOT = "မၢႆတူပ်ႉမိူၼ်";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ABS = "လဵဝ်ၶိုၼ်း ၵႃႈၶၼ် (ၼမ်ႉၵတ်ႉ) ပၵတိ ၼႂ်းမၢႆၼပ်ႉ";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_EXP = "လဵဝ်ၶိုၼ်း e ၵႂႃႇတီႈ ပႃႇဝႃႇ ၼႂ်းမၢႆၼပ်ႉ";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LN = "လဵဝ်ၶိုၼ်း လွၵ်းလၢႆးၼပ်ႉ ၼႂ်းမၢႆၼပ်ႉ";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LOG10 = "လဵဝ်ၶိုၼ်း ပိုၼ်ႉထၢၼ် 10 လွၵ်းလၢႆးၼပ်ႉ ၼႂ်းမၢႆၼပ်ႉ";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_NEG = "လဵဝ်ၶိုၼ်း ဢၼ်သၢၼ်ၶတ်း ၼႂ်း မၢႆၼပ်ႉ";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_POW10 = "လဵဝ်ၶိုၼ်း 10 ၵႂႃႇတီႈ ပႃႇဝႃႇ ၼႂ်းမၢႆၼပ်ႉ";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ROOT = "လဵဝ်ၶိုၼ်း မၢႆတူပ်ႉမိူၼ် ၼႂ်းမၢႆၼပ်ႉ";
+Blockly.Msg.MATH_SUBTRACTION_SYMBOL = "-"; // untranslated
+Blockly.Msg.MATH_TRIG_ACOS = "acos"; // untranslated
+Blockly.Msg.MATH_TRIG_ASIN = "asin"; // untranslated
+Blockly.Msg.MATH_TRIG_ATAN = "atan"; // untranslated
+Blockly.Msg.MATH_TRIG_COS = "cos"; // untranslated
+Blockly.Msg.MATH_TRIG_HELPURL = "https://en.wikipedia.org/wiki/Trigonometric_functions"; // untranslated
+Blockly.Msg.MATH_TRIG_SIN = "sin"; // untranslated
+Blockly.Msg.MATH_TRIG_TAN = "tan"; // untranslated
+Blockly.Msg.MATH_TRIG_TOOLTIP_ACOS = "Return the arccosine of a number."; // untranslated
+Blockly.Msg.MATH_TRIG_TOOLTIP_ASIN = "Return the arcsine of a number."; // untranslated
+Blockly.Msg.MATH_TRIG_TOOLTIP_ATAN = "Return the arctangent of a number."; // untranslated
+Blockly.Msg.MATH_TRIG_TOOLTIP_COS = "Return the cosine of a degree (not radian)."; // untranslated
+Blockly.Msg.MATH_TRIG_TOOLTIP_SIN = "Return the sine of a degree (not radian)."; // untranslated
+Blockly.Msg.MATH_TRIG_TOOLTIP_TAN = "Return the tangent of a degree (not radian)."; // untranslated
+Blockly.Msg.NEW_VARIABLE = "လၢႆႈဢၼ်မႂ်ႇ";
+Blockly.Msg.NEW_VARIABLE_TITLE = "ၸိုဝ်ႈဢၼ်လၢႆႈမႂ်ႇ";
+Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; // untranslated
+Blockly.Msg.PROCEDURES_ALLOW_STATEMENTS = "allow statements"; // untranslated
+Blockly.Msg.PROCEDURES_BEFORE_PARAMS = "with:"; // untranslated
+Blockly.Msg.PROCEDURES_CALLNORETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_CALLNORETURN_TOOLTIP = "Run the user-defined function '%1'."; // untranslated
+Blockly.Msg.PROCEDURES_CALLRETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_CALLRETURN_TOOLTIP = "Run the user-defined function '%1' and use its output."; // untranslated
+Blockly.Msg.PROCEDURES_CALL_BEFORE_PARAMS = "with:"; // untranslated
+Blockly.Msg.PROCEDURES_CREATE_DO = "Create '%1'"; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT = "Describe this function..."; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_DO = ""; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE = "do something"; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE = "to"; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_TOOLTIP = "Creates a function with no output."; // untranslated
+Blockly.Msg.PROCEDURES_DEFRETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_DEFRETURN_RETURN = "return"; // untranslated
+Blockly.Msg.PROCEDURES_DEFRETURN_TOOLTIP = "Creates a function with an output."; // untranslated
+Blockly.Msg.PROCEDURES_DEF_DUPLICATE_WARNING = "Warning: This function has duplicate parameters."; // untranslated
+Blockly.Msg.PROCEDURES_HIGHLIGHT_DEF = "Highlight function definition"; // untranslated
+Blockly.Msg.PROCEDURES_IFRETURN_HELPURL = "http://c2.com/cgi/wiki?GuardClause"; // untranslated
+Blockly.Msg.PROCEDURES_IFRETURN_TOOLTIP = "If a value is true, then return a second value."; // untranslated
+Blockly.Msg.PROCEDURES_IFRETURN_WARNING = "Warning: This block may be used only within a function definition."; // untranslated
+Blockly.Msg.PROCEDURES_MUTATORARG_TITLE = "input name:"; // untranslated
+Blockly.Msg.PROCEDURES_MUTATORARG_TOOLTIP = "Add an input to the function."; // untranslated
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TITLE = "inputs"; // untranslated
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TOOLTIP = "Add, remove, or reorder inputs to this function."; // untranslated
+Blockly.Msg.REDO = "Redo"; // untranslated
+Blockly.Msg.REMOVE_COMMENT = "ဢဝ်ဢွၵ်ႇ ၶေႃႈၵႂၢမ်း";
+Blockly.Msg.RENAME_VARIABLE = "လိုမ်ႉၶိုၼ်း ဢၼ်လၢႆႈမႂ်ႇ";
+Blockly.Msg.RENAME_VARIABLE_TITLE = "လိုမ်ႉၶိုၼ်း ဢၼ်လၢႆႈမႂ်ႇၸိူဝ်းၼၼ်ႉ '%1' ထိုင်";
+Blockly.Msg.TEXT_APPEND_APPENDTEXT = "append text"; // untranslated
+Blockly.Msg.TEXT_APPEND_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_APPEND_TO = "to"; // untranslated
+Blockly.Msg.TEXT_APPEND_TOOLTIP = "Append some text to variable '%1'."; // untranslated
+Blockly.Msg.TEXT_CHANGECASE_HELPURL = "https://github.com/google/blockly/wiki/Text#adjusting-text-case"; // untranslated
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_LOWERCASE = "to lower case"; // untranslated
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_TITLECASE = "to Title Case"; // untranslated
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_UPPERCASE = "to UPPER CASE"; // untranslated
+Blockly.Msg.TEXT_CHANGECASE_TOOLTIP = "Return a copy of the text in a different case."; // untranslated
+Blockly.Msg.TEXT_CHARAT_FIRST = "get first letter"; // untranslated
+Blockly.Msg.TEXT_CHARAT_FROM_END = "get letter # from end"; // untranslated
+Blockly.Msg.TEXT_CHARAT_FROM_START = "get letter #"; // untranslated
+Blockly.Msg.TEXT_CHARAT_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-text"; // untranslated
+Blockly.Msg.TEXT_CHARAT_INPUT_INTEXT = "in text"; // untranslated
+Blockly.Msg.TEXT_CHARAT_LAST = "get last letter"; // untranslated
+Blockly.Msg.TEXT_CHARAT_RANDOM = "get random letter"; // untranslated
+Blockly.Msg.TEXT_CHARAT_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_CHARAT_TOOLTIP = "Returns the letter at the specified position."; // untranslated
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TOOLTIP = "Add an item to the text."; // untranslated
+Blockly.Msg.TEXT_CREATE_JOIN_TITLE_JOIN = "join"; // untranslated
+Blockly.Msg.TEXT_CREATE_JOIN_TOOLTIP = "Add, remove, or reorder sections to reconfigure this text block."; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_END = "to letter # from end"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_START = "to letter #"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_END_LAST = "to last letter"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_INPUT_IN_TEXT = "in text"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FIRST = "get substring from first letter"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_END = "get substring from letter # from end"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_START = "get substring from letter #"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_TOOLTIP = "Returns a specified portion of the text."; // untranslated
+Blockly.Msg.TEXT_INDEXOF_HELPURL = "https://github.com/google/blockly/wiki/Text#finding-text"; // untranslated
+Blockly.Msg.TEXT_INDEXOF_INPUT_INTEXT = "in text"; // untranslated
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_FIRST = "find first occurrence of text"; // untranslated
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_LAST = "find last occurrence of text"; // untranslated
+Blockly.Msg.TEXT_INDEXOF_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_INDEXOF_TOOLTIP = "Returns the index of the first/last occurrence of the first text in the second text. Returns %1 if text is not found."; // untranslated
+Blockly.Msg.TEXT_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Text#checking-for-empty-text"; // untranslated
+Blockly.Msg.TEXT_ISEMPTY_TITLE = "%1 is empty"; // untranslated
+Blockly.Msg.TEXT_ISEMPTY_TOOLTIP = "Returns true if the provided text is empty."; // untranslated
+Blockly.Msg.TEXT_JOIN_HELPURL = "https://github.com/google/blockly/wiki/Text#text-creation"; // untranslated
+Blockly.Msg.TEXT_JOIN_TITLE_CREATEWITH = "create text with"; // untranslated
+Blockly.Msg.TEXT_JOIN_TOOLTIP = "Create a piece of text by joining together any number of items."; // untranslated
+Blockly.Msg.TEXT_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_LENGTH_TITLE = "length of %1"; // untranslated
+Blockly.Msg.TEXT_LENGTH_TOOLTIP = "Returns the number of letters (including spaces) in the provided text."; // untranslated
+Blockly.Msg.TEXT_PRINT_HELPURL = "https://github.com/google/blockly/wiki/Text#printing-text"; // untranslated
+Blockly.Msg.TEXT_PRINT_TITLE = "print %1"; // untranslated
+Blockly.Msg.TEXT_PRINT_TOOLTIP = "Print the specified text, number or other value."; // untranslated
+Blockly.Msg.TEXT_PROMPT_HELPURL = "https://github.com/google/blockly/wiki/Text#getting-input-from-the-user"; // untranslated
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_NUMBER = "Prompt for user for a number."; // untranslated
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_TEXT = "Prompt for user for some text."; // untranslated
+Blockly.Msg.TEXT_PROMPT_TYPE_NUMBER = "prompt for number with message"; // untranslated
+Blockly.Msg.TEXT_PROMPT_TYPE_TEXT = "prompt for text with message"; // untranslated
+Blockly.Msg.TEXT_TEXT_HELPURL = "https://en.wikipedia.org/wiki/String_(computer_science)"; // untranslated
+Blockly.Msg.TEXT_TEXT_TOOLTIP = "A letter, word, or line of text."; // untranslated
+Blockly.Msg.TEXT_TRIM_HELPURL = "https://github.com/google/blockly/wiki/Text#trimming-removing-spaces"; // untranslated
+Blockly.Msg.TEXT_TRIM_OPERATOR_BOTH = "trim spaces from both sides of"; // untranslated
+Blockly.Msg.TEXT_TRIM_OPERATOR_LEFT = "trim spaces from left side of"; // untranslated
+Blockly.Msg.TEXT_TRIM_OPERATOR_RIGHT = "trim spaces from right side of"; // untranslated
+Blockly.Msg.TEXT_TRIM_TOOLTIP = "Return a copy of the text with spaces removed from one or both ends."; // untranslated
+Blockly.Msg.TODAY = "မိူဝ်ႈၼႆႉ";
+Blockly.Msg.UNDO = "Undo"; // untranslated
+Blockly.Msg.VARIABLES_DEFAULT_NAME = "ဢၼ်";
+Blockly.Msg.VARIABLES_GET_CREATE_SET = "Create 'set %1'"; // untranslated
+Blockly.Msg.VARIABLES_GET_HELPURL = "https://github.com/google/blockly/wiki/Variables#get"; // untranslated
+Blockly.Msg.VARIABLES_GET_TOOLTIP = "Returns the value of this variable."; // untranslated
+Blockly.Msg.VARIABLES_SET = "set %1 to %2"; // untranslated
+Blockly.Msg.VARIABLES_SET_CREATE_GET = "Create 'get %1'"; // untranslated
+Blockly.Msg.VARIABLES_SET_HELPURL = "https://github.com/google/blockly/wiki/Variables#set"; // untranslated
+Blockly.Msg.VARIABLES_SET_TOOLTIP = "Sets this variable to be equal to the input."; // untranslated
+Blockly.Msg.VARIABLE_ALREADY_EXISTS = "A variable named '%1' already exists."; // untranslated
+Blockly.Msg.PROCEDURES_DEFRETURN_TITLE = Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE;
+Blockly.Msg.CONTROLS_IF_IF_TITLE_IF = Blockly.Msg.CONTROLS_IF_MSG_IF;
+Blockly.Msg.CONTROLS_WHILEUNTIL_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_MSG_THEN = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_ELSE_TITLE_ELSE = Blockly.Msg.CONTROLS_IF_MSG_ELSE;
+Blockly.Msg.PROCEDURES_DEFRETURN_PROCEDURE = Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE;
+Blockly.Msg.LISTS_GET_SUBLIST_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.LISTS_GET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.PROCEDURES_DEFRETURN_DO = Blockly.Msg.PROCEDURES_DEFNORETURN_DO;
+Blockly.Msg.CONTROLS_IF_ELSEIF_TITLE_ELSEIF = Blockly.Msg.CONTROLS_IF_MSG_ELSEIF;
+Blockly.Msg.LISTS_GET_INDEX_HELPURL = Blockly.Msg.LISTS_INDEX_OF_HELPURL;
+Blockly.Msg.CONTROLS_FOREACH_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_SET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TITLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_APPEND_VARIABLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.LISTS_INDEX_OF_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.PROCEDURES_DEFRETURN_COMMENT = Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT; \ No newline at end of file
diff --git a/blockly/msg/js/sk.js b/blockly/msg/js/sk.js
new file mode 100644
index 0000000..d929eef
--- /dev/null
+++ b/blockly/msg/js/sk.js
@@ -0,0 +1,391 @@
+// This file was automatically generated. Do not modify.
+
+'use strict';
+
+goog.provide('Blockly.Msg.sk');
+
+goog.require('Blockly.Msg');
+
+Blockly.Msg.ADD_COMMENT = "Pridať komentár";
+Blockly.Msg.CHANGE_VALUE_TITLE = "Zmeniť hodnotu:";
+Blockly.Msg.CLEAN_UP = "Narovnať bloky";
+Blockly.Msg.COLLAPSE_ALL = "Zvinúť bloky";
+Blockly.Msg.COLLAPSE_BLOCK = "Zvinúť blok";
+Blockly.Msg.COLOUR_BLEND_COLOUR1 = "farba 1";
+Blockly.Msg.COLOUR_BLEND_COLOUR2 = "farba 2";
+Blockly.Msg.COLOUR_BLEND_HELPURL = "http://meyerweb.com/eric/tools/color-blend/"; // untranslated
+Blockly.Msg.COLOUR_BLEND_RATIO = "pomer";
+Blockly.Msg.COLOUR_BLEND_TITLE = "zmiešať";
+Blockly.Msg.COLOUR_BLEND_TOOLTIP = "Zmieša dve farby v danom pomere (0.0 - 1.0).";
+Blockly.Msg.COLOUR_PICKER_HELPURL = "https://en.wikipedia.org/wiki/Color";
+Blockly.Msg.COLOUR_PICKER_TOOLTIP = "Zvoľte farbu z palety.";
+Blockly.Msg.COLOUR_RANDOM_HELPURL = "http://randomcolour.com"; // untranslated
+Blockly.Msg.COLOUR_RANDOM_TITLE = "náhodná farba";
+Blockly.Msg.COLOUR_RANDOM_TOOLTIP = "Zvoliť farbu náhodne.";
+Blockly.Msg.COLOUR_RGB_BLUE = "modrá";
+Blockly.Msg.COLOUR_RGB_GREEN = "zelená";
+Blockly.Msg.COLOUR_RGB_HELPURL = "http://www.december.com/html/spec/colorper.html"; // untranslated
+Blockly.Msg.COLOUR_RGB_RED = "červená";
+Blockly.Msg.COLOUR_RGB_TITLE = "ofarbiť s";
+Blockly.Msg.COLOUR_RGB_TOOLTIP = "Vytvoriť farbu pomocou zadaného množstva červenej, zelenej a modrej. Množstvo musí byť medzi 0 a 100.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_HELPURL = "https://github.com/google/blockly/wiki/Loops#loop-termination-blocks"; // untranslated
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK = "opustiť slučku";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE = "prejdi na nasledujúce opakovanie slučky";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK = "Opustiť túto slučku.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE = "Vynechať zvyšok tejto slučky a pokračovať ďalším opakovaním.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_WARNING = "Upozornenie: Tento blok sa môže používať len v rámci slučky.";
+Blockly.Msg.CONTROLS_FOREACH_HELPURL = "https://github.com/google/blockly/wiki/Loops#for-each"; // untranslated
+Blockly.Msg.CONTROLS_FOREACH_TITLE = "pre každý prvok %1 v zozname %2";
+Blockly.Msg.CONTROLS_FOREACH_TOOLTIP = "Pre každý prvok v zozname priraď jeho hodnotu do premenej '%1' a vykonaj príkazy.";
+Blockly.Msg.CONTROLS_FOR_HELPURL = "https://github.com/google/blockly/wiki/Loops#count-with"; // untranslated
+Blockly.Msg.CONTROLS_FOR_TITLE = "počítať s %1 od %2 do %3 o %4";
+Blockly.Msg.CONTROLS_FOR_TOOLTIP = "Nechá premennú '%1' nadobúdať hodnoty od začiatočného čísla po konečné s daným medzikrokom a vykoná zadané bloky.";
+Blockly.Msg.CONTROLS_IF_ELSEIF_TOOLTIP = "Pridať podmienku k \"ak\" bloku.";
+Blockly.Msg.CONTROLS_IF_ELSE_TOOLTIP = "Pridať poslednú záchytnú podmienku k \"ak\" bloku.";
+Blockly.Msg.CONTROLS_IF_HELPURL = "https://github.com/google/blockly/wiki/IfElse"; // untranslated
+Blockly.Msg.CONTROLS_IF_IF_TOOLTIP = "Pridať, odstrániť alebo zmeniť poradie oddielov tohto \"ak\" bloku.";
+Blockly.Msg.CONTROLS_IF_MSG_ELSE = "inak";
+Blockly.Msg.CONTROLS_IF_MSG_ELSEIF = "inak ak";
+Blockly.Msg.CONTROLS_IF_MSG_IF = "ak";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_1 = "Ak je hodnota pravda, vykonaj príkazy.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_2 = "Ak je hodnota pravda, vykonaj príkazy v prvom bloku. Inak vykonaj príkazy v druhom bloku.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_3 = "Ak je prvá hodnota pravda, vykonaj príkazy v prvom bloku. Inak, ak je druhá hodnota pravda, vykonaj príkazy v druhom bloku.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_4 = "Ak je prvá hodnota pravda, vykonaj príkazy v prvom bloku. Inak, ak je druhá hodnota pravda, vykonaj príkazy v druhom bloku. Ak ani jedna hodnota nie je pravda, vykonaj príkazy v poslednom bloku.";
+Blockly.Msg.CONTROLS_REPEAT_HELPURL = "https://en.wikipedia.org/wiki/For_loop";
+Blockly.Msg.CONTROLS_REPEAT_INPUT_DO = "rob";
+Blockly.Msg.CONTROLS_REPEAT_TITLE = "opakuj %1 krát";
+Blockly.Msg.CONTROLS_REPEAT_TOOLTIP = "Opakuj určité príkazy viackrát.";
+Blockly.Msg.CONTROLS_WHILEUNTIL_HELPURL = "https://github.com/google/blockly/wiki/Loops#repeat"; // untranslated
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "opakuj kým nebude";
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "opakuj kým";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "Kým je hodnota nepravdivá, vykonávaj príkazy.";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "Kým je hodnota pravdivá, vykonávaj príkazy.";
+Blockly.Msg.DELETE_ALL_BLOCKS = "Zmazať všetkých %1 dielcov?";
+Blockly.Msg.DELETE_BLOCK = "Odstrániť blok";
+Blockly.Msg.DELETE_VARIABLE = "Delete the '%1' variable"; // untranslated
+Blockly.Msg.DELETE_VARIABLE_CONFIRMATION = "Delete %1 uses of the '%2' variable?"; // untranslated
+Blockly.Msg.DELETE_X_BLOCKS = "Odstrániť %1 blokov";
+Blockly.Msg.DISABLE_BLOCK = "Vypnúť blok";
+Blockly.Msg.DUPLICATE_BLOCK = "Duplikovať";
+Blockly.Msg.ENABLE_BLOCK = "Povoliť blok";
+Blockly.Msg.EXPAND_ALL = "Rozvinúť bloky";
+Blockly.Msg.EXPAND_BLOCK = "Rozvinúť blok";
+Blockly.Msg.EXTERNAL_INPUTS = "Vonkajšie vstupy";
+Blockly.Msg.HELP = "Pomoc";
+Blockly.Msg.INLINE_INPUTS = "Riadkové vstupy";
+Blockly.Msg.LISTS_CREATE_EMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-empty-list"; // untranslated
+Blockly.Msg.LISTS_CREATE_EMPTY_TITLE = "prázdny zoznam";
+Blockly.Msg.LISTS_CREATE_EMPTY_TOOLTIP = "Vráti zoznam nulovej dĺžky, ktorý neobsahuje žiadne prvky.";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TITLE_ADD = "zoznam";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TOOLTIP = "Pridaj, odstráň alebo zmeň poradie v tomto zoznamovom bloku.";
+Blockly.Msg.LISTS_CREATE_WITH_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with";
+Blockly.Msg.LISTS_CREATE_WITH_INPUT_WITH = "vytvor zoznam s";
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TOOLTIP = "Pridaj prvok do zoznamu.";
+Blockly.Msg.LISTS_CREATE_WITH_TOOLTIP = "Vytvor zoznam s ľubovoľným počtom prvkov.";
+Blockly.Msg.LISTS_GET_INDEX_FIRST = "prvý";
+Blockly.Msg.LISTS_GET_INDEX_FROM_END = "# od konca";
+Blockly.Msg.LISTS_GET_INDEX_FROM_START = "#"; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_GET = "zisti";
+Blockly.Msg.LISTS_GET_INDEX_GET_REMOVE = "zisti a odstráň";
+Blockly.Msg.LISTS_GET_INDEX_LAST = "posledný";
+Blockly.Msg.LISTS_GET_INDEX_RANDOM = "náhodný";
+Blockly.Msg.LISTS_GET_INDEX_REMOVE = "odstráň";
+Blockly.Msg.LISTS_GET_INDEX_TAIL = ""; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FIRST = "Vráti počiatočný prvok zoznamu.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FROM = "Vráti prvok na určenej pozícii v zozname.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_LAST = "Vráti posledný prvok zoznamu.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_RANDOM = "Vráti náhodný prvok zoznamu.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST = "Odstráni a vráti prvý prvok v zozname.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM = "Odstráni a vráti prvok z určenej pozície v zozname.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST = "Odstráni a vráti posledný prvok v zozname.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM = "Odstráni a vráti náhodný prvok v zozname.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST = "Odstráni prvý prvok v zozname.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM = "Odstráni prvok na určenej pozícii v zozname.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST = "Odstráni posledný prvok v zozname.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM = "Odstráni náhodný prvok v zozname.";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_END = "po # od konca";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_START = "po #";
+Blockly.Msg.LISTS_GET_SUBLIST_END_LAST = "po koniec";
+Blockly.Msg.LISTS_GET_SUBLIST_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-a-sublist"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_START_FIRST = "Získať podzoznam od začiatku";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_END = "Získať podzoznam od # od konca";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_START = "získať podzoznam od #";
+Blockly.Msg.LISTS_GET_SUBLIST_TAIL = ""; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_TOOLTIP = "Skopíruje určený úsek zoznamu.";
+Blockly.Msg.LISTS_INDEX_FROM_END_TOOLTIP = "%1 je posledný prvok.";
+Blockly.Msg.LISTS_INDEX_FROM_START_TOOLTIP = "%1 je počiatočný prvok.";
+Blockly.Msg.LISTS_INDEX_OF_FIRST = "nájdi prvý výskyt prvku";
+Blockly.Msg.LISTS_INDEX_OF_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-items-from-a-list"; // untranslated
+Blockly.Msg.LISTS_INDEX_OF_LAST = "nájdi posledný výskyt prvku";
+Blockly.Msg.LISTS_INDEX_OF_TOOLTIP = "Vráti index prvého/posledného výskytu prvku v zozname. Ak sa nič nenašlo, vráti %1.";
+Blockly.Msg.LISTS_INLIST = "v zozname";
+Blockly.Msg.LISTS_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#is-empty"; // untranslated
+Blockly.Msg.LISTS_ISEMPTY_TITLE = "%1 je prázdny";
+Blockly.Msg.LISTS_ISEMPTY_TOOLTIP = "Vráti pravda, ak je zoznam prázdny.";
+Blockly.Msg.LISTS_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Lists#length-of"; // untranslated
+Blockly.Msg.LISTS_LENGTH_TITLE = "dĺžka %1";
+Blockly.Msg.LISTS_LENGTH_TOOLTIP = "Vráti dĺžku zoznamu";
+Blockly.Msg.LISTS_REPEAT_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
+Blockly.Msg.LISTS_REPEAT_TITLE = "vytvor zoznam s prvkom %1 opakovaným %2 krát";
+Blockly.Msg.LISTS_REPEAT_TOOLTIP = "Vytvorí zoznam s niekoľkými rovnakými prvkami s danou hodnotou.";
+Blockly.Msg.LISTS_SET_INDEX_HELPURL = "https://github.com/google/blockly/wiki/Lists#in-list--set"; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_INPUT_TO = "ako";
+Blockly.Msg.LISTS_SET_INDEX_INSERT = "vložiť na";
+Blockly.Msg.LISTS_SET_INDEX_SET = "nastaviť";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST = "Vsunie prvok na začiatok zoznamu.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FROM = "Vsunie prvok na určenú pozíciu v zozname.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_LAST = "Pripojí prvok na koniec zoznamu.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM = "Vsunie prvok na náhodné miesto v zozname.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FIRST = "Nastaví prvý prvok v zozname.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FROM = "Nastaví prvok na určenej pozícii v zozname.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_LAST = "Nastaví posledný prvok v zozname.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_RANDOM = "Nastaví posledný prvok v zozname.";
+Blockly.Msg.LISTS_SORT_HELPURL = "https://github.com/google/blockly/wiki/Lists#sorting-a-list"; // untranslated
+Blockly.Msg.LISTS_SORT_ORDER_ASCENDING = "ascending"; // untranslated
+Blockly.Msg.LISTS_SORT_ORDER_DESCENDING = "descending"; // untranslated
+Blockly.Msg.LISTS_SORT_TITLE = "sort %1 %2 %3"; // untranslated
+Blockly.Msg.LISTS_SORT_TOOLTIP = "Sort a copy of a list."; // untranslated
+Blockly.Msg.LISTS_SORT_TYPE_IGNORECASE = "alphabetic, ignore case"; // untranslated
+Blockly.Msg.LISTS_SORT_TYPE_NUMERIC = "numeric"; // untranslated
+Blockly.Msg.LISTS_SORT_TYPE_TEXT = "alphabetic"; // untranslated
+Blockly.Msg.LISTS_SPLIT_HELPURL = "https://github.com/google/blockly/wiki/Lists#splitting-strings-and-joining-lists"; // untranslated
+Blockly.Msg.LISTS_SPLIT_LIST_FROM_TEXT = "vytvoriť zoznam z textu";
+Blockly.Msg.LISTS_SPLIT_TEXT_FROM_LIST = "vytvoriť text zo zoznamu";
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_JOIN = "Spojiť zoznam textov do jedného textu s oddeľovačmi.";
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_SPLIT = "Rozdelenie textu do zoznamu textov, lámanie na oddeľovačoch.";
+Blockly.Msg.LISTS_SPLIT_WITH_DELIMITER = "s oddeľovačom";
+Blockly.Msg.LOGIC_BOOLEAN_FALSE = "nepravda";
+Blockly.Msg.LOGIC_BOOLEAN_HELPURL = "https://github.com/google/blockly/wiki/Logic#values"; // untranslated
+Blockly.Msg.LOGIC_BOOLEAN_TOOLTIP = "Vráť buď hodnotu pravda alebo nepravda.";
+Blockly.Msg.LOGIC_BOOLEAN_TRUE = "pravda";
+Blockly.Msg.LOGIC_COMPARE_HELPURL = "https://en.wikipedia.org/wiki/Inequality_(mathematics)";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_EQ = "Vráť hodnotu pravda, ak sú vstupy rovnaké.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GT = "Vráť hodnotu pravda ak prvý vstup je väčší než druhý.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GTE = "Vráť hodnotu pravda ak prvý vstup je väčší alebo rovný druhému.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LT = "Vráť hodnotu pravda, ak prvý vstup je menší než druhý.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LTE = "Vráť hodnotu pravda ak prvý vstup je menší alebo rovný druhému.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_NEQ = "Vráť hodnotu pravda, ak vstupy nie sú rovnaké.";
+Blockly.Msg.LOGIC_NEGATE_HELPURL = "https://github.com/google/blockly/wiki/Logic#not"; // untranslated
+Blockly.Msg.LOGIC_NEGATE_TITLE = "nie je %1";
+Blockly.Msg.LOGIC_NEGATE_TOOLTIP = "Vráti hodnotu pravda, ak je vstup nepravda. Vráti hodnotu nepravda ak je vstup pravda.";
+Blockly.Msg.LOGIC_NULL = "nič";
+Blockly.Msg.LOGIC_NULL_HELPURL = "https://en.wikipedia.org/wiki/Nullable_type"; // untranslated
+Blockly.Msg.LOGIC_NULL_TOOLTIP = "Vráti hodnotu nula.";
+Blockly.Msg.LOGIC_OPERATION_AND = "a";
+Blockly.Msg.LOGIC_OPERATION_HELPURL = "https://github.com/google/blockly/wiki/Logic#logical-operations"; // untranslated
+Blockly.Msg.LOGIC_OPERATION_OR = "alebo";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_AND = "Vráť hodnotu pravda, ak sú vstupy pravdivé.";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_OR = "Vráť hodnotu pravda, ak je aspoň jeden vstup pravda.";
+Blockly.Msg.LOGIC_TERNARY_CONDITION = "test";
+Blockly.Msg.LOGIC_TERNARY_HELPURL = "https://en.wikipedia.org/wiki/%3F:"; // untranslated
+Blockly.Msg.LOGIC_TERNARY_IF_FALSE = "ak nepravda";
+Blockly.Msg.LOGIC_TERNARY_IF_TRUE = "ak pravda";
+Blockly.Msg.LOGIC_TERNARY_TOOLTIP = "Skontroluj podmienku testom. Ak je podmienka pravda, vráť hodnotu \"ak pravda\", inak vráť hodnotu \"ak nepravda\".";
+Blockly.Msg.MATH_ADDITION_SYMBOL = "+"; // untranslated
+Blockly.Msg.MATH_ARITHMETIC_HELPURL = "https://en.wikipedia.org/wiki/Arithmetic";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_ADD = "Vráť súčet dvoch čísel.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE = "Vráť podiel dvoch čísel.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MINUS = "Vráť rozdiel dvoch čísel.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MULTIPLY = "Vráť súčin dvoch čísel.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_POWER = "Vráť prvé číslo umocnené druhým.";
+Blockly.Msg.MATH_CHANGE_HELPURL = "https://en.wikipedia.org/wiki/Programming_idiom#Incrementing_a_counter";
+Blockly.Msg.MATH_CHANGE_TITLE = "zmeniť %1 o %2";
+Blockly.Msg.MATH_CHANGE_TOOLTIP = "Pridaj číslo do premennej \"%1\".";
+Blockly.Msg.MATH_CONSTANT_HELPURL = "https://en.wikipedia.org/wiki/Mathematical_constant‎";
+Blockly.Msg.MATH_CONSTANT_TOOLTIP = "Vráť jednu zo zvyčajných konštánt: π (3.141…), e (2.718…), φ (1.618…), sqrt(2) (1.414…), sqrt(½) (0.707…), alebo ∞ (nekonečno).";
+Blockly.Msg.MATH_CONSTRAIN_HELPURL = "https://en.wikipedia.org/wiki/Clamping_%28graphics%29"; // untranslated
+Blockly.Msg.MATH_CONSTRAIN_TITLE = "obmedz %1 od %2 do %3";
+Blockly.Msg.MATH_CONSTRAIN_TOOLTIP = "Obmedzí číslo do zadaných hraníc (vrátane).";
+Blockly.Msg.MATH_DIVISION_SYMBOL = "÷"; // untranslated
+Blockly.Msg.MATH_IS_DIVISIBLE_BY = "je deliteľné";
+Blockly.Msg.MATH_IS_EVEN = "je párne";
+Blockly.Msg.MATH_IS_NEGATIVE = "je záporné";
+Blockly.Msg.MATH_IS_ODD = "je nepárne";
+Blockly.Msg.MATH_IS_POSITIVE = "je kladné";
+Blockly.Msg.MATH_IS_PRIME = "je prvočíslo";
+Blockly.Msg.MATH_IS_TOOLTIP = "Skontroluj či je číslo párne, nepárne, celé, kladné, záporné alebo deliteľné určitým číslom. Vráť hodnotu pravda alebo nepravda.";
+Blockly.Msg.MATH_IS_WHOLE = "je celé číslo";
+Blockly.Msg.MATH_MODULO_HELPURL = "https://en.wikipedia.org/wiki/Modulo_operation";
+Blockly.Msg.MATH_MODULO_TITLE = "zvyšok po delení %1 + %2";
+Blockly.Msg.MATH_MODULO_TOOLTIP = "Vráť zvyšok po delení jedného čísla druhým.";
+Blockly.Msg.MATH_MULTIPLICATION_SYMBOL = "×"; // untranslated
+Blockly.Msg.MATH_NUMBER_HELPURL = "https://en.wikipedia.org/wiki/Number";
+Blockly.Msg.MATH_NUMBER_TOOLTIP = "Číslo.";
+Blockly.Msg.MATH_ONLIST_HELPURL = ""; // untranslated
+Blockly.Msg.MATH_ONLIST_OPERATOR_AVERAGE = "priemer zoznamu";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MAX = "najväčšie v zozname";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MEDIAN = "medián zoznamu";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MIN = "najmenšie v zozname";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MODE = "najčastejšie v zozname";
+Blockly.Msg.MATH_ONLIST_OPERATOR_RANDOM = "náhodný prvok zoznamu";
+Blockly.Msg.MATH_ONLIST_OPERATOR_STD_DEV = "smerodajná odchýlka zoznamu";
+Blockly.Msg.MATH_ONLIST_OPERATOR_SUM = "súčet zoznamu";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_AVERAGE = "Vráť aritmetický priemer čísel v zozname.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MAX = "Vrátiť najväčšie číslo v zozname.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MEDIAN = "Vráť medián čísel v zozname.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MIN = "Vrátiť najmenšie číslo v zozname.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MODE = "Vrátiť najčastejší prvok v zozname.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_RANDOM = "Vráť náhodne zvolený prvok zoznamu.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_STD_DEV = "Vráť smeroddajnú odchýlku zoznamu.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_SUM = "Vráť súčet všetkých čísel v zozname.";
+Blockly.Msg.MATH_POWER_SYMBOL = "^"; // untranslated
+Blockly.Msg.MATH_RANDOM_FLOAT_HELPURL = "https://en.wikipedia.org/wiki/Random_number_generation";
+Blockly.Msg.MATH_RANDOM_FLOAT_TITLE_RANDOM = "náhodné číslo od 0 do 1";
+Blockly.Msg.MATH_RANDOM_FLOAT_TOOLTIP = "Vráť náhodné číslo z intervalu 0.0 (vrátane) až 1.0.";
+Blockly.Msg.MATH_RANDOM_INT_HELPURL = "https://en.wikipedia.org/wiki/Random_number_generation";
+Blockly.Msg.MATH_RANDOM_INT_TITLE = "náhodné celé číslo od %1 do %2";
+Blockly.Msg.MATH_RANDOM_INT_TOOLTIP = "Vráť náhodné celé číslo z určeného intervalu (vrátane).";
+Blockly.Msg.MATH_ROUND_HELPURL = "https://en.wikipedia.org/wiki/Rounding";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUND = "zaokrúhli";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDDOWN = "zaokrúhli nadol";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDUP = "zaokrúhli nahor";
+Blockly.Msg.MATH_ROUND_TOOLTIP = "Zaokrúhli číslo nahor alebo nadol.";
+Blockly.Msg.MATH_SINGLE_HELPURL = "https://en.wikipedia.org/wiki/Square_root";
+Blockly.Msg.MATH_SINGLE_OP_ABSOLUTE = "absolútna hodnota";
+Blockly.Msg.MATH_SINGLE_OP_ROOT = "druhá odmocnina";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ABS = "Vráť absolútnu hodnotu čísla.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_EXP = "Vráť e umocnené číslom.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LN = "Vráť prirodzený logaritmus čísla.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LOG10 = "Vráť logaritmus čísla so základom 10.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_NEG = "Vráť opačné číslo.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_POW10 = "Vráť 10 umocnené číslom.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ROOT = "Vráť druhú odmocninu čísla.";
+Blockly.Msg.MATH_SUBTRACTION_SYMBOL = "-"; // untranslated
+Blockly.Msg.MATH_TRIG_ACOS = "arccos";
+Blockly.Msg.MATH_TRIG_ASIN = "arcsin";
+Blockly.Msg.MATH_TRIG_ATAN = "arctan";
+Blockly.Msg.MATH_TRIG_COS = "cos"; // untranslated
+Blockly.Msg.MATH_TRIG_HELPURL = "https://en.wikipedia.org/wiki/Trigonometric_functions";
+Blockly.Msg.MATH_TRIG_SIN = "sin"; // untranslated
+Blockly.Msg.MATH_TRIG_TAN = "tan"; // untranslated
+Blockly.Msg.MATH_TRIG_TOOLTIP_ACOS = "Vráť arkus kosínus čísla.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ASIN = "Vráť arkus sínus čísla.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ATAN = "Vráť arkus tangens čísla.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_COS = "Vráť kosínus uhla (v stupňoch).";
+Blockly.Msg.MATH_TRIG_TOOLTIP_SIN = "Vráť sínus uhla (v stupňoch).";
+Blockly.Msg.MATH_TRIG_TOOLTIP_TAN = "Vráť tangens uhla (v stupňoch).";
+Blockly.Msg.NEW_VARIABLE = "Nová premenná...";
+Blockly.Msg.NEW_VARIABLE_TITLE = "Názov novej premennej:";
+Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; // untranslated
+Blockly.Msg.PROCEDURES_ALLOW_STATEMENTS = "povoliť príkazy";
+Blockly.Msg.PROCEDURES_BEFORE_PARAMS = "s:";
+Blockly.Msg.PROCEDURES_CALLNORETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29";
+Blockly.Msg.PROCEDURES_CALLNORETURN_TOOLTIP = "Spustí používateľom definovanú funkciu '%1'.";
+Blockly.Msg.PROCEDURES_CALLRETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29";
+Blockly.Msg.PROCEDURES_CALLRETURN_TOOLTIP = "Spustí používateľom definovanú funkciu '%1' a použije jej výstup.";
+Blockly.Msg.PROCEDURES_CALL_BEFORE_PARAMS = "s:";
+Blockly.Msg.PROCEDURES_CREATE_DO = "Vytvoriť '%1'";
+Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT = "Doplň, čo robí táto funkcia...";
+Blockly.Msg.PROCEDURES_DEFNORETURN_DO = ""; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE = "urob niečo";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE = "na";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TOOLTIP = "Vytvorí funciu bez výstupu.";
+Blockly.Msg.PROCEDURES_DEFRETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_DEFRETURN_RETURN = "vrátiť";
+Blockly.Msg.PROCEDURES_DEFRETURN_TOOLTIP = "Vytvorí funkciu s výstupom.";
+Blockly.Msg.PROCEDURES_DEF_DUPLICATE_WARNING = "Upozornenie: Táto funkcia má duplicitné parametre.";
+Blockly.Msg.PROCEDURES_HIGHLIGHT_DEF = "Zvýrazniť definíciu funkcie";
+Blockly.Msg.PROCEDURES_IFRETURN_HELPURL = "http://c2.com/cgi/wiki?GuardClause"; // untranslated
+Blockly.Msg.PROCEDURES_IFRETURN_TOOLTIP = "Ak je hodnota pravda, tak vráti druhú hodnotu.";
+Blockly.Msg.PROCEDURES_IFRETURN_WARNING = "Upozornenie: Tento blok môže byť len vo vnútri funkcie.";
+Blockly.Msg.PROCEDURES_MUTATORARG_TITLE = "názov vstupu:";
+Blockly.Msg.PROCEDURES_MUTATORARG_TOOLTIP = "Pridať vstup do funkcie.";
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TITLE = "vstupy";
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TOOLTIP = "Pridať, odstrániť alebo zmeniť poradie vstupov tejto funkcie.";
+Blockly.Msg.REDO = "Redo"; // untranslated
+Blockly.Msg.REMOVE_COMMENT = "Odstrániť komentár";
+Blockly.Msg.RENAME_VARIABLE = "Premenovať premennú...";
+Blockly.Msg.RENAME_VARIABLE_TITLE = "Premenovať všetky premenné '%1' na:";
+Blockly.Msg.TEXT_APPEND_APPENDTEXT = "pridaj text";
+Blockly.Msg.TEXT_APPEND_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_APPEND_TO = "do";
+Blockly.Msg.TEXT_APPEND_TOOLTIP = "Pridaj určitý text do premennej '%1'.";
+Blockly.Msg.TEXT_CHANGECASE_HELPURL = "https://github.com/google/blockly/wiki/Text#adjusting-text-case"; // untranslated
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_LOWERCASE = "na malé písmená";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_TITLECASE = "na Veľké Začiatočné Písmená";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_UPPERCASE = "na VEĽKÉ PÍSMENÁ";
+Blockly.Msg.TEXT_CHANGECASE_TOOLTIP = "Vráť kópiu textu s inou veľkosťou písmen.";
+Blockly.Msg.TEXT_CHARAT_FIRST = "zisti prvé písmeno";
+Blockly.Msg.TEXT_CHARAT_FROM_END = "zisti # písmeno od konca";
+Blockly.Msg.TEXT_CHARAT_FROM_START = "zisti písmeno #";
+Blockly.Msg.TEXT_CHARAT_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-text"; // untranslated
+Blockly.Msg.TEXT_CHARAT_INPUT_INTEXT = "v texte";
+Blockly.Msg.TEXT_CHARAT_LAST = "zisti posledné písmeno";
+Blockly.Msg.TEXT_CHARAT_RANDOM = "vyber náhodné písmeno";
+Blockly.Msg.TEXT_CHARAT_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_CHARAT_TOOLTIP = "Vráti písmeno na určenej pozícii.";
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TOOLTIP = "Pridaj prvok do textu.";
+Blockly.Msg.TEXT_CREATE_JOIN_TITLE_JOIN = "spoj";
+Blockly.Msg.TEXT_CREATE_JOIN_TOOLTIP = "Pridaj, odstráň alebo zmeň poradie oddielov v tomto textovom bloku.";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_END = "po # písmeno od konca";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_START = "po písmeno #";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_LAST = "po koniec";
+Blockly.Msg.TEXT_GET_SUBSTRING_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_INPUT_IN_TEXT = "v texte";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FIRST = "vyber podreťazec od začiatku";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_END = "vyber podreťazec od # písmena od konca";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_START = "vyber podreťazec od písmena #";
+Blockly.Msg.TEXT_GET_SUBSTRING_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_TOOLTIP = "Vráti určenú časť textu.";
+Blockly.Msg.TEXT_INDEXOF_HELPURL = "https://github.com/google/blockly/wiki/Text#finding-text"; // untranslated
+Blockly.Msg.TEXT_INDEXOF_INPUT_INTEXT = "v texte";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_FIRST = "nájdi prvý výskyt textu";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_LAST = "nájdi posledný výskyt textu";
+Blockly.Msg.TEXT_INDEXOF_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_INDEXOF_TOOLTIP = "Vráti index prvého/posledného výskytu prvého textu v druhom texte. Ak nenájde, vráti %1.";
+Blockly.Msg.TEXT_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Text#checking-for-empty-text"; // untranslated
+Blockly.Msg.TEXT_ISEMPTY_TITLE = "%1 je prázdny";
+Blockly.Msg.TEXT_ISEMPTY_TOOLTIP = "Vráti hodnotu pravda, ak zadaný text je prázdny.";
+Blockly.Msg.TEXT_JOIN_HELPURL = "https://github.com/google/blockly/wiki/Text#text-creation"; // untranslated
+Blockly.Msg.TEXT_JOIN_TITLE_CREATEWITH = "vytvor text z";
+Blockly.Msg.TEXT_JOIN_TOOLTIP = "Vytvor text spojením určitého počtu prvkov.";
+Blockly.Msg.TEXT_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_LENGTH_TITLE = "dĺžka %1";
+Blockly.Msg.TEXT_LENGTH_TOOLTIP = "Vráti počet písmen (s medzerami) v zadanom texte.";
+Blockly.Msg.TEXT_PRINT_HELPURL = "https://github.com/google/blockly/wiki/Text#printing-text"; // untranslated
+Blockly.Msg.TEXT_PRINT_TITLE = "píš %1";
+Blockly.Msg.TEXT_PRINT_TOOLTIP = "Napíš zadaný text, číslo alebo hodnotu.";
+Blockly.Msg.TEXT_PROMPT_HELPURL = "https://github.com/google/blockly/wiki/Text#getting-input-from-the-user"; // untranslated
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_NUMBER = "Výzva pre používateľa na zadanie čísla.";
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_TEXT = "Výzva pre používateľa na zadanie textu.";
+Blockly.Msg.TEXT_PROMPT_TYPE_NUMBER = "výzva na zadanie čísla so správou";
+Blockly.Msg.TEXT_PROMPT_TYPE_TEXT = "výzva za zadanie textu so správou";
+Blockly.Msg.TEXT_TEXT_HELPURL = "https://en.wikipedia.org/wiki/String_(computer_science)";
+Blockly.Msg.TEXT_TEXT_TOOLTIP = "Písmeno, slovo alebo riadok textu.";
+Blockly.Msg.TEXT_TRIM_HELPURL = "https://github.com/google/blockly/wiki/Text#trimming-removing-spaces"; // untranslated
+Blockly.Msg.TEXT_TRIM_OPERATOR_BOTH = "odstráň medzery z oboch strán";
+Blockly.Msg.TEXT_TRIM_OPERATOR_LEFT = "odstráň medzery z ľavej strany";
+Blockly.Msg.TEXT_TRIM_OPERATOR_RIGHT = "odstráň medzery z pravej strany";
+Blockly.Msg.TEXT_TRIM_TOOLTIP = "Vráť kópiu textu bez medzier na jednom alebo oboch koncoch.";
+Blockly.Msg.TODAY = "Dnes";
+Blockly.Msg.UNDO = "Undo"; // untranslated
+Blockly.Msg.VARIABLES_DEFAULT_NAME = "prvok";
+Blockly.Msg.VARIABLES_GET_CREATE_SET = "Vytvoriť \"nastaviť %1\"";
+Blockly.Msg.VARIABLES_GET_HELPURL = "https://github.com/google/blockly/wiki/Variables#get"; // untranslated
+Blockly.Msg.VARIABLES_GET_TOOLTIP = "Vráti hodnotu tejto premennej.";
+Blockly.Msg.VARIABLES_SET = "nastaviť %1 na %2";
+Blockly.Msg.VARIABLES_SET_CREATE_GET = "Vytvoriť \"získať %1\"";
+Blockly.Msg.VARIABLES_SET_HELPURL = "https://github.com/google/blockly/wiki/Variables#set"; // untranslated
+Blockly.Msg.VARIABLES_SET_TOOLTIP = "Nastaví túto premennú, aby sa rovnala vstupu.";
+Blockly.Msg.VARIABLE_ALREADY_EXISTS = "A variable named '%1' already exists."; // untranslated
+Blockly.Msg.PROCEDURES_DEFRETURN_TITLE = Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE;
+Blockly.Msg.CONTROLS_IF_IF_TITLE_IF = Blockly.Msg.CONTROLS_IF_MSG_IF;
+Blockly.Msg.CONTROLS_WHILEUNTIL_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_MSG_THEN = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_ELSE_TITLE_ELSE = Blockly.Msg.CONTROLS_IF_MSG_ELSE;
+Blockly.Msg.PROCEDURES_DEFRETURN_PROCEDURE = Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE;
+Blockly.Msg.LISTS_GET_SUBLIST_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.LISTS_GET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.PROCEDURES_DEFRETURN_DO = Blockly.Msg.PROCEDURES_DEFNORETURN_DO;
+Blockly.Msg.CONTROLS_IF_ELSEIF_TITLE_ELSEIF = Blockly.Msg.CONTROLS_IF_MSG_ELSEIF;
+Blockly.Msg.LISTS_GET_INDEX_HELPURL = Blockly.Msg.LISTS_INDEX_OF_HELPURL;
+Blockly.Msg.CONTROLS_FOREACH_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_SET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TITLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_APPEND_VARIABLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.LISTS_INDEX_OF_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.PROCEDURES_DEFRETURN_COMMENT = Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT; \ No newline at end of file
diff --git a/blockly/msg/js/sl.js b/blockly/msg/js/sl.js
new file mode 100644
index 0000000..adf537d
--- /dev/null
+++ b/blockly/msg/js/sl.js
@@ -0,0 +1,391 @@
+// This file was automatically generated. Do not modify.
+
+'use strict';
+
+goog.provide('Blockly.Msg.sl');
+
+goog.require('Blockly.Msg');
+
+Blockly.Msg.ADD_COMMENT = "Dodaj komentar";
+Blockly.Msg.CHANGE_VALUE_TITLE = "Spremeni vrednost:";
+Blockly.Msg.CLEAN_UP = "Ponastavi kocke";
+Blockly.Msg.COLLAPSE_ALL = "Skrči kocke";
+Blockly.Msg.COLLAPSE_BLOCK = "Skrči kocko";
+Blockly.Msg.COLOUR_BLEND_COLOUR1 = "barva 1";
+Blockly.Msg.COLOUR_BLEND_COLOUR2 = "barva 2";
+Blockly.Msg.COLOUR_BLEND_HELPURL = "http://meyerweb.com/eric/tools/color-blend/";
+Blockly.Msg.COLOUR_BLEND_RATIO = "razmerje";
+Blockly.Msg.COLOUR_BLEND_TITLE = "mešanica";
+Blockly.Msg.COLOUR_BLEND_TOOLTIP = "Zmeša dve barvi v danem razmerju (0.0 - 1.0).";
+Blockly.Msg.COLOUR_PICKER_HELPURL = "https://en.wikipedia.org/wiki/Color";
+Blockly.Msg.COLOUR_PICKER_TOOLTIP = "Izberi barvo s palete.";
+Blockly.Msg.COLOUR_RANDOM_HELPURL = "http://randomcolour.com"; // untranslated
+Blockly.Msg.COLOUR_RANDOM_TITLE = "naključna barva";
+Blockly.Msg.COLOUR_RANDOM_TOOLTIP = "Izbere naključno barvo.";
+Blockly.Msg.COLOUR_RGB_BLUE = "modra";
+Blockly.Msg.COLOUR_RGB_GREEN = "zelena";
+Blockly.Msg.COLOUR_RGB_HELPURL = "http://www.december.com/html/spec/colorper.html";
+Blockly.Msg.COLOUR_RGB_RED = "rdeča";
+Blockly.Msg.COLOUR_RGB_TITLE = "določena barva";
+Blockly.Msg.COLOUR_RGB_TOOLTIP = "Ustvari barvo z določeno količino rdeče, zelene in modre. Vse vrednosti morajo biti med 0 in 100.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_HELPURL = "https://github.com/google/blockly/wiki/Loops#loop-termination-blocks";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK = "izstopi iz zanke";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE = "nadaljuj z naslednjo ponovitvijo zanke";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK = "Izstopi iz trenutne zanke.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE = "Preskoči preostanek te zanke in nadaljuje z naslednjo ponovitvijo.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_WARNING = "Pozor: To kocko lahko uporabiš samo znotraj zanke.";
+Blockly.Msg.CONTROLS_FOREACH_HELPURL = "https://github.com/google/blockly/wiki/Loops#for-each";
+Blockly.Msg.CONTROLS_FOREACH_TITLE = "za vsak element %1 v seznamu %2";
+Blockly.Msg.CONTROLS_FOREACH_TOOLTIP = "Za vsak element v seznamu, nastavi spremenljivko '%1' na ta element. Pri tem se izvedejo določene kocke.";
+Blockly.Msg.CONTROLS_FOR_HELPURL = "https://github.com/google/blockly/wiki/Loops#count-with";
+Blockly.Msg.CONTROLS_FOR_TITLE = "štej s/z %1 od %2 do %3 s korakom %4";
+Blockly.Msg.CONTROLS_FOR_TOOLTIP = "Vrednost spremenljivke '%1' se spreminja od začetnega števila do končnega števila, z določenim korakom. Pri tem se izvedejo določene kocke.";
+Blockly.Msg.CONTROLS_IF_ELSEIF_TOOLTIP = "Dodaj pogoj »če« kocki.";
+Blockly.Msg.CONTROLS_IF_ELSE_TOOLTIP = "Dodaj končni pogoj »če« kocki.";
+Blockly.Msg.CONTROLS_IF_HELPURL = "https://github.com/google/blockly/wiki/IfElse";
+Blockly.Msg.CONTROLS_IF_IF_TOOLTIP = "Dodaj, odstrani ali spremeni vrstni red odsekov za ponovno nastavitev »če« kocke.";
+Blockly.Msg.CONTROLS_IF_MSG_ELSE = "sicer";
+Blockly.Msg.CONTROLS_IF_MSG_ELSEIF = "sicer če";
+Blockly.Msg.CONTROLS_IF_MSG_IF = "če";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_1 = "Če je vrednost resnična, izvedi določene kocke.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_2 = "Če je vrednost resnična, izvedi prvo skupino kock. Sicer izvedi drugo skupino kock.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_3 = "Če je prva vrednost resnična, izvedi prvo skupino kock. Sicer, če je resnična druga vrednost, izvedi drugo skupino kock.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_4 = "Če je prva vrednost resnična, izvedi prvo skupino kock. Sicer, če je resnična druga vrednost, izvedi drugo skupino kock. Če nobena izmed vrednosti ni resnična, izvedi zadnjo skupino kock.";
+Blockly.Msg.CONTROLS_REPEAT_HELPURL = "https://en.wikipedia.org/wiki/For_loop";
+Blockly.Msg.CONTROLS_REPEAT_INPUT_DO = "izvedi";
+Blockly.Msg.CONTROLS_REPEAT_TITLE = "ponavljaj %1 krat";
+Blockly.Msg.CONTROLS_REPEAT_TOOLTIP = "Kocke se izvedejo večkrat.";
+Blockly.Msg.CONTROLS_WHILEUNTIL_HELPURL = "https://github.com/google/blockly/wiki/Loops#repeat";
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "ponavljaj dokler";
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "ponavljaj";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "Kocke se izvajajo dokler je vrednost neresnična.";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "Kocke se izvajajo dokler je vrednost resnična.";
+Blockly.Msg.DELETE_ALL_BLOCKS = "Izbrišem vseh %1 kock?";
+Blockly.Msg.DELETE_BLOCK = "Izbriši kocko";
+Blockly.Msg.DELETE_VARIABLE = "Delete the '%1' variable"; // untranslated
+Blockly.Msg.DELETE_VARIABLE_CONFIRMATION = "Delete %1 uses of the '%2' variable?"; // untranslated
+Blockly.Msg.DELETE_X_BLOCKS = "Izbriši kocke";
+Blockly.Msg.DISABLE_BLOCK = "Onemogoči kocko";
+Blockly.Msg.DUPLICATE_BLOCK = "Podvoji";
+Blockly.Msg.ENABLE_BLOCK = "Omogoči kocko";
+Blockly.Msg.EXPAND_ALL = "Razširi kocke";
+Blockly.Msg.EXPAND_BLOCK = "Razširi kocko";
+Blockly.Msg.EXTERNAL_INPUTS = "Vnosi zunaj";
+Blockly.Msg.HELP = "Pomoč";
+Blockly.Msg.INLINE_INPUTS = "Vnosi v vrsti";
+Blockly.Msg.LISTS_CREATE_EMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-empty-list";
+Blockly.Msg.LISTS_CREATE_EMPTY_TITLE = "ustvari prazen seznam";
+Blockly.Msg.LISTS_CREATE_EMPTY_TOOLTIP = "Vrne seznam, dolžine 0, ki ne vsebuje nobenih podatkov.";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TITLE_ADD = "seznam";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TOOLTIP = "Doda, odstrani ali spremeni vrstni red elementov tega seznama.";
+Blockly.Msg.LISTS_CREATE_WITH_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with";
+Blockly.Msg.LISTS_CREATE_WITH_INPUT_WITH = "ustvari seznam s/z";
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TOOLTIP = "Doda element seznamu.";
+Blockly.Msg.LISTS_CREATE_WITH_TOOLTIP = "Ustvari seznam s poljubnim številom elementov.";
+Blockly.Msg.LISTS_GET_INDEX_FIRST = "prvo mesto";
+Blockly.Msg.LISTS_GET_INDEX_FROM_END = "mesto št. od konca";
+Blockly.Msg.LISTS_GET_INDEX_FROM_START = "št.";
+Blockly.Msg.LISTS_GET_INDEX_GET = "vrni";
+Blockly.Msg.LISTS_GET_INDEX_GET_REMOVE = "odstrani in vrni";
+Blockly.Msg.LISTS_GET_INDEX_LAST = "zadnje mesto";
+Blockly.Msg.LISTS_GET_INDEX_RANDOM = "naključno mesto";
+Blockly.Msg.LISTS_GET_INDEX_REMOVE = "odstrani";
+Blockly.Msg.LISTS_GET_INDEX_TAIL = ""; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FIRST = "Vrne prvi element seznama.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FROM = "Vrne element na določenem mestu v seznamu.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_LAST = "Vrne zadnji element seznama.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_RANDOM = "Vrne naključni element seznama.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST = "Odstrani in vrne prvi element seznama.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM = "Odstrani in vrne element na določenem mestu v seznamu.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST = "Odstrani in vrne zadnji element seznama.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM = "Odstrani in vrne naključni element seznama.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST = "Odstrani prvi element seznama.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM = "Odstrani element na določenem mestu v seznamu.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST = "Odstrani zadnji element seznama.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM = "Odstrani naključni element seznama.";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_END = "do mesta št. od konca";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_START = "do mesta št.";
+Blockly.Msg.LISTS_GET_SUBLIST_END_LAST = "do zadnjega mesta";
+Blockly.Msg.LISTS_GET_SUBLIST_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-a-sublist";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FIRST = "ustvari podseznam od prvega mesta";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_END = "ustvari podseznam od mesta št. od konca";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_START = "ustvari podseznam od mesta št.";
+Blockly.Msg.LISTS_GET_SUBLIST_TAIL = ""; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_TOOLTIP = "Ustvari nov seznam, kot kopijo določenega dela seznama.";
+Blockly.Msg.LISTS_INDEX_FROM_END_TOOLTIP = "Zadnji element je št. %1.";
+Blockly.Msg.LISTS_INDEX_FROM_START_TOOLTIP = "Prvi element je št. %1.";
+Blockly.Msg.LISTS_INDEX_OF_FIRST = "najdi prvo pojavitev elementa";
+Blockly.Msg.LISTS_INDEX_OF_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-items-from-a-list";
+Blockly.Msg.LISTS_INDEX_OF_LAST = "najdi zadnjo pojavitev elementa";
+Blockly.Msg.LISTS_INDEX_OF_TOOLTIP = "Vrne mesto (indeks) prve/zadnje pojavitve elementa v seznamu. Če elementa ne najde, vrne %1.";
+Blockly.Msg.LISTS_INLIST = "v seznamu";
+Blockly.Msg.LISTS_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#is-empty";
+Blockly.Msg.LISTS_ISEMPTY_TITLE = "%1 je prazen";
+Blockly.Msg.LISTS_ISEMPTY_TOOLTIP = "Vrne resnično, če je seznam prazen.";
+Blockly.Msg.LISTS_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Lists#length-of";
+Blockly.Msg.LISTS_LENGTH_TITLE = "dolžina %1";
+Blockly.Msg.LISTS_LENGTH_TOOLTIP = "Vrne dolžino seznama.";
+Blockly.Msg.LISTS_REPEAT_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with";
+Blockly.Msg.LISTS_REPEAT_TITLE = "ustvari seznam z elementom %1, ki se ponovi %2 krat";
+Blockly.Msg.LISTS_REPEAT_TOOLTIP = "Ustvari seznam z danim elementom, ki se poljubno mnogo krat ponovi.";
+Blockly.Msg.LISTS_SET_INDEX_HELPURL = "https://github.com/google/blockly/wiki/Lists#in-list--set";
+Blockly.Msg.LISTS_SET_INDEX_INPUT_TO = "element";
+Blockly.Msg.LISTS_SET_INDEX_INSERT = "vstavi na";
+Blockly.Msg.LISTS_SET_INDEX_SET = "nastavi na";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST = "Vstavi element na začetek seznama.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FROM = "Vstavi element na določeno mesto v seznamu.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_LAST = "Doda element na konec seznama.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM = "Vstavi element na naključno mesto v seznamu.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FIRST = "Nastavi prvi element seznama.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FROM = "Nastavi element na določenem mestu v seznamu.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_LAST = "Nastavi zadnji element seznama.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_RANDOM = "Nastavi naključni element seznama.";
+Blockly.Msg.LISTS_SORT_HELPURL = "https://github.com/google/blockly/wiki/Lists#sorting-a-list";
+Blockly.Msg.LISTS_SORT_ORDER_ASCENDING = "naraščajoče";
+Blockly.Msg.LISTS_SORT_ORDER_DESCENDING = "padajoče";
+Blockly.Msg.LISTS_SORT_TITLE = "uredi %1 %2 %3";
+Blockly.Msg.LISTS_SORT_TOOLTIP = "Uredi kopijo seznama.";
+Blockly.Msg.LISTS_SORT_TYPE_IGNORECASE = "abecedno, brez velikosti črk";
+Blockly.Msg.LISTS_SORT_TYPE_NUMERIC = "številčno";
+Blockly.Msg.LISTS_SORT_TYPE_TEXT = "abecedno";
+Blockly.Msg.LISTS_SPLIT_HELPURL = "https://github.com/google/blockly/wiki/Lists#splitting-strings-and-joining-lists";
+Blockly.Msg.LISTS_SPLIT_LIST_FROM_TEXT = "ustvari seznam iz besedila";
+Blockly.Msg.LISTS_SPLIT_TEXT_FROM_LIST = "ustvari besedilo iz seznama";
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_JOIN = "Združi seznam besedil v eno besedilo, ločeno z ločilom.";
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_SPLIT = "Razdruži besedilo v seznam besedil. Za razdruževanje besedila uporabi ločilo.";
+Blockly.Msg.LISTS_SPLIT_WITH_DELIMITER = "z ločilom";
+Blockly.Msg.LOGIC_BOOLEAN_FALSE = "neresnično";
+Blockly.Msg.LOGIC_BOOLEAN_HELPURL = "https://github.com/google/blockly/wiki/Logic#values";
+Blockly.Msg.LOGIC_BOOLEAN_TOOLTIP = "Vrne resnično ali neresnično.";
+Blockly.Msg.LOGIC_BOOLEAN_TRUE = "resnično";
+Blockly.Msg.LOGIC_COMPARE_HELPURL = "https://en.wikipedia.org/wiki/Inequality_(mathematics)";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_EQ = "Vrne resnično, če sta vnosa enaka.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GT = "Vrne resnično, če je prvi vnos večji od drugega.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GTE = "Vrne resnično, če je prvi vnos večji ali enak drugemu.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LT = "Vrne resnično, če je prvi vnos manjši od drugega.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LTE = "Vrne resnično, če je prvi vnos manjši ali enak drugemu.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_NEQ = "Vrne resnično, če vnosa nista enaka.";
+Blockly.Msg.LOGIC_NEGATE_HELPURL = "https://github.com/google/blockly/wiki/Logic#not";
+Blockly.Msg.LOGIC_NEGATE_TITLE = "ne %1";
+Blockly.Msg.LOGIC_NEGATE_TOOLTIP = "Vrne resnično, če je vnos neresničen. Vrne neresnično, če je vnos resničen.";
+Blockly.Msg.LOGIC_NULL = "prazno";
+Blockly.Msg.LOGIC_NULL_HELPURL = "https://en.wikipedia.org/wiki/Nullable_type";
+Blockly.Msg.LOGIC_NULL_TOOLTIP = "Vrne prazno.";
+Blockly.Msg.LOGIC_OPERATION_AND = "in";
+Blockly.Msg.LOGIC_OPERATION_HELPURL = "https://github.com/google/blockly/wiki/Logic#logical-operations";
+Blockly.Msg.LOGIC_OPERATION_OR = "ali";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_AND = "Vrne resnično, če sta oba vnosa resnična.";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_OR = "Vrne resnično, če je vsaj eden od vnosov resničen.";
+Blockly.Msg.LOGIC_TERNARY_CONDITION = "test";
+Blockly.Msg.LOGIC_TERNARY_HELPURL = "https://en.wikipedia.org/wiki/%3F:";
+Blockly.Msg.LOGIC_TERNARY_IF_FALSE = "če neresnično";
+Blockly.Msg.LOGIC_TERNARY_IF_TRUE = "če resnično";
+Blockly.Msg.LOGIC_TERNARY_TOOLTIP = "Preveri pogoj v »testu«. Če je pogoj resničen, potem vrne vrednost »če resnično«; sicer vrne vrednost »če neresnično«.";
+Blockly.Msg.MATH_ADDITION_SYMBOL = "+";
+Blockly.Msg.MATH_ARITHMETIC_HELPURL = "https://en.wikipedia.org/wiki/Arithmetic";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_ADD = "Vrne vsoto dveh števil.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE = "Vrne kvocient dveh števil.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MINUS = "Vrne razliko dveh števil.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MULTIPLY = "Vrne zmnožek dveh števil.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_POWER = "Vrne prvo število na potenco drugega števila.";
+Blockly.Msg.MATH_CHANGE_HELPURL = "https://en.wikipedia.org/wiki/Programming_idiom#Incrementing_a_counter";
+Blockly.Msg.MATH_CHANGE_TITLE = "spremeni %1 za %2";
+Blockly.Msg.MATH_CHANGE_TOOLTIP = "Prišteje število k spremenljivki '%1'.";
+Blockly.Msg.MATH_CONSTANT_HELPURL = "https://en.wikipedia.org/wiki/Mathematical_constant";
+Blockly.Msg.MATH_CONSTANT_TOOLTIP = "Vrne eno izmed običajnih konstant: π (3.141…), e (2.718…), φ (1.618…), sqrt(2) (1.414…), sqrt(½) (0.707…), ali ∞ (neskončno).";
+Blockly.Msg.MATH_CONSTRAIN_HELPURL = "https://en.wikipedia.org/wiki/Clamping_%28graphics%29";
+Blockly.Msg.MATH_CONSTRAIN_TITLE = "omeji %1 na najmanj %2 in največ %3";
+Blockly.Msg.MATH_CONSTRAIN_TOOLTIP = "Omeji število, da bo med določenima (vključenima) mejama.";
+Blockly.Msg.MATH_DIVISION_SYMBOL = "÷";
+Blockly.Msg.MATH_IS_DIVISIBLE_BY = "je deljivo s/z";
+Blockly.Msg.MATH_IS_EVEN = "je sodo";
+Blockly.Msg.MATH_IS_NEGATIVE = "je negativno";
+Blockly.Msg.MATH_IS_ODD = "je liho";
+Blockly.Msg.MATH_IS_POSITIVE = "je pozitivno";
+Blockly.Msg.MATH_IS_PRIME = "je praštevilo";
+Blockly.Msg.MATH_IS_TOOLTIP = "Preveri, če je število sodo, liho, praštevilo, celo, pozitivno, negativno ali, če je deljivo z določenim številom. Vrne resnično ali neresnično.";
+Blockly.Msg.MATH_IS_WHOLE = "je celo";
+Blockly.Msg.MATH_MODULO_HELPURL = "https://en.wikipedia.org/wiki/Modulo_operation";
+Blockly.Msg.MATH_MODULO_TITLE = "ostanek pri %1 ÷ %2";
+Blockly.Msg.MATH_MODULO_TOOLTIP = "Vrne ostanek pri deljenju dveh števil.";
+Blockly.Msg.MATH_MULTIPLICATION_SYMBOL = "×";
+Blockly.Msg.MATH_NUMBER_HELPURL = "https://en.wikipedia.org/wiki/Number";
+Blockly.Msg.MATH_NUMBER_TOOLTIP = "Število.";
+Blockly.Msg.MATH_ONLIST_HELPURL = ""; // untranslated
+Blockly.Msg.MATH_ONLIST_OPERATOR_AVERAGE = "povprečje seznama";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MAX = "maksimum seznama";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MEDIAN = "mediana seznama";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MIN = "minimum seznama";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MODE = "modus seznama";
+Blockly.Msg.MATH_ONLIST_OPERATOR_RANDOM = "naključni element seznama";
+Blockly.Msg.MATH_ONLIST_OPERATOR_STD_DEV = "standardni odklon seznama";
+Blockly.Msg.MATH_ONLIST_OPERATOR_SUM = "vsota seznama";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_AVERAGE = "Vrne povprečje (aritmetično sredino) števil na seznamu.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MAX = "Vrne največje število na seznamu.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MEDIAN = "Vrne mediano števil na seznamu.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MIN = "Vrne najmanjše število na seznamu.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MODE = "Vrne seznam najpogostejšega elementa(-ov) na seznamu.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_RANDOM = "Vrne naključno število izmed števil na seznamu.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_STD_DEV = "Vrne standardni odklon seznama.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_SUM = "Vrne vsoto vseh števil na seznamu.";
+Blockly.Msg.MATH_POWER_SYMBOL = "^";
+Blockly.Msg.MATH_RANDOM_FLOAT_HELPURL = "https://en.wikipedia.org/wiki/Random_number_generation";
+Blockly.Msg.MATH_RANDOM_FLOAT_TITLE_RANDOM = "naključni ulomek";
+Blockly.Msg.MATH_RANDOM_FLOAT_TOOLTIP = "Vrne naključni ulomek med (vključno) 0.0 in 1.0 (izključno).";
+Blockly.Msg.MATH_RANDOM_INT_HELPURL = "https://en.wikipedia.org/wiki/Random_number_generation";
+Blockly.Msg.MATH_RANDOM_INT_TITLE = "naključno število med %1 in %2";
+Blockly.Msg.MATH_RANDOM_INT_TOOLTIP = "Vrne naključno število med dvema določenima mejama, vključno z mejama.";
+Blockly.Msg.MATH_ROUND_HELPURL = "https://en.wikipedia.org/wiki/Rounding";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUND = "zaokroži";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDDOWN = "zaokroži navzdol";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDUP = "zaokroži navzgor";
+Blockly.Msg.MATH_ROUND_TOOLTIP = "Zaokroži število navzgor ali navzdol.";
+Blockly.Msg.MATH_SINGLE_HELPURL = "https://en.wikipedia.org/wiki/Square_root";
+Blockly.Msg.MATH_SINGLE_OP_ABSOLUTE = "absolutno";
+Blockly.Msg.MATH_SINGLE_OP_ROOT = "kvadratni koren";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ABS = "Vrne absolutno vrednost števila.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_EXP = "Vrne e na potenco števila.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LN = "Vrne naravni logaritem števila.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LOG10 = "Vrne desetiški logaritem števila.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_NEG = "Vrne negacijo števila.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_POW10 = "Vrne 10 na potenco števila.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ROOT = "Vrne kvadratni koren števila.";
+Blockly.Msg.MATH_SUBTRACTION_SYMBOL = "-";
+Blockly.Msg.MATH_TRIG_ACOS = "acos";
+Blockly.Msg.MATH_TRIG_ASIN = "asin";
+Blockly.Msg.MATH_TRIG_ATAN = "atan";
+Blockly.Msg.MATH_TRIG_COS = "cos";
+Blockly.Msg.MATH_TRIG_HELPURL = "https://en.wikipedia.org/wiki/Trigonometric_functions";
+Blockly.Msg.MATH_TRIG_SIN = "sin";
+Blockly.Msg.MATH_TRIG_TAN = "tan";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ACOS = "Vrne arkus kosinus števila.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ASIN = "Vrne arkus sinus števila.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ATAN = "Vrne arkus tangens števila.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_COS = "Vrne kosinus kota v stopinjah (ne radianih).";
+Blockly.Msg.MATH_TRIG_TOOLTIP_SIN = "Vrne sinus kota v stopinjah (ne radianih).";
+Blockly.Msg.MATH_TRIG_TOOLTIP_TAN = "Vrne tangens kota v stopinjah (ne radianih).";
+Blockly.Msg.NEW_VARIABLE = "Nova spremenljivka...";
+Blockly.Msg.NEW_VARIABLE_TITLE = "Ime nove spremenljivke:";
+Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; // untranslated
+Blockly.Msg.PROCEDURES_ALLOW_STATEMENTS = "dovoli korake";
+Blockly.Msg.PROCEDURES_BEFORE_PARAMS = "s/z:";
+Blockly.Msg.PROCEDURES_CALLNORETURN_HELPURL = "https://en.wikipedia.org/wiki/Subroutine";
+Blockly.Msg.PROCEDURES_CALLNORETURN_TOOLTIP = "Izvede uporabniško funkcijo '%1'.";
+Blockly.Msg.PROCEDURES_CALLRETURN_HELPURL = "https://en.wikipedia.org/wiki/Subroutine";
+Blockly.Msg.PROCEDURES_CALLRETURN_TOOLTIP = "Izvede uporabniško funkcijo '%1' in uporabi njen izhod.";
+Blockly.Msg.PROCEDURES_CALL_BEFORE_PARAMS = "s/z:";
+Blockly.Msg.PROCEDURES_CREATE_DO = "Ustvari '%1'";
+Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT = "Opišite funkcijo ...";
+Blockly.Msg.PROCEDURES_DEFNORETURN_DO = ""; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29";
+Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE = "nekaj";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE = "izvedi";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TOOLTIP = "Ustvari funkcijo brez izhoda.";
+Blockly.Msg.PROCEDURES_DEFRETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29";
+Blockly.Msg.PROCEDURES_DEFRETURN_RETURN = "vrni";
+Blockly.Msg.PROCEDURES_DEFRETURN_TOOLTIP = "Ustvari funkcijo z izhodom.";
+Blockly.Msg.PROCEDURES_DEF_DUPLICATE_WARNING = "Pozor: Ta funkcija ima podvojene parametre.";
+Blockly.Msg.PROCEDURES_HIGHLIGHT_DEF = "Označi definicijo funkcije";
+Blockly.Msg.PROCEDURES_IFRETURN_HELPURL = "http://c2.com/cgi/wiki?GuardClause";
+Blockly.Msg.PROCEDURES_IFRETURN_TOOLTIP = "Če je vrednost resnična, vrne drugo vrednost.";
+Blockly.Msg.PROCEDURES_IFRETURN_WARNING = "Pozor: To kocko lahko uporabiš samo znotraj definicije funkcije.";
+Blockly.Msg.PROCEDURES_MUTATORARG_TITLE = "ime vnosa:";
+Blockly.Msg.PROCEDURES_MUTATORARG_TOOLTIP = "Funkciji doda vnos.";
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TITLE = "vnosi";
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TOOLTIP = "Doda, odstrani ali spremeni vrstni red vnosov te funkcije.";
+Blockly.Msg.REDO = "Ponovi";
+Blockly.Msg.REMOVE_COMMENT = "Odstrani komentar";
+Blockly.Msg.RENAME_VARIABLE = "Preimenuj spremenljivko...";
+Blockly.Msg.RENAME_VARIABLE_TITLE = "Preimenuj vse spremenljivke '%1' v:";
+Blockly.Msg.TEXT_APPEND_APPENDTEXT = "dodaj besedilo";
+Blockly.Msg.TEXT_APPEND_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification";
+Blockly.Msg.TEXT_APPEND_TO = "k";
+Blockly.Msg.TEXT_APPEND_TOOLTIP = "Doda besedilo k spremenljivki '%1'.";
+Blockly.Msg.TEXT_CHANGECASE_HELPURL = "https://github.com/google/blockly/wiki/Text#adjusting-text-case";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_LOWERCASE = "v male črke";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_TITLECASE = "v Velike Začetnice";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_UPPERCASE = "v VELIKE ČRKE";
+Blockly.Msg.TEXT_CHANGECASE_TOOLTIP = "Vrne kopijo besedila v drugi obliki.";
+Blockly.Msg.TEXT_CHARAT_FIRST = "vrni prvo črko";
+Blockly.Msg.TEXT_CHARAT_FROM_END = "vrni črko št. od konca";
+Blockly.Msg.TEXT_CHARAT_FROM_START = "vrni črko št.";
+Blockly.Msg.TEXT_CHARAT_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-text";
+Blockly.Msg.TEXT_CHARAT_INPUT_INTEXT = "iz besedila";
+Blockly.Msg.TEXT_CHARAT_LAST = "vrni zadnjo črko";
+Blockly.Msg.TEXT_CHARAT_RANDOM = "vrni naključno črko";
+Blockly.Msg.TEXT_CHARAT_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_CHARAT_TOOLTIP = "Vrne črko na določenem mestu v besedilu.";
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TOOLTIP = "Doda element k besedilu.";
+Blockly.Msg.TEXT_CREATE_JOIN_TITLE_JOIN = "združi";
+Blockly.Msg.TEXT_CREATE_JOIN_TOOLTIP = "Doda, odstrani ali spremeni vrstni red elementov tega besedila.";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_END = "do črke št. od konca";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_START = "do črke št.";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_LAST = "do zadnje črke";
+Blockly.Msg.TEXT_GET_SUBSTRING_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text";
+Blockly.Msg.TEXT_GET_SUBSTRING_INPUT_IN_TEXT = "iz besedila";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FIRST = "vrni del od prve črke";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_END = "vrni del od črke št. od konca";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_START = "vrni del od črke št.";
+Blockly.Msg.TEXT_GET_SUBSTRING_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_TOOLTIP = "Vrne določen del besedila.";
+Blockly.Msg.TEXT_INDEXOF_HELPURL = "https://github.com/google/blockly/wiki/Text#finding-text";
+Blockly.Msg.TEXT_INDEXOF_INPUT_INTEXT = "v besedilu";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_FIRST = "najdi prvo pojavitev besedila";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_LAST = "najdi zadnjo pojavitev besedila";
+Blockly.Msg.TEXT_INDEXOF_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_INDEXOF_TOOLTIP = "Vrne mesto (indeks) prve/zadnje pojavitve drugega besedila v prvem besedilu. Če besedila ne najde, vrne %1.";
+Blockly.Msg.TEXT_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Text#checking-for-empty-text";
+Blockly.Msg.TEXT_ISEMPTY_TITLE = "%1 je prazno";
+Blockly.Msg.TEXT_ISEMPTY_TOOLTIP = "Vrne resnično, če je določeno besedilo prazno.";
+Blockly.Msg.TEXT_JOIN_HELPURL = "https://github.com/google/blockly/wiki/Text#text-creation";
+Blockly.Msg.TEXT_JOIN_TITLE_CREATEWITH = "ustvari besedilo iz";
+Blockly.Msg.TEXT_JOIN_TOOLTIP = "Ustvari besedilo tako, da združi poljubno število elementov.";
+Blockly.Msg.TEXT_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification";
+Blockly.Msg.TEXT_LENGTH_TITLE = "dolžina %1";
+Blockly.Msg.TEXT_LENGTH_TOOLTIP = "Vrne število črk oz. znakov (vključno s presledki) v določenem besedilu.";
+Blockly.Msg.TEXT_PRINT_HELPURL = "https://github.com/google/blockly/wiki/Text#printing-text";
+Blockly.Msg.TEXT_PRINT_TITLE = "izpiši %1";
+Blockly.Msg.TEXT_PRINT_TOOLTIP = "Izpiše določeno besedilo, število ali drugo vrednost.";
+Blockly.Msg.TEXT_PROMPT_HELPURL = "https://github.com/google/blockly/wiki/Text#getting-input-from-the-user";
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_NUMBER = "Vpraša uporabnika za vnos števila.";
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_TEXT = "Vpraša uporabnika za vnos besedila.";
+Blockly.Msg.TEXT_PROMPT_TYPE_NUMBER = "vprašaj za število s sporočilom";
+Blockly.Msg.TEXT_PROMPT_TYPE_TEXT = "vprašaj za besedilo s sporočilom";
+Blockly.Msg.TEXT_TEXT_HELPURL = "https://en.wikipedia.org/wiki/String_(computer_science)";
+Blockly.Msg.TEXT_TEXT_TOOLTIP = "Črka, beseda ali vrstica besedila.";
+Blockly.Msg.TEXT_TRIM_HELPURL = "https://github.com/google/blockly/wiki/Text#trimming-removing-spaces";
+Blockly.Msg.TEXT_TRIM_OPERATOR_BOTH = "odstrani presledke z obeh strani";
+Blockly.Msg.TEXT_TRIM_OPERATOR_LEFT = "odstrani presledke z leve strani";
+Blockly.Msg.TEXT_TRIM_OPERATOR_RIGHT = "odstrani presledke z desne strani";
+Blockly.Msg.TEXT_TRIM_TOOLTIP = "Vrne kopijo besedila z odstranjenimi presledki z ene ali obeh strani.";
+Blockly.Msg.TODAY = "Danes";
+Blockly.Msg.UNDO = "Razveljavi";
+Blockly.Msg.VARIABLES_DEFAULT_NAME = "element";
+Blockly.Msg.VARIABLES_GET_CREATE_SET = "Ustvari 'nastavi %1'";
+Blockly.Msg.VARIABLES_GET_HELPURL = "https://github.com/google/blockly/wiki/Variables#get";
+Blockly.Msg.VARIABLES_GET_TOOLTIP = "Vrne vrednost spremenljivke.";
+Blockly.Msg.VARIABLES_SET = "nastavi %1 na %2";
+Blockly.Msg.VARIABLES_SET_CREATE_GET = "Ustvari 'vrni %1'";
+Blockly.Msg.VARIABLES_SET_HELPURL = "https://github.com/google/blockly/wiki/Variables#set";
+Blockly.Msg.VARIABLES_SET_TOOLTIP = "Nastavi, da je vrednost spremenljivke enaka vnosu.";
+Blockly.Msg.VARIABLE_ALREADY_EXISTS = "A variable named '%1' already exists."; // untranslated
+Blockly.Msg.PROCEDURES_DEFRETURN_TITLE = Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE;
+Blockly.Msg.CONTROLS_IF_IF_TITLE_IF = Blockly.Msg.CONTROLS_IF_MSG_IF;
+Blockly.Msg.CONTROLS_WHILEUNTIL_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_MSG_THEN = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_ELSE_TITLE_ELSE = Blockly.Msg.CONTROLS_IF_MSG_ELSE;
+Blockly.Msg.PROCEDURES_DEFRETURN_PROCEDURE = Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE;
+Blockly.Msg.LISTS_GET_SUBLIST_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.LISTS_GET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.PROCEDURES_DEFRETURN_DO = Blockly.Msg.PROCEDURES_DEFNORETURN_DO;
+Blockly.Msg.CONTROLS_IF_ELSEIF_TITLE_ELSEIF = Blockly.Msg.CONTROLS_IF_MSG_ELSEIF;
+Blockly.Msg.LISTS_GET_INDEX_HELPURL = Blockly.Msg.LISTS_INDEX_OF_HELPURL;
+Blockly.Msg.CONTROLS_FOREACH_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_SET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TITLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_APPEND_VARIABLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.LISTS_INDEX_OF_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.PROCEDURES_DEFRETURN_COMMENT = Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT; \ No newline at end of file
diff --git a/blockly/msg/js/sq.js b/blockly/msg/js/sq.js
new file mode 100644
index 0000000..c0c6e65
--- /dev/null
+++ b/blockly/msg/js/sq.js
@@ -0,0 +1,391 @@
+// This file was automatically generated. Do not modify.
+
+'use strict';
+
+goog.provide('Blockly.Msg.sq');
+
+goog.require('Blockly.Msg');
+
+Blockly.Msg.ADD_COMMENT = "Vendos nje Koment";
+Blockly.Msg.CHANGE_VALUE_TITLE = "Ndrysho Vlerat:";
+Blockly.Msg.CLEAN_UP = "Clean up Blocks"; // untranslated
+Blockly.Msg.COLLAPSE_ALL = "Mbyll blloqet";
+Blockly.Msg.COLLAPSE_BLOCK = "Mbyll bllokun";
+Blockly.Msg.COLOUR_BLEND_COLOUR1 = "Ngjyra 1";
+Blockly.Msg.COLOUR_BLEND_COLOUR2 = "Ngjyra 2";
+Blockly.Msg.COLOUR_BLEND_HELPURL = "http://meyerweb.com/eric/tools/color-blend/";
+Blockly.Msg.COLOUR_BLEND_RATIO = "Perpjesetim";
+Blockly.Msg.COLOUR_BLEND_TITLE = "Përzierje";
+Blockly.Msg.COLOUR_BLEND_TOOLTIP = "Perzien dy ngjyra së bashku me një raport të dhënë (0.0 - 1.0).";
+Blockly.Msg.COLOUR_PICKER_HELPURL = "http://en.wikipedia.org/wiki/Color";
+Blockly.Msg.COLOUR_PICKER_TOOLTIP = "Zgjidh nje ngjyre nga nje game ngjyrash.";
+Blockly.Msg.COLOUR_RANDOM_HELPURL = "http://randomcolour.com"; // untranslated
+Blockly.Msg.COLOUR_RANDOM_TITLE = "ngjyre e rastesishme";
+Blockly.Msg.COLOUR_RANDOM_TOOLTIP = "Zgjidhni një ngjyrë në mënyrë të rastësishme.";
+Blockly.Msg.COLOUR_RGB_BLUE = "blu";
+Blockly.Msg.COLOUR_RGB_GREEN = "jeshile";
+Blockly.Msg.COLOUR_RGB_HELPURL = "http://www.december.com/html/spec/colorper.html";
+Blockly.Msg.COLOUR_RGB_RED = "e kuqe";
+Blockly.Msg.COLOUR_RGB_TITLE = "ngjyre me";
+Blockly.Msg.COLOUR_RGB_TOOLTIP = "Krijo një ngjyrë me shumën e specifikuar te te kuqes, te gjelbëres, dhe bluse. Te gjitha vlerat duhet te jene mes 0 dhe 100.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_HELPURL = "https://github.com/google/blockly/wiki/Loops#loop-termination-blocks"; // untranslated
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK = "dil nga nje faze perseritese";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE = "vazhdo me elementin tjeter te nje faze perseritese";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK = "Ndahu nga unaza.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE = "Kapërce pjesën e mbetur të unazës, dhe vazhdo me ripërsëritjen tjetër.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_WARNING = "Paralajmërim: Ky bllok mund të përdoret vetëm brenda unazës.";
+Blockly.Msg.CONTROLS_FOREACH_HELPURL = "https://github.com/google/blockly/wiki/Loops#for-each"; // untranslated
+Blockly.Msg.CONTROLS_FOREACH_TITLE = "per cdo produkt %1 ne liste %2";
+Blockly.Msg.CONTROLS_FOREACH_TOOLTIP = "Per cdo produkt ne nje \"liste\" \"vendos\" ndryshoren '%1' produktit, dhe pastaj bej disa deklarata.";
+Blockly.Msg.CONTROLS_FOR_HELPURL = "https://github.com/google/blockly/wiki/Loops#count-with"; // untranslated
+Blockly.Msg.CONTROLS_FOR_TITLE = "numero me %1 nga %2 ne %3 me nga %4";
+Blockly.Msg.CONTROLS_FOR_TOOLTIP = "Bëje identifikuesin \"%1\" që ta ketë vlerat prej numrit të fillimit deri tek numri i fundit, duke numëruar nga intervali i specifikuar, dhe ti bëj blloqet e specifikuara.";
+Blockly.Msg.CONTROLS_IF_ELSEIF_TOOLTIP = "\"Vendos\" \"kushtein\"tek \"pjesa\" \"if\"";
+Blockly.Msg.CONTROLS_IF_ELSE_TOOLTIP = "Shto një përfundues, që i mbërrin të gjitha kushtet në bllokun nëse.";
+Blockly.Msg.CONTROLS_IF_HELPURL = "https://github.com/google/blockly/wiki/IfElse"; // untranslated
+Blockly.Msg.CONTROLS_IF_IF_TOOLTIP = "Shto, fshij, ose rirregullo sektoret për ta rikonfiguruar këte bllok nëse.";
+Blockly.Msg.CONTROLS_IF_MSG_ELSE = "përndryshe";
+Blockly.Msg.CONTROLS_IF_MSG_ELSEIF = "përndryshe nëse";
+Blockly.Msg.CONTROLS_IF_MSG_IF = "nëse";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_1 = "Nëse një vlerë është e saktë, atëherë ekzekuto disa fjali.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_2 = "Nëse një vlerë është e saktë, atëherë ekzekuto bllokun e parë të fjalive. Përndryshe, ekzekuto bllokun e dytë të fjalive.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_3 = "Nëse vlera e parë është e saktë, atëherë ekzekuto bllokun e parë të fjalive. Përndryshe, nëse vlera e dytë është e saktë, ekzekuto bllokun e dytë të fjalive.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_4 = "Nëse vlera e parë është e saktë, atëherë ekzekuto bllokun e parë të fjalive. Përndryshe, nëse vlera e dytë është e saktë, ekzekuto bllokun e dytë të fjalive. Nëse asnjëra nga vlerat nuk është e saktë, ekzekuto bllokun e fundit të fjalive.";
+Blockly.Msg.CONTROLS_REPEAT_HELPURL = "http://en.wikipedia.org/wiki/For_loop";
+Blockly.Msg.CONTROLS_REPEAT_INPUT_DO = "ekzekuto";
+Blockly.Msg.CONTROLS_REPEAT_TITLE = "përsërit %1 herë";
+Blockly.Msg.CONTROLS_REPEAT_TOOLTIP = "Ekzekuto disa fjali disa herë.";
+Blockly.Msg.CONTROLS_WHILEUNTIL_HELPURL = "https://github.com/google/blockly/wiki/Loops#repeat"; // untranslated
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "përsërit derisa";
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "përsërit përderisa";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "Përderisa një vlerë është e pasaktë, atëherë ekzekuto disa fjali.";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "Përderisa një vlerë është e saktë, atëherë ekzekuto disa fjali.";
+Blockly.Msg.DELETE_ALL_BLOCKS = "Delete all %1 blocks?"; // untranslated
+Blockly.Msg.DELETE_BLOCK = "Fshij bllokun";
+Blockly.Msg.DELETE_VARIABLE = "Delete the '%1' variable"; // untranslated
+Blockly.Msg.DELETE_VARIABLE_CONFIRMATION = "Delete %1 uses of the '%2' variable?"; // untranslated
+Blockly.Msg.DELETE_X_BLOCKS = "Fshij %1 blloqe";
+Blockly.Msg.DISABLE_BLOCK = "Çaktivizo bllokun";
+Blockly.Msg.DUPLICATE_BLOCK = "Kopjo";
+Blockly.Msg.ENABLE_BLOCK = "Aktivizo bllokun";
+Blockly.Msg.EXPAND_ALL = "Zmadho blloqet";
+Blockly.Msg.EXPAND_BLOCK = "Zmadho bllokun";
+Blockly.Msg.EXTERNAL_INPUTS = "Hyrjet e jashtme";
+Blockly.Msg.HELP = "Ndihmë";
+Blockly.Msg.INLINE_INPUTS = "Hyrjet e brendshme";
+Blockly.Msg.LISTS_CREATE_EMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-empty-list";
+Blockly.Msg.LISTS_CREATE_EMPTY_TITLE = "krijo një listë të zbrazët";
+Blockly.Msg.LISTS_CREATE_EMPTY_TOOLTIP = "Kthen një listë, te gjatësisë 0, duke mos përmbajtur asnjë regjistrim të të dhënave";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TITLE_ADD = "listë";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TOOLTIP = "Shto, fshij, ose rirregullo sektoret për ta rikonfiguruar këtë bllok të listës.";
+Blockly.Msg.LISTS_CREATE_WITH_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
+Blockly.Msg.LISTS_CREATE_WITH_INPUT_WITH = "krijo listë me";
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TOOLTIP = "Shto një send në listë.";
+Blockly.Msg.LISTS_CREATE_WITH_TOOLTIP = "Krijo një listë me ndonjë numbër të sendeve.";
+Blockly.Msg.LISTS_GET_INDEX_FIRST = "i parë";
+Blockly.Msg.LISTS_GET_INDEX_FROM_END = "# nga fundi";
+Blockly.Msg.LISTS_GET_INDEX_FROM_START = "#";
+Blockly.Msg.LISTS_GET_INDEX_GET = "merr";
+Blockly.Msg.LISTS_GET_INDEX_GET_REMOVE = "merr dhe fshij";
+Blockly.Msg.LISTS_GET_INDEX_LAST = "i fundit";
+Blockly.Msg.LISTS_GET_INDEX_RANDOM = "i rastësishëm";
+Blockly.Msg.LISTS_GET_INDEX_REMOVE = "largo";
+Blockly.Msg.LISTS_GET_INDEX_TAIL = ""; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FIRST = "Rikthen tek artikulli i par në list.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FROM = "Kthen një send në pozicionin e specifikuar në listë.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_LAST = "Kthen artikullin e fundit në list.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_RANDOM = "Kthen një send të rastësishëm në listë.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST = "Fshin dhe kthen sendin e parë në listë.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM = "Fshin dhe kthen sendin në pozicionin e specifikuar në listë.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST = "Fshin dhe kthen sendin e fundit në listë.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM = "Fshin dhe kthen një send të rastësishëm në listë.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST = "Fshin sendin e parë në listë.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM = "Fshin sendin në pozicionin e specifikuar në listë.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST = "Fshin sendin e fundit në listë.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM = "Kthen një send të rastësishëm në listë.";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_END = "tek # nga fundi";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_START = "tek #";
+Blockly.Msg.LISTS_GET_SUBLIST_END_LAST = "tek i fundit";
+Blockly.Msg.LISTS_GET_SUBLIST_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-a-sublist"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_START_FIRST = "merr nën-listën nga i pari";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_END = "merr nën listën nga # nga fundi";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_START = "merr nën-listën nga #";
+Blockly.Msg.LISTS_GET_SUBLIST_TAIL = ""; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_TOOLTIP = "Krijon në kopje të pjesës së specifikuar të listës.";
+Blockly.Msg.LISTS_INDEX_FROM_END_TOOLTIP = "%1 është sendi i fundit.";
+Blockly.Msg.LISTS_INDEX_FROM_START_TOOLTIP = "%1 është sendi i parë.";
+Blockly.Msg.LISTS_INDEX_OF_FIRST = "gjen ndodhjen e parë të sendit";
+Blockly.Msg.LISTS_INDEX_OF_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-items-from-a-list"; // untranslated
+Blockly.Msg.LISTS_INDEX_OF_LAST = "gjen ndodhjen e fundit të sendit";
+Blockly.Msg.LISTS_INDEX_OF_TOOLTIP = "Kthen indeksin e ndodhjes së parë/fudit të sendit në listë. Kthen %1 nëse teksti nuk është gjetur.";
+Blockly.Msg.LISTS_INLIST = "në listë";
+Blockly.Msg.LISTS_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#is-empty"; // untranslated
+Blockly.Msg.LISTS_ISEMPTY_TITLE = "%1 është e zbraztë";
+Blockly.Msg.LISTS_ISEMPTY_TOOLTIP = "Kthehet i saktë nëse lista është e zbraztë.";
+Blockly.Msg.LISTS_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Lists#length-of"; // untranslated
+Blockly.Msg.LISTS_LENGTH_TITLE = "gjatësia e %1";
+Blockly.Msg.LISTS_LENGTH_TOOLTIP = "Kthen gjatësinë e listës.";
+Blockly.Msg.LISTS_REPEAT_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
+Blockly.Msg.LISTS_REPEAT_TITLE = "krijo listën me sendin %1 të përsëritur %2 herë";
+Blockly.Msg.LISTS_REPEAT_TOOLTIP = "Krijon në listë qe përmban vlerën e dhënë të përsëritur aq herë sa numri i specifikuar.";
+Blockly.Msg.LISTS_SET_INDEX_HELPURL = "https://github.com/google/blockly/wiki/Lists#in-list--set"; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_INPUT_TO = "sikurse";
+Blockly.Msg.LISTS_SET_INDEX_INSERT = "fut në";
+Blockly.Msg.LISTS_SET_INDEX_SET = "vendos";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST = "Fut sendin në fillim të listës.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FROM = "Fut sendin në pozicionin e specifikuar të listës.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_LAST = "Bashkangjit sendin në fund të listës.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM = "Fut sendin rastësisht në listë.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FIRST = "Vendos sendin e parë në listë.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FROM = "Vendos sendin në pozicionin e specifikuar në listë.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_LAST = "Vendos sendin e fundit në listë.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_RANDOM = "Vendos një send të rastësishëm në listë.";
+Blockly.Msg.LISTS_SORT_HELPURL = "https://github.com/google/blockly/wiki/Lists#sorting-a-list"; // untranslated
+Blockly.Msg.LISTS_SORT_ORDER_ASCENDING = "ascending"; // untranslated
+Blockly.Msg.LISTS_SORT_ORDER_DESCENDING = "descending"; // untranslated
+Blockly.Msg.LISTS_SORT_TITLE = "sort %1 %2 %3"; // untranslated
+Blockly.Msg.LISTS_SORT_TOOLTIP = "Sort a copy of a list."; // untranslated
+Blockly.Msg.LISTS_SORT_TYPE_IGNORECASE = "alphabetic, ignore case"; // untranslated
+Blockly.Msg.LISTS_SORT_TYPE_NUMERIC = "numeric"; // untranslated
+Blockly.Msg.LISTS_SORT_TYPE_TEXT = "alphabetic"; // untranslated
+Blockly.Msg.LISTS_SPLIT_HELPURL = "https://github.com/google/blockly/wiki/Lists#splitting-strings-and-joining-lists"; // untranslated
+Blockly.Msg.LISTS_SPLIT_LIST_FROM_TEXT = "make list from text"; // untranslated
+Blockly.Msg.LISTS_SPLIT_TEXT_FROM_LIST = "make text from list"; // untranslated
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_JOIN = "Join a list of texts into one text, separated by a delimiter."; // untranslated
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_SPLIT = "Split text into a list of texts, breaking at each delimiter."; // untranslated
+Blockly.Msg.LISTS_SPLIT_WITH_DELIMITER = "with delimiter"; // untranslated
+Blockly.Msg.LOGIC_BOOLEAN_FALSE = "e pasaktë";
+Blockly.Msg.LOGIC_BOOLEAN_HELPURL = "https://github.com/google/blockly/wiki/Logic#values"; // untranslated
+Blockly.Msg.LOGIC_BOOLEAN_TOOLTIP = "Kthehet ose të saktë ose të pasaktë.";
+Blockly.Msg.LOGIC_BOOLEAN_TRUE = "e saktë";
+Blockly.Msg.LOGIC_COMPARE_HELPURL = "http://en.wikipedia.org/wiki/Inequality_(mathematics)";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_EQ = "Ktheje të saktë nëse të dy hyrjet janë të barabarta me njëra-tjetrën.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GT = "Ktheje të saktë nëse hyrja e parë është më e madhe se hyrja e dytë.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GTE = "Ktheje të saktë nëse hyrja e parë është më e madhe ose e barabartë me hyrjen e dytë.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LT = "Ktheje të saktë nëse hyrja e parë është më e vogël se hyrja e dytë.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LTE = "Ktheje të saktë nëse hyrja e parë është më e vogël ose e barabartë me hyrjen e dytë.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_NEQ = "Ktheje të saktë nëse të dy hyrjet nuk janë të barabarta me njëra-tjetrën.";
+Blockly.Msg.LOGIC_NEGATE_HELPURL = "https://github.com/google/blockly/wiki/Logic#not"; // untranslated
+Blockly.Msg.LOGIC_NEGATE_TITLE = "jo %1";
+Blockly.Msg.LOGIC_NEGATE_TOOLTIP = "Kthehet e saktë nëse hyrja është e pasaktë. Kthehet e pasaktë nëse hyrja është e saktë.";
+Blockly.Msg.LOGIC_NULL = "pavlerë";
+Blockly.Msg.LOGIC_NULL_HELPURL = "http://en.wikipedia.org/wiki/Nullable_type";
+Blockly.Msg.LOGIC_NULL_TOOLTIP = "Kthehet e pavlerë.";
+Blockly.Msg.LOGIC_OPERATION_AND = "dhe";
+Blockly.Msg.LOGIC_OPERATION_HELPURL = "https://github.com/google/blockly/wiki/Logic#logical-operations"; // untranslated
+Blockly.Msg.LOGIC_OPERATION_OR = "ose";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_AND = "Kthehet të saktë nëse të dy hyrjet janë të sakta.";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_OR = "Kthehet e saktë nëse së paku njëra nga hyrjet është e saktë.";
+Blockly.Msg.LOGIC_TERNARY_CONDITION = "test";
+Blockly.Msg.LOGIC_TERNARY_HELPURL = "http://en.wikipedia.org/wiki/%3F:";
+Blockly.Msg.LOGIC_TERNARY_IF_FALSE = "nëse e pasaktë";
+Blockly.Msg.LOGIC_TERNARY_IF_TRUE = "nëse e saktë";
+Blockly.Msg.LOGIC_TERNARY_TOOLTIP = "Kontrollo kushtin në 'test'. Nëse kushti është i saktë, kthen vlerën 'nëse e saktë'; përndryshe kthen vlerën 'nëse e pasaktë'.";
+Blockly.Msg.MATH_ADDITION_SYMBOL = "+";
+Blockly.Msg.MATH_ARITHMETIC_HELPURL = "http://sq.wikipedia.org/wiki/Aritmetika";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_ADD = "Kthen shumën e dy numrave.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE = "Kthen herësin e dy numrave.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MINUS = "Kthen ndryshimin e dy numrave.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MULTIPLY = "Kthen produktin e dy numrave.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_POWER = "Kthen numrin e parë të ngritur në fuqinë e numrit të dytë.";
+Blockly.Msg.MATH_CHANGE_HELPURL = "http://en.wikipedia.org/wiki/Programming_idiom#Incrementing_a_counter";
+Blockly.Msg.MATH_CHANGE_TITLE = "ndrysho %1 nga %2";
+Blockly.Msg.MATH_CHANGE_TOOLTIP = "Shto një numër në ndryshoren '%1'.";
+Blockly.Msg.MATH_CONSTANT_HELPURL = "http://en.wikipedia.org/wiki/Mathematical_constant";
+Blockly.Msg.MATH_CONSTANT_TOOLTIP = "Kthen një nga konstantet e përbashkëta: : π (3.141…), e (2.718…), φ (1.618…), sqrt(2) (1.414…), sqrt(½) (0.707…), or ∞ (infiniti).";
+Blockly.Msg.MATH_CONSTRAIN_HELPURL = "https://en.wikipedia.org/wiki/Clamping_%28graphics%29"; // untranslated
+Blockly.Msg.MATH_CONSTRAIN_TITLE = "detyro %1 e ulët %2 e lartë %3";
+Blockly.Msg.MATH_CONSTRAIN_TOOLTIP = "Vëni një numër që të jetë në mes të kufive të specifikuara(përfshirëse).";
+Blockly.Msg.MATH_DIVISION_SYMBOL = "÷";
+Blockly.Msg.MATH_IS_DIVISIBLE_BY = "është i pjestueshme me";
+Blockly.Msg.MATH_IS_EVEN = "është çift";
+Blockly.Msg.MATH_IS_NEGATIVE = "është negativ";
+Blockly.Msg.MATH_IS_ODD = "është tek";
+Blockly.Msg.MATH_IS_POSITIVE = "është pozitiv";
+Blockly.Msg.MATH_IS_PRIME = "është prim";
+Blockly.Msg.MATH_IS_TOOLTIP = "Kontrollo nëse një numër është çift, tek, prim, i plotë, pozitiv, negativ, ose nëse është i pjestueshëm me një numër të caktuar. Kthehet e saktë ose e pasaktë.";
+Blockly.Msg.MATH_IS_WHOLE = "është i plotë";
+Blockly.Msg.MATH_MODULO_HELPURL = "http://en.wikipedia.org/wiki/Modulo_operation";
+Blockly.Msg.MATH_MODULO_TITLE = "mbetësi i %1 ÷ %2";
+Blockly.Msg.MATH_MODULO_TOOLTIP = "Kthen mbetësin nga pjestimi i dy numrave.";
+Blockly.Msg.MATH_MULTIPLICATION_SYMBOL = "x";
+Blockly.Msg.MATH_NUMBER_HELPURL = "http://en.wikipedia.org/wiki/Number";
+Blockly.Msg.MATH_NUMBER_TOOLTIP = "Një numër.";
+Blockly.Msg.MATH_ONLIST_HELPURL = ""; // untranslated
+Blockly.Msg.MATH_ONLIST_OPERATOR_AVERAGE = "mesatarja e listës";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MAX = "numri më i madh i listës";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MEDIAN = "mediana e listës";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MIN = "numri më i ulët i listës";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MODE = "modat e listës";
+Blockly.Msg.MATH_ONLIST_OPERATOR_RANDOM = "send i rastësishëm i listës";
+Blockly.Msg.MATH_ONLIST_OPERATOR_STD_DEV = "devijimi standard i listës";
+Blockly.Msg.MATH_ONLIST_OPERATOR_SUM = "mbledhja e listës";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_AVERAGE = "Kthen mesatarën (kuptimi aritmetik) i vlerave numerike të listës.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MAX = "Kthe numrin më të madh të listës.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MEDIAN = "Kthe numrin median të listës.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MIN = "Kthe numrin me të vogël të listës.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MODE = "Kthe listën e sendit(eve) më të zakonshme të listës.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_RANDOM = "Kthe një element të rastësishëm nga lista.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_STD_DEV = "Kthe devijimin standard të listës.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_SUM = "Kthe shumën e të gjithë numrave të listës.";
+Blockly.Msg.MATH_POWER_SYMBOL = "^";
+Blockly.Msg.MATH_RANDOM_FLOAT_HELPURL = "http://en.wikipedia.org/wiki/Random_number_generation";
+Blockly.Msg.MATH_RANDOM_FLOAT_TITLE_RANDOM = "fraksioni i rastësishëm";
+Blockly.Msg.MATH_RANDOM_FLOAT_TOOLTIP = "Kthe fraksionin e rastësishëm në mes të 0.0 (përfshirëse) dhe 1.0 (jopërfshirëse).";
+Blockly.Msg.MATH_RANDOM_INT_HELPURL = "http://en.wikipedia.org/wiki/Random_number_generation";
+Blockly.Msg.MATH_RANDOM_INT_TITLE = "numër i plotë i rastësishëm nga %1 deri në %2";
+Blockly.Msg.MATH_RANDOM_INT_TOOLTIP = "Kthe një numër të plotë të rastësishëm të dy kufijve të specifikuar, të përfshirë.";
+Blockly.Msg.MATH_ROUND_HELPURL = "http://en.wikipedia.org/wiki/Rounding";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUND = "rrumbullakësimi";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDDOWN = "rrumbullakësimi i ulët";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDUP = "rrumbullakësimi i lartë";
+Blockly.Msg.MATH_ROUND_TOOLTIP = "Rrumbullakësimi i numrit të lartë ose të ulët.";
+Blockly.Msg.MATH_SINGLE_HELPURL = "http://en.wikipedia.org/wiki/Square_root";
+Blockly.Msg.MATH_SINGLE_OP_ABSOLUTE = "absolut";
+Blockly.Msg.MATH_SINGLE_OP_ROOT = "rrënja katrore";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ABS = "Kthen vlerën absolute të një numri.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_EXP = "Kthen e në fuqinë e një numri.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LN = "Kthen logaritmën natyrale të një numri.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LOG10 = "Kthen 10 logaritmet bazë të një numri.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_NEG = "Kthe negacionin e një numri.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_POW10 = "Kthen 10 në fuqinë e një numri.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ROOT = "Kthen rrënjën katrore të një numri.";
+Blockly.Msg.MATH_SUBTRACTION_SYMBOL = "-";
+Blockly.Msg.MATH_TRIG_ACOS = "acosinus";
+Blockly.Msg.MATH_TRIG_ASIN = "asinus";
+Blockly.Msg.MATH_TRIG_ATAN = "atangjentë";
+Blockly.Msg.MATH_TRIG_COS = "cos";
+Blockly.Msg.MATH_TRIG_HELPURL = "http://en.wikipedia.org/wiki/Trigonometric_functions";
+Blockly.Msg.MATH_TRIG_SIN = "sin";
+Blockly.Msg.MATH_TRIG_TAN = "tan";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ACOS = "Rikthe cos-1 e nje numeri.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ASIN = "Rikthe sin-1 e nje numeri.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ATAN = "Kthe tg-1 e nje numeri.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_COS = "Kthe kosinusin e nje grade (jo ne radiant).";
+Blockly.Msg.MATH_TRIG_TOOLTIP_SIN = "Kthe kosinusin e nje kendi (jo ne radiant).";
+Blockly.Msg.MATH_TRIG_TOOLTIP_TAN = "Kthe tangentin e nje kendi (jo radiant).";
+Blockly.Msg.NEW_VARIABLE = "Identifikatorë i ri...";
+Blockly.Msg.NEW_VARIABLE_TITLE = "Emri i identifikatorit të ri:";
+Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; // untranslated
+Blockly.Msg.PROCEDURES_ALLOW_STATEMENTS = "allow statements"; // untranslated
+Blockly.Msg.PROCEDURES_BEFORE_PARAMS = "me:";
+Blockly.Msg.PROCEDURES_CALLNORETURN_HELPURL = "http://en.wikipedia.org/wiki/Procedure_%28computer_science%29";
+Blockly.Msg.PROCEDURES_CALLNORETURN_TOOLTIP = "Lësho funksionin e definuar nga përdoruesi '%1'.";
+Blockly.Msg.PROCEDURES_CALLRETURN_HELPURL = "http://en.wikipedia.org/wiki/Procedure_%28computer_science%29";
+Blockly.Msg.PROCEDURES_CALLRETURN_TOOLTIP = "Lëho funksionin e definuar nga përdoruesi '%1' dhe përdor daljen e tij.";
+Blockly.Msg.PROCEDURES_CALL_BEFORE_PARAMS = "me:";
+Blockly.Msg.PROCEDURES_CREATE_DO = "Krijo '%1'";
+Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT = "Describe this function..."; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_DO = ""; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_HELPURL = "http://en.wikipedia.org/wiki/Procedure_%28computer_science%29";
+Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE = "bëj diqka";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE = "te";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TOOLTIP = "Krijon një funksion pa dalje.";
+Blockly.Msg.PROCEDURES_DEFRETURN_HELPURL = "http://en.wikipedia.org/wiki/Procedure_%28computer_science%29";
+Blockly.Msg.PROCEDURES_DEFRETURN_RETURN = "rikthe";
+Blockly.Msg.PROCEDURES_DEFRETURN_TOOLTIP = "Krijon një funksion me një dalje.";
+Blockly.Msg.PROCEDURES_DEF_DUPLICATE_WARNING = "Paralajmërim: Ky funksion ka parametra të dyfishuar.";
+Blockly.Msg.PROCEDURES_HIGHLIGHT_DEF = "Thekso definicionin e funksionit";
+Blockly.Msg.PROCEDURES_IFRETURN_HELPURL = "http://c2.com/cgi/wiki?GuardClause"; // untranslated
+Blockly.Msg.PROCEDURES_IFRETURN_TOOLTIP = "Nëse një vlerë është e saktë, atëherë kthe një vlerë të dytë.";
+Blockly.Msg.PROCEDURES_IFRETURN_WARNING = "Paralajmërim: Ky bllok mund të përdoret vetëm brenda definicionit të funksionit.";
+Blockly.Msg.PROCEDURES_MUTATORARG_TITLE = "Fut emrin:";
+Blockly.Msg.PROCEDURES_MUTATORARG_TOOLTIP = "Add an input to the function."; // untranslated
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TITLE = "Informacioni i futur";
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TOOLTIP = "Add, remove, or reorder inputs to this function."; // untranslated
+Blockly.Msg.REDO = "Redo"; // untranslated
+Blockly.Msg.REMOVE_COMMENT = "Fshij komentin";
+Blockly.Msg.RENAME_VARIABLE = "Ndrysho emrin variables...";
+Blockly.Msg.RENAME_VARIABLE_TITLE = "Ndrysho emrin e te gjitha '%1' variablave ne :";
+Blockly.Msg.TEXT_APPEND_APPENDTEXT = "shto tekst";
+Blockly.Msg.TEXT_APPEND_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_APPEND_TO = "ne";
+Blockly.Msg.TEXT_APPEND_TOOLTIP = "shto tekst tek varibla '%1'.";
+Blockly.Msg.TEXT_CHANGECASE_HELPURL = "https://github.com/google/blockly/wiki/Text#adjusting-text-case"; // untranslated
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_LOWERCASE = "me shkronja te vogla shtypi";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_TITLECASE = "Fillimi me shkronje te madhe shtypi";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_UPPERCASE = "me shkronja te medha shtypi";
+Blockly.Msg.TEXT_CHANGECASE_TOOLTIP = "Kthe nje kopje te tekstit ne nje rast te ndryshem.";
+Blockly.Msg.TEXT_CHARAT_FIRST = "merr shkronjen e pare";
+Blockly.Msg.TEXT_CHARAT_FROM_END = "merr shkronjen # nga fundi";
+Blockly.Msg.TEXT_CHARAT_FROM_START = "merr shkronjen #";
+Blockly.Msg.TEXT_CHARAT_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-text"; // untranslated
+Blockly.Msg.TEXT_CHARAT_INPUT_INTEXT = "ne tekst";
+Blockly.Msg.TEXT_CHARAT_LAST = "merr shkronjen e fundit";
+Blockly.Msg.TEXT_CHARAT_RANDOM = "merr nje shkronje te rastesishme";
+Blockly.Msg.TEXT_CHARAT_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_CHARAT_TOOLTIP = "Kthe nje shkronje nga nje pozicion i caktuar.";
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TOOLTIP = "Shto nje gje ne tekst";
+Blockly.Msg.TEXT_CREATE_JOIN_TITLE_JOIN = "bashkangjit";
+Blockly.Msg.TEXT_CREATE_JOIN_TOOLTIP = "Shto, fshij, ose rirregullo sektoret për ta rikonfiguruar këtë bllok teksti.";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_END = "ne shkronjen # nga fundi";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_START = "ne shkronjen #";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_LAST = "tek shkronja e fundit";
+Blockly.Msg.TEXT_GET_SUBSTRING_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_INPUT_IN_TEXT = "ne tekst";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FIRST = "merr vlerat qe vazhdojne me shkronjen e pare";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_END = "merr nenvargun nga shkronja # nga fundi";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_START = "Merr nenvargun nga shkronja #";
+Blockly.Msg.TEXT_GET_SUBSTRING_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_TOOLTIP = "Pergjigjet me nje pjese te caktuar teksti.";
+Blockly.Msg.TEXT_INDEXOF_HELPURL = "https://github.com/google/blockly/wiki/Text#finding-text"; // untranslated
+Blockly.Msg.TEXT_INDEXOF_INPUT_INTEXT = "ne tekst";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_FIRST = "gjej rastisjen e pare te tekstit";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_LAST = "gjej rastisjen e fundit te tekstit";
+Blockly.Msg.TEXT_INDEXOF_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_INDEXOF_TOOLTIP = "Pergjigjet me indeksin e pare/fundit te rastisjes se tekstit te pare ne tekstin e dyte. Pergjigjet me %1 ne qofte se teksti nuk u gjet.";
+Blockly.Msg.TEXT_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Text#checking-for-empty-text"; // untranslated
+Blockly.Msg.TEXT_ISEMPTY_TITLE = "%1 eshte bosh";
+Blockly.Msg.TEXT_ISEMPTY_TOOLTIP = "Kthehet e vertete neqoftese teksti i dhene eshte bosh.";
+Blockly.Msg.TEXT_JOIN_HELPURL = "https://github.com/google/blockly/wiki/Text#text-creation"; // untranslated
+Blockly.Msg.TEXT_JOIN_TITLE_CREATEWITH = "krijo tekst me";
+Blockly.Msg.TEXT_JOIN_TOOLTIP = "Krijo nje pjese te tekstit duke bashkuar se bashku disa sende";
+Blockly.Msg.TEXT_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_LENGTH_TITLE = "gjatesi %1";
+Blockly.Msg.TEXT_LENGTH_TOOLTIP = "Pergjigjet me nje numer shkronjash (duke perfshire hapesire) ne tekstin e dhene.";
+Blockly.Msg.TEXT_PRINT_HELPURL = "https://github.com/google/blockly/wiki/Text#printing-text"; // untranslated
+Blockly.Msg.TEXT_PRINT_TITLE = "printo %1";
+Blockly.Msg.TEXT_PRINT_TOOLTIP = "Printo tekstin e caktuar, numer ose vlere tjeter.";
+Blockly.Msg.TEXT_PROMPT_HELPURL = "https://github.com/google/blockly/wiki/Text#getting-input-from-the-user"; // untranslated
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_NUMBER = "Kerkoji perdoruesit nje numer.";
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_TEXT = "Kerkoji perdoruesit ca tekst.";
+Blockly.Msg.TEXT_PROMPT_TYPE_NUMBER = "kerko nje numer me njoftim";
+Blockly.Msg.TEXT_PROMPT_TYPE_TEXT = "kerko tekst me njoftim";
+Blockly.Msg.TEXT_TEXT_HELPURL = "http://en.wikipedia.org/wiki/String_(computer_science)";
+Blockly.Msg.TEXT_TEXT_TOOLTIP = "Nje shkronje, fjale, ose rresht teksti.";
+Blockly.Msg.TEXT_TRIM_HELPURL = "https://github.com/google/blockly/wiki/Text#trimming-removing-spaces"; // untranslated
+Blockly.Msg.TEXT_TRIM_OPERATOR_BOTH = "prit hapesirat nga te dyja anet";
+Blockly.Msg.TEXT_TRIM_OPERATOR_LEFT = "prit hapesirat nga ana e majte";
+Blockly.Msg.TEXT_TRIM_OPERATOR_RIGHT = "prit hapesirat nga ana e djathte";
+Blockly.Msg.TEXT_TRIM_TOOLTIP = "Pergjigju me nje kopje te tekstit me hapesira te fshira nga njera ane ose te dyja anet.";
+Blockly.Msg.TODAY = "Today"; // untranslated
+Blockly.Msg.UNDO = "Undo"; // untranslated
+Blockly.Msg.VARIABLES_DEFAULT_NAME = "send";
+Blockly.Msg.VARIABLES_GET_CREATE_SET = "Krijo 'vendos %1";
+Blockly.Msg.VARIABLES_GET_HELPURL = "https://github.com/google/blockly/wiki/Variables#get"; // untranslated
+Blockly.Msg.VARIABLES_GET_TOOLTIP = "Pergjigjet me nje vlere te kesaj variable.";
+Blockly.Msg.VARIABLES_SET = "vendos %1 ne %2";
+Blockly.Msg.VARIABLES_SET_CREATE_GET = "Krijo 'merr %1";
+Blockly.Msg.VARIABLES_SET_HELPURL = "https://github.com/google/blockly/wiki/Variables#set"; // untranslated
+Blockly.Msg.VARIABLES_SET_TOOLTIP = "Vendos kete variable te jete e barabarte me te dhenat ne hyrje.";
+Blockly.Msg.VARIABLE_ALREADY_EXISTS = "A variable named '%1' already exists."; // untranslated
+Blockly.Msg.PROCEDURES_DEFRETURN_TITLE = Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE;
+Blockly.Msg.CONTROLS_IF_IF_TITLE_IF = Blockly.Msg.CONTROLS_IF_MSG_IF;
+Blockly.Msg.CONTROLS_WHILEUNTIL_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_MSG_THEN = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_ELSE_TITLE_ELSE = Blockly.Msg.CONTROLS_IF_MSG_ELSE;
+Blockly.Msg.PROCEDURES_DEFRETURN_PROCEDURE = Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE;
+Blockly.Msg.LISTS_GET_SUBLIST_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.LISTS_GET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.PROCEDURES_DEFRETURN_DO = Blockly.Msg.PROCEDURES_DEFNORETURN_DO;
+Blockly.Msg.CONTROLS_IF_ELSEIF_TITLE_ELSEIF = Blockly.Msg.CONTROLS_IF_MSG_ELSEIF;
+Blockly.Msg.LISTS_GET_INDEX_HELPURL = Blockly.Msg.LISTS_INDEX_OF_HELPURL;
+Blockly.Msg.CONTROLS_FOREACH_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_SET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TITLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_APPEND_VARIABLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.LISTS_INDEX_OF_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.PROCEDURES_DEFRETURN_COMMENT = Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT; \ No newline at end of file
diff --git a/blockly/msg/js/sr.js b/blockly/msg/js/sr.js
new file mode 100644
index 0000000..e53417c
--- /dev/null
+++ b/blockly/msg/js/sr.js
@@ -0,0 +1,391 @@
+// This file was automatically generated. Do not modify.
+
+'use strict';
+
+goog.provide('Blockly.Msg.sr');
+
+goog.require('Blockly.Msg');
+
+Blockly.Msg.ADD_COMMENT = "Додај коментар";
+Blockly.Msg.CHANGE_VALUE_TITLE = "Промените вредност:";
+Blockly.Msg.CLEAN_UP = "Уклоните блокова";
+Blockly.Msg.COLLAPSE_ALL = "Скупи блокове";
+Blockly.Msg.COLLAPSE_BLOCK = "Скупи блок";
+Blockly.Msg.COLOUR_BLEND_COLOUR1 = "боја 1";
+Blockly.Msg.COLOUR_BLEND_COLOUR2 = "боја 2";
+Blockly.Msg.COLOUR_BLEND_HELPURL = "http://meyerweb.com/eric/tools/color-blend/";
+Blockly.Msg.COLOUR_BLEND_RATIO = "однос";
+Blockly.Msg.COLOUR_BLEND_TITLE = "помешај";
+Blockly.Msg.COLOUR_BLEND_TOOLTIP = "Помешати две боје заједно са датим односом (0.0 - 1.0).";
+Blockly.Msg.COLOUR_PICKER_HELPURL = "https://sr.wikipedia.org/wiki/Боја";
+Blockly.Msg.COLOUR_PICKER_TOOLTIP = "Изаберите боју са палете.";
+Blockly.Msg.COLOUR_RANDOM_HELPURL = "http://randomcolour.com"; // untranslated
+Blockly.Msg.COLOUR_RANDOM_TITLE = "случајна боја";
+Blockly.Msg.COLOUR_RANDOM_TOOLTIP = "Изаберите боју насумице.";
+Blockly.Msg.COLOUR_RGB_BLUE = "плава";
+Blockly.Msg.COLOUR_RGB_GREEN = "зелена";
+Blockly.Msg.COLOUR_RGB_HELPURL = "http://www.december.com/html/spec/colorper.html";
+Blockly.Msg.COLOUR_RGB_RED = "црвена";
+Blockly.Msg.COLOUR_RGB_TITLE = "боја са";
+Blockly.Msg.COLOUR_RGB_TOOLTIP = "Креирај боју са одређеном количином црвене,зелене, и плаве. Све вредности морају бити између 0 и 100.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_HELPURL = "https://github.com/google/blockly/wiki/Loops#loop-termination-blocks"; // untranslated
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK = "Изађите из петље";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE = "настави са следећом итерацијом петље";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK = "Напусти садржај петље.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE = "Прескочи остатак ове петље, и настави са следећом итерацијом(понављанјем).";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_WARNING = "Упозорење: Овај блок може да се употреби само унутар петље.";
+Blockly.Msg.CONTROLS_FOREACH_HELPURL = "https://github.com/google/blockly/wiki/Loops#for-each"; // untranslated
+Blockly.Msg.CONTROLS_FOREACH_TITLE = "за сваку ставку %1 на списку %2";
+Blockly.Msg.CONTROLS_FOREACH_TOOLTIP = "За сваку ставку унутар листе, подеси промењиву '%1' по ставци, и онда начини неке изјаве-наредбе.";
+Blockly.Msg.CONTROLS_FOR_HELPURL = "https://github.com/google/blockly/wiki/Loops#count-with"; // untranslated
+Blockly.Msg.CONTROLS_FOR_TITLE = "преброј са %1 од %2 до %3 од %4";
+Blockly.Msg.CONTROLS_FOR_TOOLTIP = "Имај промењиву \"%1\" узми вредности од почетног броја до задњег броја, бројећи по одређеном интервалу, и изврши одређене блокове.";
+Blockly.Msg.CONTROLS_IF_ELSEIF_TOOLTIP = "Додајте услов блоку „ако“.";
+Blockly.Msg.CONTROLS_IF_ELSE_TOOLTIP = "Додај коначни, catch-all (ухвати све) услове иф блока.";
+Blockly.Msg.CONTROLS_IF_HELPURL = "https://github.com/google/blockly/wiki/IfElse"; // untranslated
+Blockly.Msg.CONTROLS_IF_IF_TOOLTIP = "Додај, уклони, или преуреди делове како бих реконфигурисали овај иф блок.";
+Blockly.Msg.CONTROLS_IF_MSG_ELSE = "иначе";
+Blockly.Msg.CONTROLS_IF_MSG_ELSEIF = "иначе-ако";
+Blockly.Msg.CONTROLS_IF_MSG_IF = "ако";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_1 = "ако је вредност тачна, онда изврши неке наредбе-изјаве.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_2 = "ако је вредност тачна, онда изврши први блок наредби, У супротном, изврши други блок наредби.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_3 = "Ако је прва вредност тачна, онда изврши први блок наредби, у супротном, ако је друга вредност тачна , изврши други блок наредби.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_4 = "Ако је прва вредност тачна, онда изврши први блок наредби, у супротном, ако је друга вредност тачна , изврши други блок наредби. Ако ни једна од вредности није тачна, изврши последнји блок наредби.";
+Blockly.Msg.CONTROLS_REPEAT_HELPURL = "https://sr.wikipedia.org/wiki/For_петља";
+Blockly.Msg.CONTROLS_REPEAT_INPUT_DO = "изврши";
+Blockly.Msg.CONTROLS_REPEAT_TITLE = "понови %1 пута";
+Blockly.Msg.CONTROLS_REPEAT_TOOLTIP = "Одрадити неке наредбе неколико пута.";
+Blockly.Msg.CONTROLS_WHILEUNTIL_HELPURL = "https://github.com/google/blockly/wiki/Loops#repeat"; // untranslated
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "понављати до";
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "понављати док";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "Док вредност није тачна, онда извршити неке наредбе.";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "Док је вредност тачна, онда извршите неке наредбе.";
+Blockly.Msg.DELETE_ALL_BLOCKS = "Обрисати %1 блокова?";
+Blockly.Msg.DELETE_BLOCK = "Обриши блок";
+Blockly.Msg.DELETE_VARIABLE = "Delete the '%1' variable"; // untranslated
+Blockly.Msg.DELETE_VARIABLE_CONFIRMATION = "Delete %1 uses of the '%2' variable?"; // untranslated
+Blockly.Msg.DELETE_X_BLOCKS = "Обриши %1 блокова";
+Blockly.Msg.DISABLE_BLOCK = "Онемогући блок";
+Blockly.Msg.DUPLICATE_BLOCK = "Дуплирај";
+Blockly.Msg.ENABLE_BLOCK = "Омогући блок";
+Blockly.Msg.EXPAND_ALL = "Прошири блокове";
+Blockly.Msg.EXPAND_BLOCK = "Прошири блок";
+Blockly.Msg.EXTERNAL_INPUTS = "Спољни улази";
+Blockly.Msg.HELP = "Помоћ";
+Blockly.Msg.INLINE_INPUTS = "Унутрашњи улази";
+Blockly.Msg.LISTS_CREATE_EMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-empty-list";
+Blockly.Msg.LISTS_CREATE_EMPTY_TITLE = "направи празан списак";
+Blockly.Msg.LISTS_CREATE_EMPTY_TOOLTIP = "враћа листу, дужине 0, не садржавајући евиденцију података";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TITLE_ADD = "списак";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TOOLTIP = "Додајте, избришите, или преуредите делове како би се реорганизовали овај блок листе.";
+Blockly.Msg.LISTS_CREATE_WITH_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
+Blockly.Msg.LISTS_CREATE_WITH_INPUT_WITH = "направи списак са";
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TOOLTIP = "Додајте ставку на списак.";
+Blockly.Msg.LISTS_CREATE_WITH_TOOLTIP = "Креирај листу са било којим бројем ставки.";
+Blockly.Msg.LISTS_GET_INDEX_FIRST = "прва";
+Blockly.Msg.LISTS_GET_INDEX_FROM_END = "# са краја";
+Blockly.Msg.LISTS_GET_INDEX_FROM_START = "#";
+Blockly.Msg.LISTS_GET_INDEX_GET = "преузми";
+Blockly.Msg.LISTS_GET_INDEX_GET_REMOVE = "преузми и уклони";
+Blockly.Msg.LISTS_GET_INDEX_LAST = "последња";
+Blockly.Msg.LISTS_GET_INDEX_RANDOM = "случајна";
+Blockly.Msg.LISTS_GET_INDEX_REMOVE = "уклони";
+Blockly.Msg.LISTS_GET_INDEX_TAIL = "";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FIRST = "Враћа прву ставку на списку.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FROM = "Враћа ставку на одређену позицију на листи.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_LAST = "Враћа последњу ставку на списку.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_RANDOM = "Враћа случајну ставку са списка.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST = "Уклања и враћа прву ставку са списка.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM = "Уклања и враћа ставку са одређеног положаја на списку.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST = "Уклања и враћа последњу ставку са списка.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM = "Уклања и враћа случајну ставку са списка.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST = "Уклања прву ставку са списка.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM = "Уклања ставку са одређеног положаја на списку.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST = "Уклања последњу ставку са списка.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM = "Уклања случајну ставку са списка.";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_END = "до # од краја";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_START = "до #";
+Blockly.Msg.LISTS_GET_SUBLIST_END_LAST = "до последње";
+Blockly.Msg.LISTS_GET_SUBLIST_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-a-sublist"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_START_FIRST = "преузми подсписак од прве";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_END = "преузми подсписак из # са краја";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_START = "преузми подсписак од #";
+Blockly.Msg.LISTS_GET_SUBLIST_TAIL = "";
+Blockly.Msg.LISTS_GET_SUBLIST_TOOLTIP = "Прави копију одређеног дела листе.";
+Blockly.Msg.LISTS_INDEX_FROM_END_TOOLTIP = "%1 је последња ставка.";
+Blockly.Msg.LISTS_INDEX_FROM_START_TOOLTIP = "%1 је прва ставка.";
+Blockly.Msg.LISTS_INDEX_OF_FIRST = "пронађи прво појављивање ставке";
+Blockly.Msg.LISTS_INDEX_OF_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-items-from-a-list"; // untranslated
+Blockly.Msg.LISTS_INDEX_OF_LAST = "пронађи последње појављивање ставке";
+Blockly.Msg.LISTS_INDEX_OF_TOOLTIP = "Враћа број првог и/последњег уласка елемента у листу. Враћа %1 Ако елемент није пронађен.";
+Blockly.Msg.LISTS_INLIST = "на списку";
+Blockly.Msg.LISTS_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#is-empty"; // untranslated
+Blockly.Msg.LISTS_ISEMPTY_TITLE = "%1 је празан";
+Blockly.Msg.LISTS_ISEMPTY_TOOLTIP = "Враћа вредност тачно ако је листа празна.";
+Blockly.Msg.LISTS_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Lists#length-of"; // untranslated
+Blockly.Msg.LISTS_LENGTH_TITLE = "дужина списка %1";
+Blockly.Msg.LISTS_LENGTH_TOOLTIP = "Враћа дужину списка.";
+Blockly.Msg.LISTS_REPEAT_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
+Blockly.Msg.LISTS_REPEAT_TITLE = "Направити листу са ставком %1 која се понавлја %2 пута";
+Blockly.Msg.LISTS_REPEAT_TOOLTIP = "Прави листу која се састоји од задане вредности коју понавлјамо одређени број шута.";
+Blockly.Msg.LISTS_SET_INDEX_HELPURL = "https://github.com/google/blockly/wiki/Lists#in-list--set"; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_INPUT_TO = "као";
+Blockly.Msg.LISTS_SET_INDEX_INSERT = "убаци на";
+Blockly.Msg.LISTS_SET_INDEX_SET = "постави";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST = "Убацује ставку на почетак списка.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FROM = "Убацује ставку на одређени положај на списку.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_LAST = "Додајте ставку на крај списка.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM = "Убацује ставку на случајно место на списку.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FIRST = "Поставља прву ставку на списку.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FROM = "Поставља ставку на одређени положај на списку.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_LAST = "Поставља последњу ставку на списку.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_RANDOM = "Поставља случајну ставку на списку.";
+Blockly.Msg.LISTS_SORT_HELPURL = "https://github.com/google/blockly/wiki/Lists#sorting-a-list";
+Blockly.Msg.LISTS_SORT_ORDER_ASCENDING = "ascending"; // untranslated
+Blockly.Msg.LISTS_SORT_ORDER_DESCENDING = "descending"; // untranslated
+Blockly.Msg.LISTS_SORT_TITLE = "сортирај %1 %2 %3";
+Blockly.Msg.LISTS_SORT_TOOLTIP = "Сортирајте копију списка.";
+Blockly.Msg.LISTS_SORT_TYPE_IGNORECASE = "alphabetic, ignore case"; // untranslated
+Blockly.Msg.LISTS_SORT_TYPE_NUMERIC = "numeric"; // untranslated
+Blockly.Msg.LISTS_SORT_TYPE_TEXT = "alphabetic"; // untranslated
+Blockly.Msg.LISTS_SPLIT_HELPURL = "https://github.com/google/blockly/wiki/Lists#splitting-strings-and-joining-lists"; // untranslated
+Blockly.Msg.LISTS_SPLIT_LIST_FROM_TEXT = "направите листу са текста";
+Blockly.Msg.LISTS_SPLIT_TEXT_FROM_LIST = "да текст из листе";
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_JOIN = "Да се придружи листу текстова у један текст, подељених за раздвајање.";
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_SPLIT = "Поделити текст у листу текстова, разбијање на сваком граничник.";
+Blockly.Msg.LISTS_SPLIT_WITH_DELIMITER = "са раздвајање";
+Blockly.Msg.LOGIC_BOOLEAN_FALSE = "нетачно";
+Blockly.Msg.LOGIC_BOOLEAN_HELPURL = "https://github.com/google/blockly/wiki/Logic#values"; // untranslated
+Blockly.Msg.LOGIC_BOOLEAN_TOOLTIP = "враћа вредност или тачно или нетачно.";
+Blockly.Msg.LOGIC_BOOLEAN_TRUE = "тачно";
+Blockly.Msg.LOGIC_COMPARE_HELPURL = "https://sr.wikipedia.org/wiki/Неједнакост";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_EQ = "Враћа вредност „тачно“ ако су оба улаза једнака.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GT = "Враћа вредност „тачно“ ако је први улаз већи од другог.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GTE = "Враћа вредност „тачно“ ако је први улаз већи или једнак другом.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LT = "Враћа вредност „тачно“ ако је први улаз мањи од другог.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LTE = "Враћа вредност „тачно“ ако је први улаз мањи или једнак другом.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_NEQ = "Враћа вредност „тачно“ ако су оба улаза неједнака.";
+Blockly.Msg.LOGIC_NEGATE_HELPURL = "https://github.com/google/blockly/wiki/Logic#not"; // untranslated
+Blockly.Msg.LOGIC_NEGATE_TITLE = "није %1";
+Blockly.Msg.LOGIC_NEGATE_TOOLTIP = "Враћа вредност „тачно“ ако је улаз нетачан. Враћа вредност „нетачно“ ако је улаз тачан.";
+Blockly.Msg.LOGIC_NULL = "без вредности";
+Blockly.Msg.LOGIC_NULL_HELPURL = "https://en.wikipedia.org/wiki/Nullable_type";
+Blockly.Msg.LOGIC_NULL_TOOLTIP = "Враћа „без вредности“.";
+Blockly.Msg.LOGIC_OPERATION_AND = "и";
+Blockly.Msg.LOGIC_OPERATION_HELPURL = "https://github.com/google/blockly/wiki/Logic#logical-operations"; // untranslated
+Blockly.Msg.LOGIC_OPERATION_OR = "или";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_AND = "Враћа вредност „тачно“ ако су оба улаза тачна.";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_OR = "Враћа вредност „тачно“ ако је бар један од улаза тачан.";
+Blockly.Msg.LOGIC_TERNARY_CONDITION = "тест";
+Blockly.Msg.LOGIC_TERNARY_HELPURL = "https://en.wikipedia.org/wiki/%3F:";
+Blockly.Msg.LOGIC_TERNARY_IF_FALSE = "ако је нетачно";
+Blockly.Msg.LOGIC_TERNARY_IF_TRUE = "ако је тачно";
+Blockly.Msg.LOGIC_TERNARY_TOOLTIP = "Провери услов у 'test'. Ако је услов тачан, тада враћа 'if true' вредност; у другом случају враћа 'if false' вредност.";
+Blockly.Msg.MATH_ADDITION_SYMBOL = "+";
+Blockly.Msg.MATH_ARITHMETIC_HELPURL = "https://en.wikipedia.org/wiki/Arithmetic";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_ADD = "Вратите збир два броја.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE = "Враћа количник два броја.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MINUS = "Враћа разлику два броја.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MULTIPLY = "Враћа производ два броја.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_POWER = "Враћа први број степенован другим.";
+Blockly.Msg.MATH_CHANGE_HELPURL = "https://en.wikipedia.org/wiki/Programming_idiom#Incrementing_a_counter";
+Blockly.Msg.MATH_CHANGE_TITLE = "промени %1 за %2";
+Blockly.Msg.MATH_CHANGE_TOOLTIP = "Додајте број променљивој „%1“.";
+Blockly.Msg.MATH_CONSTANT_HELPURL = "https://sr.wikipedia.org/wiki/Математичка_константа";
+Blockly.Msg.MATH_CONSTANT_TOOLTIP = "врати једну од заједничких константи: π (3.141…), e (2.718…), φ (1.618…), sqrt(2) (1.414…), sqrt(½) (0.707…), или ∞ (infinity).";
+Blockly.Msg.MATH_CONSTRAIN_HELPURL = "https://en.wikipedia.org/wiki/Clamping_%28graphics%29"; // untranslated
+Blockly.Msg.MATH_CONSTRAIN_TITLE = "ограничи %1 ниско %2 високо %3";
+Blockly.Msg.MATH_CONSTRAIN_TOOLTIP = "Ограничава број на доње и горње границе (укључиво).";
+Blockly.Msg.MATH_DIVISION_SYMBOL = "÷";
+Blockly.Msg.MATH_IS_DIVISIBLE_BY = "је дељив са";
+Blockly.Msg.MATH_IS_EVEN = "је паран";
+Blockly.Msg.MATH_IS_NEGATIVE = "је негативан";
+Blockly.Msg.MATH_IS_ODD = "је непаран";
+Blockly.Msg.MATH_IS_POSITIVE = "је позитиван";
+Blockly.Msg.MATH_IS_PRIME = "је прост";
+Blockly.Msg.MATH_IS_TOOLTIP = "Провјерава да ли је број паран, непаран, прост, цио, позитиван, негативан, или да ли је делјив са одређеним бројем. Враћа тачно или нетачно.";
+Blockly.Msg.MATH_IS_WHOLE = "је цео";
+Blockly.Msg.MATH_MODULO_HELPURL = "https://sr.wikipedia.org/wiki/Конгруенција";
+Blockly.Msg.MATH_MODULO_TITLE = "подсетник од %1 ÷ %2";
+Blockly.Msg.MATH_MODULO_TOOLTIP = "Враћа подсетник од дељења два броја.";
+Blockly.Msg.MATH_MULTIPLICATION_SYMBOL = "×";
+Blockly.Msg.MATH_NUMBER_HELPURL = "https://en.wikipedia.org/wiki/Number";
+Blockly.Msg.MATH_NUMBER_TOOLTIP = "Неки број.";
+Blockly.Msg.MATH_ONLIST_HELPURL = "";
+Blockly.Msg.MATH_ONLIST_OPERATOR_AVERAGE = "просек списка";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MAX = "макс. списка";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MEDIAN = "медијана списка";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MIN = "мин. списка";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MODE = "модус списка";
+Blockly.Msg.MATH_ONLIST_OPERATOR_RANDOM = "случајна ставка списка";
+Blockly.Msg.MATH_ONLIST_OPERATOR_STD_DEV = "стандардна девијација списка";
+Blockly.Msg.MATH_ONLIST_OPERATOR_SUM = "збир списка";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_AVERAGE = "Враћа просек нумеричких вредности са списка.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MAX = "Враћа највећи број са списка.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MEDIAN = "Враћа медијану са списка.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MIN = "Враћа најмањи број са списка.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MODE = "Враћа најчешће ставке са списка.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_RANDOM = "Враћа случајни елемент са списка.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_STD_DEV = "Враћа стандардну девијацију списка.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_SUM = "Враћа збир свих бројева са списка.";
+Blockly.Msg.MATH_POWER_SYMBOL = "^";
+Blockly.Msg.MATH_RANDOM_FLOAT_HELPURL = "https://sr.wikipedia.org/wiki/Генератор_случајних_бројева";
+Blockly.Msg.MATH_RANDOM_FLOAT_TITLE_RANDOM = "случајни разломак";
+Blockly.Msg.MATH_RANDOM_FLOAT_TOOLTIP = "Враћа случајни разломак између 0.0 (укључиво) и 1.0 (искључиво).";
+Blockly.Msg.MATH_RANDOM_INT_HELPURL = "https://sr.wikipedia.org/wiki/Генератор_случајних_бројева";
+Blockly.Msg.MATH_RANDOM_INT_TITLE = "сличајно одабрани цијели број од %1 до %2";
+Blockly.Msg.MATH_RANDOM_INT_TOOLTIP = "Враћа случајно одабрани цели број између две одређене границе, уклјучиво.";
+Blockly.Msg.MATH_ROUND_HELPURL = "https://sr.wikipedia.org/wiki/Заокруживање";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUND = "заокружи";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDDOWN = "заокружи наниже";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDUP = "заокружи навише";
+Blockly.Msg.MATH_ROUND_TOOLTIP = "Заокружите број на већу или мању вредност.";
+Blockly.Msg.MATH_SINGLE_HELPURL = "https://sr.wikipedia.org/wiki/Квадратни_корен";
+Blockly.Msg.MATH_SINGLE_OP_ABSOLUTE = "апсолутан";
+Blockly.Msg.MATH_SINGLE_OP_ROOT = "квадратни корен";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ABS = "Враћа апсолутну вредност броја.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_EXP = "вратити е на власти броја.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LN = "Враћа природни логаритам броја.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LOG10 = "Враћа логаритам броја са основом 10.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_NEG = "Враћа негацију броја.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_POW10 = "Враћа 10-ти степен броја.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ROOT = "Враћа квадратни корен броја.";
+Blockly.Msg.MATH_SUBTRACTION_SYMBOL = "-";
+Blockly.Msg.MATH_TRIG_ACOS = "арц цос";
+Blockly.Msg.MATH_TRIG_ASIN = "арц син";
+Blockly.Msg.MATH_TRIG_ATAN = "арц тан";
+Blockly.Msg.MATH_TRIG_COS = "цос";
+Blockly.Msg.MATH_TRIG_HELPURL = "https://sr.wikipedia.org/wiki/Тригонометријске_функције";
+Blockly.Msg.MATH_TRIG_SIN = "син";
+Blockly.Msg.MATH_TRIG_TAN = "тан";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ACOS = "Враћа аркус косинус броја.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ASIN = "Враћа аркус броја.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ATAN = "Враћа аркус тангенс броја.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_COS = "Враћа косинус степена (не радијан).";
+Blockly.Msg.MATH_TRIG_TOOLTIP_SIN = "Враћа синус степена (не радијан).";
+Blockly.Msg.MATH_TRIG_TOOLTIP_TAN = "Враћа тангенс степена (не радијан).";
+Blockly.Msg.NEW_VARIABLE = "Нова променљива…";
+Blockly.Msg.NEW_VARIABLE_TITLE = "Име нове променљиве:";
+Blockly.Msg.ORDINAL_NUMBER_SUFFIX = "";
+Blockly.Msg.PROCEDURES_ALLOW_STATEMENTS = "дозволити изреке";
+Blockly.Msg.PROCEDURES_BEFORE_PARAMS = "са:";
+Blockly.Msg.PROCEDURES_CALLNORETURN_HELPURL = "https://sr.wikipedia.org/wiki/Функција_(програмирање)";
+Blockly.Msg.PROCEDURES_CALLNORETURN_TOOLTIP = "Покрените прилагођену функцију „%1“.";
+Blockly.Msg.PROCEDURES_CALLRETURN_HELPURL = "https://sr.wikipedia.org/wiki/Функција_(програмирање)";
+Blockly.Msg.PROCEDURES_CALLRETURN_TOOLTIP = "Покрените прилагођену функцију „%1“ и користи њен излаз.";
+Blockly.Msg.PROCEDURES_CALL_BEFORE_PARAMS = "са:";
+Blockly.Msg.PROCEDURES_CREATE_DO = "Направи „%1“";
+Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT = "Описати ову функцију...";
+Blockly.Msg.PROCEDURES_DEFNORETURN_DO = "";
+Blockly.Msg.PROCEDURES_DEFNORETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29";
+Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE = "урадите нешто";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE = "да";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TOOLTIP = "Прави функцију без излаза.";
+Blockly.Msg.PROCEDURES_DEFRETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29";
+Blockly.Msg.PROCEDURES_DEFRETURN_RETURN = "врати";
+Blockly.Msg.PROCEDURES_DEFRETURN_TOOLTIP = "Прави функцију са излазом.";
+Blockly.Msg.PROCEDURES_DEF_DUPLICATE_WARNING = "Упозорење: Ова функција има дупликате параметара.";
+Blockly.Msg.PROCEDURES_HIGHLIGHT_DEF = "Истакни дефиницију функције";
+Blockly.Msg.PROCEDURES_IFRETURN_HELPURL = "http://c2.com/cgi/wiki?GuardClause"; // untranslated
+Blockly.Msg.PROCEDURES_IFRETURN_TOOLTIP = "Уколико је вредност тачна, врати другу вредност.";
+Blockly.Msg.PROCEDURES_IFRETURN_WARNING = "Упозорење: Овај блок се може користити једино у дефиницији функције.";
+Blockly.Msg.PROCEDURES_MUTATORARG_TITLE = "назив улаза:";
+Blockly.Msg.PROCEDURES_MUTATORARG_TOOLTIP = "Додајте улазна функција.";
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TITLE = "улази";
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TOOLTIP = "Да додате, уклоните или переупорядочить улаза за ову функцију.";
+Blockly.Msg.REDO = "Понови";
+Blockly.Msg.REMOVE_COMMENT = "Уклони коментар";
+Blockly.Msg.RENAME_VARIABLE = "Преименуј променљиву…";
+Blockly.Msg.RENAME_VARIABLE_TITLE = "Преименујте све „%1“ променљиве у:";
+Blockly.Msg.TEXT_APPEND_APPENDTEXT = "додај текст";
+Blockly.Msg.TEXT_APPEND_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_APPEND_TO = "на";
+Blockly.Msg.TEXT_APPEND_TOOLTIP = "Додајте текст на променљиву „%1“.";
+Blockly.Msg.TEXT_CHANGECASE_HELPURL = "https://github.com/google/blockly/wiki/Text#adjusting-text-case"; // untranslated
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_LOWERCASE = "малим словима";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_TITLECASE = "свака реч великим словом";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_UPPERCASE = "великим словима";
+Blockly.Msg.TEXT_CHANGECASE_TOOLTIP = "Враћа примерак текста са другачијом величином слова.";
+Blockly.Msg.TEXT_CHARAT_FIRST = "преузми прво слово";
+Blockly.Msg.TEXT_CHARAT_FROM_END = "преузми слово # са краја";
+Blockly.Msg.TEXT_CHARAT_FROM_START = "преузми слово #";
+Blockly.Msg.TEXT_CHARAT_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-text"; // untranslated
+Blockly.Msg.TEXT_CHARAT_INPUT_INTEXT = "у тексту";
+Blockly.Msg.TEXT_CHARAT_LAST = "преузми последње слово";
+Blockly.Msg.TEXT_CHARAT_RANDOM = "преузми случајно слово";
+Blockly.Msg.TEXT_CHARAT_TAIL = "";
+Blockly.Msg.TEXT_CHARAT_TOOLTIP = "Враћа слово на одређени положај.";
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TOOLTIP = "Додајте ставку у текст.";
+Blockly.Msg.TEXT_CREATE_JOIN_TITLE_JOIN = "спајањем";
+Blockly.Msg.TEXT_CREATE_JOIN_TOOLTIP = "Додај, уклони, или другачије поредај одјелке како би изнова поставили овај текст блок.";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_END = "слову # са краја";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_START = "слову #";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_LAST = "последњем слову";
+Blockly.Msg.TEXT_GET_SUBSTRING_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_INPUT_IN_TEXT = "у тексту";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FIRST = "преузми подниску из првог слова";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_END = "преузми подниску из слова # са краја";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_START = "преузми подниску из слова #";
+Blockly.Msg.TEXT_GET_SUBSTRING_TAIL = "";
+Blockly.Msg.TEXT_GET_SUBSTRING_TOOLTIP = "Враћа одређени део текста.";
+Blockly.Msg.TEXT_INDEXOF_HELPURL = "https://github.com/google/blockly/wiki/Text#finding-text"; // untranslated
+Blockly.Msg.TEXT_INDEXOF_INPUT_INTEXT = "у тексту";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_FIRST = "пронађи прво појављивање текста";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_LAST = "пронађи последње појављивање текста";
+Blockly.Msg.TEXT_INDEXOF_TAIL = "";
+Blockly.Msg.TEXT_INDEXOF_TOOLTIP = "Враћа однос првог/заднјег појавлјиванја текста у другом тексту. Врађа %1 ако текст није пронађен.";
+Blockly.Msg.TEXT_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Text#checking-for-empty-text"; // untranslated
+Blockly.Msg.TEXT_ISEMPTY_TITLE = "%1 је празан";
+Blockly.Msg.TEXT_ISEMPTY_TOOLTIP = "Враћа тачно ако је доставлјени текст празан.";
+Blockly.Msg.TEXT_JOIN_HELPURL = "https://github.com/google/blockly/wiki/Text#text-creation"; // untranslated
+Blockly.Msg.TEXT_JOIN_TITLE_CREATEWITH = "напиши текст са";
+Blockly.Msg.TEXT_JOIN_TOOLTIP = "Направити дио текста спајајући различите ставке.";
+Blockly.Msg.TEXT_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_LENGTH_TITLE = "дужина текста %1";
+Blockly.Msg.TEXT_LENGTH_TOOLTIP = "Враћа број слова (уклјучујући размаке) у датом тексту.";
+Blockly.Msg.TEXT_PRINT_HELPURL = "https://github.com/google/blockly/wiki/Text#printing-text"; // untranslated
+Blockly.Msg.TEXT_PRINT_TITLE = "прикажи %1";
+Blockly.Msg.TEXT_PRINT_TOOLTIP = "Прикажите одређени текст, број или другу вредност на екрану.";
+Blockly.Msg.TEXT_PROMPT_HELPURL = "https://github.com/google/blockly/wiki/Text#getting-input-from-the-user"; // untranslated
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_NUMBER = "Питајте корисника за број.";
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_TEXT = "Питајте корисника за унос текста.";
+Blockly.Msg.TEXT_PROMPT_TYPE_NUMBER = "питај за број са поруком";
+Blockly.Msg.TEXT_PROMPT_TYPE_TEXT = "питај за текст са поруком";
+Blockly.Msg.TEXT_TEXT_HELPURL = "https://sr.wikipedia.org/wiki/Ниска";
+Blockly.Msg.TEXT_TEXT_TOOLTIP = "Слово, реч или ред текста.";
+Blockly.Msg.TEXT_TRIM_HELPURL = "https://github.com/google/blockly/wiki/Text#trimming-removing-spaces"; // untranslated
+Blockly.Msg.TEXT_TRIM_OPERATOR_BOTH = "трим празнине са обе стране";
+Blockly.Msg.TEXT_TRIM_OPERATOR_LEFT = "скратити простор са леве стране";
+Blockly.Msg.TEXT_TRIM_OPERATOR_RIGHT = "скратити простор са десне стране";
+Blockly.Msg.TEXT_TRIM_TOOLTIP = "Враћа копију текста са уклонјеним простором са једног од два краја.";
+Blockly.Msg.TODAY = "Данас";
+Blockly.Msg.UNDO = "Опозови";
+Blockly.Msg.VARIABLES_DEFAULT_NAME = "ставка";
+Blockly.Msg.VARIABLES_GET_CREATE_SET = "Направи „постави %1“";
+Blockly.Msg.VARIABLES_GET_HELPURL = "https://github.com/google/blockly/wiki/Variables#get"; // untranslated
+Blockly.Msg.VARIABLES_GET_TOOLTIP = "Враћа вредност ове променљиве.";
+Blockly.Msg.VARIABLES_SET = "постави %1 у %2";
+Blockly.Msg.VARIABLES_SET_CREATE_GET = "Направи „преузми %1“";
+Blockly.Msg.VARIABLES_SET_HELPURL = "https://github.com/google/blockly/wiki/Variables#set"; // untranslated
+Blockly.Msg.VARIABLES_SET_TOOLTIP = "Поставља променљиву тако да буде једнака улазу.";
+Blockly.Msg.VARIABLE_ALREADY_EXISTS = "A variable named '%1' already exists."; // untranslated
+Blockly.Msg.PROCEDURES_DEFRETURN_TITLE = Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE;
+Blockly.Msg.CONTROLS_IF_IF_TITLE_IF = Blockly.Msg.CONTROLS_IF_MSG_IF;
+Blockly.Msg.CONTROLS_WHILEUNTIL_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_MSG_THEN = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_ELSE_TITLE_ELSE = Blockly.Msg.CONTROLS_IF_MSG_ELSE;
+Blockly.Msg.PROCEDURES_DEFRETURN_PROCEDURE = Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE;
+Blockly.Msg.LISTS_GET_SUBLIST_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.LISTS_GET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.PROCEDURES_DEFRETURN_DO = Blockly.Msg.PROCEDURES_DEFNORETURN_DO;
+Blockly.Msg.CONTROLS_IF_ELSEIF_TITLE_ELSEIF = Blockly.Msg.CONTROLS_IF_MSG_ELSEIF;
+Blockly.Msg.LISTS_GET_INDEX_HELPURL = Blockly.Msg.LISTS_INDEX_OF_HELPURL;
+Blockly.Msg.CONTROLS_FOREACH_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_SET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TITLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_APPEND_VARIABLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.LISTS_INDEX_OF_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.PROCEDURES_DEFRETURN_COMMENT = Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT; \ No newline at end of file
diff --git a/blockly/msg/js/sv.js b/blockly/msg/js/sv.js
new file mode 100644
index 0000000..1cb95f9
--- /dev/null
+++ b/blockly/msg/js/sv.js
@@ -0,0 +1,391 @@
+// This file was automatically generated. Do not modify.
+
+'use strict';
+
+goog.provide('Blockly.Msg.sv');
+
+goog.require('Blockly.Msg');
+
+Blockly.Msg.ADD_COMMENT = "Lägg till kommentar";
+Blockly.Msg.CHANGE_VALUE_TITLE = "Ändra värde:";
+Blockly.Msg.CLEAN_UP = "Rada upp block";
+Blockly.Msg.COLLAPSE_ALL = "Fäll ihop block";
+Blockly.Msg.COLLAPSE_BLOCK = "Fäll ihop block";
+Blockly.Msg.COLOUR_BLEND_COLOUR1 = "färg 1";
+Blockly.Msg.COLOUR_BLEND_COLOUR2 = "färg 2";
+Blockly.Msg.COLOUR_BLEND_HELPURL = "http://meyerweb.com/eric/tools/color-blend/";
+Blockly.Msg.COLOUR_BLEND_RATIO = "förhållande";
+Blockly.Msg.COLOUR_BLEND_TITLE = "blanda";
+Blockly.Msg.COLOUR_BLEND_TOOLTIP = "Blandar ihop två färger med ett bestämt förhållande (0.0 - 1.0).";
+Blockly.Msg.COLOUR_PICKER_HELPURL = "https://sv.wikipedia.org/wiki/Färg";
+Blockly.Msg.COLOUR_PICKER_TOOLTIP = "Välj en färg från paletten.";
+Blockly.Msg.COLOUR_RANDOM_HELPURL = "http://randomcolour.com"; // untranslated
+Blockly.Msg.COLOUR_RANDOM_TITLE = "slumpfärg";
+Blockly.Msg.COLOUR_RANDOM_TOOLTIP = "Slumpa fram en färg.";
+Blockly.Msg.COLOUR_RGB_BLUE = "blå";
+Blockly.Msg.COLOUR_RGB_GREEN = "grön";
+Blockly.Msg.COLOUR_RGB_HELPURL = "http://www.december.com/html/spec/colorper.html";
+Blockly.Msg.COLOUR_RGB_RED = "röd";
+Blockly.Msg.COLOUR_RGB_TITLE = "färg med";
+Blockly.Msg.COLOUR_RGB_TOOLTIP = "Skapa en färg med det angivna mängden röd, grön och blå. Alla värden måste vara mellan 0 och 100.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_HELPURL = "https://github.com/google/blockly/wiki/Loops#loop-termination-blocks"; // untranslated
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK = "bryt ut ur loop";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE = "fortsätta med nästa upprepning av loop";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK = "Bryt ut ur den innehållande upprepningen.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE = "Hoppa över resten av denna loop och fortsätt med nästa loop.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_WARNING = "Varning: Detta block kan endast användas i en loop.";
+Blockly.Msg.CONTROLS_FOREACH_HELPURL = "https://github.com/google/blockly/wiki/Loops#for-each"; // untranslated
+Blockly.Msg.CONTROLS_FOREACH_TITLE = "för varje föremål %1 i listan %2";
+Blockly.Msg.CONTROLS_FOREACH_TOOLTIP = "För varje objekt i en lista, ange variabeln '%1' till objektet, och utför sedan några kommandon.";
+Blockly.Msg.CONTROLS_FOR_HELPURL = "https://github.com/google/blockly/wiki/Loops#count-with"; // untranslated
+Blockly.Msg.CONTROLS_FOR_TITLE = "räkna med %1 från %2 till %3 med %4";
+Blockly.Msg.CONTROLS_FOR_TOOLTIP = "Låt variabeln \"%1\" ta värden från starttalet till sluttalet, beräknat med det angivna intervallet, och utför de angivna blocken.";
+Blockly.Msg.CONTROLS_IF_ELSEIF_TOOLTIP = "Lägg till ett villkor blocket \"om\".";
+Blockly.Msg.CONTROLS_IF_ELSE_TOOLTIP = "Lägg till ett sista villkor som täcker alla alternativ som är kvar för \"if\"-blocket.";
+Blockly.Msg.CONTROLS_IF_HELPURL = "https://github.com/google/blockly/wiki/IfElse"; // untranslated
+Blockly.Msg.CONTROLS_IF_IF_TOOLTIP = "Lägg till, ta bort eller ändra ordningen för sektioner för att omkonfigurera blocket \"om\".";
+Blockly.Msg.CONTROLS_IF_MSG_ELSE = "annars";
+Blockly.Msg.CONTROLS_IF_MSG_ELSEIF = "annars om";
+Blockly.Msg.CONTROLS_IF_MSG_IF = "om";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_1 = "Om ett värde är sant, utför några kommandon.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_2 = "Om värdet är sant, utför det första kommandoblocket. Annars utför det andra kommandoblocket.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_3 = "Om det första värdet är sant, utför det första kommandoblocket. Annars, om det andra värdet är sant, utför det andra kommandoblocket.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_4 = "Om det första värdet är sant, utför det första kommandoblocket. Annars, om det andra värdet är sant, utför det andra kommandoblocket. Om ingen av värdena är sanna, utför det sista kommandoblocket.";
+Blockly.Msg.CONTROLS_REPEAT_HELPURL = "https://en.wikipedia.org/wiki/For_loop";
+Blockly.Msg.CONTROLS_REPEAT_INPUT_DO = "utför";
+Blockly.Msg.CONTROLS_REPEAT_TITLE = "upprepa %1 gånger";
+Blockly.Msg.CONTROLS_REPEAT_TOOLTIP = "Utför några kommandon flera gånger.";
+Blockly.Msg.CONTROLS_WHILEUNTIL_HELPURL = "https://github.com/google/blockly/wiki/Loops#repeat"; // untranslated
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "upprepa tills";
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "upprepa medan";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "Medan ett värde är falskt, utför några kommandon.";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "Medan ett värde är sant, utför några kommandon.";
+Blockly.Msg.DELETE_ALL_BLOCKS = "Radera alla %1 block?";
+Blockly.Msg.DELETE_BLOCK = "Radera block";
+Blockly.Msg.DELETE_VARIABLE = "Radera variabeln \"%1\"";
+Blockly.Msg.DELETE_VARIABLE_CONFIRMATION = "Radera %1 användningar av variabeln \"%2\"?";
+Blockly.Msg.DELETE_X_BLOCKS = "Radera %1 block";
+Blockly.Msg.DISABLE_BLOCK = "Inaktivera block";
+Blockly.Msg.DUPLICATE_BLOCK = "Duplicera";
+Blockly.Msg.ENABLE_BLOCK = "Aktivera block";
+Blockly.Msg.EXPAND_ALL = "Fäll ut block";
+Blockly.Msg.EXPAND_BLOCK = "Fäll ut block";
+Blockly.Msg.EXTERNAL_INPUTS = "Externa inmatningar";
+Blockly.Msg.HELP = "Hjälp";
+Blockly.Msg.INLINE_INPUTS = "Radinmatning";
+Blockly.Msg.LISTS_CREATE_EMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-empty-list";
+Blockly.Msg.LISTS_CREATE_EMPTY_TITLE = "skapa tom lista";
+Blockly.Msg.LISTS_CREATE_EMPTY_TOOLTIP = "Ger tillbaka en lista utan någon data, alltså med längden 0";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TITLE_ADD = "lista";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TOOLTIP = "Lägg till, ta bort eller ändra ordningen på objekten för att göra om det här \"list\"-blocket.";
+Blockly.Msg.LISTS_CREATE_WITH_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with";
+Blockly.Msg.LISTS_CREATE_WITH_INPUT_WITH = "skapa lista med";
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TOOLTIP = "Lägg till ett föremål till listan.";
+Blockly.Msg.LISTS_CREATE_WITH_TOOLTIP = "Skapa en lista med valfritt antal föremål.";
+Blockly.Msg.LISTS_GET_INDEX_FIRST = "första";
+Blockly.Msg.LISTS_GET_INDEX_FROM_END = "# från slutet";
+Blockly.Msg.LISTS_GET_INDEX_FROM_START = "#";
+Blockly.Msg.LISTS_GET_INDEX_GET = "hämta";
+Blockly.Msg.LISTS_GET_INDEX_GET_REMOVE = "hämta och ta bort";
+Blockly.Msg.LISTS_GET_INDEX_LAST = "sista";
+Blockly.Msg.LISTS_GET_INDEX_RANDOM = "slumpad";
+Blockly.Msg.LISTS_GET_INDEX_REMOVE = "ta bort";
+Blockly.Msg.LISTS_GET_INDEX_TAIL = ""; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FIRST = "Returnerar det första objektet i en lista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FROM = "Ger tillbaka objektet på den efterfrågade positionen i en lista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_LAST = "Returnerar det sista objektet i en lista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_RANDOM = "Returnerar ett slumpmässigt objekt i en lista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST = "Tar bort och återställer det första objektet i en lista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM = "Tar bort och återställer objektet på den specificerade positionen i en lista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST = "Tar bort och återställer det sista objektet i en lista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM = "Tar bort och återställer ett slumpmässigt objekt i en lista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST = "Tar bort det första objektet i en lista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM = "Tar bort objektet på den specificerade positionen i en lista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST = "Tar bort det sista objektet i en lista.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM = "Tar bort en slumpmässig post i en lista.";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_END = "till # från slutet";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_START = "till #";
+Blockly.Msg.LISTS_GET_SUBLIST_END_LAST = "till sista";
+Blockly.Msg.LISTS_GET_SUBLIST_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-a-sublist"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_START_FIRST = "få underlista från första";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_END = "få underlista från # från slutet";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_START = "få underlista från #";
+Blockly.Msg.LISTS_GET_SUBLIST_TAIL = ""; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_TOOLTIP = "Skapar en kopia av den specificerade delen av en lista.";
+Blockly.Msg.LISTS_INDEX_FROM_END_TOOLTIP = "%1 är det sista objektet.";
+Blockly.Msg.LISTS_INDEX_FROM_START_TOOLTIP = "%1 är det första objektet.";
+Blockly.Msg.LISTS_INDEX_OF_FIRST = "hitta första förekomsten av objektet";
+Blockly.Msg.LISTS_INDEX_OF_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-items-from-a-list"; // untranslated
+Blockly.Msg.LISTS_INDEX_OF_LAST = "hitta sista förekomsten av objektet";
+Blockly.Msg.LISTS_INDEX_OF_TOOLTIP = "Ger tillbaka den första/sista förekomsten av objektet i listan. Returnerar %1 om objektet inte hittas.";
+Blockly.Msg.LISTS_INLIST = "i listan";
+Blockly.Msg.LISTS_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#is-empty"; // untranslated
+Blockly.Msg.LISTS_ISEMPTY_TITLE = "%1 är tom";
+Blockly.Msg.LISTS_ISEMPTY_TOOLTIP = "Returnerar sant om listan är tom.";
+Blockly.Msg.LISTS_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Lists#length-of"; // untranslated
+Blockly.Msg.LISTS_LENGTH_TITLE = "längden på %1";
+Blockly.Msg.LISTS_LENGTH_TOOLTIP = "Returnerar längden på en lista.";
+Blockly.Msg.LISTS_REPEAT_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
+Blockly.Msg.LISTS_REPEAT_TITLE = "skapa lista med föremålet %1 upprepat %2 gånger";
+Blockly.Msg.LISTS_REPEAT_TOOLTIP = "Skapar en lista som innehåller ett valt värde upprepat ett bestämt antalet gånger.";
+Blockly.Msg.LISTS_SET_INDEX_HELPURL = "https://github.com/google/blockly/wiki/Lists#in-list--set"; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_INPUT_TO = "som";
+Blockly.Msg.LISTS_SET_INDEX_INSERT = "Sätt in vid";
+Blockly.Msg.LISTS_SET_INDEX_SET = "ange";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST = "sätter in objektet i början av en lista.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FROM = "Sätter in objektet vid en specificerad position i en lista.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_LAST = "Lägg till objektet i slutet av en lista.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM = "sätter in objektet på en slumpad position i en lista.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FIRST = "Anger det första objektet i en lista.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FROM = "Sätter in objektet vid en specificerad position i en lista.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_LAST = "Anger det sista elementet i en lista.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_RANDOM = "Sätter in ett slumpat objekt i en lista.";
+Blockly.Msg.LISTS_SORT_HELPURL = "https://github.com/google/blockly/wiki/Lists#sorting-a-list";
+Blockly.Msg.LISTS_SORT_ORDER_ASCENDING = "stigande";
+Blockly.Msg.LISTS_SORT_ORDER_DESCENDING = "fallande";
+Blockly.Msg.LISTS_SORT_TITLE = "sortera %1 %2 %3";
+Blockly.Msg.LISTS_SORT_TOOLTIP = "Sortera en kopia av en lista.";
+Blockly.Msg.LISTS_SORT_TYPE_IGNORECASE = "alfabetiskt, ignorera skiftläge";
+Blockly.Msg.LISTS_SORT_TYPE_NUMERIC = "numeriskt";
+Blockly.Msg.LISTS_SORT_TYPE_TEXT = "alfabetiskt";
+Blockly.Msg.LISTS_SPLIT_HELPURL = "https://github.com/google/blockly/wiki/Lists#splitting-strings-and-joining-lists";
+Blockly.Msg.LISTS_SPLIT_LIST_FROM_TEXT = "skapa lista från text";
+Blockly.Msg.LISTS_SPLIT_TEXT_FROM_LIST = "skapa text från lista";
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_JOIN = "Sammanfoga en textlista till en text, som separeras av en avgränsare.";
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_SPLIT = "Dela upp text till en textlista och bryt vid varje avgränsare.";
+Blockly.Msg.LISTS_SPLIT_WITH_DELIMITER = "med avgränsare";
+Blockly.Msg.LOGIC_BOOLEAN_FALSE = "falskt";
+Blockly.Msg.LOGIC_BOOLEAN_HELPURL = "https://github.com/google/blockly/wiki/Logic#values"; // untranslated
+Blockly.Msg.LOGIC_BOOLEAN_TOOLTIP = "Returnerar antingen sant eller falskt.";
+Blockly.Msg.LOGIC_BOOLEAN_TRUE = "sant";
+Blockly.Msg.LOGIC_COMPARE_HELPURL = "https://sv.wikipedia.org/wiki/Olikhet";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_EQ = "Ger tillbaka sant om båda värdena är lika med varandra.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GT = "Ger tillbaka sant om det första värdet är större än det andra.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GTE = "Ger tillbaka sant om det första värdet är större än eller lika med det andra.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LT = "Ger tillbaka sant om det första värdet är mindre än det andra.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LTE = "Ger tillbaka sant om det första värdet är mindre än eller lika med det andra.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_NEQ = "Ger tillbaka sant om båda värdena inte är lika med varandra.";
+Blockly.Msg.LOGIC_NEGATE_HELPURL = "https://github.com/google/blockly/wiki/Logic#not"; // untranslated
+Blockly.Msg.LOGIC_NEGATE_TITLE = "inte %1";
+Blockly.Msg.LOGIC_NEGATE_TOOLTIP = "Ger tillbaka sant om inmatningen är falsk. Ger tillbaka falskt och inmatningen är sann.";
+Blockly.Msg.LOGIC_NULL = "null";
+Blockly.Msg.LOGIC_NULL_HELPURL = "https://sv.wikipedia.org/wiki/Null";
+Blockly.Msg.LOGIC_NULL_TOOLTIP = "Returnerar null.";
+Blockly.Msg.LOGIC_OPERATION_AND = "och";
+Blockly.Msg.LOGIC_OPERATION_HELPURL = "https://github.com/google/blockly/wiki/Logic#logical-operations"; // untranslated
+Blockly.Msg.LOGIC_OPERATION_OR = "eller";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_AND = "Ger tillbaka sant om båda värdena är sanna.";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_OR = "Ger tillbaka sant om minst ett av värdena är sant.";
+Blockly.Msg.LOGIC_TERNARY_CONDITION = "test";
+Blockly.Msg.LOGIC_TERNARY_HELPURL = "https://en.wikipedia.org/wiki/%3F:";
+Blockly.Msg.LOGIC_TERNARY_IF_FALSE = "om falskt";
+Blockly.Msg.LOGIC_TERNARY_IF_TRUE = "om sant";
+Blockly.Msg.LOGIC_TERNARY_TOOLTIP = "Kontrollera villkoret i \"test\". Om villkoret är sant, ge tillbaka \"om sant\"-värdet; annars ge tillbaka \"om falskt\"-värdet.";
+Blockly.Msg.MATH_ADDITION_SYMBOL = "+";
+Blockly.Msg.MATH_ARITHMETIC_HELPURL = "https://sv.wikipedia.org/wiki/Aritmetik";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_ADD = "Returnerar summan av de två talen.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE = "Returnerar kvoten av de två talen.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MINUS = "Returnerar differensen mellan de två talen.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MULTIPLY = "Returnerar produkten av de två talen.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_POWER = "Ger tillbaka det första talet upphöjt till det andra talet.";
+Blockly.Msg.MATH_CHANGE_HELPURL = "https://en.wikipedia.org/wiki/Programming_idiom#Incrementing_a_counter";
+Blockly.Msg.MATH_CHANGE_TITLE = "ändra %1 med %2";
+Blockly.Msg.MATH_CHANGE_TOOLTIP = "Lägg till ett tal till variabeln '%1'.";
+Blockly.Msg.MATH_CONSTANT_HELPURL = "https://sv.wikipedia.org/wiki/Matematisk_konstant";
+Blockly.Msg.MATH_CONSTANT_TOOLTIP = "Returnerar en av de vanliga konstanterna: π (3.141…), e (2.718…), φ (1.618…), sqrt(2) (1.414…), sqrt(½) (0.707…) eller ∞ (oändligt).";
+Blockly.Msg.MATH_CONSTRAIN_HELPURL = "https://en.wikipedia.org/wiki/Clamping_%28graphics%29"; // untranslated
+Blockly.Msg.MATH_CONSTRAIN_TITLE = "begränsa %1 till mellan %2 och %3";
+Blockly.Msg.MATH_CONSTRAIN_TOOLTIP = "Begränsa ett tal till att mellan de angivna gränsvärden (inkluderande).";
+Blockly.Msg.MATH_DIVISION_SYMBOL = "÷";
+Blockly.Msg.MATH_IS_DIVISIBLE_BY = "är delbart med";
+Blockly.Msg.MATH_IS_EVEN = "är jämnt";
+Blockly.Msg.MATH_IS_NEGATIVE = "är negativt";
+Blockly.Msg.MATH_IS_ODD = "är ojämnt";
+Blockly.Msg.MATH_IS_POSITIVE = "är positivt";
+Blockly.Msg.MATH_IS_PRIME = "är ett primtal";
+Blockly.Msg.MATH_IS_TOOLTIP = "Kontrollera om ett tal är jämnt, ojämnt, helt, positivt, negativt eller det är delbart med ett bestämt tal. Returnerar med sant eller falskt.";
+Blockly.Msg.MATH_IS_WHOLE = "är helt";
+Blockly.Msg.MATH_MODULO_HELPURL = "https://en.wikipedia.org/wiki/Modulo_operation";
+Blockly.Msg.MATH_MODULO_TITLE = "resten av %1 ÷ %2";
+Blockly.Msg.MATH_MODULO_TOOLTIP = "Returnerar kvoten från divisionen av de två talen.";
+Blockly.Msg.MATH_MULTIPLICATION_SYMBOL = "×";
+Blockly.Msg.MATH_NUMBER_HELPURL = "https://sv.wikipedia.org/wiki/Tal";
+Blockly.Msg.MATH_NUMBER_TOOLTIP = "Ett tal.";
+Blockly.Msg.MATH_ONLIST_HELPURL = ""; // untranslated
+Blockly.Msg.MATH_ONLIST_OPERATOR_AVERAGE = "medelvärdet av listan";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MAX = "högsta talet i listan";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MEDIAN = "medianen av listan";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MIN = "minsta talet i listan";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MODE = "typvärdet i listan";
+Blockly.Msg.MATH_ONLIST_OPERATOR_RANDOM = "slumpmässigt objekt i listan";
+Blockly.Msg.MATH_ONLIST_OPERATOR_STD_DEV = "standardavvikelsen i listan";
+Blockly.Msg.MATH_ONLIST_OPERATOR_SUM = "summan av listan";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_AVERAGE = "Ger tillbaka medelvärdet (aritmetiskt) av de numeriska värdena i listan.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MAX = "Ger tillbaka det största talet i listan.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MEDIAN = "Returnerar medianen av talen i listan.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MIN = "Ger tillbaka det minsta talet i listan.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MODE = "Ger tillbaka en lista med de(t) vanligaste objekte(t/n) i listan.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_RANDOM = "Returnerar ett slumpmässigt element från listan.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_STD_DEV = "Ger tillbaka standardavvikelsen i listan.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_SUM = "Ger tillbaka summan av alla talen i listan.";
+Blockly.Msg.MATH_POWER_SYMBOL = "^";
+Blockly.Msg.MATH_RANDOM_FLOAT_HELPURL = "https://sv.wikipedia.org/wiki/Slumptalsgenerator";
+Blockly.Msg.MATH_RANDOM_FLOAT_TITLE_RANDOM = "slumpat decimaltal";
+Blockly.Msg.MATH_RANDOM_FLOAT_TOOLTIP = "Ger tillbaka ett slumpat decimaltal mellan 0.0 (inkluderat) och 1.0 (exkluderat).";
+Blockly.Msg.MATH_RANDOM_INT_HELPURL = "https://sv.wikipedia.org/wiki/Slumptalsgenerator";
+Blockly.Msg.MATH_RANDOM_INT_TITLE = "slumpartat heltal från %1 till %2";
+Blockly.Msg.MATH_RANDOM_INT_TOOLTIP = "Ger tillbaka ett slumpat heltal mellan två värden, inkluderande.";
+Blockly.Msg.MATH_ROUND_HELPURL = "https://sv.wikipedia.org/wiki/Avrundning";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUND = "avrunda";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDDOWN = "avrunda nedåt";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDUP = "avrunda uppåt";
+Blockly.Msg.MATH_ROUND_TOOLTIP = "Avrunda ett tal uppåt eller nedåt.";
+Blockly.Msg.MATH_SINGLE_HELPURL = "https://sv.wikipedia.org/wiki/Kvadratrot";
+Blockly.Msg.MATH_SINGLE_OP_ABSOLUTE = "absolut";
+Blockly.Msg.MATH_SINGLE_OP_ROOT = "kvadratrot";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ABS = "Returnerar absolutvärdet av ett tal.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_EXP = "Ger tillbaka e upphöjt i ett tal.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LN = "Returnera den naturliga logaritmen av ett tal.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LOG10 = "Returnerar logaritmen för bas 10 av ett tal.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_NEG = "Returnerar negationen av ett tal.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_POW10 = "Ger tillbaka 10 upphöjt i ett tal.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ROOT = "Returnerar kvadratroten av ett tal.";
+Blockly.Msg.MATH_SUBTRACTION_SYMBOL = "-";
+Blockly.Msg.MATH_TRIG_ACOS = "arccos";
+Blockly.Msg.MATH_TRIG_ASIN = "arcsin";
+Blockly.Msg.MATH_TRIG_ATAN = "arctan";
+Blockly.Msg.MATH_TRIG_COS = "cos";
+Blockly.Msg.MATH_TRIG_HELPURL = "https://sv.wikipedia.org/wiki/Trigonometrisk_funktion";
+Blockly.Msg.MATH_TRIG_SIN = "sin";
+Blockly.Msg.MATH_TRIG_TAN = "tan";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ACOS = "Ger tillbaka arcus cosinus (arccos) för ett tal.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ASIN = "Ger tillbaka arcus sinus (arcsin) för ett tal.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ATAN = "Ger tillbaka arcus tangens (arctan) av ett tal.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_COS = "Ger tillbaka cosinus för en grad (inte radian).";
+Blockly.Msg.MATH_TRIG_TOOLTIP_SIN = "Ger tillbaka sinus för en grad (inte radian).";
+Blockly.Msg.MATH_TRIG_TOOLTIP_TAN = "Ger tillbaka tangens för en grad (inte radian).";
+Blockly.Msg.NEW_VARIABLE = "Skapa variabel...";
+Blockly.Msg.NEW_VARIABLE_TITLE = "Nytt variabelnamn:";
+Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; // untranslated
+Blockly.Msg.PROCEDURES_ALLOW_STATEMENTS = "tillåta uttalanden";
+Blockly.Msg.PROCEDURES_BEFORE_PARAMS = "med:";
+Blockly.Msg.PROCEDURES_CALLNORETURN_HELPURL = "https://sv.wikipedia.org/wiki/Funktion_%28programmering%29";
+Blockly.Msg.PROCEDURES_CALLNORETURN_TOOLTIP = "Kör den användardefinierade funktionen \"%1\".";
+Blockly.Msg.PROCEDURES_CALLRETURN_HELPURL = "https://sv.wikipedia.org/wiki/Funktion_%28programmering%29";
+Blockly.Msg.PROCEDURES_CALLRETURN_TOOLTIP = "Kör den användardefinierade funktionen \"%1\" och använd resultatet av den.";
+Blockly.Msg.PROCEDURES_CALL_BEFORE_PARAMS = "med:";
+Blockly.Msg.PROCEDURES_CREATE_DO = "Skapa '%1'";
+Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT = "Beskriv denna funktion...";
+Blockly.Msg.PROCEDURES_DEFNORETURN_DO = ""; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_HELPURL = "https://sv.wikipedia.org/wiki/Funktion_%28programmering%29";
+Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE = "göra något";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE = "för att";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TOOLTIP = "Skapar en funktion utan output.";
+Blockly.Msg.PROCEDURES_DEFRETURN_HELPURL = "https://sv.wikipedia.org/wiki/Funktion_%28programmering%29";
+Blockly.Msg.PROCEDURES_DEFRETURN_RETURN = "returnera";
+Blockly.Msg.PROCEDURES_DEFRETURN_TOOLTIP = "Skapar en funktion med output.";
+Blockly.Msg.PROCEDURES_DEF_DUPLICATE_WARNING = "Varning: Denna funktion har dubbla parametrar.";
+Blockly.Msg.PROCEDURES_HIGHLIGHT_DEF = "Markera funktionsdefinition";
+Blockly.Msg.PROCEDURES_IFRETURN_HELPURL = "http://c2.com/cgi/wiki?GuardClause";
+Blockly.Msg.PROCEDURES_IFRETURN_TOOLTIP = "Om ett värde är sant returneras ett andra värde.";
+Blockly.Msg.PROCEDURES_IFRETURN_WARNING = "Varning: Detta block får användas endast i en funktionsdefinition.";
+Blockly.Msg.PROCEDURES_MUTATORARG_TITLE = "inmatningsnamn:";
+Blockly.Msg.PROCEDURES_MUTATORARG_TOOLTIP = "Lägg till en inmatning till funktionen.";
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TITLE = "inmatningar";
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TOOLTIP = "Lägg till, ta bort och ändra ordningen för inmatningar till denna funktion.";
+Blockly.Msg.REDO = "Gör om";
+Blockly.Msg.REMOVE_COMMENT = "Radera kommentar";
+Blockly.Msg.RENAME_VARIABLE = "Byt namn på variabel...";
+Blockly.Msg.RENAME_VARIABLE_TITLE = "Byt namn på alla'%1'-variabler till:";
+Blockly.Msg.TEXT_APPEND_APPENDTEXT = "lägg till text";
+Blockly.Msg.TEXT_APPEND_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_APPEND_TO = "till";
+Blockly.Msg.TEXT_APPEND_TOOLTIP = "Lägg till lite text till variabeln '%1'.";
+Blockly.Msg.TEXT_CHANGECASE_HELPURL = "https://github.com/google/blockly/wiki/Text#adjusting-text-case"; // untranslated
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_LOWERCASE = "till gemener";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_TITLECASE = "till Versala Initialer";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_UPPERCASE = "till VERSALER";
+Blockly.Msg.TEXT_CHANGECASE_TOOLTIP = "Returnerar en kopia av texten i ett annat skiftläge.";
+Blockly.Msg.TEXT_CHARAT_FIRST = "hämta första bokstaven";
+Blockly.Msg.TEXT_CHARAT_FROM_END = "hämta bokstaven # från slutet";
+Blockly.Msg.TEXT_CHARAT_FROM_START = "hämta bokstaven #";
+Blockly.Msg.TEXT_CHARAT_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-text"; // untranslated
+Blockly.Msg.TEXT_CHARAT_INPUT_INTEXT = "i texten";
+Blockly.Msg.TEXT_CHARAT_LAST = "hämta sista bokstaven";
+Blockly.Msg.TEXT_CHARAT_RANDOM = "hämta slumpad bokstav";
+Blockly.Msg.TEXT_CHARAT_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_CHARAT_TOOLTIP = "Ger tillbaka bokstaven på den specificerade positionen.";
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TOOLTIP = "Lägg till ett föremål till texten.";
+Blockly.Msg.TEXT_CREATE_JOIN_TITLE_JOIN = "sammanfoga";
+Blockly.Msg.TEXT_CREATE_JOIN_TOOLTIP = "Lägg till, ta bort eller ändra ordningen för sektioner för att omkonfigurera detta textblock.";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_END = "till bokstav # från slutet";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_START = "till bokstav #";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_LAST = "till sista bokstaven";
+Blockly.Msg.TEXT_GET_SUBSTRING_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_INPUT_IN_TEXT = "i texten";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FIRST = "få textdel från första bokstaven";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_END = "få textdel från bokstav # från slutet";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_START = "få textdel från bokstav #";
+Blockly.Msg.TEXT_GET_SUBSTRING_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_TOOLTIP = "Ger tillbaka en viss del av texten.";
+Blockly.Msg.TEXT_INDEXOF_HELPURL = "https://github.com/google/blockly/wiki/Text#finding-text"; // untranslated
+Blockly.Msg.TEXT_INDEXOF_INPUT_INTEXT = "i texten";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_FIRST = "hitta första förekomsten av texten";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_LAST = "hitta sista förekomsten av texten";
+Blockly.Msg.TEXT_INDEXOF_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_INDEXOF_TOOLTIP = "Ger tillbaka indexet för den första/sista förekomsten av första texten i den andra texten. Ger tillbaka %1 om texten inte hittas.";
+Blockly.Msg.TEXT_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Text#checking-for-empty-text"; // untranslated
+Blockly.Msg.TEXT_ISEMPTY_TITLE = "%1 är tom";
+Blockly.Msg.TEXT_ISEMPTY_TOOLTIP = "Returnerar sant om den angivna texten är tom.";
+Blockly.Msg.TEXT_JOIN_HELPURL = "https://github.com/google/blockly/wiki/Text#text-creation"; // untranslated
+Blockly.Msg.TEXT_JOIN_TITLE_CREATEWITH = "skapa text med";
+Blockly.Msg.TEXT_JOIN_TOOLTIP = "Skapa en textbit genom att sammanfoga ett valfritt antal föremål.";
+Blockly.Msg.TEXT_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_LENGTH_TITLE = "längden på %1";
+Blockly.Msg.TEXT_LENGTH_TOOLTIP = "Ger tillbaka antalet bokstäver (inklusive mellanslag) i den angivna texten.";
+Blockly.Msg.TEXT_PRINT_HELPURL = "https://github.com/google/blockly/wiki/Text#printing-text"; // untranslated
+Blockly.Msg.TEXT_PRINT_TITLE = "skriv %1";
+Blockly.Msg.TEXT_PRINT_TOOLTIP = "Skriv den angivna texten, talet eller annat värde.";
+Blockly.Msg.TEXT_PROMPT_HELPURL = "https://github.com/google/blockly/wiki/Text#getting-input-from-the-user"; // untranslated
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_NUMBER = "Fråga användaren efter ett tal.";
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_TEXT = "Fråga användaren efter lite text.";
+Blockly.Msg.TEXT_PROMPT_TYPE_NUMBER = "fråga efter ett tal med meddelande";
+Blockly.Msg.TEXT_PROMPT_TYPE_TEXT = "fråga efter text med meddelande";
+Blockly.Msg.TEXT_TEXT_HELPURL = "https://sv.wikipedia.org/wiki/Str%C3%A4ng_%28data%29";
+Blockly.Msg.TEXT_TEXT_TOOLTIP = "En bokstav, ord eller textrad.";
+Blockly.Msg.TEXT_TRIM_HELPURL = "https://github.com/google/blockly/wiki/Text#trimming-removing-spaces"; // untranslated
+Blockly.Msg.TEXT_TRIM_OPERATOR_BOTH = "ta bort mellanrum från båda sidorna av";
+Blockly.Msg.TEXT_TRIM_OPERATOR_LEFT = "ta bort mellanrum från vänstra sidan av";
+Blockly.Msg.TEXT_TRIM_OPERATOR_RIGHT = "ta bort mellanrum från högra sidan av";
+Blockly.Msg.TEXT_TRIM_TOOLTIP = "Returnerar en kopia av texten med borttagna mellanrum från en eller båda ändar.";
+Blockly.Msg.TODAY = "Idag";
+Blockly.Msg.UNDO = "Ångra";
+Blockly.Msg.VARIABLES_DEFAULT_NAME = "föremål";
+Blockly.Msg.VARIABLES_GET_CREATE_SET = "Skapa \"välj %1\"";
+Blockly.Msg.VARIABLES_GET_HELPURL = "https://github.com/google/blockly/wiki/Variables#get"; // untranslated
+Blockly.Msg.VARIABLES_GET_TOOLTIP = "Returnerar värdet av denna variabel.";
+Blockly.Msg.VARIABLES_SET = "ange %1 till %2";
+Blockly.Msg.VARIABLES_SET_CREATE_GET = "Skapa 'hämta %1'";
+Blockly.Msg.VARIABLES_SET_HELPURL = "https://github.com/google/blockly/wiki/Variables#set"; // untranslated
+Blockly.Msg.VARIABLES_SET_TOOLTIP = "Gör så att den här variabeln blir lika med inputen.";
+Blockly.Msg.VARIABLE_ALREADY_EXISTS = "En variabel som heter \"%1\" finns redan.";
+Blockly.Msg.PROCEDURES_DEFRETURN_TITLE = Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE;
+Blockly.Msg.CONTROLS_IF_IF_TITLE_IF = Blockly.Msg.CONTROLS_IF_MSG_IF;
+Blockly.Msg.CONTROLS_WHILEUNTIL_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_MSG_THEN = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_ELSE_TITLE_ELSE = Blockly.Msg.CONTROLS_IF_MSG_ELSE;
+Blockly.Msg.PROCEDURES_DEFRETURN_PROCEDURE = Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE;
+Blockly.Msg.LISTS_GET_SUBLIST_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.LISTS_GET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.PROCEDURES_DEFRETURN_DO = Blockly.Msg.PROCEDURES_DEFNORETURN_DO;
+Blockly.Msg.CONTROLS_IF_ELSEIF_TITLE_ELSEIF = Blockly.Msg.CONTROLS_IF_MSG_ELSEIF;
+Blockly.Msg.LISTS_GET_INDEX_HELPURL = Blockly.Msg.LISTS_INDEX_OF_HELPURL;
+Blockly.Msg.CONTROLS_FOREACH_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_SET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TITLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_APPEND_VARIABLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.LISTS_INDEX_OF_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.PROCEDURES_DEFRETURN_COMMENT = Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT; \ No newline at end of file
diff --git a/blockly/msg/js/ta.js b/blockly/msg/js/ta.js
new file mode 100644
index 0000000..669bc0d
--- /dev/null
+++ b/blockly/msg/js/ta.js
@@ -0,0 +1,391 @@
+// This file was automatically generated. Do not modify.
+
+'use strict';
+
+goog.provide('Blockly.Msg.ta');
+
+goog.require('Blockly.Msg');
+
+Blockly.Msg.ADD_COMMENT = "கருத்தை சேர்";
+Blockly.Msg.CHANGE_VALUE_TITLE = "மதிப்பை மாற்றவும்:";
+Blockly.Msg.CLEAN_UP = "Clean up Blocks"; // untranslated
+Blockly.Msg.COLLAPSE_ALL = "உறுப்புகளை மரை";
+Blockly.Msg.COLLAPSE_BLOCK = "உறுப்பை மரை";
+Blockly.Msg.COLOUR_BLEND_COLOUR1 = "நிறம் 1";
+Blockly.Msg.COLOUR_BLEND_COLOUR2 = "நிறம் 2";
+Blockly.Msg.COLOUR_BLEND_HELPURL = "http://meyerweb.com/eric/tools/color-blend/"; // untranslated
+Blockly.Msg.COLOUR_BLEND_RATIO = "விகிதம்";
+Blockly.Msg.COLOUR_BLEND_TITLE = "கலப்பு (வண்ணம்)";
+Blockly.Msg.COLOUR_BLEND_TOOLTIP = "கொடுக்கப்பட்ட விகதத்தில் (0.0 - 1.0) இரு நிறங்களை கலக்குக.";
+Blockly.Msg.COLOUR_PICKER_HELPURL = "https://en.wikipedia.org/wiki/Color";
+Blockly.Msg.COLOUR_PICKER_TOOLTIP = "வண்ண தட்டிலிருந்து ஒரு நிறத்தைத் தேர்ந்தெடுக்கவும்.";
+Blockly.Msg.COLOUR_RANDOM_HELPURL = "http://randomcolour.com"; // untranslated
+Blockly.Msg.COLOUR_RANDOM_TITLE = "தற்போக்கு நிறம்";
+Blockly.Msg.COLOUR_RANDOM_TOOLTIP = "தற்போக்கில் ஒரு நிறத்தை தேர்ந்தெடுக்கவும்.";
+Blockly.Msg.COLOUR_RGB_BLUE = "நீலம்";
+Blockly.Msg.COLOUR_RGB_GREEN = "பச்சை";
+Blockly.Msg.COLOUR_RGB_HELPURL = "http://www.december.com/html/spec/colorper.html"; // untranslated
+Blockly.Msg.COLOUR_RGB_RED = "சிகப்பு";
+Blockly.Msg.COLOUR_RGB_TITLE = "நிறத்துடன்";
+Blockly.Msg.COLOUR_RGB_TOOLTIP = "குறிப்பிட்ட அளவு சிவப்பு,பச்சை மற்றும் நீலம் சேர்த்து புது நிறம் உருவாக்கு. மதிப்புகள் 0 முதல் 100 வரை மட்டுமே இருக்க வேண்டும்.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_HELPURL = "https://github.com/google/blockly/wiki/Loops#loop-termination-blocks"; // untranslated
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK = "மடக்கு கட்டளையை நிறுத்து.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE = "மடக்கு கட்டளையின் அடுத்த இயக்கநிலைக்கு செல்";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK = "மடக்கு கட்டளையின் இயக்கத்தில் இருந்து நிறுத்து.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE = "மடக்கு கட்டளையின் மீதியை விட்டுவிட்டு அடுத்த இயக்கநிலைக்கு செல்";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_WARNING = "எச்சரிக்கை : மடக்கு கூற்றில் இந்த தொகுதி ஒரு முறை மட்டுமே செயல்படுத்தப் படலாம்.";
+Blockly.Msg.CONTROLS_FOREACH_HELPURL = "https://github.com/google/blockly/wiki/Loops#for-each"; // untranslated
+Blockly.Msg.CONTROLS_FOREACH_TITLE = "உருப்படி ஒவ்வொன்றாக %1 பட்டியலில் உள்ள %2";
+Blockly.Msg.CONTROLS_FOREACH_TOOLTIP = "பட்டியலில் உள்ள உருப்படியில் ஒவ்வொன்றாக, மாறியின் பொருள் '%1' ஆக வைக்க.";
+Blockly.Msg.CONTROLS_FOR_HELPURL = "https://github.com/google/blockly/wiki/Loops#count-with"; // untranslated
+Blockly.Msg.CONTROLS_FOR_TITLE = "மாறியை வைத்து எண்ண %1 %2 இல் இருந்து %3 வரை %4-இன் படியாக";
+Blockly.Msg.CONTROLS_FOR_TOOLTIP = "முதல் எண்ணில் இருந்து கடை எண் வரை எடுத்துக்கொள்ள ஒரு மாறியை வைத்துக்கொள், குறித்த இடைவெளியை சேர்த்தவறே தொகுதிகளை செயலாக்கு.";
+Blockly.Msg.CONTROLS_IF_ELSEIF_TOOLTIP = "ஆனால் தொகுப்பிற்கு நிபந்தனை சேர்க்க";
+Blockly.Msg.CONTROLS_IF_ELSE_TOOLTIP = "ஆனால் தொகுப்பிற்கு விதிவிலக்கு காப்பை சேர்க்க";
+Blockly.Msg.CONTROLS_IF_HELPURL = "https://github.com/google/blockly/wiki/IfElse"; // untranslated
+Blockly.Msg.CONTROLS_IF_IF_TOOLTIP = "கட்டளைகளை தொகுப்பு திருத்துதம் செய்";
+Blockly.Msg.CONTROLS_IF_MSG_ELSE = "இல்லையெனில்";
+Blockly.Msg.CONTROLS_IF_MSG_ELSEIF = "இல்லைஆனால்";
+Blockly.Msg.CONTROLS_IF_MSG_IF = "எனில்";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_1 = "மாறி உண்மை ஆக உள்ள வரை, கட்டளைகளை இயக்கு";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_2 = "மாறி உண்மை ஆக உள்ள வரை, கட்டளைகளை இயக்கு. அல்லது மற்ற (அடுத்த) கட்டளைகளை இயக்கு.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_3 = "மாறி உண்மை ஆக உள்ள வரை, கட்டளைகளை தொகுப்பு இயக்கு. அல்லது மற்ற (அடுத்த) கட்டளைகளை தொகுப்பு இயக்கு.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_4 = "மாறி உண்மை ஆக உள்ள வரை, கட்டளைகளை தொகுப்பு இயக்கு. அல்லது மற்ற (அடுத்த) கட்டளைகளை தொகுப்பு இயக்கு. இரண்டும் இல்லை என்றால் கடைசி தொகுப்பு இயக்கு.";
+Blockly.Msg.CONTROLS_REPEAT_HELPURL = "https://en.wikipedia.org/wiki/For_loop";
+Blockly.Msg.CONTROLS_REPEAT_INPUT_DO = "செய்க";
+Blockly.Msg.CONTROLS_REPEAT_TITLE = "'%1' முரை திரும்ப செய்";
+Blockly.Msg.CONTROLS_REPEAT_TOOLTIP = "கட்டளைகளை பல முரை செய்ய";
+Blockly.Msg.CONTROLS_WHILEUNTIL_HELPURL = "https://github.com/google/blockly/wiki/Loops#repeat"; // untranslated
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "பலமுரை திரும்ப செய் (முடயேனில்)";
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "பலமுரை திரும்ப செய் (வரை)";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "மாறி பொய் ஆக உள்ள வரை, கட்டளைகளை இயக்கு";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "மாறி உண்மை ஆக உள்ள வரை, கட்டளைகளை இயக்கு";
+Blockly.Msg.DELETE_ALL_BLOCKS = "அனைத்து %1 நிரல் துண்டுகளையும் அழிக்கவா??";
+Blockly.Msg.DELETE_BLOCK = "உறுப்பை நீக்கு";
+Blockly.Msg.DELETE_VARIABLE = "Delete the '%1' variable"; // untranslated
+Blockly.Msg.DELETE_VARIABLE_CONFIRMATION = "Delete %1 uses of the '%2' variable?"; // untranslated
+Blockly.Msg.DELETE_X_BLOCKS = "%1 உறுப்பை நீக்கு";
+Blockly.Msg.DISABLE_BLOCK = "உறுப்பை இயங்காது செய்";
+Blockly.Msg.DUPLICATE_BLOCK = "மறுநகல்";
+Blockly.Msg.ENABLE_BLOCK = "உறுப்பை இயங்குமாரு செய்";
+Blockly.Msg.EXPAND_ALL = "உறுப்புகளை காட்டு";
+Blockly.Msg.EXPAND_BLOCK = "உறுப்பை காட்டு";
+Blockly.Msg.EXTERNAL_INPUTS = "வெளி கருவிகளுடன் உள்ளீடு";
+Blockly.Msg.HELP = "உதவி";
+Blockly.Msg.INLINE_INPUTS = "சூழமைவில் உள்ளீடு";
+Blockly.Msg.LISTS_CREATE_EMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-empty-list"; // untranslated
+Blockly.Msg.LISTS_CREATE_EMPTY_TITLE = "காலி பட்டியல் உருவாக்க";
+Blockly.Msg.LISTS_CREATE_EMPTY_TOOLTIP = "காலி பட்டியல் பின்கொடு.";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TITLE_ADD = "பட்டியல்";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TOOLTIP = "கட்டளைகளை தொகுப்பு திருத்துதம் செய்";
+Blockly.Msg.LISTS_CREATE_WITH_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
+Blockly.Msg.LISTS_CREATE_WITH_INPUT_WITH = "வைத்து பட்டியல் உருவாக்க";
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TOOLTIP = "பட்டியலில் ஒரு பொருளை சேர்க்க.";
+Blockly.Msg.LISTS_CREATE_WITH_TOOLTIP = "இவ்வளவு உருப்படிகளை கொண்டு வேண்டுமாலும் ஒரு பட்டியலை உருவாக்கு.";
+Blockly.Msg.LISTS_GET_INDEX_FIRST = "முதல்";
+Blockly.Msg.LISTS_GET_INDEX_FROM_END = "கடைசியில் இருந்து #";
+Blockly.Msg.LISTS_GET_INDEX_FROM_START = "#"; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_GET = "எடு";
+Blockly.Msg.LISTS_GET_INDEX_GET_REMOVE = "பெற்று நீக்குக";
+Blockly.Msg.LISTS_GET_INDEX_LAST = "கடைசி";
+Blockly.Msg.LISTS_GET_INDEX_RANDOM = "ஏதோ ஒன்று";
+Blockly.Msg.LISTS_GET_INDEX_REMOVE = "நீக்குக";
+Blockly.Msg.LISTS_GET_INDEX_TAIL = ""; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FIRST = "பட்டியல் முதல் உருப்படியை பின்கொடு,";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FROM = "பட்டியலில் இடத்தில் உருப்படி பின்கொடு.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_LAST = "பட்டியல் கடைசி உருப்படியை பின்கொடு,";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_RANDOM = "பட்டியல் சீரற்ற உருப்படியை பின்கொடு,";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST = "பட்டியல் முதல் உருப்படியை நீக்கியபின் பின்கொடு,";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM = "பட்டியலில் கேட்ட இடத்தின் உருப்படி நீக்கி பின்கொடு.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST = "பட்டியல் இறுதி உருப்படியை நீக்கியபின் பின்கொடு,";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM = "பட்டியல் சீரற்ற உருப்படியை நீக்கியபின் பின்கொடு,";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST = "பட்டியலில் முதல் உருப்படியை நீக்கு";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM = "பட்டியலில் கேட்ட இடத்தின் உருப்படி நீக்கு.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST = "பட்டியலில் கடைசி உருப்படியை நீக்கு";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM = "பட்டியல் சீரற்ற உருப்படியை நீக்கு,";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_END = "முடிவில் இருந்து # வரை";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_START = "# வரை";
+Blockly.Msg.LISTS_GET_SUBLIST_END_LAST = "முடிவு வரை";
+Blockly.Msg.LISTS_GET_SUBLIST_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-a-sublist"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_START_FIRST = "# முதலில் இருந்து பகுதி பட்டியலை கொடு";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_END = "# கடைசியில் இருந்து பகுதி பட்டியலை கொடு";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_START = "பகுதி பட்டியலை # இடத்தில் இருந்து கொடு";
+Blockly.Msg.LISTS_GET_SUBLIST_TAIL = ""; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_TOOLTIP = "குறிப்பட்ட பகுதி பட்டியலின் நகலை கொடு";
+Blockly.Msg.LISTS_INDEX_FROM_END_TOOLTIP = "%1 கடைசி உருப்படி.ி";
+Blockly.Msg.LISTS_INDEX_FROM_START_TOOLTIP = "%1 முதல் உருப்படி.";
+Blockly.Msg.LISTS_INDEX_OF_FIRST = "உரையில் முதல் தோற்ற இடத்தை காட்டு";
+Blockly.Msg.LISTS_INDEX_OF_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-items-from-a-list"; // untranslated
+Blockly.Msg.LISTS_INDEX_OF_LAST = "உரையில் கடைசி தோற்ற இடத்தை காட்டு";
+Blockly.Msg.LISTS_INDEX_OF_TOOLTIP = "பட்டியலில் மதிப்பின் முதல், கடைசி தோற்ற இடத்தை பின்கொடு. காணாவிட்டால் %1 பின்கொடு.";
+Blockly.Msg.LISTS_INLIST = "பட்டியலில் உள்ள";
+Blockly.Msg.LISTS_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#is-empty"; // untranslated
+Blockly.Msg.LISTS_ISEMPTY_TITLE = "%1 காலியானது";
+Blockly.Msg.LISTS_ISEMPTY_TOOLTIP = "பட்டியல் காலியானது மெய் பின்கொடு,";
+Blockly.Msg.LISTS_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Lists#length-of"; // untranslated
+Blockly.Msg.LISTS_LENGTH_TITLE = "%1 இன் நீளம்";
+Blockly.Msg.LISTS_LENGTH_TOOLTIP = "பட்டியல் நீளம் பின்கொடு";
+Blockly.Msg.LISTS_REPEAT_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
+Blockly.Msg.LISTS_REPEAT_TITLE = "உருப்படி %1-யை, %2 தடவைகள் உள்ளவாறு ஒரு பட்டியலை உருவாக்கு";
+Blockly.Msg.LISTS_REPEAT_TOOLTIP = "கொடுக்க பட்ட மதிப்பை, கூறியுள்ள தடவைகள் உள்ளவாறு ஒரு பட்டியலை உருவாக்கு";
+Blockly.Msg.LISTS_SET_INDEX_HELPURL = "https://github.com/google/blockly/wiki/Lists#in-list--set"; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_INPUT_TO = "இதுபொல";
+Blockly.Msg.LISTS_SET_INDEX_INSERT = "அவ்விடத்தில் நுழை";
+Blockly.Msg.LISTS_SET_INDEX_SET = "நியமி";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST = "மதிப்பை பட்டியலின் முதலில் நுழை";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FROM = "பட்டியலில் கேட்ட இடத்தில் உருப்படியை நுழை.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_LAST = "மதிப்பை பட்டியலின் முடிவில் நுழை";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM = "மதிப்பை பட்டியலின் சீற்ற இடத்தில் நுழை";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FIRST = "மதிப்பை பட்டியலில் முதல் உருப்படியில் வை";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FROM = "பட்டியலில் கேட்ட இடத்தில் உருப்படியை வை.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_LAST = "மதிப்பை பட்டியலில் கடைசி உருப்படியில் வை";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_RANDOM = "மதிப்பை பட்டியலில் சீரற்ற உருப்படியில் வை";
+Blockly.Msg.LISTS_SORT_HELPURL = "https://github.com/google/blockly/wiki/Lists#sorting-a-list"; // untranslated
+Blockly.Msg.LISTS_SORT_ORDER_ASCENDING = "ascending"; // untranslated
+Blockly.Msg.LISTS_SORT_ORDER_DESCENDING = "descending"; // untranslated
+Blockly.Msg.LISTS_SORT_TITLE = "sort %1 %2 %3"; // untranslated
+Blockly.Msg.LISTS_SORT_TOOLTIP = "Sort a copy of a list."; // untranslated
+Blockly.Msg.LISTS_SORT_TYPE_IGNORECASE = "alphabetic, ignore case"; // untranslated
+Blockly.Msg.LISTS_SORT_TYPE_NUMERIC = "numeric"; // untranslated
+Blockly.Msg.LISTS_SORT_TYPE_TEXT = "alphabetic"; // untranslated
+Blockly.Msg.LISTS_SPLIT_HELPURL = "https://github.com/google/blockly/wiki/Lists#splitting-strings-and-joining-lists"; // untranslated
+Blockly.Msg.LISTS_SPLIT_LIST_FROM_TEXT = "உரையில் இருந்து பட்டியல் உருவாக்கு";
+Blockly.Msg.LISTS_SPLIT_TEXT_FROM_LIST = "பட்டியலில் இருந்து உரை உருவாக்கு";
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_JOIN = "வரம்புச் சுட்டியை இடையில் இட்டு, உரைதுண்டுகளை ஒன்று சேர்";
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_SPLIT = "உரையை வரம்புச் சுட்டி கொண்டு துண்டாக்கு.";
+Blockly.Msg.LISTS_SPLIT_WITH_DELIMITER = "தடை எழுத்து";
+Blockly.Msg.LOGIC_BOOLEAN_FALSE = "பொய்";
+Blockly.Msg.LOGIC_BOOLEAN_HELPURL = "https://github.com/google/blockly/wiki/Logic#values"; // untranslated
+Blockly.Msg.LOGIC_BOOLEAN_TOOLTIP = "மெய், அல்லது பொய் பின்கொடு.";
+Blockly.Msg.LOGIC_BOOLEAN_TRUE = "மெய்";
+Blockly.Msg.LOGIC_COMPARE_HELPURL = "https://en.wikipedia.org/wiki/Inequality_(mathematics)";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_EQ = "இரண்டு மாறியும் ஈடானால், மெய் பின்கொடு.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GT = "முதல் உள்ளீடு இரண்டாவதைவிட அதிகமாக இருந்தால், மெய் பின்கொடு.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GTE = "முதல் உள்ளீடு இரண்டாவதைவிட அதிகமாக அல்ல சமமாக இருந்தால், மெய் பின்கொடு.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LT = "முதல் உள்ளீடு இரண்டாவதைவிட குறைவாக இருந்தால், மெய் பின்கொடு.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LTE = "முதல் உள்ளீடு இரண்டாவதைவிட குறைவாக அல்ல சமமாக இருந்தால், மெய் பின்கொடு";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_NEQ = "இரண்டு மாறியும் ஈடாகாவிட்டால், மெய் பின்கொடு.";
+Blockly.Msg.LOGIC_NEGATE_HELPURL = "https://github.com/google/blockly/wiki/Logic#not"; // untranslated
+Blockly.Msg.LOGIC_NEGATE_TITLE = "%1 இல்லை";
+Blockly.Msg.LOGIC_NEGATE_TOOLTIP = "மெய் ஆனால், பொய் பின்கொடு. பொய் ஆனால், மெய் பின்கொடு.";
+Blockly.Msg.LOGIC_NULL = "பூஜியம்";
+Blockly.Msg.LOGIC_NULL_HELPURL = "https://en.wikipedia.org/wiki/Nullable_type"; // untranslated
+Blockly.Msg.LOGIC_NULL_TOOLTIP = "பூஜியம் பின்கொடு";
+Blockly.Msg.LOGIC_OPERATION_AND = "மற்றும்";
+Blockly.Msg.LOGIC_OPERATION_HELPURL = "https://github.com/google/blockly/wiki/Logic#logical-operations"; // untranslated
+Blockly.Msg.LOGIC_OPERATION_OR = "அல்லது";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_AND = "இரண்டு மாறியும் மெய் ஆனால், மெய் பின்கொடு.";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_OR = "ஏதேனும் ஒரு மதிப்பு மெய் ஆனால், மெய் பின்கொடு";
+Blockly.Msg.LOGIC_TERNARY_CONDITION = "சோதனை";
+Blockly.Msg.LOGIC_TERNARY_HELPURL = "https://en.wikipedia.org/wiki/%3F:"; // untranslated
+Blockly.Msg.LOGIC_TERNARY_IF_FALSE = "பொய்யெனில்";
+Blockly.Msg.LOGIC_TERNARY_IF_TRUE = "மெய்யெனில்";
+Blockly.Msg.LOGIC_TERNARY_TOOLTIP = "'test' உள்ள நிபந்தனையை சரிபார்க்கவும், நிபந்தனை மெய்யானால்,'if true'வை பின்கொடுக்கும் இல்லையெனில் 'if false'வை பின்கொடுக்கும்.";
+Blockly.Msg.MATH_ADDITION_SYMBOL = "+"; // untranslated
+Blockly.Msg.MATH_ARITHMETIC_HELPURL = "https://ta.wikipedia.org/wiki/%E0%AE%8E%E0%AE%A3%E0%AF%8D%E0%AE%95%E0%AE%A3%E0%AE%BF%E0%AE%A4%E0%AE%AE%E0%AF%8D";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_ADD = "இரு எண்களின் கூட்டை பின்கொடு";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE = "இரு எண்களின் வகுத்தல் பின்கொடு";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MINUS = "இரு எண்களின் கழிப்பை பின்கொடு";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MULTIPLY = "இரு எண்களின் பெருக்கலை பின்கொடு";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_POWER = "முதல் உள்ளீடு இரண்டாவது எண் அளவான அடுக்கு பெருக்கை கணித்து பின்கொடு.";
+Blockly.Msg.MATH_CHANGE_HELPURL = "https://en.wikipedia.org/wiki/Programming_idiom#Incrementing_a_counter";
+Blockly.Msg.MATH_CHANGE_TITLE = "மாற்று %1 மூலம் %2";
+Blockly.Msg.MATH_CHANGE_TOOLTIP = "எண்னை '%1' மதிப்பால் கூட்டு,";
+Blockly.Msg.MATH_CONSTANT_HELPURL = "https://ta.wikipedia.org/wiki/%E0%AE%95%E0%AE%A3%E0%AE%BF%E0%AE%A4_%E0%AE%AE%E0%AE%BE%E0%AE%B1%E0%AE%BF%E0%AE%B2%E0%AE%BF";
+Blockly.Msg.MATH_CONSTANT_TOOLTIP = "ஒரு மாறிலியை பின்கொடு π (3.141…), e (2.718…), φ (1.618…), sqrt(2) (1.414…), sqrt(½) (0.707…), or ∞ (முடிவிலி).";
+Blockly.Msg.MATH_CONSTRAIN_HELPURL = "https://en.wikipedia.org/wiki/Clamping_%28graphics%29"; // untranslated
+Blockly.Msg.MATH_CONSTRAIN_TITLE = "%1 மாறியை %2 மேலும் %3 கீழும் வற்புறுத்து";
+Blockly.Msg.MATH_CONSTRAIN_TOOLTIP = "எண் மாறி வீசுகளம் உள்ளடங்கிய வாறு வற்புறுத்து";
+Blockly.Msg.MATH_DIVISION_SYMBOL = "÷"; // untranslated
+Blockly.Msg.MATH_IS_DIVISIBLE_BY = "ஆல் வகுபடக் கூடியது";
+Blockly.Msg.MATH_IS_EVEN = "2-ஆல் பகும்";
+Blockly.Msg.MATH_IS_NEGATIVE = "எண் குறைவானதா ?";
+Blockly.Msg.MATH_IS_ODD = "2-ஆல் பகாத";
+Blockly.Msg.MATH_IS_POSITIVE = "எண் நேர்ம முழுதானதா ?";
+Blockly.Msg.MATH_IS_PRIME = "எண் பகாத்தனிதானதா?";
+Blockly.Msg.MATH_IS_TOOLTIP = "Check if a number is an even, odd, prime, whole, positive, negative, or if it is divisible by certain number. Returns true or false."; // untranslated
+Blockly.Msg.MATH_IS_WHOLE = "எண் முழுதானதா?";
+Blockly.Msg.MATH_MODULO_HELPURL = "https://en.wikipedia.org/wiki/Modulo_operation";
+Blockly.Msg.MATH_MODULO_TITLE = "%1 ÷ %2ன் மீதி";
+Blockly.Msg.MATH_MODULO_TOOLTIP = "இரண்டு எண்கள் மூலம் பிரிவில் இருந்து எஞ்சியதை பின்கொடு.";
+Blockly.Msg.MATH_MULTIPLICATION_SYMBOL = "×"; // untranslated
+Blockly.Msg.MATH_NUMBER_HELPURL = "https://ta.wikipedia.org/wiki/%E0%AE%8E%E0%AE%A3%E0%AF%8D";
+Blockly.Msg.MATH_NUMBER_TOOLTIP = "ஒரு எண்.";
+Blockly.Msg.MATH_ONLIST_HELPURL = ""; // untranslated
+Blockly.Msg.MATH_ONLIST_OPERATOR_AVERAGE = "பட்டியலின் எண் சராசரி";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MAX = "பட்டியலின் மிகுதி";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MEDIAN = "பட்டியலின் நடுக்கோடு";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MIN = "பட்டியலின் கறைவு";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MODE = "பட்டியலின் பொதுவகைகள்";
+Blockly.Msg.MATH_ONLIST_OPERATOR_RANDOM = "ஒரு பட்டியலில் இருந்து சீரற்ற உருப்படி";
+Blockly.Msg.MATH_ONLIST_OPERATOR_STD_DEV = "பட்டியலின் நியமவிலகல்";
+Blockly.Msg.MATH_ONLIST_OPERATOR_SUM = "பட்டியலின் கூட்டு";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_AVERAGE = "முழு பட்டியலின் எண் சராசரி பின்கொடு";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MAX = "பட்டியலின் அதிகமான எண் பின்கொடு";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MEDIAN = "பட்டியலின் நடுக்கோடு பின்கொடு";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MIN = "பட்டியலின் குறைவான எண் பின்கொடு";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MODE = "பட்டியலின் பொதுவகைகள் பின்கொடு";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_RANDOM = "ஒரு பட்டியலில் இருந்து சீரற்ற உருப்படி பின்கொடு";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_STD_DEV = "பட்டியலின் நியமவிலகலை பின்கொடு.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_SUM = "முழு பட்டியலின் எண் சமம் பின்கொடு,";
+Blockly.Msg.MATH_POWER_SYMBOL = "^"; // untranslated
+Blockly.Msg.MATH_RANDOM_FLOAT_HELPURL = "https://en.wikipedia.org/wiki/Random_number_generation";
+Blockly.Msg.MATH_RANDOM_FLOAT_TITLE_RANDOM = "சீரற்ற எண் பின்னம்";
+Blockly.Msg.MATH_RANDOM_FLOAT_TOOLTIP = "சீரற்ற எண் பின்னம், 0.0 இல் இருந்து 1.0 உட்பட, பின்கொடு.";
+Blockly.Msg.MATH_RANDOM_INT_HELPURL = "https://en.wikipedia.org/wiki/Random_number_generation";
+Blockly.Msg.MATH_RANDOM_INT_TITLE = "வீசுகளம் %1 இல் இருந்து %2 உள்ளடங்கிய வாறு சீரற்ற எண்";
+Blockly.Msg.MATH_RANDOM_INT_TOOLTIP = "வீசுகளம் இல் இருந்த (உள்ளடங்கிய) வாறு சீரற்ற எண் பின்கொடு.";
+Blockly.Msg.MATH_ROUND_HELPURL = "https://en.wikipedia.org/wiki/Rounding";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUND = "முழுமையாக்கு";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDDOWN = "கீழ்வழி முழுமையாக்கு";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDUP = "மேல்வழி முழுமையாக்கு";
+Blockly.Msg.MATH_ROUND_TOOLTIP = "மேல்/கீழ் வழி முழு எண் ஆக மாற்று.";
+Blockly.Msg.MATH_SINGLE_HELPURL = "https://ta.wikipedia.org/wiki/%E0%AE%B5%E0%AE%B0%E0%AF%8D%E0%AE%95%E0%AF%8D%E0%AE%95%E0%AE%AE%E0%AF%82%E0%AE%B2%E0%AE%AE%E0%AF%8D";
+Blockly.Msg.MATH_SINGLE_OP_ABSOLUTE = "தனித்த";
+Blockly.Msg.MATH_SINGLE_OP_ROOT = "வர்க்கமூலம்";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ABS = "ஒரு எண்ணின் தனித்த மதிப்பை பின்கொடு";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_EXP = "e-இன் எண் அடுக்கு பெருக்கை பின்கொடு.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LN = "ஒரு எண்ணின் (இயற்கை) மடக்கை மதிப்பை பின்கொடு.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LOG10 = "ஒரு எண்ணின் (10) மடக்கை மதிப்பை பின்கொடு.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_NEG = "ஒரு எண்ணின் எதிர்மறை மதிப்பை பின்கொடு";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_POW10 = "10-இன் எண் அடுக்கு பெருக்கை பின்கொடு.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ROOT = "ஒரு எண்ணின் வர்க்கமூலத்தைத் தரும்.";
+Blockly.Msg.MATH_SUBTRACTION_SYMBOL = "-"; // untranslated
+Blockly.Msg.MATH_TRIG_ACOS = "acos"; // untranslated
+Blockly.Msg.MATH_TRIG_ASIN = "asin"; // untranslated
+Blockly.Msg.MATH_TRIG_ATAN = "atan"; // untranslated
+Blockly.Msg.MATH_TRIG_COS = "cos"; // untranslated
+Blockly.Msg.MATH_TRIG_HELPURL = "https://ta.wikipedia.org/wiki/%E0%AE%AE%E0%AF%81%E0%AE%95%E0%AF%8D%E0%AE%95%E0%AF%8B%E0%AE%A3%E0%AE%B5%E0%AE%BF%E0%AE%AF%E0%AE%B2%E0%AF%8D_%E0%AE%9A%E0%AE%BE%E0%AE%B0%E0%AF%8D%E0%AE%AA%E0%AF%81%E0%AE%95%E0%AE%B3%E0%AF%8D";
+Blockly.Msg.MATH_TRIG_SIN = "sin"; // untranslated
+Blockly.Msg.MATH_TRIG_TAN = "tan"; // untranslated
+Blockly.Msg.MATH_TRIG_TOOLTIP_ACOS = "மதிப்பின் நேர்மாறு கோசைன் பின்கொடு";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ASIN = "மதிப்பின் நேர்மாறு சைன் பின்கொடு";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ATAN = "மதிப்பின் நேர்மாறு டேஞ்சன்டு பின்கொடு";
+Blockly.Msg.MATH_TRIG_TOOLTIP_COS = "டிகிரீ கோசைன் மதிப்பை பின்கொடு";
+Blockly.Msg.MATH_TRIG_TOOLTIP_SIN = "டிகிரீ சைன் மதிப்பை பின்கொடு.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_TAN = "டிகிரீ டேஞ்சன்டு மதிப்பை பின்கொடு";
+Blockly.Msg.NEW_VARIABLE = "புதிய மாறிலி...";
+Blockly.Msg.NEW_VARIABLE_TITLE = "புதிய மாறிலியின் பெயர்:";
+Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; // untranslated
+Blockly.Msg.PROCEDURES_ALLOW_STATEMENTS = "வாக்குமூலங்களை அனுமதிக்கவும்";
+Blockly.Msg.PROCEDURES_BEFORE_PARAMS = "இத்துடன்";
+Blockly.Msg.PROCEDURES_CALLNORETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29";
+Blockly.Msg.PROCEDURES_CALLNORETURN_TOOLTIP = "பயனரின் '%1' செயற்கூற்றை ஓட்டு.";
+Blockly.Msg.PROCEDURES_CALLRETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29";
+Blockly.Msg.PROCEDURES_CALLRETURN_TOOLTIP = "பயனரின் '%1' செயற்கூற்றை ஓட்டி வரும் வெளியீட்டை பயன்படுத்து.";
+Blockly.Msg.PROCEDURES_CALL_BEFORE_PARAMS = "இத்துடன்:";
+Blockly.Msg.PROCEDURES_CREATE_DO = "'%1' உருவாக்குக";
+Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT = "Describe this function..."; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_DO = ""; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE = "கட்டளைகள் செய்ய (இடம்காட்டி)";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE = "இந்த மாறியிற்கு";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TOOLTIP = "வெளியீடு இல்லாத ஒரு செயல்பாடு உருவாக்குகிறது";
+Blockly.Msg.PROCEDURES_DEFRETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_DEFRETURN_RETURN = "பின்கொடு";
+Blockly.Msg.PROCEDURES_DEFRETURN_TOOLTIP = "வெளியீடு உள்ள ஒரு செயல்பாடு உருவாக்குகிறது";
+Blockly.Msg.PROCEDURES_DEF_DUPLICATE_WARNING = "எச்சரிக்கை: இந்த செயற்கூறில் போலியான அளபுருக்கள் உண்டு.";
+Blockly.Msg.PROCEDURES_HIGHLIGHT_DEF = "நிரல்பாகத்தை விளக்கமாக காட்டு";
+Blockly.Msg.PROCEDURES_IFRETURN_HELPURL = "http://c2.com/cgi/wiki?GuardClause"; // untranslated
+Blockly.Msg.PROCEDURES_IFRETURN_TOOLTIP = "மதிப்பு உண்மையானால், இரண்டாவது மதிப்பை பின்கொடு.";
+Blockly.Msg.PROCEDURES_IFRETURN_WARNING = "Warning: This block may be used only within a function definition."; // untranslated
+Blockly.Msg.PROCEDURES_MUTATORARG_TITLE = "பெயரை உள்ளிடுக:";
+Blockly.Msg.PROCEDURES_MUTATORARG_TOOLTIP = "செயல்கூறுக்கு ஒரு உள்ளீட்டை சேர்.";
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TITLE = "உள்ளீடுகள்";
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TOOLTIP = "செயல்கூறுகளின் உள்ளீட்டை சேர், நீக்கு, or மீண்டும் வரிசை செய்.";
+Blockly.Msg.REDO = "Redo"; // untranslated
+Blockly.Msg.REMOVE_COMMENT = "கருத்தை நீக்கு";
+Blockly.Msg.RENAME_VARIABLE = "மாறிலியை மறுபெயரிடுக...";
+Blockly.Msg.RENAME_VARIABLE_TITLE = "அனைத்து '%1' மாறிலிகளையும் பின்வருமாறு மறுபெயரிடுக:";
+Blockly.Msg.TEXT_APPEND_APPENDTEXT = "உரை சேர்க்க";
+Blockly.Msg.TEXT_APPEND_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_APPEND_TO = "இந்த மாறியிற்கு";
+Blockly.Msg.TEXT_APPEND_TOOLTIP = "'%1' மாறியில் உரையை சேர்";
+Blockly.Msg.TEXT_CHANGECASE_HELPURL = "https://github.com/google/blockly/wiki/Text#adjusting-text-case"; // untranslated
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_LOWERCASE = "சின்ன எழுத்துக்கு மாற்று";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_TITLECASE = "தலைப்பு எழுத்துக்கு மாற்று";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_UPPERCASE = "பொரிய எழுத்துக்கு மாற்று";
+Blockly.Msg.TEXT_CHANGECASE_TOOLTIP = "உரை நகல் எடுத்து பொரிய/சின்ன எழுத்து மாற்றி பின்கொடு.";
+Blockly.Msg.TEXT_CHARAT_FIRST = "முதல் எழுத்தைப் பெறுக";
+Blockly.Msg.TEXT_CHARAT_FROM_END = "முடிவில் இருந்து # எழுத்தை எடு";
+Blockly.Msg.TEXT_CHARAT_FROM_START = "# எழுத்தை எடு";
+Blockly.Msg.TEXT_CHARAT_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-text"; // untranslated
+Blockly.Msg.TEXT_CHARAT_INPUT_INTEXT = "உரையில்";
+Blockly.Msg.TEXT_CHARAT_LAST = "இறுதி எழுத்தைப் பெறுக";
+Blockly.Msg.TEXT_CHARAT_RANDOM = "சமவாய்ப்புள்ள எழுத்தை எடு";
+Blockly.Msg.TEXT_CHARAT_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_CHARAT_TOOLTIP = "கூறிய இடத்தில் உள்ள எழுத்தை எடு";
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TOOLTIP = "உருபடியை உரையில் சேர்க்க.";
+Blockly.Msg.TEXT_CREATE_JOIN_TITLE_JOIN = "சேர்க்க";
+Blockly.Msg.TEXT_CREATE_JOIN_TOOLTIP = "தொகுப்பு உரை திருத்துதம் செய்";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_END = "எழுத்து கடைசியில் இருந்து # வரை";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_START = "எழுத்து # வரை";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_LAST = "கடைசி எழுத்து வரை";
+Blockly.Msg.TEXT_GET_SUBSTRING_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_INPUT_IN_TEXT = "உரையில்";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FIRST = "-இல் உட்கணம் முதல் எழுத்திலிருந்து";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_END = "-இல் உட்கணம் கடைசி # எழுத்திலிருந்து";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_START = "-இல் உட்கணம் # எழுத்திலிருந்து";
+Blockly.Msg.TEXT_GET_SUBSTRING_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_TOOLTIP = "உரையின் குறியிடப்பட்ட சரம் பின்கொடு";
+Blockly.Msg.TEXT_INDEXOF_HELPURL = "https://github.com/google/blockly/wiki/Text#finding-text"; // untranslated
+Blockly.Msg.TEXT_INDEXOF_INPUT_INTEXT = "உரையில்";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_FIRST = "உரையில் முதல் தோற்ற இடத்தை பின்கொடு";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_LAST = "உரையில் கடைசி தோற்ற இடத்தை பின்கொடு";
+Blockly.Msg.TEXT_INDEXOF_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_INDEXOF_TOOLTIP = "இரண்டாவது உரையில் முதல் உரையின் முதல்/கடை இருக்கை குறிஎண்ணை பின்கொடு.";
+Blockly.Msg.TEXT_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Text#checking-for-empty-text"; // untranslated
+Blockly.Msg.TEXT_ISEMPTY_TITLE = "%1 காலியானது";
+Blockly.Msg.TEXT_ISEMPTY_TOOLTIP = "காலியானது என்றால் மெய் மதிப்பை பின்கொடு";
+Blockly.Msg.TEXT_JOIN_HELPURL = "https://github.com/google/blockly/wiki/Text#text-creation"; // untranslated
+Blockly.Msg.TEXT_JOIN_TITLE_CREATEWITH = "வைத்து உரை உருவாக்க";
+Blockly.Msg.TEXT_JOIN_TOOLTIP = "பல பொருட்களை ஒன்றாக சேர்வதன் மூலம் உரை உருவாக்க.";
+Blockly.Msg.TEXT_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_LENGTH_TITLE = "%1ன் நீளம்";
+Blockly.Msg.TEXT_LENGTH_TOOLTIP = "தொடரில் உள்ள எழுத்துக்களின் (இடைவெளிகளையும் சேர்த்து) எண்ணிகையை பின்கொடு.";
+Blockly.Msg.TEXT_PRINT_HELPURL = "https://github.com/google/blockly/wiki/Text#printing-text"; // untranslated
+Blockly.Msg.TEXT_PRINT_TITLE = "%1 அச்சிடுக";
+Blockly.Msg.TEXT_PRINT_TOOLTIP = "மதிப்பை அச்சிடு";
+Blockly.Msg.TEXT_PROMPT_HELPURL = "https://github.com/google/blockly/wiki/Text#getting-input-from-the-user"; // untranslated
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_NUMBER = "எண்-உள்ளீடு தூண்டுதலை காட்டு";
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_TEXT = "உரை-உள்ளீடு தூண்டுதலை காட்டு";
+Blockly.Msg.TEXT_PROMPT_TYPE_NUMBER = "உரை கொண்டு எண்-உள்ளீடு தூண்டுதலை காட்டு";
+Blockly.Msg.TEXT_PROMPT_TYPE_TEXT = "உரை கொண்டு உரை-உள்ளீடு தூண்டுதலை காட்டு";
+Blockly.Msg.TEXT_TEXT_HELPURL = "https://ta.wikipedia.org/wiki/%E0%AE%9A%E0%AE%B0%E0%AE%AE%E0%AF%8D_%28%E0%AE%95%E0%AE%A3%E0%AE%BF%E0%AE%A9%E0%AE%BF%E0%AE%AF%E0%AE%BF%E0%AE%AF%E0%AE%B2%E0%AF%8D%29";
+Blockly.Msg.TEXT_TEXT_TOOLTIP = "எழுத்து, சரம், சொல், அல்லது உரை சொற்தொடர்.";
+Blockly.Msg.TEXT_TRIM_HELPURL = "https://github.com/google/blockly/wiki/Text#trimming-removing-spaces"; // untranslated
+Blockly.Msg.TEXT_TRIM_OPERATOR_BOTH = "இரு பக்கத்திலும் இடைவெளி எழுத்து நேர்த்தி செய்.";
+Blockly.Msg.TEXT_TRIM_OPERATOR_LEFT = "இடது பக்கத்தில் இடைவெளி எழுத்து நேர்த்தி செய்.";
+Blockly.Msg.TEXT_TRIM_OPERATOR_RIGHT = "வலது பக்கத்தில் இடைவெளி எழுத்து நேர்த்தி செய்.";
+Blockly.Msg.TEXT_TRIM_TOOLTIP = "உரை நகல் எடுத்து இடைவெளி எழுத்து நீக்கி பின்கொடு.";
+Blockly.Msg.TODAY = "இன்று";
+Blockly.Msg.UNDO = "Undo"; // untranslated
+Blockly.Msg.VARIABLES_DEFAULT_NAME = "உருப்படி";
+Blockly.Msg.VARIABLES_GET_CREATE_SET = "'%1 நியமி' உருவாக்கு";
+Blockly.Msg.VARIABLES_GET_HELPURL = "https://github.com/google/blockly/wiki/Variables#get"; // untranslated
+Blockly.Msg.VARIABLES_GET_TOOLTIP = "இந்த மாறி மதிப்பை பின்கொடு";
+Blockly.Msg.VARIABLES_SET = "நியமி %1 இந்த மாறியிற்கு %2";
+Blockly.Msg.VARIABLES_SET_CREATE_GET = "'எடு %1' உருவாக்கு";
+Blockly.Msg.VARIABLES_SET_HELPURL = "https://github.com/google/blockly/wiki/Variables#set"; // untranslated
+Blockly.Msg.VARIABLES_SET_TOOLTIP = "மாறியின் மதிப்பாய் உள்ளீட்டு மதிப்பை வை.";
+Blockly.Msg.VARIABLE_ALREADY_EXISTS = "A variable named '%1' already exists."; // untranslated
+Blockly.Msg.PROCEDURES_DEFRETURN_TITLE = Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE;
+Blockly.Msg.CONTROLS_IF_IF_TITLE_IF = Blockly.Msg.CONTROLS_IF_MSG_IF;
+Blockly.Msg.CONTROLS_WHILEUNTIL_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_MSG_THEN = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_ELSE_TITLE_ELSE = Blockly.Msg.CONTROLS_IF_MSG_ELSE;
+Blockly.Msg.PROCEDURES_DEFRETURN_PROCEDURE = Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE;
+Blockly.Msg.LISTS_GET_SUBLIST_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.LISTS_GET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.PROCEDURES_DEFRETURN_DO = Blockly.Msg.PROCEDURES_DEFNORETURN_DO;
+Blockly.Msg.CONTROLS_IF_ELSEIF_TITLE_ELSEIF = Blockly.Msg.CONTROLS_IF_MSG_ELSEIF;
+Blockly.Msg.LISTS_GET_INDEX_HELPURL = Blockly.Msg.LISTS_INDEX_OF_HELPURL;
+Blockly.Msg.CONTROLS_FOREACH_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_SET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TITLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_APPEND_VARIABLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.LISTS_INDEX_OF_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.PROCEDURES_DEFRETURN_COMMENT = Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT; \ No newline at end of file
diff --git a/blockly/msg/js/tcy.js b/blockly/msg/js/tcy.js
new file mode 100644
index 0000000..47fbb0c
--- /dev/null
+++ b/blockly/msg/js/tcy.js
@@ -0,0 +1,391 @@
+// This file was automatically generated. Do not modify.
+
+'use strict';
+
+goog.provide('Blockly.Msg.tcy');
+
+goog.require('Blockly.Msg');
+
+Blockly.Msg.ADD_COMMENT = "ಟಿಪ್ಪಣಿ ಸೇರ್ಸಲೆ";
+Blockly.Msg.CHANGE_VALUE_TITLE = "ಮೌಲ್ಯೊದ ಬದಲಾವಣೆ";
+Blockly.Msg.CLEAN_UP = "ನಿರ್ಬಂದೊಲೆನ್ ಸ್ವೊಚ್ಚೊ ಮಲ್ಪುಲೆ";
+Blockly.Msg.COLLAPSE_ALL = "ಕುಗ್ಗಿಸಾದ್ ನಿರ್ಬಂಧಿಸಾಪುನೆ";
+Blockly.Msg.COLLAPSE_BLOCK = "ಕುಗ್ಗಿಸಾದ್ ತಡೆಪತ್ತುನೆ";
+Blockly.Msg.COLOUR_BLEND_COLOUR1 = "ಬಣ್ಣೊ ೧(ಒಂಜಿ)";
+Blockly.Msg.COLOUR_BLEND_COLOUR2 = "ಬಣ್ಣೊ ೨(ರಡ್ಡ್)";
+Blockly.Msg.COLOUR_BLEND_HELPURL = "http://meyerweb.com/eric/tools/color-blend/"; // untranslated
+Blockly.Msg.COLOUR_BLEND_RATIO = "ಅನುಪಾತೊ";
+Blockly.Msg.COLOUR_BLEND_TITLE = "ಮಿಸ್ರನೊ";
+Blockly.Msg.COLOUR_BLEND_TOOLTIP = "ಕೊರ್‍ನ ಅನುಪಾತೊದ ಒಟ್ಟುಗೆ (0.0- 1.0 ) ರಡ್ಡ್ ಬಣ್ಣೊಲೆನ್ ಜೊತೆಟ್ ಒಂಜಿ ಮಲ್ಪುಂಡು.";
+Blockly.Msg.COLOUR_PICKER_HELPURL = "https://en.wikipedia.org/wiki/ಬಣ್ಣೊ";
+Blockly.Msg.COLOUR_PICKER_TOOLTIP = "ವರ್ಣಫಲಕೊದ ಒಂಜಿ ಬಣ್ಣೊದ ಆಯ್ಕೆ.";
+Blockly.Msg.COLOUR_RANDOM_HELPURL = "http://randomcolour.com"; // untranslated
+Blockly.Msg.COLOUR_RANDOM_TITLE = "ಯಾದೃಚ್ಛಿಕೊ ಬಣ್ಣೊ";
+Blockly.Msg.COLOUR_RANDOM_TOOLTIP = "ಯಾದೃಚ್ಛಿಕವಾಯಿನ ಬಣ್ಣೊದ ಆಯ್ಕೆ.";
+Blockly.Msg.COLOUR_RGB_BLUE = "ನೀಲಿ";
+Blockly.Msg.COLOUR_RGB_GREEN = "ಪಚ್ಚೆ";
+Blockly.Msg.COLOUR_RGB_HELPURL = "http://www.december.com/html/spec/colorper.html"; // untranslated
+Blockly.Msg.COLOUR_RGB_RED = "ಕೆಂಪು ಬಣ್ಣೊ";
+Blockly.Msg.COLOUR_RGB_TITLE = "ಬಣ್ಣೊದೊಟ್ಟುಗೆ";
+Blockly.Msg.COLOUR_RGB_TOOLTIP = "ತೋಜಿಪಾಯಿನ ಕೆಂಪು, ಪಚ್ಚೆ ಬುಕ್ಕೊ ನೀಲಿ ಬಣ್ಣೊದ ಪ್ರಮಾಣೊನು ರಚಿಸಲೆ. ಮಾಂತ ಮೌಲ್ಯೊಲು 0 ಬುಕ್ಕೊ 100 ನಡುಟೆ ಇಪ್ಪೊಡು.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_HELPURL = "https://github.com/google/blockly/wiki/Loops#loop-termination-blocks"; // untranslated
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK = "ಕುಣಿಕೆದ ಪಿದಯಿ ತುಂಡಾಪುಂಡು";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE = "ದುಂಬುದ ಆದೇಸೊಡೆ ಪುನರಾವರ್ತನೆ ದುಂಬರಿಪ್ಪುಂಡು";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK = "ಬಳಕೆಡುಪ್ಪುನ ಕೊಲಿಕೆಡ್ದ್ ಪಿದಯಿ ಪಾಡ್‍ಲೆ";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE = "ದುಂಬುದ ಆವೃತಿಡ್ ಉಪ್ಪುನಂಚನೆ ಮಾಂತ ಕೊಲಿಕೆಲೆನ್ ದೆತ್ಪುಲೆ ಬುಕ್ಕೊ ದುಂಬರಿಲೆ";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_WARNING = "ಎಚ್ಚರೊ: ಈ ನಿರ್ಬಂದೊನು ಕೇವಲ ಒಂಜಿ ಕೊಲಿಕೆದಾಕಾರೊದ ಮುಕ್ತಮಾರ್ಗೊದ ಪರಿಮಿತಿದುಲಯಿಡ್ ಬಳಸೊಲಿ";
+Blockly.Msg.CONTROLS_FOREACH_HELPURL = "https://github.com/google/blockly/wiki/Loops#for-each"; // untranslated
+Blockly.Msg.CONTROLS_FOREACH_TITLE = "ಅತ್ತಂದೆ ಪ್ರತೀ ಅಂಸೊ %1ದ ಉಲಯಿ %2ದ ಪಟ್ಟಿ";
+Blockly.Msg.CONTROLS_FOREACH_TOOLTIP = "ಒಂಜಿ ಪಟ್ಟಿಡ್ ಪ್ರತಿ ವಸ್ತುಗು, ಜೋಡಾಯಿನ ವಸ್ತು ಬದಲಾಪುನಂಚ '% 1', ಬುಕ್ಕೊ ಒಂತೆ ಹೇಳಿಕೆಲೆನ್ ಮಲ್ಲಪುಲೆ.";
+Blockly.Msg.CONTROLS_FOR_HELPURL = "https://github.com/google/blockly/wiki/Loops#count-with"; // untranslated
+Blockly.Msg.CONTROLS_FOR_TITLE = "%1ಡ್ದ್ %2ಗ್ ಮುಟ್ಟ %3 ಬುಕ್ಕೊ %4ನ್ ಒಟ್ಟೂಗು ಗೆನ್ಪಿ";
+Blockly.Msg.CONTROLS_FOR_TOOLTIP = "ಸುರೂತ ನಂಬ್ರೊಡ್ದು ಅಕೇರಿದ ನಂಬ್ರೊಗು ಬಿಲೆಟ್ ಮಸ್ತ್ ಹೆಚ್ಚ್‌ಕಮ್ಮಿ ಇತ್ತ್ಂಡಲಾ %1 ದೆತೊಂದ್, ನಿರ್ದಿಸ್ಟೊ ಮಧ್ಯಂತರೊದ ಮೂಲಕೊ ಲೆಕ್ಕೊದೆತೊಂದು ಬುಕ್ಕೊ ನಿಗಂಟ್ ಮಲ್ತ್‌ನ ಬ್ಲಾಕ್‍ಲೆನ್ ಲೆಕ್ಕೊ ಮಲ್ಪುಲ.";
+Blockly.Msg.CONTROLS_IF_ELSEIF_TOOLTIP = "ಒಂಜಿ ವೇಲೆ ಒಂಜಿ ತಡೆಕ್ ಈ ಪರಿಸ್ಥಿತಿನ್ ಸೇರಲೆ";
+Blockly.Msg.CONTROLS_IF_ELSE_TOOLTIP = "ಒಂಜಿ ವೇಲೆ ಮಾಂತೆನ್ಲಾ ದೀಡೊಂದು ಅಕೇರಿದ ಪರಿಸ್ಥಿಡ್ ಸೇರಲೆ";
+Blockly.Msg.CONTROLS_IF_HELPURL = "https://github.com/google/blockly/wiki/IfElse"; // untranslated
+Blockly.Msg.CONTROLS_IF_IF_TOOLTIP = "ಸೇರಲ, ದೆತ್ತ್‌ ಪಾಡ್‌ಲ, ಅತ್ತಂಡ ಒಂಜಿ ವೇಲೆ ಈ ರಚನೆನ್ ತಡೆದ್, ಇಂದೆತ ಇಬಾಗೊಲೆನ್ ಬೇತೆ ಕ್ರಮೊಟು ಮಲ್ಪುಲೆ";
+Blockly.Msg.CONTROLS_IF_MSG_ELSE = "ಬೇತೆ";
+Blockly.Msg.CONTROLS_IF_MSG_ELSEIF = "ಬೇತೆ ಸಮಯೊ";
+Blockly.Msg.CONTROLS_IF_MSG_IF = "ಒಂಜಿ ವೇಲೆ";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_1 = "ಇಂದೆತ ಮೌಲ್ಯೊ ನಿಜವಾದಿತ್ತ್‌ಂಡ, ಬುಕ್ಕೊ ಒಂತೆ ನಿರೂಪಣೆಲೆನ್ ಮಲ್ಪುಲೆ";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_2 = "ಇಂದೆತ ಮೌಲ್ಯೊ ನಿಜವಾದಿತ್ತ್‌ಂಡ, ಬುಕ್ಕೊದ ನಿರೂಪಣೆಲೆನ್ ಸುರೂಕು ಮಲ್ಪುಲೆ. ಅತ್ತಂಡ ರಡ್ಡನೆದ ನಿರೂಪಣೆನ್ ತಡೆ ಪತ್ತುನಂಚನೆ ಮಲ್ಲಪುಲೆ";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_3 = "ಸುರೂತ ಮೌಲ್ಯೊ ನಿಜವಾದಿತ್ತ್‌ಂಡ, ಬುಕ್ಕೊದ ನಿರೂಪಣೆಲೆನ್ ಸುರೂಕು ತಡೆ ಮಲ್ಪುಲೆ. ಅತ್ತಂಡ ರಡ್ಡನೆದ ನಿರೂಪಣೆನ್ ನಿಜವಾದಿತ್ತ್‌ಂಡ ಬುಕ್ಕೊ ಒಂತೆ ನಿರೂಪಣೆಲೆನ್ ಮಲ್ಪುಲೆ";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_4 = "ಸುರೂತ ಮೌಲ್ಯೊ ನಿಜವಾದಿತ್ತ್‌ಂಡ, ಸುರೂತ ನಿರೂಪಣೆನ್ ತಡೆ ಮಲ್ಪುಲೆ. ರಡ್ಡನೆದ ನಿರೂಪಣೆ ನಿಜವಾದಿತ್ತ್ಂಡ, ರಡ್ಡನೆದ ನಿರೂಪಣೆನ್ ತಡೆ ಮಲ್ಪುಲೆ. ಉಂದು ಒವ್ವೇ ಮೌಲ್ಯೊ ನಿಜವಾದಿದ್ಯಂಡ, ಅಕೇರಿದ ನಿರೂಪಣೆನ್ ತಡೆ ಮಲ್ಪುಲೆ.";
+Blockly.Msg.CONTROLS_REPEAT_HELPURL = "https://en.wikipedia.org/wiki/For_loop";
+Blockly.Msg.CONTROLS_REPEAT_INPUT_DO = "ಮಲ್ಪು / ಅಂಚನೆ";
+Blockly.Msg.CONTROLS_REPEAT_TITLE = "ನಾನೊರೊ %1 ಸಮಯೊಗು";
+Blockly.Msg.CONTROLS_REPEAT_TOOLTIP = "ಕೆಲವು ಹೇಳಿಕೆಲೆನ್ ಮಸ್ತ್ ಸಮಯೊ ಮಲ್ಪೊಡು";
+Blockly.Msg.CONTROLS_WHILEUNTIL_HELPURL = "https://github.com/google/blockly/wiki/Loops#repeat"; // untranslated
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "ಬುಕ್ಕೊ ಮುಟ್ಟೊ";
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "ಬುಕ್ಕೊ ಅಂಚನೇ";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "ಈ ತಿರ್ತ್‍ದ ತಪ್ಪಾದುಂಡು, ಬುಕ್ಕೊದ ಕೆಲವು ಹೇಳಿಕೆಲೆನ್ ಮಲ್ಪಪುಲ";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "ಈ ತಿರ್ತ್‌ದ ಸರಿ ಇತ್ತ್ಂಡಲಾ, ಬುಕ್ಕೊದ ಕೆಲವು ಹೇಳಿಕೆಲೆನ್ ಮಲ್ಪುಲ";
+Blockly.Msg.DELETE_ALL_BLOCKS = "ಮಾತ %1 ನಿರ್ಬಂದೊಲೆನ್ ದೆತ್ತ್ ಪಾಡ್ಲೆ ?";
+Blockly.Msg.DELETE_BLOCK = "ಮಾಜಯರ ತಡೆಯಾತ್ಂಡ್";
+Blockly.Msg.DELETE_VARIABLE = "Delete the '%1' variable"; // untranslated
+Blockly.Msg.DELETE_VARIABLE_CONFIRMATION = "Delete %1 uses of the '%2' variable?"; // untranslated
+Blockly.Msg.DELETE_X_BLOCKS = "ಮಾಜಯರ ಶೇಕಡಾ ೧ ತಡೆಯಾತ್ಂಡ್";
+Blockly.Msg.DISABLE_BLOCK = "ನಿಷ್ಕ್ರಿಯಗೊಳಿಸಾದ್ ತಡೆಪತ್ತುನೆ";
+Blockly.Msg.DUPLICATE_BLOCK = "ನಕಲ್";
+Blockly.Msg.ENABLE_BLOCK = "ಸಕ್ರಿಯಗೊಳಿಸಾದ್ ತಡೆಪತ್ತುನೆ";
+Blockly.Msg.EXPAND_ALL = "ವಿಸ್ತರಿಸಾದ್ ನಿರ್ಬಂದಿಸಾಪುನೆ";
+Blockly.Msg.EXPAND_BLOCK = "ವಿಸ್ತರಿಸಾದ್ ತಡೆಪತ್ತುನೆ";
+Blockly.Msg.EXTERNAL_INPUTS = "ಬಾಹ್ಯೊ ಪರಿಕರೊ";
+Blockly.Msg.HELP = "ಸಹಾಯೊ";
+Blockly.Msg.INLINE_INPUTS = "ಉಳಸಾಲ್‍ದ ಉಳಪರಿಪು";
+Blockly.Msg.LISTS_CREATE_EMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-empty-list"; // untranslated
+Blockly.Msg.LISTS_CREATE_EMPTY_TITLE = "ಕಾಲಿ ಪಟ್ಟಿನ್ ಸ್ರಿಸ್ಟಿಸಲೆ";
+Blockly.Msg.LISTS_CREATE_EMPTY_TOOLTIP = "ಒಂಜಿ ಪಟ್ಟಿ, ೦ದ ಉದ್ದೊ, ಒವ್ವೇ ಅಂಕಿಅಂಸೊ ಇದ್ಯಾಂತಿನ ದಾಖಲೆ ಪಿರಕೊರು.";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TITLE_ADD = "ಪಟ್ಟಿ";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TOOLTIP = "ಸೇರಯರ, ದೆತ್ತ್‌ ಪಾಡೆರೆ ಅತ್ತಂಡ ಈ ಪಟ್ಯೊಲೆನ್ ತಡೆದ್ ಪತ್ತ್‌ದ್ ಇಬಾಗೊ ಮಲ್ಪುಲೆ.";
+Blockly.Msg.LISTS_CREATE_WITH_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
+Blockly.Msg.LISTS_CREATE_WITH_INPUT_WITH = "ಜತೆ ಪಟ್ಟಿನ್ ರಚಿಸಲೆ";
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TOOLTIP = "ಪಟ್ಟಿಡ್ ಕೆಲವು ಅಂಸೊಲೆನ್ ಸೇರಲೆ.";
+Blockly.Msg.LISTS_CREATE_WITH_TOOLTIP = "ಒವ್ವೇ ಸಂಖ್ಯೆದ ಪಟ್ಟಿಲೆ ಅಂಸೊದೊಟ್ಟುಗೆ ರಚಿಸಲೆ";
+Blockly.Msg.LISTS_GET_INDEX_FIRST = "ಸುರುತ";
+Blockly.Msg.LISTS_GET_INDEX_FROM_END = "# ಅಕೇರಿಡ್ದ್";
+Blockly.Msg.LISTS_GET_INDEX_FROM_START = "#"; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_GET = "ದೆತೊನು";
+Blockly.Msg.LISTS_GET_INDEX_GET_REMOVE = "ದೆತೊನಿಯರ ಬುಕ್ಕೊ ದೆಪ್ಪೆರೆ";
+Blockly.Msg.LISTS_GET_INDEX_LAST = "ಕಡೆತ";
+Blockly.Msg.LISTS_GET_INDEX_RANDOM = "ಗೊತ್ತು ಗುರಿದಾಂತಿನ";
+Blockly.Msg.LISTS_GET_INDEX_REMOVE = "ದೆಪ್ಪುಲೆ";
+Blockly.Msg.LISTS_GET_INDEX_TAIL = ""; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FIRST = "ಸುರುತ ಅಂಸೊಲೆನ ಪಟ್ಟಿನ್ ಪಿರಕೊರು.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FROM = "ನಿರ್ದಸ್ಟೊ ಜಾಗೆಡುಪ್ಪುನ ಅಂಸೊಲೆ ಪಟ್ಟಿನ್ ಪಿರಕೊರು";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_LAST = "ಅಕೇರಿದ ಅಂಸೊಲೆನ ಪಟ್ಟಿನ್ ಪಿರಕೊರು.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_RANDOM = "ಗೊತ್ತುಗುರಿದಾಂತಿನ ಅಂಸೊಲೆನ ಪಟ್ಟಿನ್ ಪಿರಕೊರು.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST = "ಸುರುತ ಅಂಸೊಲೆನ ಪಟ್ಟಿನ್ ದೆಪ್ಪು ಅತ್ತಂಡ ಪಿರಕೊರು.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM = "ನಿರ್ದಿಸ್ಟೊ ಜಾಗೆಡುಪ್ಪುನ ಅಂಸೊಲೆ ಪಟ್ಟಿನ್ ದೆಪ್ಪು ಅತ್ತಂಡ ಪಿರಕೊರು";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST = "ಅಕೇರಿದ ಅಂಸೊಲೆನ ಪಟ್ಟಿನ್ ದೆಪ್ಪು ಅತ್ತಂಡ ಪಿರಕೊರು.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM = "ಗೊತ್ತುಗುರಿದಾಂತಿನ ಅಂಸೊಲೆನ ಪಟ್ಟಿನ್ ದೆಪ್ಪು ಅತ್ತಂಡ ಪಿರಕೊರು.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST = "ಸುರುತ ಅಂಸೊಲೆನ ಪಟ್ಟಿನ್ ದೆಪ್ಪು.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM = "ನಿರ್ದಿಸ್ಟೊ ಜಾಗೆಡುಪ್ಪುನ ಅಂಸೊಲೆ ಪಟ್ಟಿನ್ ದೆಪ್ಪುಲೆ";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST = "ಅಕೇರಿದ ಅಂಸೊಲೆನ ಪಟ್ಟಿನ್ ದೆಪ್ಪು.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM = "ಗೊತ್ತುಗುರಿದಾಂತಿನ ಅಂಸೊಲೆನ ಪಟ್ಟಿನ್ ದೆಪ್ಪು.";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_END = "ಡ್ದ್ # ಅಕೇರಿಗ್";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_START = "ಡ್ದ್";
+Blockly.Msg.LISTS_GET_SUBLIST_END_LAST = "ಅಕೇರಿಡ್ದ್";
+Blockly.Msg.LISTS_GET_SUBLIST_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-a-sublist"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_START_FIRST = "ಉಪ-ಪಟ್ಯೊನು ಸುರುಡ್ದು ದೆತೊನು";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_END = "ಉಪ-ಪಟ್ಯೊನು ದೆತೊನು#ಅಕೇರಿಡ್ದ್";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_START = "ಉಪ-ಪಟ್ಯೊನು ದೆತೊನು#";
+Blockly.Msg.LISTS_GET_SUBLIST_TAIL = ""; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_TOOLTIP = "ಪಟ್ಯೊದ ನಿರ್ದಿಷ್ಟ ಬಾಗೊದ ಪ್ರತಿನ್ ಸ್ರಸ್ಟಿಸವುಂಡು.";
+Blockly.Msg.LISTS_INDEX_FROM_END_TOOLTIP = "%1 ಅಕೇರಿತ ಅಂಸೊ";
+Blockly.Msg.LISTS_INDEX_FROM_START_TOOLTIP = "%1 ಸುರುತ ಅಂಸೊ";
+Blockly.Msg.LISTS_INDEX_OF_FIRST = "ದುಂಬು ಕರಿನ ಪಟ್ಯೊನು ನಾಡ್‍ಲೆ";
+Blockly.Msg.LISTS_INDEX_OF_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-items-from-a-list"; // untranslated
+Blockly.Msg.LISTS_INDEX_OF_LAST = "ಅಕೆರಿಗ್ ಕರಿನ ಪಟ್ಯೊನು ನಾಡ್‍ಲೆ";
+Blockly.Msg.LISTS_INDEX_OF_TOOLTIP = "ಸುರುತ ಪಟ್ಯೊದ ಸೂಚ್ಯಿ/ಅಕೇರಿಟ್ ಸಂಭವಿಸವುನ ಸುರುತ ಪಟ್ಟಯೊದುಲಯಿದ ರಡ್ಡನೆ ಪಟ್ಯೊನು ಪಿರಕೊರು. %1 ಪಟ್ಯೊ ತಿಕಂದಿತ್ತ್‌ಂಡ ಪಿರಕೊರು.";
+Blockly.Msg.LISTS_INLIST = "ಪಟ್ಟಿಡ್";
+Blockly.Msg.LISTS_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#is-empty"; // untranslated
+Blockly.Msg.LISTS_ISEMPTY_TITLE = "%1 ಕಾಲಿ";
+Blockly.Msg.LISTS_ISEMPTY_TOOLTIP = "ಪಟ್ಯೊ ಕಾಲಿ ಪನ್ಪುನವು ಸತ್ಯೊ ಆಂಡ ಪಿರಕೊರು.";
+Blockly.Msg.LISTS_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Lists#length-of"; // untranslated
+Blockly.Msg.LISTS_LENGTH_TITLE = "೧% ಉದ್ದೊ";
+Blockly.Msg.LISTS_LENGTH_TOOLTIP = "ಪಟ್ಟಿದ ಉದ್ದೊನು ಪಿರಕೊರು.";
+Blockly.Msg.LISTS_REPEAT_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
+Blockly.Msg.LISTS_REPEAT_TITLE = "%1 ಪಿರೊರ %2 ಕಾಲೊಡು ಪಟ್ಟಿಲೆನ ಅಂಸೊನು ರಚಿಸಲೆ.";
+Blockly.Msg.LISTS_REPEAT_TOOLTIP = "ಕೊರ್‍ನ ಮೌಲ್ಯಡು ನಿರ್ದಿಷ್ಟ ಕಾಲೊಡು ಪಿರೊತ ಪಟ್ಟಿನ್ ರಚಿಸಲೆ.";
+Blockly.Msg.LISTS_SET_INDEX_HELPURL = "https://github.com/google/blockly/wiki/Lists#in-list--set"; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_INPUT_TO = "ಅಂಚ";
+Blockly.Msg.LISTS_SET_INDEX_INSERT = "ಸೇರಲ";
+Blockly.Msg.LISTS_SET_INDEX_SET = "ಮಾಲ್ಪು";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST = "ಸುರುತ ಅಂಸೊಲೆ ಪಟ್ಟಿನ್ ಸೇರಲ.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FROM = "ನಿರ್ದಿಸ್ಟೊ ಜಾಗೆಡುಪ್ಪುನ ಅಂಸೊಲೆ ಪಟ್ಟಿನ್ ಸೇರಲ";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_LAST = "ಪಟ್ಟಿದ ಅಕೇರಿಗ್ ಈ ಅಂಸೊಲೆನ್ ಸೇರಲ.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM = "ಪಟ್ಟಿಗ್ ಗೊತ್ತುಗುರಿದಾಂತೆ ಅಂಸೊಲೆನ್ ಸೇರಲ.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FIRST = "ಸುರುತ ಅಂಸೊಲೆನ ಪಟ್ಟಿನ್ ಮಾಲ್ಪು.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FROM = "ನಿರ್ದಿಸ್ಟೊ ಜಾಗೆಡುಪ್ಪುನ ಅಂಸೊಲೆ ಪಟ್ಟಿನ್ ಮಾಲ್ಪು";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_LAST = "ಅಕೇರಿದ ಅಂಸೊಲೆನ ಪಟ್ಟಿನ್ ಮಾಲ್ಪು.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_RANDOM = "ಗೊತ್ತುಗುರಿದಾಂತಿನ ಅಂಸೊಲೆನ ಪಟ್ಟಿನ್ ಮಾಲ್ಪು.";
+Blockly.Msg.LISTS_SORT_HELPURL = "https://github.com/google/blockly/wiki/Lists#sorting-a-list";
+Blockly.Msg.LISTS_SORT_ORDER_ASCENDING = "ಮಿತ್ತ್ ಪೋಪುನೆ";
+Blockly.Msg.LISTS_SORT_ORDER_DESCENDING = "ತಿರ್ತ್ ಪೋಪುನೆ";
+Blockly.Msg.LISTS_SORT_TITLE = "%1 %2 %3 ಇಂಗಡಿಪು";
+Blockly.Msg.LISTS_SORT_TOOLTIP = "ಪಟ್ಟಿಲೆ ಪ್ರತಿನ್ ಇಂಗಡಿಪುಲೆ";
+Blockly.Msg.LISTS_SORT_TYPE_IGNORECASE = "ಅಕ್ಷರೊಲು, ಸಂದರ್ಭೊಡು ನಿರ್ಲಕ್ಷಿಸಲೆ";
+Blockly.Msg.LISTS_SORT_TYPE_NUMERIC = "ಸಂಕೇತೊ";
+Blockly.Msg.LISTS_SORT_TYPE_TEXT = "ಅಕ್ಷರೊಲು";
+Blockly.Msg.LISTS_SPLIT_HELPURL = "https://github.com/google/blockly/wiki/Lists#splitting-strings-and-joining-lists"; // untranslated
+Blockly.Msg.LISTS_SPLIT_LIST_FROM_TEXT = "ಪಟ್ಯೊಲೆ ಪಟ್ಟಿನ್ ತಯಾರ್ ಮಲ್ಪುಲೆ";
+Blockly.Msg.LISTS_SPLIT_TEXT_FROM_LIST = "ಪಟ್ಟಿದ ಪಟ್ಯೊನು ತಯಾರ್ ಮಲ್ಪುಲೆ";
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_JOIN = "ಒಂಜಿ ಗ್ರಂತೊಡ್ದು ಒಂಜಿ ಪಟ್ಯೊದ ಪಟ್ಟಿಗ್ ಸೇರಾದ್, ಮಿತಿಸೂಚಕೊದ ಮೂಲಕೊ ಬೇತೆ ಮಲ್ಪುಲೆ.";
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_SPLIT = "ಗ್ರಂತೊಲೆನ ಪಟ್ಟಿಡ್ದ್ ಪಟ್ಯೊಲೆನ್ ಬೇತೆ ಮಾಲ್ತ್‌ಂಡ,ಪ್ರತಿ ಮಿತಿಸೂಚಕೊಡು ಬೇತೆ ಆಪುಂಡು.";
+Blockly.Msg.LISTS_SPLIT_WITH_DELIMITER = "ಮಿತಿಸೂಚಕೊದ ಒಟ್ಟುಗು";
+Blockly.Msg.LOGIC_BOOLEAN_FALSE = "ಸುಲ್ಲು";
+Blockly.Msg.LOGIC_BOOLEAN_HELPURL = "https://github.com/google/blockly/wiki/Logic#values"; // untranslated
+Blockly.Msg.LOGIC_BOOLEAN_TOOLTIP = "ಪೂರ ಸತ್ಯೊ ಅತ್ತಂಡ ಸುಲ್ಲು ಆಂಡ ಪಿರಕೊರು";
+Blockly.Msg.LOGIC_BOOLEAN_TRUE = "ಸತ್ಯೊ";
+Blockly.Msg.LOGIC_COMPARE_HELPURL = "https://en.wikipedia.org/wiki/Inequality_(mathematics)"; // untranslated
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_EQ = "ರಡ್ಡ್ ಅತ್ತಂದೆ ಬೇತೆ ಸೂಚನೆಲು ನಿಜೊಕ್ಕುಲಾ ಸಮೊ ಇತ್ತ್ಂಡ ಪಿರ ಕೊರ್ಲೆ.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GT = "ಸುರುತ ಅತ್ತಂದೆ ರಡ್ಡನೆದ ಸೂಚನೆಡ್ದ್ ನಿಜೊಕ್ಕುಲಾ ಮಲ್ಲೆ ಆದಿತ್ತ್ಂಡ ಪಿರ ಕೊರ್ಲೆ";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GTE = "ಸುರುತ ಅತ್ತಂದೆ ರಡ್ಡನೆದ ಸೂಚನೆ ನಿಜೊಕ್ಕುಲಾ ದಿಂಜ ಮಲ್ಲೆ ಅತ್ತಂಡ ಸಮೊ ಆದಿತ್ತ್ಂಡ ಪಿರ ಕೊರ್ಲೆ";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LT = "ಸುರುತ ಅತ್ತಂದೆ ರಡ್ಡನೆದ ಸೂಚನೆ ನಿಜೊಕ್ಕುಲಾ ಒಂಜಿ ವೇಲೆ ಎಲ್ಯೆ ಆದಿತ್ತ್ಂಡ ಪಿರ ಕೊರ್ಲೆ";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LTE = "ಸುರುತ ಅತ್ತಂದೆ ರಡ್ಡನೆದ ಸೂಚನೆ ನಿಜೊಕ್ಕುಲಾ ದಿಂಜ ಎಲ್ಯೆ ಅತ್ತಂಡ ಸಮೊ ಆದಿತ್ತ್ಂಡ ಪಿರ ಕೊರ್ಲೆ";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_NEQ = "ರಡ್ಡ್ ಅತ್ತಂದೆ ಬೇತೆ ಸೂಚನೆಲು ನಿಜೊಕ್ಕುಲಾ ಸಮೊ ಆತಿಜಂಡ ಪಿರ ಕೊರ್ಲೆ";
+Blockly.Msg.LOGIC_NEGATE_HELPURL = "https://github.com/google/blockly/wiki/Logic#not"; // untranslated
+Blockly.Msg.LOGIC_NEGATE_TITLE = "%1 ಇದ್ದಿ";
+Blockly.Msg.LOGIC_NEGATE_TOOLTIP = "ನಿಜವಾದ್‍ ಇನ್‍ಪುಟ್ ಸುಲ್ಲಾದಿತ್ತ್‌ಂಡ ಪಿರಕೊರು. ನಿಜವಾದ್ ಸುಲ್ಲು ಇನ್‍ಪುಟ್ ಇತ್ತ್‌ಂಡ ಪಿರಕೊರು";
+Blockly.Msg.LOGIC_NULL = "ಸೊನ್ನೆ";
+Blockly.Msg.LOGIC_NULL_HELPURL = "https://en.wikipedia.org/wiki/Nullable_type"; // untranslated
+Blockly.Msg.LOGIC_NULL_TOOLTIP = "ಸೊನ್ನೆನ್ ಪರಿಕೊರ್ಪುಂಡು";
+Blockly.Msg.LOGIC_OPERATION_AND = "ಬುಕ್ಕೊ";
+Blockly.Msg.LOGIC_OPERATION_HELPURL = "https://github.com/google/blockly/wiki/Logic#logical-operations"; // untranslated
+Blockly.Msg.LOGIC_OPERATION_OR = "ಅತ್ತಂಡ";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_AND = "ರಡ್ಡ್ ಸೂಚನೆಲಾ ನಿಜೊ ಆದಿತ್ತ್ಂಡ ನಿಜವಾತ್ ಪಿರಕೊರ್ಲೆ";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_OR = "ನಿಜವಾದ್‍ಲ ಒಂಜಿವೇಳೆ ಇನ್‍ಪುಟ್ ಒಂತೆ ನಿಜವಾದಿತ್ತ್ಂಡ ಪಿರಕೊರು";
+Blockly.Msg.LOGIC_TERNARY_CONDITION = "ಪರೀಕ್ಷೆ";
+Blockly.Msg.LOGIC_TERNARY_HELPURL = "https://en.wikipedia.org/wiki/%3F:"; // untranslated
+Blockly.Msg.LOGIC_TERNARY_IF_FALSE = "ಒಂಜಿ ವೇಲೆ ಸುಳ್ಳು";
+Blockly.Msg.LOGIC_TERNARY_IF_TRUE = "ಒಂಜಿ ವೇಲೆ ಸತ್ಯೊ";
+Blockly.Msg.LOGIC_TERNARY_TOOLTIP = "ಪರೀಕ್ಷೆದ ಸ್ಥಿತಿನ್ ಪರಿಶೀಲನೆ ಮಲ್ಲಪುಲೆ. ಪರಿಸ್ಥಿತಿ ನಿಜವಾದಿತ್ತ್ಂಡ, ನಿಜವಾಯಿನ ಮೌಲ್ಯೊನು ಪಿರಕೊರ್ಲೆ; ಅತ್ತಂಡ ತಪ್ಪು ಮೌಲ್ಯೊನೇ ಪಿರ ಕೊರ್ಲೆ.";
+Blockly.Msg.MATH_ADDITION_SYMBOL = "+"; // untranslated
+Blockly.Msg.MATH_ARITHMETIC_HELPURL = "https://en.wikipedia.org/wiki/ಅಂಕಗಣಿತ";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_ADD = "ಸಂಖ್ಯೆದ ಮೊತ್ತನ್ ಪಿರ ಕೊರು.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE = "ಸಂಖ್ಯೆದ ಭಾಗಲಬ್ದೊನು ಪಿರ ಕೊರು.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MINUS = "ಸಂಖ್ಯೆದ ವ್ಯತ್ಯಾಸೊನು ಪರಕೊರು.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MULTIPLY = "ಸಂಖ್ಯೆದ ಉತ್ಪನ್ನೊನು ಪಿರ ಕೊರು.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_POWER = "ಒಂಜನೆ ಸಂಖ್ಯೆದ ಶಕ್ತಿನ್ ರಡ್ಡನೆ ಸಂಖ್ಯೆಡ್ದ್ ಪಿರ ಹೆಚ್ಚಿಗೆ ಮಲ್ಪುಲೆ.";
+Blockly.Msg.MATH_CHANGE_HELPURL = "https://en.wikipedia.org/wiki/Programming_idiom#Incrementing_a_counter"; // untranslated
+Blockly.Msg.MATH_CHANGE_TITLE = "%1 ಡ್ದ್ %2 ಬದಲಾಯಿಸವೊಲಿ";
+Blockly.Msg.MATH_CHANGE_TOOLTIP = "'%1' ಬದಲ್ ಮಲ್ಪುನಂಚಿನ ಒಂಜಿ ನಂಬರ್‍ನ್ ಸೇರಾವು";
+Blockly.Msg.MATH_CONSTANT_HELPURL = "https://en.wikipedia.org/wiki/ಗಣಿತ_ನಿರಂತರ";
+Blockly.Msg.MATH_CONSTANT_TOOLTIP = "ಸಾಮಾನ್ಯವಾದ್ ಒಂಜಿ ಸ್ಥಿರವಾದಿತ್ತ್‌ಂಡ ಪಿರಕೊರು: π (3.141…), e (2.718…), φ (1.618…), sqrt(2) (1.414…), sqrt(½) (0.707…), or ∞ (infinity).";
+Blockly.Msg.MATH_CONSTRAIN_HELPURL = "https://en.wikipedia.org/wiki/Clamping_%28graphics%29"; // untranslated
+Blockly.Msg.MATH_CONSTRAIN_TITLE = " %1 ಕಮ್ಮಿ %2 ಜಾಸ್ತಿ %3 ಕಡ್ಡಾಯ ಮಲ್ಪು";
+Blockly.Msg.MATH_CONSTRAIN_TOOLTIP = "ನಿಗದಿತ ನಿಯಮೊಗು ನಡುಟು ದಿಂಜ ನಿರ್ಬಂದೊ(ಸೇರ್‍ನಂಚ)";
+Blockly.Msg.MATH_DIVISION_SYMBOL = "÷"; // untranslated
+Blockly.Msg.MATH_IS_DIVISIBLE_BY = "ಭಾಗಿಸವೊಲಿಯ";
+Blockly.Msg.MATH_IS_EVEN = "ಸಮೊ ಆತ್ಂಡ್";
+Blockly.Msg.MATH_IS_NEGATIVE = "ರುನೊ ಆತ್ಂಡ್";
+Blockly.Msg.MATH_IS_ODD = "ಬೆಸೊ ಆತ್ಂಡ್";
+Blockly.Msg.MATH_IS_POSITIVE = "ಗುನೊ ಆತ್ಂಡ್";
+Blockly.Msg.MATH_IS_PRIME = "ಎಡ್ಡೆ ಆತ್ಂಡ್";
+Blockly.Msg.MATH_IS_TOOLTIP = "ಒಂಜಿ ವೇಲ್ಯೊ ಸಂಖ್ಯೆ ಸರಿ, ಬೆಸ, ಅವಿಭಾಜ್ಯ, ಇಡೀ, ಕೂಡಬುನ, ಕಲೆವುನ, ಅತ್ತಂಡ ನಿರ್ದಿಷ್ಟ ಸಂಖ್ಯೆಡ್ದ್ ಭಾಗಿಸವುಂಡಂದ್ ಪರಿಶೀಲಿಸ. ಸರಿ ಅತ್ತಂಡ ತಪ್ಪುನು ಪಿರಕೊರು.";
+Blockly.Msg.MATH_IS_WHOLE = "ಮಾಂತ ಆತ್ಂಡ್";
+Blockly.Msg.MATH_MODULO_HELPURL = "https://en.wikipedia.org/wiki/ಮೋಡ್ಯುಲೊ_ಒಪರೇಶನ್";
+Blockly.Msg.MATH_MODULO_TITLE = " %1 ÷ %2 ಒರಿನ ಬಾಗೊ";
+Blockly.Msg.MATH_MODULO_TOOLTIP = "ರಡ್ಡ್ ಸಂಖ್ಯೆದ ಇಬಾಗೊಡ್ದು ಒರಿನ ಬಾಗೊನು ಪಿರಕೊರು";
+Blockly.Msg.MATH_MULTIPLICATION_SYMBOL = "×"; // untranslated
+Blockly.Msg.MATH_NUMBER_HELPURL = "https://en.wikipedia.org/wiki/ಸಂಖ್ಯೆ";
+Blockly.Msg.MATH_NUMBER_TOOLTIP = "ಅ ನಂಬ್ರೊ";
+Blockly.Msg.MATH_ONLIST_HELPURL = ""; // untranslated
+Blockly.Msg.MATH_ONLIST_OPERATOR_AVERAGE = "ಸರಾಸರಿ ಪಟ್ಟಿ";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MAX = "ಪಟ್ಟಿನ್ ಮಿಸ್ರೊ ಮಲ್ಪು";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MEDIAN = "ನಡುತ ಪಟ್ಟಿ";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MIN = "ಕಿನ್ಯ ಪಟ್ಟಿ";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MODE = "ಪಟ್ಟಿದ ಇದಾನೊಲು";
+Blockly.Msg.MATH_ONLIST_OPERATOR_RANDOM = "ಗೊತ್ತುಗುರಿ ದಾಂತಿನ ಅಂಸೊದ ಪಟ್ಟಿ";
+Blockly.Msg.MATH_ONLIST_OPERATOR_STD_DEV = "ಕಬರ್ ಪಟ್ಟಿದ ಪ್ರಮಾನೊ";
+Blockly.Msg.MATH_ONLIST_OPERATOR_SUM = "ಒಟ್ಟು ಕೂಡಯಿನಾ ಪಟ್ಟಿ";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_AVERAGE = "ಪಟ್ಟಿಡುಪ್ಪುನ ಸರ್ವಸಾಧಾರಣ ಬಿಲೆನ್ ಪಿರಕೋರ್ಲೆ";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MAX = "ಪಟ್ಟಿದಾ ಮಲ್ಲ ಸಂಕ್ಯೆನ್ ಪಿರಕೊರು";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MEDIAN = "ಪಟ್ಟಿದಾ ನಡುತ ಸಂಕ್ಯೆನ್ ಪಿರಕೊರು";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MIN = "ಪಟ್ಟಿದಾ ಕಿನ್ಯ ಸಂಕ್ಯೆನ್ ಪಿರಕೊರು";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MODE = "ಪಟ್ಟಿದ ಸಾಮಾನ್ಯೊ ಅಂಸೊಲೆನ ಪಟ್ಟಿನ್ ಪಿರಕೊರು";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_RANDOM = "ಪಟ್ಟಿದ ಗೊತ್ತು ಗುರಿದಾಂತಿನ ಅಂಸೊಲೆನ್ ಪಿರಕೊರು";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_STD_DEV = "ಪಟ್ಟಿದ ಗುಣಮಟ್ಟೊದ ವರ್ಗೀಕರಣೊನು ಪಿರಕೊರು";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_SUM = "ಪಟ್ಟಿದಾ ಮಾಂತ ಸಂಕ್ಯೆಲೆನ್ ಪಿರಕೊರ್ಲೆ";
+Blockly.Msg.MATH_POWER_SYMBOL = "^"; // untranslated
+Blockly.Msg.MATH_RANDOM_FLOAT_HELPURL = "https://en.wikipedia.org/wiki/ರಾಂಡಮ್_ನಂಬರ್_ಜನರೇಶನ್";
+Blockly.Msg.MATH_RANDOM_FLOAT_TITLE_RANDOM = "ಗೊತ್ತುಗುರಿ ದಾಂತಿನ ಬಾಗೊ";
+Blockly.Msg.MATH_RANDOM_FLOAT_TOOLTIP = "0.0 (ಸೇರ್ನಂಚಿನ) and 1.0 (ಸೇರಂದಿನಂಚಿನ) ನಡುತ ಗೊತ್ತು ಗುರಿದಾಂತಿನ ಬಾಗೊನು ಪಿರಕೊರು.";
+Blockly.Msg.MATH_RANDOM_INT_HELPURL = "https://en.wikipedia.org/wiki/ರಾಂಡಮ್_ನಂಬರ್_ಜನರೇಶನ್";
+Blockly.Msg.MATH_RANDOM_INT_TITLE = " %1 ಡ್ದ್ %2 ಯಾದೃಚ್ಛಿಕ ಪೂರ್ಣಾಂಕೊ";
+Blockly.Msg.MATH_RANDOM_INT_TOOLTIP = "ರಡ್ಡ್ ನಿಗದಿತ ನಿಯಮೊದ ನಡುತ ಯಾದೃಚ್ಛಿಕ ಪೂರ್ಣಾಂಕೊನು ಪಿರಕೊರು";
+Blockly.Msg.MATH_ROUND_HELPURL = "https://en.wikipedia.org/wiki/ಪೂರ್ಣಾಂಕೊ";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUND = "ಸುತ್ತು";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDDOWN = "ಸುತ್ತು ಕಡಮೆ";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDUP = "ಮುಗಿಪುನ ಸಮಯೊ";
+Blockly.Msg.MATH_ROUND_TOOLTIP = "ಸಂಖ್ಯೆನ್ ಮಿತ್ತ್ ಅತ್ತಂಡ ತಿರ್ತ್ ರೌಂಡ್ ಮಲ್ಪು";
+Blockly.Msg.MATH_SINGLE_HELPURL = "https://en.wikipedia.org/wiki/ವರ್ಗೊಮೂಲೊ";
+Blockly.Msg.MATH_SINGLE_OP_ABSOLUTE = "ಸಂಪೂರ್ನೊ";
+Blockly.Msg.MATH_SINGLE_OP_ROOT = "ವರ್ಗಮೂಲೊ";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ABS = "ಸಂಖ್ಯೆದ ಸರಿಯಾಯಿನ ಮೌಲ್ಯೊನು ಕೊರು";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_EXP = "ಸಂಖ್ಯೆದ ಇ ಗ್ ಅಧಿಕಾರೊನು ಪಿರಕೊರು";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LN = "ಸಂಖ್ಯೆದ ನಿಜವಾಯಿನ ಕ್ರಮಾವಳಿನ್ ಪಿರಕೊರು";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LOG10 = "ಸಂಖ್ಯೆದ ೧೦ ಮೂಲೊ ಕ್ರಮಾವಳಿನ್ ಪಿರಕೊರು";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_NEG = "ಸಂಖ್ಯೆದ ನಿರಾಕರಣೆನ್ ಪಿರಕೊರು";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_POW10 = "ಸಂಖ್ಯೆದ ೧೦ಗ್ ಅಧಿಕಾರೊನು ಪಿರಕೊರು";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ROOT = "ಸಂಖ್ಯೆದ ವರ್ಗಮೂಲೊನು ಪಿರ ಕೊರು.";
+Blockly.Msg.MATH_SUBTRACTION_SYMBOL = "-"; // untranslated
+Blockly.Msg.MATH_TRIG_ACOS = "acos"; // untranslated
+Blockly.Msg.MATH_TRIG_ASIN = "asin"; // untranslated
+Blockly.Msg.MATH_TRIG_ATAN = "atan"; // untranslated
+Blockly.Msg.MATH_TRIG_COS = "cos"; // untranslated
+Blockly.Msg.MATH_TRIG_HELPURL = "https://en.wikipedia.org/wiki/ತ್ರಿಕೋನಮಿತಿದ_ಕಾರ್ಯೊಲು";
+Blockly.Msg.MATH_TRIG_SIN = "sin"; // untranslated
+Blockly.Msg.MATH_TRIG_TAN = "tan"; // untranslated
+Blockly.Msg.MATH_TRIG_TOOLTIP_ACOS = "ಸಂಖ್ಯೆದ ಆರ್ಕ್ಕೊಸಿನ್ ಪಿರಕೊರು";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ASIN = "ಪದವಿದ ಆರ್ಕ್ಸೈನ್ ಪಿರಕೊರು";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ATAN = "ಸಂಖ್ಯೆದ ಆರ್ಕ್ಟ್ಯಾಂಜೆಂಟ್ ಪಿರಕೊರು";
+Blockly.Msg.MATH_TRIG_TOOLTIP_COS = "ಪದವಿದ ಸಹ ಚಿಹ್ನೆನ್ ಪಿರಕೊರು";
+Blockly.Msg.MATH_TRIG_TOOLTIP_SIN = "ಪದವಿದ ಚಿಹ್ನೆನ್ ಪಿರಕೊರು";
+Blockly.Msg.MATH_TRIG_TOOLTIP_TAN = "ಪದವಿದ ಸ್ಪರ್ಶಕೊನು ಪಿರಕೊರು";
+Blockly.Msg.NEW_VARIABLE = "ಪೊಸ ಬದಲಾವಣೆ";
+Blockly.Msg.NEW_VARIABLE_TITLE = "ಪುದರ್‍ದ ಪೊಸ ಬದಲಾವಣೆ:";
+Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; // untranslated
+Blockly.Msg.PROCEDURES_ALLOW_STATEMENTS = "ಹೇಳಿಕೆಗ್ ಅವಕಾಸೊ";
+Blockly.Msg.PROCEDURES_BEFORE_PARAMS = "ಜೊತೆ:";
+Blockly.Msg.PROCEDURES_CALLNORETURN_HELPURL = "https://en.wikipedia.org/wiki/ಪ್ರೊಸಿಜರ್_%28ಕಂಪ್ಯೂಟರ್_ಸೈನ್ಸ್%29";
+Blockly.Msg.PROCEDURES_CALLNORETURN_TOOLTIP = "'%1' ಬಳಕೆದಾರೆರೆ ಕಾರ್ಯೊನು ನಡಪಾಲೆ.";
+Blockly.Msg.PROCEDURES_CALLRETURN_HELPURL = "https://en.wikipedia.org/wiki/ಪ್ರೊಸಿಜರ್_%28ಕಂಪ್ಯೂಟರ್_ಸೈನ್ಸ್%29";
+Blockly.Msg.PROCEDURES_CALLRETURN_TOOLTIP = " '%1' ಬಳಕೆದಾರೆರೆ ಕಾರ್ಯೊನು ನಡಪಾಲೆ ಬುಕ್ಕೊ ಅಯಿತ ಉತ್ಪಾದನೆನ್ ಉಪಯೋಗಿಸಲೆ.";
+Blockly.Msg.PROCEDURES_CALL_BEFORE_PARAMS = "ಜೊತೆ:";
+Blockly.Msg.PROCEDURES_CREATE_DO = " '%1'ನ್ ರಚಿಸಲೆ";
+Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT = "ಈ ಕಾರ್ಯೊನು ಇವರಿಸಲೆ...";
+Blockly.Msg.PROCEDURES_DEFNORETURN_DO = ""; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE = "ಎಂಚಿನಾಂಡಲ ಮಲ್ಪು";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE = "ಇಂದೆಕ್";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TOOLTIP = "ಉತ್ಪಾದನೆ ದಾಂತಿನ ಕಾರ್ಯೊನು ಸ್ರಿಸ್ಟಿಸಲೆ.";
+Blockly.Msg.PROCEDURES_DEFRETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_DEFRETURN_RETURN = "ಪಿರಪೋ";
+Blockly.Msg.PROCEDURES_DEFRETURN_TOOLTIP = "ಉತ್ಪಾದನೆ ದಾಂತಿನ ಕಾರ್ಯೊನು ಸ್ರಿಸ್ಟಿಸಲೆ.";
+Blockly.Msg.PROCEDURES_DEF_DUPLICATE_WARNING = "ಎಚ್ಚರಿಕೆ: ಈ ಕಾರ್ಯೊ ನಕಲಿ ಮಾನದಂಡೊನು ಹೊಂದ್‍ದ್ಂಡ್.";
+Blockly.Msg.PROCEDURES_HIGHLIGHT_DEF = "ದೇರ್ತ್ ತೋಜುನ ಕಾರ್ಯೊದ ವ್ಯಾಕ್ಯಾನೊ";
+Blockly.Msg.PROCEDURES_IFRETURN_HELPURL = "http://c2.com/cgi/wiki?GuardClause"; // untranslated
+Blockly.Msg.PROCEDURES_IFRETURN_TOOLTIP = "ಮೌಲ್ಯೊ ಸತ್ಯೊ ಆಯಿನೆಡ್ದ್ ಬುಕ್ಕೊನೆ ರಡ್ಡನೆ ಮೌಲ್ಯೊನು ಪಿರಕೊರು.";
+Blockly.Msg.PROCEDURES_IFRETURN_WARNING = "ಎಚ್ಚರಿಕೆ:ವ್ಯಾಕ್ಯಾನೊದ ಕಾರ್ಯೊನು ತಡೆ ಮಲ್ಪೆರೆ ಮಾತ್ರೊ ಇಂದೆತ ಉಪಯೊಗ.";
+Blockly.Msg.PROCEDURES_MUTATORARG_TITLE = "ಉಲಪರಿಪುದ ಪುದರ್:";
+Blockly.Msg.PROCEDURES_MUTATORARG_TOOLTIP = "ಕಾರ್ಯೊದ ಉಲಪರಿಪುನು ಸೇರಲೆ.";
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TITLE = "ಉಲಪರಿಪು";
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TOOLTIP = "ಸೇರಯರ, ದೆತ್ತ್‌ ಪಾಡೆರೆ ಅತ್ತಂಡ ಪಿರಕೋರಿಕೆದ ಉಲಪರಿಪುದ ಕಾರ್ಯೊನು ಮಲ್ಪುಲೆ.";
+Blockly.Msg.REDO = "ಪಿರವುದಂಚ";
+Blockly.Msg.REMOVE_COMMENT = "ಟಿಪ್ಪಣಿನ್ ದೆತ್ತ್‌ಪಾಡ್ಲೆ";
+Blockly.Msg.RENAME_VARIABLE = "ಬದಲಾವಣೆ ಆಯಿನ ಪುದರ್‍ನ್ ನಾನೊರೊ ಪನ್ಲೆ";
+Blockly.Msg.RENAME_VARIABLE_TITLE = "ನಾನೊರೊ ಪುದರ್ ಬದಲಾವಣೆ ಆಯಿನ ಮಾಂತ '% 1':";
+Blockly.Msg.TEXT_APPEND_APPENDTEXT = "ಪಟ್ಯೊನು ಸೇರವೆ";
+Blockly.Msg.TEXT_APPEND_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_APPEND_TO = "ಇಂದೆಕ್";
+Blockly.Msg.TEXT_APPEND_TOOLTIP = "%1 ಬದಲಾಪುನ ಕೆಲವು ಪಟ್ಯೊಲೆನ್ ಸೇರಾವೊಂಡು.";
+Blockly.Msg.TEXT_CHANGECASE_HELPURL = "https://github.com/google/blockly/wiki/Text#adjusting-text-case"; // untranslated
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_LOWERCASE = "ಎಲ್ಯ ಅಕ್ಷರೊಗು";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_TITLECASE = "ತರೆಬರವುಗು";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_UPPERCASE = "ಮಲ್ಲ ಅಕ್ಷರೊಗು";
+Blockly.Msg.TEXT_CHANGECASE_TOOLTIP = "ಪಟ್ಯೊದ ಒಂಜಿ ನಕಲ್‍ನ್ ಬೇತೆ ಸಮಯೊಡು ಪಿರಕೊರು";
+Blockly.Msg.TEXT_CHARAT_FIRST = "ಸುರುಡ್ದ್ ಅಕ್ಷರೊನು ನಟೊನ್ಲ";
+Blockly.Msg.TEXT_CHARAT_FROM_END = "ಅಕ್ಷರೊ ನಟೊನ್#ಅಕೇರಿಡ್ದ್";
+Blockly.Msg.TEXT_CHARAT_FROM_START = "ಅಕ್ಸರೊನು ದೆತೊನುಲೆ#";
+Blockly.Msg.TEXT_CHARAT_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-text"; // untranslated
+Blockly.Msg.TEXT_CHARAT_INPUT_INTEXT = "ಪಟ್ಯೊಡು";
+Blockly.Msg.TEXT_CHARAT_LAST = "ಅಕೇರಿದ ಅಕ್ಷರೊನು ನಟೊನ್ಲ";
+Blockly.Msg.TEXT_CHARAT_RANDOM = "ಗೊತ್ತುಗುರಿದಾಂತಿ ಅಕ್ಷರೊನು ನಟೊನ್ಲ";
+Blockly.Msg.TEXT_CHARAT_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_CHARAT_TOOLTIP = "ಅಕ್ಷರೊನು ನಿರ್ದಿಷ್ಟ ಜಾಗೆಡ್ ಪಿರಕೊರು.";
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TOOLTIP = "ಪಟ್ಯೊಡು ಅಂಸೊಲೆನ್ ಸೇರಲೆ";
+Blockly.Msg.TEXT_CREATE_JOIN_TITLE_JOIN = "ಸೇರೊಲಿ";
+Blockly.Msg.TEXT_CREATE_JOIN_TOOLTIP = "ಸೇರಯರ, ದೆತ್ತ್‌ ಪಾಡೆರೆ ಅತ್ತಂಡ ಈ ಪಟ್ಯೊಲೆನ್ ತಡೆದ್ ಪತ್ತ್‌ದ್ ಪಿರ ರಚಿಸಯರ ಇಬಾಗೊ ಮಲ್ಪುಲೆ.";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_END = "ಅಕ್ಷರೊಗು#ಅಕೇರಿಡ್ದ್";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_START = "ಅಕ್ಷರೊಗು#";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_LAST = "ಅಕೇರಿದ ಅಕ್ಷರೊಗು";
+Blockly.Msg.TEXT_GET_SUBSTRING_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_INPUT_IN_TEXT = "ಪಟ್ಯೊಡು";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FIRST = "ಉಪ ವಾಕ್ಯೊಡ್ದು ಸುರುತ ಅಕ್ಷರೊನು ನಟೊನ್ಲ";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_END = "ಉಪ ವಾಕ್ಯೊಡ್ದು ಅಕ್ಷರೊನು ನಟೊನ್ಲ#ಅಕೇರಿಡ್ದ್";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_START = "ಉಪ ವಾಕ್ಯೊಡ್ದು ಅಕ್ಷರೊನು ನಟೊನ್ಲ";
+Blockly.Msg.TEXT_GET_SUBSTRING_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_TOOLTIP = "ಪಟ್ಯೊನು ನಿರ್ದಿಷ್ಟ ಬಾಗೊಡು ಪಿರಕೊರು";
+Blockly.Msg.TEXT_INDEXOF_HELPURL = "https://github.com/google/blockly/wiki/Text#finding-text"; // untranslated
+Blockly.Msg.TEXT_INDEXOF_INPUT_INTEXT = "ಪಟ್ಯೊಡು";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_FIRST = "ಸುರುಟು ಸಂಭವಿಸಯಿನ ಪಟ್ಯೊನು ನಾಡ್‍ಲ";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_LAST = "ದುಂಬು ಕರಿನ ಪಟ್ಯೊನು ನಾಡ್‍ಲೆ";
+Blockly.Msg.TEXT_INDEXOF_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_INDEXOF_TOOLTIP = "ಸುರುತ ಪಟ್ಯೊದ ಸೂಚ್ಯಿ/ಅಕೇರಿಟ್ ಸಂಭವಿಸವುನ ಸುರುತ ಪಟ್ಟಯೊದುಲಯಿದ ರಡ್ಡನೆ ಪಟ್ಯೊನು ಪಿರಕೊರು. %1 ಪಟ್ಯೊ ತಿಕಂದಿತ್ತ್‌ಂಡ ಪಿರಕೊರು.";
+Blockly.Msg.TEXT_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Text#checking-for-empty-text"; // untranslated
+Blockly.Msg.TEXT_ISEMPTY_TITLE = "%1 ಕಾಲಿ";
+Blockly.Msg.TEXT_ISEMPTY_TOOLTIP = "ಕೊರ್‌ನ ಪಟ್ಯೊ ಕಾಲಿಂದ್ ಸತ್ಯೊ ಆಂಡ ಪಿರಕೊರು";
+Blockly.Msg.TEXT_JOIN_HELPURL = "https://github.com/google/blockly/wiki/Text#text-creation"; // untranslated
+Blockly.Msg.TEXT_JOIN_TITLE_CREATEWITH = "ಪಟ್ಯೊನು ರಚನೆ ಮಲ್ಪು";
+Blockly.Msg.TEXT_JOIN_TOOLTIP = "ಒವ್ವೇ ಸಂಖ್ಯೆದ ಪಟ್ಯೊದ ತುಂಡುಲೆನ್ ಒಟ್ಟೂಗೆ ಸೇರಯರ ರಚಿಸಲೆ";
+Blockly.Msg.TEXT_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_LENGTH_TITLE = "೧% ಉದ್ದೊ";
+Blockly.Msg.TEXT_LENGTH_TOOLTIP = "ಕೊರ್‌ನ ಪಟ್ಯೊದ ಅಕ್ಷರೊಲೆನ(ಅಂತರೊಲು ಸೇರ್‌ನಂಚ) ಸಂಖ್ಯೆನ್ ಪಿರಕೊರು.";
+Blockly.Msg.TEXT_PRINT_HELPURL = "https://github.com/google/blockly/wiki/Text#printing-text"; // untranslated
+Blockly.Msg.TEXT_PRINT_TITLE = "%1 ಮುದ್ರಿತ";
+Blockly.Msg.TEXT_PRINT_TOOLTIP = "ನಿರ್ದಿಷ್ಟ ಪಟ್ಯೊ, ಸಂಖ್ಯೆ ಅತ್ತಂಡ ಬೇತೆ ಮೌಲ್ಯೊನು ಮುದ್ರಿಸಲೆ.";
+Blockly.Msg.TEXT_PROMPT_HELPURL = "https://github.com/google/blockly/wiki/Text#getting-input-from-the-user"; // untranslated
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_NUMBER = "ದಿಂಜ ಬಳಕೆದಾರೆರೆನ್ ಕೇನುಂಡು.";
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_TEXT = "ಕೆಲವು ಪಟ್ಯೊದ ಬಳಕೆದಾರೆರೆನ್ ಕೇನುಂಡು.";
+Blockly.Msg.TEXT_PROMPT_TYPE_NUMBER = "ಸಂಖ್ಯೆದೊಟ್ಟುಗೆ ಸಂದೇಸೊನು ಕೇನುಂಡು";
+Blockly.Msg.TEXT_PROMPT_TYPE_TEXT = "ಪಟ್ಯೊದೊಟ್ಟುಗೆ ಸಂದೇಸೊನು ಕೇನುಂಡು.";
+Blockly.Msg.TEXT_TEXT_HELPURL = "https://en.wikipedia.org/wiki/ಸ್ಟ್ರಿಂಗ್_(ಕಂಪ್ಯೂಟರ್_ಸೈನ್ಸ್)";
+Blockly.Msg.TEXT_TEXT_TOOLTIP = "ಒಂಜಿ ಅಕ್ಷರೊ, ಪದೊ ಅತ್ತಂಡ ಪಾಟೊದ ಒಂಜಿ ಸಾಲ್";
+Blockly.Msg.TEXT_TRIM_HELPURL = "https://github.com/google/blockly/wiki/Text#trimming-removing-spaces"; // untranslated
+Blockly.Msg.TEXT_TRIM_OPERATOR_BOTH = "ರಡ್ಡ್ ಬರಿತ ಜಾಗೆನ್ಲ ಕತ್ತೆರಿಪುಲೆ.";
+Blockly.Msg.TEXT_TRIM_OPERATOR_LEFT = "ಎಡತ ಬರಿತ ಜಾಗೆನ್ ಕತ್ತೆರಿಪುಲೆ.";
+Blockly.Msg.TEXT_TRIM_OPERATOR_RIGHT = "ಬಲತ ಬರಿತ ಜಾಗೆನ್ ಕತ್ತೆರಿಪುಲೆ.";
+Blockly.Msg.TEXT_TRIM_TOOLTIP = "ಒಂಜಿ ಅತ್ತಂಡ ರಡ್ಡ್ ಕೊಡಿಡ್ದ್ ದೆತ್ತ್‌ನ ಕಅಲಿ ಪಟ್ಯೊದ ಪ್ರತಿನ್ ಪಿರಕೊರು.";
+Blockly.Msg.TODAY = "ಇನಿ";
+Blockly.Msg.UNDO = "ದುಂಬುದಲೆಕೊ";
+Blockly.Msg.VARIABLES_DEFAULT_NAME = "ವಸ್ತು";
+Blockly.Msg.VARIABLES_GET_CREATE_SET = "'%1' ರಚನೆ ಮಲ್ಪುಲೆ";
+Blockly.Msg.VARIABLES_GET_HELPURL = "https://github.com/google/blockly/wiki/Variables#get"; // untranslated
+Blockly.Msg.VARIABLES_GET_TOOLTIP = "ಈ ವ್ಯತ್ಯಯೊದ ಮೌಲ್ಯೊನು ಪಿರಕೊರು.";
+Blockly.Msg.VARIABLES_SET = "%1 ಡ್ದು %2 ಮಲ್ಪುಲೆ";
+Blockly.Msg.VARIABLES_SET_CREATE_GET = "'%1' ರಚನೆ ಮಲ್ಪುಲೆ";
+Blockly.Msg.VARIABLES_SET_HELPURL = "https://github.com/google/blockly/wiki/Variables#set"; // untranslated
+Blockly.Msg.VARIABLES_SET_TOOLTIP = "ಉಲಯಿ ಬರ್ಪುನವು ಸಮಪಾಲ್ ಇಪ್ಪುನಂಚ ವ್ಯತ್ಯಾಸೊ ಮಾಲ್ಪು";
+Blockly.Msg.VARIABLE_ALREADY_EXISTS = "A variable named '%1' already exists."; // untranslated
+Blockly.Msg.PROCEDURES_DEFRETURN_TITLE = Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE;
+Blockly.Msg.CONTROLS_IF_IF_TITLE_IF = Blockly.Msg.CONTROLS_IF_MSG_IF;
+Blockly.Msg.CONTROLS_WHILEUNTIL_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_MSG_THEN = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_ELSE_TITLE_ELSE = Blockly.Msg.CONTROLS_IF_MSG_ELSE;
+Blockly.Msg.PROCEDURES_DEFRETURN_PROCEDURE = Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE;
+Blockly.Msg.LISTS_GET_SUBLIST_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.LISTS_GET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.PROCEDURES_DEFRETURN_DO = Blockly.Msg.PROCEDURES_DEFNORETURN_DO;
+Blockly.Msg.CONTROLS_IF_ELSEIF_TITLE_ELSEIF = Blockly.Msg.CONTROLS_IF_MSG_ELSEIF;
+Blockly.Msg.LISTS_GET_INDEX_HELPURL = Blockly.Msg.LISTS_INDEX_OF_HELPURL;
+Blockly.Msg.CONTROLS_FOREACH_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_SET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TITLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_APPEND_VARIABLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.LISTS_INDEX_OF_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.PROCEDURES_DEFRETURN_COMMENT = Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT; \ No newline at end of file
diff --git a/blockly/msg/js/th.js b/blockly/msg/js/th.js
new file mode 100644
index 0000000..339b1cd
--- /dev/null
+++ b/blockly/msg/js/th.js
@@ -0,0 +1,391 @@
+// This file was automatically generated. Do not modify.
+
+'use strict';
+
+goog.provide('Blockly.Msg.th');
+
+goog.require('Blockly.Msg');
+
+Blockly.Msg.ADD_COMMENT = "ใส่คำอธิบาย";
+Blockly.Msg.CHANGE_VALUE_TITLE = "เปลี่ยนค่า:";
+Blockly.Msg.CLEAN_UP = "จัดเรียงบล็อกให้เป็นแถว";
+Blockly.Msg.COLLAPSE_ALL = "ย่อบล็อก";
+Blockly.Msg.COLLAPSE_BLOCK = "ย่อบล็อก";
+Blockly.Msg.COLOUR_BLEND_COLOUR1 = "สีที่ 1";
+Blockly.Msg.COLOUR_BLEND_COLOUR2 = "สีที่ 2";
+Blockly.Msg.COLOUR_BLEND_HELPURL = "http://meyerweb.com/eric/tools/color-blend/"; // untranslated
+Blockly.Msg.COLOUR_BLEND_RATIO = "อัตราส่วน";
+Blockly.Msg.COLOUR_BLEND_TITLE = "ผสม";
+Blockly.Msg.COLOUR_BLEND_TOOLTIP = "ผสมสองสีเข้าด้วยกันด้วยอัตราส่วน (0.0 - 1.0)";
+Blockly.Msg.COLOUR_PICKER_HELPURL = "https://th.wikipedia.org/wiki/สี";
+Blockly.Msg.COLOUR_PICKER_TOOLTIP = "เลือกสีจากจานสี";
+Blockly.Msg.COLOUR_RANDOM_HELPURL = "http://randomcolour.com"; // untranslated
+Blockly.Msg.COLOUR_RANDOM_TITLE = "สุ่มสี";
+Blockly.Msg.COLOUR_RANDOM_TOOLTIP = "เลือกสีแบบสุ่ม";
+Blockly.Msg.COLOUR_RGB_BLUE = "ค่าสีน้ำเงิน";
+Blockly.Msg.COLOUR_RGB_GREEN = "ค่าสีเขียว";
+Blockly.Msg.COLOUR_RGB_HELPURL = "http://www.december.com/html/spec/colorper.html"; // untranslated
+Blockly.Msg.COLOUR_RGB_RED = "ค่าสีแดง";
+Blockly.Msg.COLOUR_RGB_TITLE = "สีที่ประกอบด้วย";
+Blockly.Msg.COLOUR_RGB_TOOLTIP = "สร้างสีด้วยการกำหนดค่าสีแดง เขียว และน้ำเงิน ค่าทั้งหมดต้องอยู่ระหว่าง 0 ถึง 100";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_HELPURL = "https://github.com/google/blockly/wiki/Loops#loop-termination-blocks"; // untranslated
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK = "ออกจากการวนซ้ำ";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE = "เริ่มการวนซ้ำรอบต่อไป";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK = "ออกจากการวนซ้ำที่อยู่";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE = "ข้ามคำสั่งที่เหลืออยู่ และเริ่มต้นวนซ้ำรอบต่อไป";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_WARNING = "คำเตือน: บล็อกนี้ใช้งานได้ภายในการวนซ้ำเท่านั้น";
+Blockly.Msg.CONTROLS_FOREACH_HELPURL = "https://github.com/google/blockly/wiki/Loops#for-each"; // untranslated
+Blockly.Msg.CONTROLS_FOREACH_TITLE = "จากทุกรายการ %1 ในรายชื่อ %2";
+Blockly.Msg.CONTROLS_FOREACH_TOOLTIP = "จากทุกรายการในรายชื่อ ตั้งค่าตัวแปร \"%1\" เป็นรายการ และทำตามคำสั่งที่กำหนดไว้";
+Blockly.Msg.CONTROLS_FOR_HELPURL = "https://github.com/google/blockly/wiki/Loops#count-with"; // untranslated
+Blockly.Msg.CONTROLS_FOR_TITLE = "นับด้วย %1 จาก %2 จนถึง %3 เปลี่ยนค่าทีละ %4";
+Blockly.Msg.CONTROLS_FOR_TOOLTIP = "ตัวแปร '%1' จะเริ่มจากจำนวนเริ่มต้น ไปจนถึงจำนวนสุดท้าย ตามระยะที่กำหนด และ ทำบล็อกที่กำหนดไว้";
+Blockly.Msg.CONTROLS_IF_ELSEIF_TOOLTIP = "กำหนดเงื่อนไขของบล็อก \"ถ้า\"";
+Blockly.Msg.CONTROLS_IF_ELSE_TOOLTIP = "เพิ่มสิ่งสุดท้าย ที่จะตรวจจับความเป็นไปได้ทั้งหมดของบล็อก \"ถ้า\"";
+Blockly.Msg.CONTROLS_IF_HELPURL = "https://github.com/google/blockly/wiki/IfElse"; // untranslated
+Blockly.Msg.CONTROLS_IF_IF_TOOLTIP = "เพิ่ม ลบ หรือจัดเรียงบล็อก \"ถ้า\" นี้ใหม่";
+Blockly.Msg.CONTROLS_IF_MSG_ELSE = "นอกเหนือจากนี้";
+Blockly.Msg.CONTROLS_IF_MSG_ELSEIF = "นอกเหนือจากนี้ ถ้า";
+Blockly.Msg.CONTROLS_IF_MSG_IF = "ถ้า";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_1 = "ว่าเงื่อนไขเป็นจริง ก็จะ \"ทำ\" ตามที่กำหนด";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_2 = "ถ้าเงื่อนไขเป็นจริง ก็จะ \"ทำ\" ตามที่กำหนด แต่ถ้าเงื่อนไขเป็นเท็จก็จะทำ \"นอกเหนือจากนี้\"";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_3 = "ถ้าเงื่อนไขแรกเป็นจริง ก็จะทำตามคำสั่งในบล็อกแรก แต่ถ้าไม่ก็จะไปตรวจเงื่อนไขที่สอง ถ้าเงื่อนไขที่สองเป็นจริง ก็จะทำตามเงื่อนไขในบล็อกที่สองนี้";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_4 = "ถ้าเงื่อนไขแรกเป็นจริง ก็จะทำคำสั่งในบล็อกแรก จากนั้นจะข้ามคำสั่งในบล็อกที่เหลือ แต่ถ้าเงื่อนไขแรกเป็นเท็จ ก็จะทำการตรวจเงื่อนไขที่สอง ถ้าเงื่อนไขที่สองเป็นจริง ก็จะทำตามคำสั่งในบล็อกที่สอง จากนั้นจะข้ามคำสั่งในบล็อกที่เหลือ แต่ถ้าทั้งเงื่อนไขแรกและเงื่อนไขที่สองเป็นเท็จทั้งหมด ก็จะมาทำบล็อกที่สาม";
+Blockly.Msg.CONTROLS_REPEAT_HELPURL = "https://en.wikipedia.org/wiki/For_loop";
+Blockly.Msg.CONTROLS_REPEAT_INPUT_DO = "ทำ:";
+Blockly.Msg.CONTROLS_REPEAT_TITLE = "ทำซ้ำ %1 ครั้ง";
+Blockly.Msg.CONTROLS_REPEAT_TOOLTIP = "ทำซ้ำบางคำสั่งหลายครั้ง";
+Blockly.Msg.CONTROLS_WHILEUNTIL_HELPURL = "https://github.com/google/blockly/wiki/Loops#repeat"; // untranslated
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "ทำซ้ำจนกระทั่ง";
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "ทำซ้ำขณะที่";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "ขณะที่ค่าเป็นเท็จ ก็จะทำบางคำสั่ง";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "ขณะที่ค่าเป็นจริง ก็จะทำบางคำสั่ง";
+Blockly.Msg.DELETE_ALL_BLOCKS = "ลบ %1 บล็อกทั้งหมด?";
+Blockly.Msg.DELETE_BLOCK = "ลบบล็อก";
+Blockly.Msg.DELETE_VARIABLE = "Delete the '%1' variable"; // untranslated
+Blockly.Msg.DELETE_VARIABLE_CONFIRMATION = "Delete %1 uses of the '%2' variable?"; // untranslated
+Blockly.Msg.DELETE_X_BLOCKS = "ลบ %1 บล็อก";
+Blockly.Msg.DISABLE_BLOCK = "ปิดใช้งานบล็อก";
+Blockly.Msg.DUPLICATE_BLOCK = "ทำสำเนา";
+Blockly.Msg.ENABLE_BLOCK = "เปิดใช้งานบล็อก";
+Blockly.Msg.EXPAND_ALL = "ขยายบล็อก";
+Blockly.Msg.EXPAND_BLOCK = "ขยายบล็อก";
+Blockly.Msg.EXTERNAL_INPUTS = "อินพุตภายนอก";
+Blockly.Msg.HELP = "ช่วยเหลือ";
+Blockly.Msg.INLINE_INPUTS = "อินพุตในบรรทัด";
+Blockly.Msg.LISTS_CREATE_EMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-empty-list"; // untranslated
+Blockly.Msg.LISTS_CREATE_EMPTY_TITLE = "สร้างรายการเปล่า";
+Blockly.Msg.LISTS_CREATE_EMPTY_TOOLTIP = "สร้างรายการเปล่า (ความยาวเป็น 0) ยังไม่มีข้อมูลใดๆ อยู่";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TITLE_ADD = "รายการ";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TOOLTIP = "เพิ่ม ลบ หรือจัดเรียงบล็อกรายการนี้ใหม่";
+Blockly.Msg.LISTS_CREATE_WITH_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
+Blockly.Msg.LISTS_CREATE_WITH_INPUT_WITH = "สร้างข้อความด้วย";
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TOOLTIP = "เพิ่มไอเท็มเข้าไปในรายการ";
+Blockly.Msg.LISTS_CREATE_WITH_TOOLTIP = "สร้างรายการพร้อมด้วยไอเท็ม";
+Blockly.Msg.LISTS_GET_INDEX_FIRST = "แรกสุด";
+Blockly.Msg.LISTS_GET_INDEX_FROM_END = "# จากท้าย";
+Blockly.Msg.LISTS_GET_INDEX_FROM_START = "#"; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_GET = "เรียกดู";
+Blockly.Msg.LISTS_GET_INDEX_GET_REMOVE = "เรียกดูและเอาออก";
+Blockly.Msg.LISTS_GET_INDEX_LAST = "ท้ายสุด";
+Blockly.Msg.LISTS_GET_INDEX_RANDOM = "สุ่ม";
+Blockly.Msg.LISTS_GET_INDEX_REMOVE = "เอาออก";
+Blockly.Msg.LISTS_GET_INDEX_TAIL = ""; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FIRST = "คืนค่าไอเท็มอันแรกในรายการ";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FROM = "คืนค่าเป็นไอเท็มตามตำแหน่งที่ระบุ";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_LAST = "คืนค่าไอเท็มอันสุดท้ายในรายการ";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_RANDOM = "คืนค่าไอเท็มแบบสุ่มจากรายการ";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST = "เอาออก และคืนค่าไอเท็มอันแรกในรายการ";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM = "เอาออก และคืนค่าไอเท็มในตำแหน่งที่ระบุจากรายการ";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST = "เอาออก และคืนค่าไอเท็มอันสุดท้ายในรายการ";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM = "เอาออก และคืนค่าไอเท็มแบบสุ่มจากรายการ";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST = "เอาไอเท็มแรกสุดในรายการออก";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM = "คืนค่าเป็นไอเท็มตามตำแหน่งที่ระบุ";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST = "เอาไอเท็มอันท้ายสุดในรายการออก";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM = "เอาไอเท็มแบบสุ่มจากรายการออก";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_END = "ถึง # จากท้ายสุด";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_START = "จนถึง #";
+Blockly.Msg.LISTS_GET_SUBLIST_END_LAST = "ถึง ท้ายสุด";
+Blockly.Msg.LISTS_GET_SUBLIST_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-a-sublist"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_START_FIRST = "ดึงรายการย่อยทั้งแต่แรกสุด";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_END = "ดึงรายการย่อยจาก # จากท้ายสุด";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_START = "ดึงรายการย่อยจาก #";
+Blockly.Msg.LISTS_GET_SUBLIST_TAIL = ""; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_TOOLTIP = "สร้างสำเนารายการในช่วงที่กำหนด";
+Blockly.Msg.LISTS_INDEX_FROM_END_TOOLTIP = "%1 คือไอเท็มอันท้ายสุด";
+Blockly.Msg.LISTS_INDEX_FROM_START_TOOLTIP = "%1 คือไอเท็มอันแรกสุด";
+Blockly.Msg.LISTS_INDEX_OF_FIRST = "หาอันแรกที่พบ";
+Blockly.Msg.LISTS_INDEX_OF_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-items-from-a-list"; // untranslated
+Blockly.Msg.LISTS_INDEX_OF_LAST = "หาอันสุดท้ายที่พบ";
+Blockly.Msg.LISTS_INDEX_OF_TOOLTIP = "คืนค่าตำแหน่งของไอเท็มอันแรก/สุดท้ายที่พบในรายการ คืนค่า %1 ถ้าหาไม่พบ";
+Blockly.Msg.LISTS_INLIST = "ในรายการ";
+Blockly.Msg.LISTS_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#is-empty"; // untranslated
+Blockly.Msg.LISTS_ISEMPTY_TITLE = "%1 ว่างเปล่า";
+Blockly.Msg.LISTS_ISEMPTY_TOOLTIP = "คืนค่าเป็นจริง ถ้ารายการยังว่างเปล่า";
+Blockly.Msg.LISTS_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Lists#length-of"; // untranslated
+Blockly.Msg.LISTS_LENGTH_TITLE = "ความยาวของ %1";
+Blockly.Msg.LISTS_LENGTH_TOOLTIP = "ส่งคืนค่าความยาวของรายการ";
+Blockly.Msg.LISTS_REPEAT_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
+Blockly.Msg.LISTS_REPEAT_TITLE = "สร้างรายการที่มีไอเท็ม %1 จำนวน %2";
+Blockly.Msg.LISTS_REPEAT_TOOLTIP = "สร้างรายการที่ประกอบด้วยค่าตามที่ระบุในจำนวนตามที่ต้องการ";
+Blockly.Msg.LISTS_SET_INDEX_HELPURL = "https://github.com/google/blockly/wiki/Lists#in-list--set"; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_INPUT_TO = "เป็น";
+Blockly.Msg.LISTS_SET_INDEX_INSERT = "แทรกที่";
+Blockly.Msg.LISTS_SET_INDEX_SET = "กำหนด";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST = "แทรกไอเท็มเข้าไปเป็นอันแรกสุดของรายการ";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FROM = "แทรกไอเท็มเข้าไปในตำแหน่งที่กำหนด";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_LAST = "เพิ่มไอเท็มเข้าไปท้ายสุดของรายการ";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM = "เพิ่มไอเท็มเข้าไปในรายการแบบสุ่ม";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FIRST = "กำหนดไอเท็มอันแรกในรายการ";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FROM = "กำหนดไอเท็มในตำแหน่งที่ระบุในรายการ";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_LAST = "กำหนดไอเท็มอันสุดท้ายในรายการ";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_RANDOM = "กำหนดไอเท็มแบบสุ่มในรายการ";
+Blockly.Msg.LISTS_SORT_HELPURL = "https://github.com/google/blockly/wiki/Lists#sorting-a-list";
+Blockly.Msg.LISTS_SORT_ORDER_ASCENDING = "น้อยไปหามาก";
+Blockly.Msg.LISTS_SORT_ORDER_DESCENDING = "มากไปหาน้อย";
+Blockly.Msg.LISTS_SORT_TITLE = "เรียงลำดับ %1 %2 %3";
+Blockly.Msg.LISTS_SORT_TOOLTIP = "เรียงลำดับสำเนาของรายชื่อ";
+Blockly.Msg.LISTS_SORT_TYPE_IGNORECASE = "ตัวอักษร";
+Blockly.Msg.LISTS_SORT_TYPE_NUMERIC = "ตัวเลข";
+Blockly.Msg.LISTS_SORT_TYPE_TEXT = "ตัวอักษร";
+Blockly.Msg.LISTS_SPLIT_HELPURL = "https://github.com/google/blockly/wiki/Lists#splitting-strings-and-joining-lists"; // untranslated
+Blockly.Msg.LISTS_SPLIT_LIST_FROM_TEXT = "สร้างรายการจากข้อความ";
+Blockly.Msg.LISTS_SPLIT_TEXT_FROM_LIST = "สร้างข้อความจากรายการ";
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_JOIN = "รวมรายการข้อความเป็นข้อความเดียว แบ่งด้วยตัวคั่น";
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_SPLIT = "แบ่งข้อความเป็นรายการข้อความ แยกแต่ละรายการด้วยตัวคั่น";
+Blockly.Msg.LISTS_SPLIT_WITH_DELIMITER = "ด้วยตัวคั่น";
+Blockly.Msg.LOGIC_BOOLEAN_FALSE = "เท็จ";
+Blockly.Msg.LOGIC_BOOLEAN_HELPURL = "https://github.com/google/blockly/wiki/Logic#values"; // untranslated
+Blockly.Msg.LOGIC_BOOLEAN_TOOLTIP = "คืนค่าเป็นจริงหรือเท็จ";
+Blockly.Msg.LOGIC_BOOLEAN_TRUE = "จริง";
+Blockly.Msg.LOGIC_COMPARE_HELPURL = "https://th.wikipedia.org/wiki/อสมการ";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_EQ = "คืนค่าเป็น \"จริง\" ถ้าค่าที่ใส่ทั้งสองค่านั้นเท่ากัน";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GT = "คืนค่าเป็น \"จริง\" ถ้าค่าแรกมากกว่าค่าที่สอง";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GTE = "คืนค่าเป็น \"จริง\" ถ้าค่าแรกมากกว่าหรือเท่ากับค่าที่สอง";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LT = "คืนค่าเป็น \"จริง\" ถ้าค่าแรกน้อยกว่าค่าที่สอง";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LTE = "คืนค่าเป็น \"จริง\" ถ้าค่าแรกน้อยกว่าหรือเท่ากับค่าที่สอง";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_NEQ = "คืนค่าเป็น \"จริง\" ถ้าค่าที่ใส่ทั้งสองค่านั้นไม่เท่ากัน";
+Blockly.Msg.LOGIC_NEGATE_HELPURL = "https://github.com/google/blockly/wiki/Logic#not"; // untranslated
+Blockly.Msg.LOGIC_NEGATE_TITLE = "ไม่ %1";
+Blockly.Msg.LOGIC_NEGATE_TOOLTIP = "คืนค่าเป็น \"จริง\" ถ้าค่าที่ใส่เป็นเท็จ คืนค่าเป็น \"เท็จ\" ถ้าค่าที่ใส่เป็นจริง";
+Blockly.Msg.LOGIC_NULL = "ไม่กำหนด";
+Blockly.Msg.LOGIC_NULL_HELPURL = "https://en.wikipedia.org/wiki/Nullable_type"; // untranslated
+Blockly.Msg.LOGIC_NULL_TOOLTIP = "คืนค่า \"ไม่กำหนด\"";
+Blockly.Msg.LOGIC_OPERATION_AND = "และ";
+Blockly.Msg.LOGIC_OPERATION_HELPURL = "https://github.com/google/blockly/wiki/Logic#logical-operations"; // untranslated
+Blockly.Msg.LOGIC_OPERATION_OR = "หรือ";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_AND = "คืนค่าเป็น \"จริง\" ถ้าค่าทั้งสองค่าเป็นจริง";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_OR = "คืนค่าเป็น \"จริง\" ถ้ามีอย่างน้อยหนึ่งค่าที่เป็นจริง";
+Blockly.Msg.LOGIC_TERNARY_CONDITION = "ทดสอบ";
+Blockly.Msg.LOGIC_TERNARY_HELPURL = "https://en.wikipedia.org/wiki/%3F:"; // untranslated
+Blockly.Msg.LOGIC_TERNARY_IF_FALSE = "ถ้า เป็นเท็จ";
+Blockly.Msg.LOGIC_TERNARY_IF_TRUE = "ถ้า เป็นจริง";
+Blockly.Msg.LOGIC_TERNARY_TOOLTIP = "ตรวจสอบเงื่อนไขใน \"ทดสอบ\" ถ้าเงื่อนไขเป็นจริง จะคืนค่า \"ถ้า เป็นจริง\" ถ้าเงื่อนไขเป็นเท็จ จะคืนค่า \"ถ้า เป็นเท็จ\"";
+Blockly.Msg.MATH_ADDITION_SYMBOL = "+"; // untranslated
+Blockly.Msg.MATH_ARITHMETIC_HELPURL = "https://th.wikipedia.org/wiki/เลขคณิต";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_ADD = "คืนค่าผลรวมของตัวเลขทั้งสองจำนวน";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE = "คืนค่าผลหารของตัวเลขทั้งสองจำนวน";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MINUS = "คืนค่าผลต่างของตัวเลขทั้งสองจำนวน";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MULTIPLY = "คืนค่าผลคูณของตัวเลขทั้งสองจำนวน";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_POWER = "คืนค่าผลการยกกำลัง โดยตัวเลขแรกเป็นฐาน และตัวเลขที่สองเป็นเลขชี้กำลัง";
+Blockly.Msg.MATH_CHANGE_HELPURL = "https://en.wikipedia.org/wiki/Programming_idiom#Incrementing_a_counter";
+Blockly.Msg.MATH_CHANGE_TITLE = "เปลี่ยนค่า %1 เป็น %2";
+Blockly.Msg.MATH_CHANGE_TOOLTIP = "เพิ่มค่าของตัวแปร \"%1\"";
+Blockly.Msg.MATH_CONSTANT_HELPURL = "https://th.wikipedia.org/wiki/ค่าคงตัวทางคณิตศาสตร์";
+Blockly.Msg.MATH_CONSTANT_TOOLTIP = "คืนค่าคงตัวทางคณิตศาสตร์ที่พบบ่อยๆ เช่น π (3.141…), e (2.718…), φ (1.618…), รากที่สอง (1.414…), รากที่ ½ (0.707…), ∞ (อนันต์)";
+Blockly.Msg.MATH_CONSTRAIN_HELPURL = "https://en.wikipedia.org/wiki/Clamping_%28graphics%29"; // untranslated
+Blockly.Msg.MATH_CONSTRAIN_TITLE = "จำกัดค่า %1 ต่ำสุด %2 สูงสุด %3";
+Blockly.Msg.MATH_CONSTRAIN_TOOLTIP = "จำกัดค่าของตัวเลขให้อยู่ในช่วงที่กำหนด";
+Blockly.Msg.MATH_DIVISION_SYMBOL = "÷"; // untranslated
+Blockly.Msg.MATH_IS_DIVISIBLE_BY = "หารลงตัว";
+Blockly.Msg.MATH_IS_EVEN = "เป็นจำนวนคู่";
+Blockly.Msg.MATH_IS_NEGATIVE = "เป็นเลขติดลบ";
+Blockly.Msg.MATH_IS_ODD = "เป็นจำนวนคี่";
+Blockly.Msg.MATH_IS_POSITIVE = "เป็นเลขบวก";
+Blockly.Msg.MATH_IS_PRIME = "เป็นจำนวนเฉพาะ";
+Blockly.Msg.MATH_IS_TOOLTIP = "ตรวจว่าตัวเลขเป็นจำนวนคู่ จำนวนคี่ จำนวนเฉพาะ จำนวนเต็ม เลขบวก เลขติดลบ หรือหารด้วยเลขที่กำหนดลงตัวหรือไม่ คืนค่าเป็นจริงหรือเท็จ";
+Blockly.Msg.MATH_IS_WHOLE = "เป็นเลขจำนวนเต็ม";
+Blockly.Msg.MATH_MODULO_HELPURL = "https://en.wikipedia.org/wiki/Modulo_operation";
+Blockly.Msg.MATH_MODULO_TITLE = "เศษของ %1 ÷ %2";
+Blockly.Msg.MATH_MODULO_TOOLTIP = "คืนค่าเศษที่ได้จากการหารของตัวเลขทั้งสองจำนวน";
+Blockly.Msg.MATH_MULTIPLICATION_SYMBOL = "×"; // untranslated
+Blockly.Msg.MATH_NUMBER_HELPURL = "https://th.wikipedia.org/wiki/จำนวน";
+Blockly.Msg.MATH_NUMBER_TOOLTIP = "จำนวน";
+Blockly.Msg.MATH_ONLIST_HELPURL = ""; // untranslated
+Blockly.Msg.MATH_ONLIST_OPERATOR_AVERAGE = "ค่าเฉลี่ยของรายการ";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MAX = "มากที่สุดในรายการ";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MEDIAN = "ค่ามัธยฐานของรายการ";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MIN = "น้อยที่สุดในรายการ";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MODE = "ฐานนิยมของรายการ";
+Blockly.Msg.MATH_ONLIST_OPERATOR_RANDOM = "สุ่มรายการ";
+Blockly.Msg.MATH_ONLIST_OPERATOR_STD_DEV = "ส่วนเบี่ยงเบนมาตรฐานของรายการ";
+Blockly.Msg.MATH_ONLIST_OPERATOR_SUM = "ผลรวมของรายการ";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_AVERAGE = "คืนค่าเฉลี่ยของรายการ";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MAX = "คืนค่าตัวเลขที่มากที่สุดในรายการ";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MEDIAN = "คืนค่ามัธยฐานของรายการ";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MIN = "คืนค่าตัวเลขที่น้อยที่สุดในรายการ";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MODE = "คืนค่าฐานนิยมของรายการ";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_RANDOM = "สุ่มคืนค่าสิ่งที่อยู่ในรายการ";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_STD_DEV = "คืนค่าส่วนเบี่ยงเบนมาตรฐานของรายการ";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_SUM = "คืนค่าผลรวมของตัวเลขทั้งหมดในรายการ";
+Blockly.Msg.MATH_POWER_SYMBOL = "^"; // untranslated
+Blockly.Msg.MATH_RANDOM_FLOAT_HELPURL = "https://en.wikipedia.org/wiki/Random_number_generation";
+Blockly.Msg.MATH_RANDOM_FLOAT_TITLE_RANDOM = "สุ่มเลขเศษส่วน";
+Blockly.Msg.MATH_RANDOM_FLOAT_TOOLTIP = "สุ่มเลขเศษส่วน ตั้งแต่ 0.0 แต่ไม่เกิน 1.0";
+Blockly.Msg.MATH_RANDOM_INT_HELPURL = "https://en.wikipedia.org/wiki/Random_number_generation";
+Blockly.Msg.MATH_RANDOM_INT_TITLE = "สุ่มเลขจำนวนเต็มตั้งแต่ %1 จนถึง %2";
+Blockly.Msg.MATH_RANDOM_INT_TOOLTIP = "สุ่มเลขจำนวนเต็มจากช่วงที่กำหนด";
+Blockly.Msg.MATH_ROUND_HELPURL = "https://th.wikipedia.org/wiki/การปัดเศษ";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUND = "ปัดเศษ";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDDOWN = "ปัดเศษลง";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDUP = "ปัดเศษขึ้น";
+Blockly.Msg.MATH_ROUND_TOOLTIP = "ปัดเศษของตัวเลขขึ้นหรือลง";
+Blockly.Msg.MATH_SINGLE_HELPURL = "https://en.wikipedia.org/wiki/Square_root";
+Blockly.Msg.MATH_SINGLE_OP_ABSOLUTE = "ค่าสัมบูรณ์";
+Blockly.Msg.MATH_SINGLE_OP_ROOT = "รากที่สอง";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ABS = "คืนค่าค่าสัมบูรณ์ของตัวเลข";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_EXP = "คืนค่า e ยกกำลังด้วยตัวเลข";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LN = "คืนค่าลอการิทึมธรรมชาติของตัวเลข";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LOG10 = "คืนค่าลอการิทึมฐานสิบของตัวเลข";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_NEG = "คืนค่าติดลบของตัวเลข";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_POW10 = "คืนค่า 10 ยกกำลังด้วยตัวเลข";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ROOT = "คืนค่ารากที่สองของตัวเลข";
+Blockly.Msg.MATH_SUBTRACTION_SYMBOL = "-"; // untranslated
+Blockly.Msg.MATH_TRIG_ACOS = "acos"; // untranslated
+Blockly.Msg.MATH_TRIG_ASIN = "asin"; // untranslated
+Blockly.Msg.MATH_TRIG_ATAN = "atan"; // untranslated
+Blockly.Msg.MATH_TRIG_COS = "cos"; // untranslated
+Blockly.Msg.MATH_TRIG_HELPURL = "https://th.wikipedia.org/wiki/ฟังก์ชันตรีโกณมิติ";
+Blockly.Msg.MATH_TRIG_SIN = "sin"; // untranslated
+Blockly.Msg.MATH_TRIG_TAN = "tan"; // untranslated
+Blockly.Msg.MATH_TRIG_TOOLTIP_ACOS = "คืนค่า arccosine ของตัวเลข";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ASIN = "คืนค่า arcsine ของตัวเลข";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ATAN = "คืนค่า arctangent ของตัวเลข";
+Blockly.Msg.MATH_TRIG_TOOLTIP_COS = "คืนค่า cosine ขององศา (ไม่ใช่เรเดียน)";
+Blockly.Msg.MATH_TRIG_TOOLTIP_SIN = "คืนค่า sine ขององศา (ไม่ใช่เรเดียน)";
+Blockly.Msg.MATH_TRIG_TOOLTIP_TAN = "คืนค่า tangent ขององศา (ไม่ใช่เรเดียน)";
+Blockly.Msg.NEW_VARIABLE = "สร้างตัวแปร...";
+Blockly.Msg.NEW_VARIABLE_TITLE = "ชื่อตัวแปรใหม่:";
+Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; // untranslated
+Blockly.Msg.PROCEDURES_ALLOW_STATEMENTS = "ข้อความที่ใช้ได้";
+Blockly.Msg.PROCEDURES_BEFORE_PARAMS = "ด้วย:";
+Blockly.Msg.PROCEDURES_CALLNORETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_(computer_science)";
+Blockly.Msg.PROCEDURES_CALLNORETURN_TOOLTIP = "เรียกใช้ฟังก์ชันที่สร้างโดยผู้ใช้ \"%1\"";
+Blockly.Msg.PROCEDURES_CALLRETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_(computer_science)";
+Blockly.Msg.PROCEDURES_CALLRETURN_TOOLTIP = "เรียกใช้ฟังก์ชันที่สร้างโดยผู้ใช้ \"%1\" และใช้ผลลัพธ์ของมัน";
+Blockly.Msg.PROCEDURES_CALL_BEFORE_PARAMS = "ด้วย:";
+Blockly.Msg.PROCEDURES_CREATE_DO = "สร้าง \"%1\"";
+Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT = "อธิบายฟังก์ชันนี้";
+Blockly.Msg.PROCEDURES_DEFNORETURN_DO = ""; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE = "ทำอะไรบางอย่าง";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE = "ถึง";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TOOLTIP = "สร้างฟังก์ชันที่ไม่มีผลลัพธ์";
+Blockly.Msg.PROCEDURES_DEFRETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_DEFRETURN_RETURN = "คืนค่า";
+Blockly.Msg.PROCEDURES_DEFRETURN_TOOLTIP = "สร้างฟังก์ชันที่มีผลลัพธ์";
+Blockly.Msg.PROCEDURES_DEF_DUPLICATE_WARNING = "ระวัง: ฟังก์ชันนี้มีพารามิเตอร์ที่มีชื่อซ้ำกัน";
+Blockly.Msg.PROCEDURES_HIGHLIGHT_DEF = "เน้นฟังก์ชันนิยาม";
+Blockly.Msg.PROCEDURES_IFRETURN_HELPURL = "http://c2.com/cgi/wiki?GuardClause"; // untranslated
+Blockly.Msg.PROCEDURES_IFRETURN_TOOLTIP = "ถ้ามีค่าเป็นจริง ให้คืนค่าที่สอง";
+Blockly.Msg.PROCEDURES_IFRETURN_WARNING = "ระวัง: บล็อกนี้ใช้เฉพาะในการสร้างฟังก์ชันเท่านั้น";
+Blockly.Msg.PROCEDURES_MUTATORARG_TITLE = "ชื่อนำเข้า:";
+Blockly.Msg.PROCEDURES_MUTATORARG_TOOLTIP = "เพิ่มค่าป้อนเข้าฟังก์ชัน";
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TITLE = "นำเข้า";
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TOOLTIP = "เพิ่ม, ลบ, หรือจัดเรียง ข้อมูลที่ป้อนเข้าฟังก์ชันนี้";
+Blockly.Msg.REDO = "ทำซ้ำ";
+Blockly.Msg.REMOVE_COMMENT = "เอาคำอธิบายออก";
+Blockly.Msg.RENAME_VARIABLE = "เปลี่ยนชื่อตัวแปร...";
+Blockly.Msg.RENAME_VARIABLE_TITLE = "เปลี่ยนชื่อตัวแปร '%1' ทั้งหมดเป็น:";
+Blockly.Msg.TEXT_APPEND_APPENDTEXT = "ต่อด้วยข้อความ";
+Blockly.Msg.TEXT_APPEND_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_APPEND_TO = "นำเอา";
+Blockly.Msg.TEXT_APPEND_TOOLTIP = "ต่อข้อความให้ตัวแปร \"%1\"";
+Blockly.Msg.TEXT_CHANGECASE_HELPURL = "https://github.com/google/blockly/wiki/Text#adjusting-text-case"; // untranslated
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_LOWERCASE = "เปลี่ยนเป็น ตัวพิมพ์เล็ก";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_TITLECASE = "เปลี่ยนเป็น ตัวอักษรแรกเป็นตัวพิมพ์ใหญ่";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_UPPERCASE = "เปลี่ยนเป็น ตัวพิมพ์ใหญ่";
+Blockly.Msg.TEXT_CHANGECASE_TOOLTIP = "คืนค่าสำเนาของข้อความในกรณีต่างๆ";
+Blockly.Msg.TEXT_CHARAT_FIRST = "ดึง ตัวอักษรตัวแรก";
+Blockly.Msg.TEXT_CHARAT_FROM_END = "ดึง ตัวอักษรตัวที่ # จากท้าย";
+Blockly.Msg.TEXT_CHARAT_FROM_START = "ดึง ตัวอักษรตัวที่";
+Blockly.Msg.TEXT_CHARAT_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-text"; // untranslated
+Blockly.Msg.TEXT_CHARAT_INPUT_INTEXT = "ในข้อความ";
+Blockly.Msg.TEXT_CHARAT_LAST = "ดึง ตัวอักษรตัวสุดท้าย";
+Blockly.Msg.TEXT_CHARAT_RANDOM = "ถึงตัวอักษรแบบสุ่ม";
+Blockly.Msg.TEXT_CHARAT_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_CHARAT_TOOLTIP = "คืนค่าตัวอักษรจากตำแหน่งที่ระบุ";
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TOOLTIP = "เพิ่มรายการเข้าไปในข้อความ";
+Blockly.Msg.TEXT_CREATE_JOIN_TITLE_JOIN = "รวม";
+Blockly.Msg.TEXT_CREATE_JOIN_TOOLTIP = "เพิ่ม ลบ หรือจัดเรียงบล็อกข้อความนี้ใหม่";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_END = "จนถึง ตัวอักษรที่ # จากท้าย";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_START = "จนถึง ตัวอักษรที่";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_LAST = "จนถึง ตัวอักษรสุดท้าย";
+Blockly.Msg.TEXT_GET_SUBSTRING_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_INPUT_IN_TEXT = "ในข้อความ";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FIRST = "แยกข้อความย่อยตั้งแต่ ตัวอักษรแรก";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_END = "แยกข้อความย่อยตั้งแต่ ตัวอักษรที่ # จากท้าย";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_START = "แยกข้อความย่อยตั้งแต่ ตัวอักษรที่";
+Blockly.Msg.TEXT_GET_SUBSTRING_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_TOOLTIP = "คืนค่าบางส่วนของข้อความ";
+Blockly.Msg.TEXT_INDEXOF_HELPURL = "https://github.com/google/blockly/wiki/Text#finding-text"; // untranslated
+Blockly.Msg.TEXT_INDEXOF_INPUT_INTEXT = "ในข้อความ";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_FIRST = "หาข้อความแรกที่พบ";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_LAST = "หาข้อความสุดท้ายที่พบ";
+Blockly.Msg.TEXT_INDEXOF_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_INDEXOF_TOOLTIP = "คืนค่าตำแหน่งที่พบข้อความแรกอยู่ในข้อความที่สอง คืนค่า %1 ถ้าหาไม่พบ";
+Blockly.Msg.TEXT_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Text#checking-for-empty-text"; // untranslated
+Blockly.Msg.TEXT_ISEMPTY_TITLE = "%1 ว่าง";
+Blockly.Msg.TEXT_ISEMPTY_TOOLTIP = "คืนค่าจริง ถ้าข้อความยังว่าง";
+Blockly.Msg.TEXT_JOIN_HELPURL = "https://github.com/google/blockly/wiki/Text#text-creation"; // untranslated
+Blockly.Msg.TEXT_JOIN_TITLE_CREATEWITH = "สร้างข้อความด้วย";
+Blockly.Msg.TEXT_JOIN_TOOLTIP = "สร้างข้อความด้วยการรวมจำนวนของรายการเข้าด้วยกัน";
+Blockly.Msg.TEXT_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_LENGTH_TITLE = "ความยาวของ %1";
+Blockly.Msg.TEXT_LENGTH_TOOLTIP = "คืนค่าความยาวของข้อความ (รวมช่องว่าง)";
+Blockly.Msg.TEXT_PRINT_HELPURL = "https://github.com/google/blockly/wiki/Text#printing-text"; // untranslated
+Blockly.Msg.TEXT_PRINT_TITLE = "พิมพ์ %1";
+Blockly.Msg.TEXT_PRINT_TOOLTIP = "พิมพ์ข้อความ ตัวเลข หรือค่าอื่นๆ";
+Blockly.Msg.TEXT_PROMPT_HELPURL = "https://github.com/google/blockly/wiki/Text#getting-input-from-the-user"; // untranslated
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_NUMBER = "แสดงหน้าต่างให้ผู้ใช้ใส่ตัวเลข";
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_TEXT = "แสดงหน้าต่างให้ผู้ใช้ใส่ข้อความ";
+Blockly.Msg.TEXT_PROMPT_TYPE_NUMBER = "แสดงหน้าต่างตัวเลข";
+Blockly.Msg.TEXT_PROMPT_TYPE_TEXT = "แสดงหน้าต่างข้อความ";
+Blockly.Msg.TEXT_TEXT_HELPURL = "https://th.wikipedia.org/wiki/สายอักขระ";
+Blockly.Msg.TEXT_TEXT_TOOLTIP = "ตัวหนังสือ คำ หรือข้อความ";
+Blockly.Msg.TEXT_TRIM_HELPURL = "https://github.com/google/blockly/wiki/Text#trimming-removing-spaces"; // untranslated
+Blockly.Msg.TEXT_TRIM_OPERATOR_BOTH = "ลบช่องว่างทั้งสองข้างของ";
+Blockly.Msg.TEXT_TRIM_OPERATOR_LEFT = "ลบช่องว่างด้านหน้าของ";
+Blockly.Msg.TEXT_TRIM_OPERATOR_RIGHT = "ลบช่องว่างข้างท้ายของ";
+Blockly.Msg.TEXT_TRIM_TOOLTIP = "คืนค่าสำเนาของข้อความที่ลบเอาช่องว่างหน้าและหลังข้อความออกแล้ว";
+Blockly.Msg.TODAY = "วันนี้";
+Blockly.Msg.UNDO = "ย้อนกลับ";
+Blockly.Msg.VARIABLES_DEFAULT_NAME = "รายการ";
+Blockly.Msg.VARIABLES_GET_CREATE_SET = "สร้าง \"กำหนด %1\"";
+Blockly.Msg.VARIABLES_GET_HELPURL = "https://github.com/google/blockly/wiki/Variables#get"; // untranslated
+Blockly.Msg.VARIABLES_GET_TOOLTIP = "คืนค่าของตัวแปรนี้";
+Blockly.Msg.VARIABLES_SET = "กำหนด %1 จนถึง %2";
+Blockly.Msg.VARIABLES_SET_CREATE_GET = "สร้าง \"get %1\"";
+Blockly.Msg.VARIABLES_SET_HELPURL = "https://github.com/google/blockly/wiki/Variables#set"; // untranslated
+Blockly.Msg.VARIABLES_SET_TOOLTIP = "กำหนดให้ตัวแปรนี้เท่ากับการป้อนข้อมูล";
+Blockly.Msg.VARIABLE_ALREADY_EXISTS = "A variable named '%1' already exists."; // untranslated
+Blockly.Msg.PROCEDURES_DEFRETURN_TITLE = Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE;
+Blockly.Msg.CONTROLS_IF_IF_TITLE_IF = Blockly.Msg.CONTROLS_IF_MSG_IF;
+Blockly.Msg.CONTROLS_WHILEUNTIL_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_MSG_THEN = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_ELSE_TITLE_ELSE = Blockly.Msg.CONTROLS_IF_MSG_ELSE;
+Blockly.Msg.PROCEDURES_DEFRETURN_PROCEDURE = Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE;
+Blockly.Msg.LISTS_GET_SUBLIST_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.LISTS_GET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.PROCEDURES_DEFRETURN_DO = Blockly.Msg.PROCEDURES_DEFNORETURN_DO;
+Blockly.Msg.CONTROLS_IF_ELSEIF_TITLE_ELSEIF = Blockly.Msg.CONTROLS_IF_MSG_ELSEIF;
+Blockly.Msg.LISTS_GET_INDEX_HELPURL = Blockly.Msg.LISTS_INDEX_OF_HELPURL;
+Blockly.Msg.CONTROLS_FOREACH_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_SET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TITLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_APPEND_VARIABLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.LISTS_INDEX_OF_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.PROCEDURES_DEFRETURN_COMMENT = Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT; \ No newline at end of file
diff --git a/blockly/msg/js/tl.js b/blockly/msg/js/tl.js
new file mode 100644
index 0000000..0151c92
--- /dev/null
+++ b/blockly/msg/js/tl.js
@@ -0,0 +1,391 @@
+// This file was automatically generated. Do not modify.
+
+'use strict';
+
+goog.provide('Blockly.Msg.tl');
+
+goog.require('Blockly.Msg');
+
+Blockly.Msg.ADD_COMMENT = "Dagdag komento";
+Blockly.Msg.CHANGE_VALUE_TITLE = "pagbago ng value:";
+Blockly.Msg.CLEAN_UP = "Clean up Blocks"; // untranslated
+Blockly.Msg.COLLAPSE_ALL = "bloke";
+Blockly.Msg.COLLAPSE_BLOCK = "bloke";
+Blockly.Msg.COLOUR_BLEND_COLOUR1 = "kulay 1";
+Blockly.Msg.COLOUR_BLEND_COLOUR2 = "kulay 2";
+Blockly.Msg.COLOUR_BLEND_HELPURL = "http://meyerweb.com/eric/tools/color-blend/";
+Blockly.Msg.COLOUR_BLEND_RATIO = "proporsyon";
+Blockly.Msg.COLOUR_BLEND_TITLE = "halo";
+Blockly.Msg.COLOUR_BLEND_TOOLTIP = "Paghalo ng dalawang kulay kasama ng ibinigay na proporsyon (0.0 - 1.0).";
+Blockly.Msg.COLOUR_PICKER_HELPURL = "http://en.wikipedia.org/wiki/Color";
+Blockly.Msg.COLOUR_PICKER_TOOLTIP = "pagpili ng kulay sa paleta.";
+Blockly.Msg.COLOUR_RANDOM_HELPURL = "http://randomcolour.com"; // untranslated
+Blockly.Msg.COLOUR_RANDOM_TITLE = "iba ibang kulay";
+Blockly.Msg.COLOUR_RANDOM_TOOLTIP = "pagpili ng iba't ibang kulay.";
+Blockly.Msg.COLOUR_RGB_BLUE = "asul";
+Blockly.Msg.COLOUR_RGB_GREEN = "berde";
+Blockly.Msg.COLOUR_RGB_HELPURL = "http://www.december.com/html/spec/colorper.html";
+Blockly.Msg.COLOUR_RGB_RED = "pula";
+Blockly.Msg.COLOUR_RGB_TITLE = "kulayan ng";
+Blockly.Msg.COLOUR_RGB_TOOLTIP = "gumawa ng kulay ng may espisipikong dami ng kulay pula, berde, at asul. lahat ng halaga ay dapat sa pagitan ng 0 at 100.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_HELPURL = "https://github.com/google/blockly/wiki/Loops#loop-termination-blocks"; // untranslated
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK = "putulin ang paulit ulit";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE = "Magpatuloy sa susunod na pag-ulit ng loop";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK = "Hatiin ang nilalaman ng loop.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE = "Laktawan ang natitirang bahagi ng loop, at magpatuloy sa susunod na pag-ulit.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_WARNING = "Babala: Ang block ito ay maaari lamang magamit sa loob ng loop.";
+Blockly.Msg.CONTROLS_FOREACH_HELPURL = "https://github.com/google/blockly/wiki/Loops#for-each"; // untranslated
+Blockly.Msg.CONTROLS_FOREACH_TITLE = "sa bawat bagay %1 sa listahan %2";
+Blockly.Msg.CONTROLS_FOREACH_TOOLTIP = "Para sa bawat item sa isang list, i-set ang variable ng '%1' sa mga item, at pagkatapos ay gumawa ng ilang mga statements.";
+Blockly.Msg.CONTROLS_FOR_HELPURL = "https://github.com/google/blockly/wiki/Loops#count-with"; // untranslated
+Blockly.Msg.CONTROLS_FOR_TITLE = "bilangin %1 mula %2 hanggang %3 ng %4";
+Blockly.Msg.CONTROLS_FOR_TOOLTIP = "Magkaroon ng mga variable na \"%1\" na tanggalin ng mga halaga mula sa simulang numero hanggang sa dulong numero, at bilangin sa pamamagitan ng tinukoy na agwat, at gawin ang mga tinukoy na mga blocks.";
+Blockly.Msg.CONTROLS_IF_ELSEIF_TOOLTIP = "Mag dagdag ng condition sa if block.";
+Blockly.Msg.CONTROLS_IF_ELSE_TOOLTIP = "Mag Add ng final, kunin lahat ng condition sa if block.";
+Blockly.Msg.CONTROLS_IF_HELPURL = "https://github.com/google/blockly/wiki/IfElse"; // untranslated
+Blockly.Msg.CONTROLS_IF_IF_TOOLTIP = "Mag Add, remove o kaya mag reorder ng sections para maayos ang if block.";
+Blockly.Msg.CONTROLS_IF_MSG_ELSE = "else";
+Blockly.Msg.CONTROLS_IF_MSG_ELSEIF = "else if";
+Blockly.Msg.CONTROLS_IF_MSG_IF = "kung";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_1 = "kung ang value ay true, gagawin ang do statements.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_2 = "Kung ang value ay true, gagawin ang unang block ng do statements. Kung hindi, gagawin ang pangalawang block ng statement.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_3 = "Kung ang unang value ay true, gagawin ang first block ng statement. Kung hindi, kung ang second value ay true, gagawin ang second block ng statement.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_4 = "Kung ang first value ay true, gagawin ang first block ng statement. Kung hindi true ang second value, gagawin ang second block ng statement. Kung wala sa mga values ay true, gagawin ang last block ng statements.";
+Blockly.Msg.CONTROLS_REPEAT_HELPURL = "http://en.wikipedia.org/wiki/For_loop";
+Blockly.Msg.CONTROLS_REPEAT_INPUT_DO = "gawin";
+Blockly.Msg.CONTROLS_REPEAT_TITLE = "ulitin %1 beses";
+Blockly.Msg.CONTROLS_REPEAT_TOOLTIP = "gumawa ng ilang pangungusap ng ilang ulit.";
+Blockly.Msg.CONTROLS_WHILEUNTIL_HELPURL = "https://github.com/google/blockly/wiki/Loops#repeat"; // untranslated
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "ulitin hanggang";
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "ulitin habang";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "Habang ang value ay false, gagawin ang ibang statements.";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "Habang ang value ay true, gagawin ang ibang statements.";
+Blockly.Msg.DELETE_ALL_BLOCKS = "Delete all %1 blocks?"; // untranslated
+Blockly.Msg.DELETE_BLOCK = "burahin ang bloke";
+Blockly.Msg.DELETE_VARIABLE = "Delete the '%1' variable"; // untranslated
+Blockly.Msg.DELETE_VARIABLE_CONFIRMATION = "Delete %1 uses of the '%2' variable?"; // untranslated
+Blockly.Msg.DELETE_X_BLOCKS = "burahin %1 ng bloke";
+Blockly.Msg.DISABLE_BLOCK = "Ipangwalang bisa ang Block";
+Blockly.Msg.DUPLICATE_BLOCK = "Kaparehas";
+Blockly.Msg.ENABLE_BLOCK = "Bigyan ng bisa ang Block";
+Blockly.Msg.EXPAND_ALL = "Palawakin ang Blocks";
+Blockly.Msg.EXPAND_BLOCK = "Palawakin ang Block";
+Blockly.Msg.EXTERNAL_INPUTS = "Panlabas na Inputs";
+Blockly.Msg.HELP = "Tulong";
+Blockly.Msg.INLINE_INPUTS = "Inline na Inputs";
+Blockly.Msg.LISTS_CREATE_EMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-empty-list";
+Blockly.Msg.LISTS_CREATE_EMPTY_TITLE = "Gumawa ng walang laman na list";
+Blockly.Msg.LISTS_CREATE_EMPTY_TOOLTIP = "Ibabalik ang list, na may haba na 0, nag lalaman ng walang data records";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TITLE_ADD = "list";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TOOLTIP = "Magdagdag, mag tanggal or mag ayos ng sections para muling maayos ang listahan ng block.";
+Blockly.Msg.LISTS_CREATE_WITH_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
+Blockly.Msg.LISTS_CREATE_WITH_INPUT_WITH = "gumawa ng list kasama";
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TOOLTIP = "Mag dagdag ng item sa list.";
+Blockly.Msg.LISTS_CREATE_WITH_TOOLTIP = "Gumawa ng list na may kahit anong number ng items.";
+Blockly.Msg.LISTS_GET_INDEX_FIRST = "Una";
+Blockly.Msg.LISTS_GET_INDEX_FROM_END = "# mula katapusan";
+Blockly.Msg.LISTS_GET_INDEX_FROM_START = "#";
+Blockly.Msg.LISTS_GET_INDEX_GET = "kunin";
+Blockly.Msg.LISTS_GET_INDEX_GET_REMOVE = "kunin at tanggalin";
+Blockly.Msg.LISTS_GET_INDEX_LAST = "huli";
+Blockly.Msg.LISTS_GET_INDEX_RANDOM = "nang hindi pinipili";
+Blockly.Msg.LISTS_GET_INDEX_REMOVE = "tanggalin";
+Blockly.Msg.LISTS_GET_INDEX_TAIL = ""; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FIRST = "Ibalik ang unang item sa list.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FROM = "Ibalik ang item sa itinakdang posisyon sa list.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_LAST = "Ibalik ang huling item sa list.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_RANDOM = "Nag babalik ng hindi pinipiling item sa list.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST = "Nag tatanggal at nag babalik ng mga unang item sa list.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM = "Nag tatanggal at nag babalik ng mga items sa tinukoy na posisyon sa list.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST = "Nag tatanggal at nag babalik ng huling item sa list.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM = "Nag tatanggal at nag babalik ng mga hindi pinipiling item sa list.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST = "Nag tatanggal ng unang item sa list.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM = "Nag tatanggal ng item sa tinukoy na posisyon sa list.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST = "Nag tatanggal ng huling item sa list.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM = "Nag tatanggal ng item mula sa walang pinipiling list.";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_END = "mula # hanggang huli";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_START = "mula #";
+Blockly.Msg.LISTS_GET_SUBLIST_END_LAST = "hanggang huli";
+Blockly.Msg.LISTS_GET_SUBLIST_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-a-sublist"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_START_FIRST = "pag kuha ng sub-list mula sa una";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_END = "pag kuha ng sub-list mula sa # mula huli";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_START = "pag kuha ng sub-list mula #";
+Blockly.Msg.LISTS_GET_SUBLIST_TAIL = ""; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_TOOLTIP = "Gumagawa ng kopya ng tinukoy na bahagi ng list.";
+Blockly.Msg.LISTS_INDEX_FROM_END_TOOLTIP = "%1 ay ang huling item.";
+Blockly.Msg.LISTS_INDEX_FROM_START_TOOLTIP = "%1 ay ang unang item.";
+Blockly.Msg.LISTS_INDEX_OF_FIRST = "Hanapin ang unang pangyayari ng item";
+Blockly.Msg.LISTS_INDEX_OF_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-items-from-a-list"; // untranslated
+Blockly.Msg.LISTS_INDEX_OF_LAST = "hanapin ang huling pangyayari ng item";
+Blockly.Msg.LISTS_INDEX_OF_TOOLTIP = "Pagbalik ng index ng una/huli pangyayari ng item sa list. Pagbalik ng %1 kung ang item ay hindi makita.";
+Blockly.Msg.LISTS_INLIST = "sa list";
+Blockly.Msg.LISTS_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#is-empty"; // untranslated
+Blockly.Msg.LISTS_ISEMPTY_TITLE = "%1 ay walang laman";
+Blockly.Msg.LISTS_ISEMPTY_TOOLTIP = "Nagbabalik ng true kung ang list ay walang laman.";
+Blockly.Msg.LISTS_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Lists#length-of"; // untranslated
+Blockly.Msg.LISTS_LENGTH_TITLE = "haba ng %1";
+Blockly.Msg.LISTS_LENGTH_TOOLTIP = "Pag balik ng haba ng list.";
+Blockly.Msg.LISTS_REPEAT_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
+Blockly.Msg.LISTS_REPEAT_TITLE = "pag gawa ng list kasama ng item %1 inuulit %2 beses";
+Blockly.Msg.LISTS_REPEAT_TOOLTIP = "Pag gawa ng list na binubuo ng binigay na value at inulit na tinuloy na bilang ng beses.";
+Blockly.Msg.LISTS_SET_INDEX_HELPURL = "https://github.com/google/blockly/wiki/Lists#in-list--set"; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_INPUT_TO = "gaya ng";
+Blockly.Msg.LISTS_SET_INDEX_INSERT = "isingit sa";
+Blockly.Msg.LISTS_SET_INDEX_SET = "set";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST = "Nag singit ng item sa simula ng list.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FROM = "Nag singit ng item sa tinukoy na posistion sa list.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_LAST = "Idagdag ang item sa huli ng isang list.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM = "Isingit ang item ng walang pinipili sa isang list.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FIRST = "Pag set ng unang item sa isang list.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FROM = "Pag set ng item sa tinukoy na position sa isang list.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_LAST = "Pag set sa huling item sa isang list.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_RANDOM = "Pag set ng walang pinipiling item sa isang list.";
+Blockly.Msg.LISTS_SORT_HELPURL = "https://github.com/google/blockly/wiki/Lists#sorting-a-list"; // untranslated
+Blockly.Msg.LISTS_SORT_ORDER_ASCENDING = "ascending"; // untranslated
+Blockly.Msg.LISTS_SORT_ORDER_DESCENDING = "descending"; // untranslated
+Blockly.Msg.LISTS_SORT_TITLE = "sort %1 %2 %3"; // untranslated
+Blockly.Msg.LISTS_SORT_TOOLTIP = "Sort a copy of a list."; // untranslated
+Blockly.Msg.LISTS_SORT_TYPE_IGNORECASE = "alphabetic, ignore case"; // untranslated
+Blockly.Msg.LISTS_SORT_TYPE_NUMERIC = "numeric"; // untranslated
+Blockly.Msg.LISTS_SORT_TYPE_TEXT = "alphabetic"; // untranslated
+Blockly.Msg.LISTS_SPLIT_HELPURL = "https://github.com/google/blockly/wiki/Lists#splitting-strings-and-joining-lists"; // untranslated
+Blockly.Msg.LISTS_SPLIT_LIST_FROM_TEXT = "make list from text"; // untranslated
+Blockly.Msg.LISTS_SPLIT_TEXT_FROM_LIST = "make text from list"; // untranslated
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_JOIN = "Join a list of texts into one text, separated by a delimiter."; // untranslated
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_SPLIT = "Split text into a list of texts, breaking at each delimiter."; // untranslated
+Blockly.Msg.LISTS_SPLIT_WITH_DELIMITER = "with delimiter"; // untranslated
+Blockly.Msg.LOGIC_BOOLEAN_FALSE = "mali";
+Blockly.Msg.LOGIC_BOOLEAN_HELPURL = "https://github.com/google/blockly/wiki/Logic#values"; // untranslated
+Blockly.Msg.LOGIC_BOOLEAN_TOOLTIP = "Nag babalik ng true or false.";
+Blockly.Msg.LOGIC_BOOLEAN_TRUE = "tama";
+Blockly.Msg.LOGIC_COMPARE_HELPURL = "http://en.wikipedia.org/wiki/Inequality_(mathematics)";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_EQ = "Nag babalik ng true kung ang pinasok ay parehong magkatumbas.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GT = "Nagbabalik ng true kung ang unang pinasok ay mas malaki kaysa pangalawang pinasok.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GTE = "Nag babalik ng true kung ang unang pinasok ay mas malaki or katumbas ng pangalawang pinasok.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LT = "Nag babalik ng true kung ang unang pinasok ay maliit kaysa sa pangalawang pinasok.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LTE = "Nag babalik ng true kung ang unang pinasok ay maliit sa o katumbas sa pangalawang pinasok.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_NEQ = "Return true if both inputs are not equal to each other.";
+Blockly.Msg.LOGIC_NEGATE_HELPURL = "https://github.com/google/blockly/wiki/Logic#not"; // untranslated
+Blockly.Msg.LOGIC_NEGATE_TITLE = "not %1";
+Blockly.Msg.LOGIC_NEGATE_TOOLTIP = "Returns true if the input is false. Returns false if the input is true.";
+Blockly.Msg.LOGIC_NULL = "blangko";
+Blockly.Msg.LOGIC_NULL_HELPURL = "http://en.wikipedia.org/wiki/Nullable_type";
+Blockly.Msg.LOGIC_NULL_TOOLTIP = "Returns null.";
+Blockly.Msg.LOGIC_OPERATION_AND = "at";
+Blockly.Msg.LOGIC_OPERATION_HELPURL = "https://github.com/google/blockly/wiki/Logic#logical-operations"; // untranslated
+Blockly.Msg.LOGIC_OPERATION_OR = "o";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_AND = "Return true if both inputs are true.";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_OR = "Return true if at least one of the inputs is true.";
+Blockly.Msg.LOGIC_TERNARY_CONDITION = "test";
+Blockly.Msg.LOGIC_TERNARY_HELPURL = "http://en.wikipedia.org/wiki/%3F:";
+Blockly.Msg.LOGIC_TERNARY_IF_FALSE = "kung mali";
+Blockly.Msg.LOGIC_TERNARY_IF_TRUE = "kung tama";
+Blockly.Msg.LOGIC_TERNARY_TOOLTIP = "Check the condition in 'test'. If the condition is true, returns the 'if true' value; otherwise returns the 'if false' value.";
+Blockly.Msg.MATH_ADDITION_SYMBOL = "+";
+Blockly.Msg.MATH_ARITHMETIC_HELPURL = "http://en.wikipedia.org/wiki/Arithmetic";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_ADD = "Return the sum of the two numbers.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE = "Return the quotient of the two numbers.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MINUS = "Return the difference of the two numbers.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MULTIPLY = "Return the product of the two numbers.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_POWER = "Return the first number raised to the power of the second number.";
+Blockly.Msg.MATH_CHANGE_HELPURL = "http://en.wikipedia.org/wiki/Programming_idiom#Incrementing_a_counter";
+Blockly.Msg.MATH_CHANGE_TITLE = "baguhin %1 by %2";
+Blockly.Msg.MATH_CHANGE_TOOLTIP = "Add a number to variable '%1'.";
+Blockly.Msg.MATH_CONSTANT_HELPURL = "http://en.wikipedia.org/wiki/Mathematical_constant";
+Blockly.Msg.MATH_CONSTANT_TOOLTIP = "Return one of the common constants: π (3.141…), e (2.718…), φ (1.618…), sqrt(2) (1.414…), sqrt(½) (0.707…), or ∞ (infinity).";
+Blockly.Msg.MATH_CONSTRAIN_HELPURL = "https://en.wikipedia.org/wiki/Clamping_%28graphics%29"; // untranslated
+Blockly.Msg.MATH_CONSTRAIN_TITLE = "constrain %1 low %2 high %3";
+Blockly.Msg.MATH_CONSTRAIN_TOOLTIP = "Constrain a number to be between the specified limits (inclusive).";
+Blockly.Msg.MATH_DIVISION_SYMBOL = "÷";
+Blockly.Msg.MATH_IS_DIVISIBLE_BY = "is divisible by";
+Blockly.Msg.MATH_IS_EVEN = "is even";
+Blockly.Msg.MATH_IS_NEGATIVE = "ay negatibo";
+Blockly.Msg.MATH_IS_ODD = "is odd";
+Blockly.Msg.MATH_IS_POSITIVE = "ay positibo";
+Blockly.Msg.MATH_IS_PRIME = "is prime";
+Blockly.Msg.MATH_IS_TOOLTIP = "Check if a number is an even, odd, prime, whole, positive, negative, or if it is divisible by certain number. Returns true or false.";
+Blockly.Msg.MATH_IS_WHOLE = "is whole";
+Blockly.Msg.MATH_MODULO_HELPURL = "http://en.wikipedia.org/wiki/Modulo_operation";
+Blockly.Msg.MATH_MODULO_TITLE = "remainder of %1 ÷ %2";
+Blockly.Msg.MATH_MODULO_TOOLTIP = "Return the remainder from dividing the two numbers.";
+Blockly.Msg.MATH_MULTIPLICATION_SYMBOL = "×";
+Blockly.Msg.MATH_NUMBER_HELPURL = "http://en.wikipedia.org/wiki/Number";
+Blockly.Msg.MATH_NUMBER_TOOLTIP = "A number.";
+Blockly.Msg.MATH_ONLIST_HELPURL = ""; // untranslated
+Blockly.Msg.MATH_ONLIST_OPERATOR_AVERAGE = "average of list";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MAX = "max of list";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MEDIAN = "median of list";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MIN = "min of list";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MODE = "modes of list";
+Blockly.Msg.MATH_ONLIST_OPERATOR_RANDOM = "random item of list";
+Blockly.Msg.MATH_ONLIST_OPERATOR_STD_DEV = "standard deviation of list";
+Blockly.Msg.MATH_ONLIST_OPERATOR_SUM = "sum of list";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_AVERAGE = "Return the average (arithmetic mean) of the numeric values in the list.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MAX = "Return the largest number in the list.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MEDIAN = "Return the median number in the list.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MIN = "Return the smallest number in the list.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MODE = "Return a list of the most common item(s) in the list.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_RANDOM = "Return a random element from the list.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_STD_DEV = "Return the standard deviation of the list.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_SUM = "Return the sum of all the numbers in the list.";
+Blockly.Msg.MATH_POWER_SYMBOL = "^";
+Blockly.Msg.MATH_RANDOM_FLOAT_HELPURL = "http://en.wikipedia.org/wiki/Random_number_generation";
+Blockly.Msg.MATH_RANDOM_FLOAT_TITLE_RANDOM = "random fraction";
+Blockly.Msg.MATH_RANDOM_FLOAT_TOOLTIP = "Return a random fraction between 0.0 (inclusive) and 1.0 (exclusive).";
+Blockly.Msg.MATH_RANDOM_INT_HELPURL = "http://en.wikipedia.org/wiki/Random_number_generation";
+Blockly.Msg.MATH_RANDOM_INT_TITLE = "random integer from %1 to %2";
+Blockly.Msg.MATH_RANDOM_INT_TOOLTIP = "Return a random integer between the two specified limits, inclusive.";
+Blockly.Msg.MATH_ROUND_HELPURL = "http://en.wikipedia.org/wiki/Rounding";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUND = "round";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDDOWN = "round down";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDUP = "round up";
+Blockly.Msg.MATH_ROUND_TOOLTIP = "Round a number up or down.";
+Blockly.Msg.MATH_SINGLE_HELPURL = "http://en.wikipedia.org/wiki/Square_root";
+Blockly.Msg.MATH_SINGLE_OP_ABSOLUTE = "absolute";
+Blockly.Msg.MATH_SINGLE_OP_ROOT = "square root";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ABS = "Return the absolute value of a number.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_EXP = "Return e to the power of a number.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LN = "Return the natural logarithm of a number.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LOG10 = "Return the base 10 logarithm of a number.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_NEG = "Return the negation of a number.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_POW10 = "Return 10 to the power of a number.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ROOT = "Return the square root of a number.";
+Blockly.Msg.MATH_SUBTRACTION_SYMBOL = "-";
+Blockly.Msg.MATH_TRIG_ACOS = "acos";
+Blockly.Msg.MATH_TRIG_ASIN = "asin";
+Blockly.Msg.MATH_TRIG_ATAN = "atan";
+Blockly.Msg.MATH_TRIG_COS = "cos";
+Blockly.Msg.MATH_TRIG_HELPURL = "http://en.wikipedia.org/wiki/Trigonometric_functions";
+Blockly.Msg.MATH_TRIG_SIN = "sin";
+Blockly.Msg.MATH_TRIG_TAN = "tan";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ACOS = "Return the arccosine of a number.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ASIN = "Return the arcsine of a number.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ATAN = "Return the arctangent of a number.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_COS = "Return the cosine of a degree (not radian).";
+Blockly.Msg.MATH_TRIG_TOOLTIP_SIN = "Return the sine of a degree (not radian).";
+Blockly.Msg.MATH_TRIG_TOOLTIP_TAN = "Return the tangent of a degree (not radian).";
+Blockly.Msg.NEW_VARIABLE = "New variable...";
+Blockly.Msg.NEW_VARIABLE_TITLE = "New variable name:";
+Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; // untranslated
+Blockly.Msg.PROCEDURES_ALLOW_STATEMENTS = "allow statements"; // untranslated
+Blockly.Msg.PROCEDURES_BEFORE_PARAMS = "with:";
+Blockly.Msg.PROCEDURES_CALLNORETURN_HELPURL = "http://en.wikipedia.org/wiki/Procedure_%28computer_science%29";
+Blockly.Msg.PROCEDURES_CALLNORETURN_TOOLTIP = "Run the user-defined function '%1'.";
+Blockly.Msg.PROCEDURES_CALLRETURN_HELPURL = "http://en.wikipedia.org/wiki/Procedure_%28computer_science%29";
+Blockly.Msg.PROCEDURES_CALLRETURN_TOOLTIP = "Run the user-defined function '%1' and use its output.";
+Blockly.Msg.PROCEDURES_CALL_BEFORE_PARAMS = "with:";
+Blockly.Msg.PROCEDURES_CREATE_DO = "Create '%1'";
+Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT = "Describe this function..."; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_DO = ""; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_HELPURL = "http://en.wikipedia.org/wiki/Procedure_%28computer_science%29";
+Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE = "do something";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE = "to";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TOOLTIP = "Creates a function with no output.";
+Blockly.Msg.PROCEDURES_DEFRETURN_HELPURL = "http://en.wikipedia.org/wiki/Procedure_%28computer_science%29";
+Blockly.Msg.PROCEDURES_DEFRETURN_RETURN = "return";
+Blockly.Msg.PROCEDURES_DEFRETURN_TOOLTIP = "Creates a function with an output.";
+Blockly.Msg.PROCEDURES_DEF_DUPLICATE_WARNING = "Warning: This function has duplicate parameters.";
+Blockly.Msg.PROCEDURES_HIGHLIGHT_DEF = "Highlight function definition";
+Blockly.Msg.PROCEDURES_IFRETURN_HELPURL = "http://c2.com/cgi/wiki?GuardClause"; // untranslated
+Blockly.Msg.PROCEDURES_IFRETURN_TOOLTIP = "If a value is true, then return a second value.";
+Blockly.Msg.PROCEDURES_IFRETURN_WARNING = "Warning: This block may be used only within a function definition.";
+Blockly.Msg.PROCEDURES_MUTATORARG_TITLE = "input name:";
+Blockly.Msg.PROCEDURES_MUTATORARG_TOOLTIP = "Add an input to the function."; // untranslated
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TITLE = "inputs";
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TOOLTIP = "Add, remove, or reorder inputs to this function."; // untranslated
+Blockly.Msg.REDO = "Redo"; // untranslated
+Blockly.Msg.REMOVE_COMMENT = "Remove Comment";
+Blockly.Msg.RENAME_VARIABLE = "Rename variable...";
+Blockly.Msg.RENAME_VARIABLE_TITLE = "Rename all '%1' variables to:";
+Blockly.Msg.TEXT_APPEND_APPENDTEXT = "append text";
+Blockly.Msg.TEXT_APPEND_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_APPEND_TO = "to";
+Blockly.Msg.TEXT_APPEND_TOOLTIP = "Append some text to variable '%1'.";
+Blockly.Msg.TEXT_CHANGECASE_HELPURL = "https://github.com/google/blockly/wiki/Text#adjusting-text-case"; // untranslated
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_LOWERCASE = "to lower case";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_TITLECASE = "to Title Case";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_UPPERCASE = "to UPPER CASE";
+Blockly.Msg.TEXT_CHANGECASE_TOOLTIP = "Return a copy of the text in a different case.";
+Blockly.Msg.TEXT_CHARAT_FIRST = "get first letter";
+Blockly.Msg.TEXT_CHARAT_FROM_END = "get letter # from end";
+Blockly.Msg.TEXT_CHARAT_FROM_START = "get letter #";
+Blockly.Msg.TEXT_CHARAT_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-text"; // untranslated
+Blockly.Msg.TEXT_CHARAT_INPUT_INTEXT = "in text";
+Blockly.Msg.TEXT_CHARAT_LAST = "get last letter";
+Blockly.Msg.TEXT_CHARAT_RANDOM = "get random letter";
+Blockly.Msg.TEXT_CHARAT_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_CHARAT_TOOLTIP = "Returns the letter at the specified position.";
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TOOLTIP = "Add an item to the text.";
+Blockly.Msg.TEXT_CREATE_JOIN_TITLE_JOIN = "join";
+Blockly.Msg.TEXT_CREATE_JOIN_TOOLTIP = "Add, remove, or reorder sections to reconfigure this text block.";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_END = "to letter # from end";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_START = "to letter #";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_LAST = "to last letter";
+Blockly.Msg.TEXT_GET_SUBSTRING_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_INPUT_IN_TEXT = "in text";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FIRST = "get substring from first letter";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_END = "get substring from letter # from end";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_START = "get substring from letter #";
+Blockly.Msg.TEXT_GET_SUBSTRING_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_TOOLTIP = "Returns a specified portion of the text.";
+Blockly.Msg.TEXT_INDEXOF_HELPURL = "https://github.com/google/blockly/wiki/Text#finding-text"; // untranslated
+Blockly.Msg.TEXT_INDEXOF_INPUT_INTEXT = "in text";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_FIRST = "find first occurrence of text";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_LAST = "find last occurrence of text";
+Blockly.Msg.TEXT_INDEXOF_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_INDEXOF_TOOLTIP = "Returns the index of the first/last occurrence of first text in the second text. Returns %1 if text is not found.";
+Blockly.Msg.TEXT_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Text#checking-for-empty-text"; // untranslated
+Blockly.Msg.TEXT_ISEMPTY_TITLE = "%1 is empty";
+Blockly.Msg.TEXT_ISEMPTY_TOOLTIP = "Returns true if the provided text is empty.";
+Blockly.Msg.TEXT_JOIN_HELPURL = "https://github.com/google/blockly/wiki/Text#text-creation"; // untranslated
+Blockly.Msg.TEXT_JOIN_TITLE_CREATEWITH = "create text with";
+Blockly.Msg.TEXT_JOIN_TOOLTIP = "Create a piece of text by joining together any number of items.";
+Blockly.Msg.TEXT_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_LENGTH_TITLE = "length of %1";
+Blockly.Msg.TEXT_LENGTH_TOOLTIP = "Returns the number of letters (including spaces) in the provided text.";
+Blockly.Msg.TEXT_PRINT_HELPURL = "https://github.com/google/blockly/wiki/Text#printing-text"; // untranslated
+Blockly.Msg.TEXT_PRINT_TITLE = "print %1";
+Blockly.Msg.TEXT_PRINT_TOOLTIP = "Print the specified text, number or other value.";
+Blockly.Msg.TEXT_PROMPT_HELPURL = "https://github.com/google/blockly/wiki/Text#getting-input-from-the-user"; // untranslated
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_NUMBER = "Prompt for user for a number.";
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_TEXT = "Prompt for user for some text.";
+Blockly.Msg.TEXT_PROMPT_TYPE_NUMBER = "prompt for number with message";
+Blockly.Msg.TEXT_PROMPT_TYPE_TEXT = "prompt for text with message";
+Blockly.Msg.TEXT_TEXT_HELPURL = "http://en.wikipedia.org/wiki/String_(computer_science)";
+Blockly.Msg.TEXT_TEXT_TOOLTIP = "A letter, word, or line of text.";
+Blockly.Msg.TEXT_TRIM_HELPURL = "https://github.com/google/blockly/wiki/Text#trimming-removing-spaces"; // untranslated
+Blockly.Msg.TEXT_TRIM_OPERATOR_BOTH = "trim spaces from both sides";
+Blockly.Msg.TEXT_TRIM_OPERATOR_LEFT = "trim spaces from left side";
+Blockly.Msg.TEXT_TRIM_OPERATOR_RIGHT = "trim spaces from right side";
+Blockly.Msg.TEXT_TRIM_TOOLTIP = "Return a copy of the text with spaces removed from one or both ends.";
+Blockly.Msg.TODAY = "Today"; // untranslated
+Blockly.Msg.UNDO = "Undo"; // untranslated
+Blockly.Msg.VARIABLES_DEFAULT_NAME = "item";
+Blockly.Msg.VARIABLES_GET_CREATE_SET = "Create 'set %1'";
+Blockly.Msg.VARIABLES_GET_HELPURL = "https://github.com/google/blockly/wiki/Variables#get"; // untranslated
+Blockly.Msg.VARIABLES_GET_TOOLTIP = "Returns the value of this variable.";
+Blockly.Msg.VARIABLES_SET = "set %1 to %2";
+Blockly.Msg.VARIABLES_SET_CREATE_GET = "Create 'get %1'";
+Blockly.Msg.VARIABLES_SET_HELPURL = "https://github.com/google/blockly/wiki/Variables#set"; // untranslated
+Blockly.Msg.VARIABLES_SET_TOOLTIP = "Sets this variable to be equal to the input.";
+Blockly.Msg.VARIABLE_ALREADY_EXISTS = "A variable named '%1' already exists."; // untranslated
+Blockly.Msg.PROCEDURES_DEFRETURN_TITLE = Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE;
+Blockly.Msg.CONTROLS_IF_IF_TITLE_IF = Blockly.Msg.CONTROLS_IF_MSG_IF;
+Blockly.Msg.CONTROLS_WHILEUNTIL_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_MSG_THEN = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_ELSE_TITLE_ELSE = Blockly.Msg.CONTROLS_IF_MSG_ELSE;
+Blockly.Msg.PROCEDURES_DEFRETURN_PROCEDURE = Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE;
+Blockly.Msg.LISTS_GET_SUBLIST_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.LISTS_GET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.PROCEDURES_DEFRETURN_DO = Blockly.Msg.PROCEDURES_DEFNORETURN_DO;
+Blockly.Msg.CONTROLS_IF_ELSEIF_TITLE_ELSEIF = Blockly.Msg.CONTROLS_IF_MSG_ELSEIF;
+Blockly.Msg.LISTS_GET_INDEX_HELPURL = Blockly.Msg.LISTS_INDEX_OF_HELPURL;
+Blockly.Msg.CONTROLS_FOREACH_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_SET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TITLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_APPEND_VARIABLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.LISTS_INDEX_OF_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.PROCEDURES_DEFRETURN_COMMENT = Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT; \ No newline at end of file
diff --git a/blockly/msg/js/tlh.js b/blockly/msg/js/tlh.js
new file mode 100644
index 0000000..fee40f3
--- /dev/null
+++ b/blockly/msg/js/tlh.js
@@ -0,0 +1,391 @@
+// This file was automatically generated. Do not modify.
+
+'use strict';
+
+goog.provide('Blockly.Msg.tlh');
+
+goog.require('Blockly.Msg');
+
+Blockly.Msg.ADD_COMMENT = "QInHom chel";
+Blockly.Msg.CHANGE_VALUE_TITLE = "choH:";
+Blockly.Msg.CLEAN_UP = "ngoghmeyvaD tlhegh rurmoH";
+Blockly.Msg.COLLAPSE_ALL = "ngoghmey DejmoH";
+Blockly.Msg.COLLAPSE_BLOCK = "ngogh DejmoH";
+Blockly.Msg.COLOUR_BLEND_COLOUR1 = "rItlh wa'";
+Blockly.Msg.COLOUR_BLEND_COLOUR2 = "rItlh cha'";
+Blockly.Msg.COLOUR_BLEND_HELPURL = "http://meyerweb.com/eric/tools/color-blend/"; // untranslated
+Blockly.Msg.COLOUR_BLEND_RATIO = "'ar";
+Blockly.Msg.COLOUR_BLEND_TITLE = "DuD";
+Blockly.Msg.COLOUR_BLEND_TOOLTIP = "Blends two colours together with a given ratio (0.0 - 1.0)."; // untranslated
+Blockly.Msg.COLOUR_PICKER_HELPURL = "https://en.wikipedia.org/wiki/Color"; // untranslated
+Blockly.Msg.COLOUR_PICKER_TOOLTIP = "Choose a colour from the palette."; // untranslated
+Blockly.Msg.COLOUR_RANDOM_HELPURL = "http://randomcolour.com"; // untranslated
+Blockly.Msg.COLOUR_RANDOM_TITLE = "rItlh vISaHbe'";
+Blockly.Msg.COLOUR_RANDOM_TOOLTIP = "Choose a colour at random."; // untranslated
+Blockly.Msg.COLOUR_RGB_BLUE = "chal rItlh";
+Blockly.Msg.COLOUR_RGB_GREEN = "tI rItlh";
+Blockly.Msg.COLOUR_RGB_HELPURL = "http://www.december.com/html/spec/colorper.html"; // untranslated
+Blockly.Msg.COLOUR_RGB_RED = "'Iw rItlh";
+Blockly.Msg.COLOUR_RGB_TITLE = "rItlh wIv";
+Blockly.Msg.COLOUR_RGB_TOOLTIP = "Create a colour with the specified amount of red, green, and blue. All values must be between 0 and 100."; // untranslated
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_HELPURL = "https://github.com/google/blockly/wiki/Loops#loop-termination-blocks"; // untranslated
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK = "gho Haw'";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE = "gho taHqa'";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK = "Break out of the containing loop."; // untranslated
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE = "Skip the rest of this loop, and continue with the next iteration."; // untranslated
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_WARNING = "yIqIm! ghoDaq neH ngoghvam lo'laH vay'.";
+Blockly.Msg.CONTROLS_FOREACH_HELPURL = "https://github.com/google/blockly/wiki/Loops#for-each"; // untranslated
+Blockly.Msg.CONTROLS_FOREACH_TITLE = "ngIq Doch %1 ngaSbogh tetlh %2 nuDDI'";
+Blockly.Msg.CONTROLS_FOREACH_TOOLTIP = "For each item in a list, set the variable '%1' to the item, and then do some statements."; // untranslated
+Blockly.Msg.CONTROLS_FOR_HELPURL = "https://github.com/google/blockly/wiki/Loops#count-with"; // untranslated
+Blockly.Msg.CONTROLS_FOR_TITLE = "togh %1 mung %2 ghoch %3 Do %4";
+Blockly.Msg.CONTROLS_FOR_TOOLTIP = "Have the variable '%1' take on the values from the start number to the end number, counting by the specified interval, and do the specified blocks."; // untranslated
+Blockly.Msg.CONTROLS_IF_ELSEIF_TOOLTIP = "Add a condition to the if block."; // untranslated
+Blockly.Msg.CONTROLS_IF_ELSE_TOOLTIP = "Add a final, catch-all condition to the if block."; // untranslated
+Blockly.Msg.CONTROLS_IF_HELPURL = "https://github.com/google/blockly/wiki/IfElse"; // untranslated
+Blockly.Msg.CONTROLS_IF_IF_TOOLTIP = "Add, remove, or reorder sections to reconfigure this if block."; // untranslated
+Blockly.Msg.CONTROLS_IF_MSG_ELSE = "pagh";
+Blockly.Msg.CONTROLS_IF_MSG_ELSEIF = "pagh teHchugh";
+Blockly.Msg.CONTROLS_IF_MSG_IF = "teHchugh";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_1 = "If a value is true, then do some statements."; // untranslated
+Blockly.Msg.CONTROLS_IF_TOOLTIP_2 = "If a value is true, then do the first block of statements. Otherwise, do the second block of statements."; // untranslated
+Blockly.Msg.CONTROLS_IF_TOOLTIP_3 = "If the first value is true, then do the first block of statements. Otherwise, if the second value is true, do the second block of statements."; // untranslated
+Blockly.Msg.CONTROLS_IF_TOOLTIP_4 = "If the first value is true, then do the first block of statements. Otherwise, if the second value is true, do the second block of statements. If none of the values are true, do the last block of statements."; // untranslated
+Blockly.Msg.CONTROLS_REPEAT_HELPURL = "https://en.wikipedia.org/wiki/For_loop"; // untranslated
+Blockly.Msg.CONTROLS_REPEAT_INPUT_DO = "ruch";
+Blockly.Msg.CONTROLS_REPEAT_TITLE = "%1-logh qaSmoH";
+Blockly.Msg.CONTROLS_REPEAT_TOOLTIP = "Do some statements several times."; // untranslated
+Blockly.Msg.CONTROLS_WHILEUNTIL_HELPURL = "https://github.com/google/blockly/wiki/Loops#repeat"; // untranslated
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "teHpa' qaSmoH";
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "teHtaHvIS qaSmoH";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "While a value is false, then do some statements."; // untranslated
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "While a value is true, then do some statements."; // untranslated
+Blockly.Msg.DELETE_ALL_BLOCKS = "Hoch %1 ngoghmey Qaw'?";
+Blockly.Msg.DELETE_BLOCK = "ngogh Qaw'";
+Blockly.Msg.DELETE_VARIABLE = "Delete the '%1' variable"; // untranslated
+Blockly.Msg.DELETE_VARIABLE_CONFIRMATION = "Delete %1 uses of the '%2' variable?"; // untranslated
+Blockly.Msg.DELETE_X_BLOCKS = "%1 ngoghmey Qaw'";
+Blockly.Msg.DISABLE_BLOCK = "ngogh Qotlh";
+Blockly.Msg.DUPLICATE_BLOCK = "velqa' chenmoH";
+Blockly.Msg.ENABLE_BLOCK = "ngogh QotlhHa'";
+Blockly.Msg.EXPAND_ALL = "ngoghmey DejHa'moH";
+Blockly.Msg.EXPAND_BLOCK = "ngogh DejHa'moH";
+Blockly.Msg.EXTERNAL_INPUTS = "Hur rar";
+Blockly.Msg.HELP = "QaH";
+Blockly.Msg.INLINE_INPUTS = "qoD rar";
+Blockly.Msg.LISTS_CREATE_EMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-empty-list"; // untranslated
+Blockly.Msg.LISTS_CREATE_EMPTY_TITLE = "tetlh chIm";
+Blockly.Msg.LISTS_CREATE_EMPTY_TOOLTIP = "Returns a list, of length 0, containing no data records"; // untranslated
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TITLE_ADD = "tetlh";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TOOLTIP = "Add, remove, or reorder sections to reconfigure this list block."; // untranslated
+Blockly.Msg.LISTS_CREATE_WITH_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
+Blockly.Msg.LISTS_CREATE_WITH_INPUT_WITH = "tetlh ghom";
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TOOLTIP = "Add an item to the list."; // untranslated
+Blockly.Msg.LISTS_CREATE_WITH_TOOLTIP = "Create a list with any number of items."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_FIRST = "wa'DIch";
+Blockly.Msg.LISTS_GET_INDEX_FROM_END = "# Qav";
+Blockly.Msg.LISTS_GET_INDEX_FROM_START = "#";
+Blockly.Msg.LISTS_GET_INDEX_GET = "Suq";
+Blockly.Msg.LISTS_GET_INDEX_GET_REMOVE = "Suq vaj pej";
+Blockly.Msg.LISTS_GET_INDEX_LAST = "Qav";
+Blockly.Msg.LISTS_GET_INDEX_RANDOM = "Sahbe'";
+Blockly.Msg.LISTS_GET_INDEX_REMOVE = "pej";
+Blockly.Msg.LISTS_GET_INDEX_TAIL = "";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FIRST = "Returns the first item in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FROM = "Returns the item at the specified position in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_LAST = "Returns the last item in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_RANDOM = "Returns a random item in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST = "Removes and returns the first item in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM = "Removes and returns the item at the specified position in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST = "Removes and returns the last item in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM = "Removes and returns a random item in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST = "Removes the first item in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM = "Removes the item at the specified position in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST = "Removes the last item in a list."; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM = "Removes a random item in a list."; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_END = "mojaQ # Qav";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_START = "mojaQ #";
+Blockly.Msg.LISTS_GET_SUBLIST_END_LAST = "mojaQ Qav";
+Blockly.Msg.LISTS_GET_SUBLIST_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-a-sublist"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_START_FIRST = "tetlhHom moHaq wa'DIch";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_END = "tetlhHom moHaq # Qav";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_START = "tetlhHom moHaq #";
+Blockly.Msg.LISTS_GET_SUBLIST_TAIL = "Suq";
+Blockly.Msg.LISTS_GET_SUBLIST_TOOLTIP = "Creates a copy of the specified portion of a list."; // untranslated
+Blockly.Msg.LISTS_INDEX_FROM_END_TOOLTIP = "%1 is the last item."; // untranslated
+Blockly.Msg.LISTS_INDEX_FROM_START_TOOLTIP = "%1 is the first item."; // untranslated
+Blockly.Msg.LISTS_INDEX_OF_FIRST = "Doch sam wa'DIch";
+Blockly.Msg.LISTS_INDEX_OF_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-items-from-a-list"; // untranslated
+Blockly.Msg.LISTS_INDEX_OF_LAST = "Doch sam Qav";
+Blockly.Msg.LISTS_INDEX_OF_TOOLTIP = "Returns the index of the first/last occurrence of the item in the list. Returns %1 if item is not found."; // untranslated
+Blockly.Msg.LISTS_INLIST = "tetlhDaq";
+Blockly.Msg.LISTS_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#is-empty"; // untranslated
+Blockly.Msg.LISTS_ISEMPTY_TITLE = "%1 chIm'a'";
+Blockly.Msg.LISTS_ISEMPTY_TOOLTIP = "Returns true if the list is empty."; // untranslated
+Blockly.Msg.LISTS_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Lists#length-of"; // untranslated
+Blockly.Msg.LISTS_LENGTH_TITLE = "chuq %1";
+Blockly.Msg.LISTS_LENGTH_TOOLTIP = "Returns the length of a list."; // untranslated
+Blockly.Msg.LISTS_REPEAT_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
+Blockly.Msg.LISTS_REPEAT_TITLE = "tetlh ghom %2 Dochmey %1 pus";
+Blockly.Msg.LISTS_REPEAT_TOOLTIP = "Creates a list consisting of the given value repeated the specified number of times."; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_HELPURL = "https://github.com/google/blockly/wiki/Lists#in-list--set"; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_INPUT_TO = "Dos";
+Blockly.Msg.LISTS_SET_INDEX_INSERT = "lIH";
+Blockly.Msg.LISTS_SET_INDEX_SET = "choH";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST = "Inserts the item at the start of a list."; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FROM = "Inserts the item at the specified position in a list."; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_LAST = "Append the item to the end of a list."; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM = "Inserts the item randomly in a list."; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FIRST = "Sets the first item in a list."; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FROM = "Sets the item at the specified position in a list."; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_LAST = "Sets the last item in a list."; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_RANDOM = "Sets a random item in a list."; // untranslated
+Blockly.Msg.LISTS_SORT_HELPURL = "https://github.com/google/blockly/wiki/Lists#sorting-a-list"; // untranslated
+Blockly.Msg.LISTS_SORT_ORDER_ASCENDING = "ascending"; // untranslated
+Blockly.Msg.LISTS_SORT_ORDER_DESCENDING = "descending"; // untranslated
+Blockly.Msg.LISTS_SORT_TITLE = "sort %1 %2 %3"; // untranslated
+Blockly.Msg.LISTS_SORT_TOOLTIP = "Sort a copy of a list."; // untranslated
+Blockly.Msg.LISTS_SORT_TYPE_IGNORECASE = "alphabetic, ignore case"; // untranslated
+Blockly.Msg.LISTS_SORT_TYPE_NUMERIC = "numeric"; // untranslated
+Blockly.Msg.LISTS_SORT_TYPE_TEXT = "alphabetic"; // untranslated
+Blockly.Msg.LISTS_SPLIT_HELPURL = "https://github.com/google/blockly/wiki/Lists#splitting-strings-and-joining-lists"; // untranslated
+Blockly.Msg.LISTS_SPLIT_LIST_FROM_TEXT = "tetlh ghermeH ghItlh wav";
+Blockly.Msg.LISTS_SPLIT_TEXT_FROM_LIST = "ghItlh chenmoHmeH tetlh gherHa'";
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_JOIN = "Join a list of texts into one text, separated by a delimiter."; // untranslated
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_SPLIT = "Split text into a list of texts, breaking at each delimiter."; // untranslated
+Blockly.Msg.LISTS_SPLIT_WITH_DELIMITER = "rarwI'Hom lo'";
+Blockly.Msg.LOGIC_BOOLEAN_FALSE = "teHbe'";
+Blockly.Msg.LOGIC_BOOLEAN_HELPURL = "https://github.com/google/blockly/wiki/Logic#values"; // untranslated
+Blockly.Msg.LOGIC_BOOLEAN_TOOLTIP = "Returns either true or false."; // untranslated
+Blockly.Msg.LOGIC_BOOLEAN_TRUE = "teH";
+Blockly.Msg.LOGIC_COMPARE_HELPURL = "https://en.wikipedia.org/wiki/Inequality_(mathematics)"; // untranslated
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_EQ = "Return true if both inputs equal each other."; // untranslated
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GT = "Return true if the first input is greater than the second input."; // untranslated
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GTE = "Return true if the first input is greater than or equal to the second input."; // untranslated
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LT = "Return true if the first input is smaller than the second input."; // untranslated
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LTE = "Return true if the first input is smaller than or equal to the second input."; // untranslated
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_NEQ = "Return true if both inputs are not equal to each other."; // untranslated
+Blockly.Msg.LOGIC_NEGATE_HELPURL = "https://github.com/google/blockly/wiki/Logic#not"; // untranslated
+Blockly.Msg.LOGIC_NEGATE_TITLE = "yoymoH %1";
+Blockly.Msg.LOGIC_NEGATE_TOOLTIP = "Returns true if the input is false. Returns false if the input is true."; // untranslated
+Blockly.Msg.LOGIC_NULL = "paghna'";
+Blockly.Msg.LOGIC_NULL_HELPURL = "https://en.wikipedia.org/wiki/Nullable_type"; // untranslated
+Blockly.Msg.LOGIC_NULL_TOOLTIP = "Returns null."; // untranslated
+Blockly.Msg.LOGIC_OPERATION_AND = "'ej";
+Blockly.Msg.LOGIC_OPERATION_HELPURL = "https://github.com/google/blockly/wiki/Logic#logical-operations"; // untranslated
+Blockly.Msg.LOGIC_OPERATION_OR = "qoj";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_AND = "Return true if both inputs are true."; // untranslated
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_OR = "Return true if at least one of the inputs is true."; // untranslated
+Blockly.Msg.LOGIC_TERNARY_CONDITION = "chov";
+Blockly.Msg.LOGIC_TERNARY_HELPURL = "https://en.wikipedia.org/wiki/%3F:"; // untranslated
+Blockly.Msg.LOGIC_TERNARY_IF_FALSE = "teHbe'chugh";
+Blockly.Msg.LOGIC_TERNARY_IF_TRUE = "teHchugh";
+Blockly.Msg.LOGIC_TERNARY_TOOLTIP = "Check the condition in 'test'. If the condition is true, returns the 'if true' value; otherwise returns the 'if false' value."; // untranslated
+Blockly.Msg.MATH_ADDITION_SYMBOL = "+";
+Blockly.Msg.MATH_ARITHMETIC_HELPURL = "https://en.wikipedia.org/wiki/Arithmetic"; // untranslated
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_ADD = "Return the sum of the two numbers."; // untranslated
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE = "Return the quotient of the two numbers."; // untranslated
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MINUS = "Return the difference of the two numbers."; // untranslated
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MULTIPLY = "Return the product of the two numbers."; // untranslated
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_POWER = "Return the first number raised to the power of the second number."; // untranslated
+Blockly.Msg.MATH_CHANGE_HELPURL = "https://en.wikipedia.org/wiki/Programming_idiom#Incrementing_a_counter"; // untranslated
+Blockly.Msg.MATH_CHANGE_TITLE = "choH %1 chel %2";
+Blockly.Msg.MATH_CHANGE_TOOLTIP = "Add a number to variable '%1'."; // untranslated
+Blockly.Msg.MATH_CONSTANT_HELPURL = "https://en.wikipedia.org/wiki/Mathematical_constant"; // untranslated
+Blockly.Msg.MATH_CONSTANT_TOOLTIP = "Return one of the common constants: π (3.141…), e (2.718…), φ (1.618…), sqrt(2) (1.414…), sqrt(½) (0.707…), or ∞ (infinity)."; // untranslated
+Blockly.Msg.MATH_CONSTRAIN_HELPURL = "https://en.wikipedia.org/wiki/Clamping_%28graphics%29"; // untranslated
+Blockly.Msg.MATH_CONSTRAIN_TITLE = "jon %1 bIng %2 Dung %3";
+Blockly.Msg.MATH_CONSTRAIN_TOOLTIP = "Constrain a number to be between the specified limits (inclusive)."; // untranslated
+Blockly.Msg.MATH_DIVISION_SYMBOL = "÷";
+Blockly.Msg.MATH_IS_DIVISIBLE_BY = "wav'a'";
+Blockly.Msg.MATH_IS_EVEN = "lang'a' mI'";
+Blockly.Msg.MATH_IS_NEGATIVE = "bIng pagh";
+Blockly.Msg.MATH_IS_ODD = "ror'a' mI'";
+Blockly.Msg.MATH_IS_POSITIVE = "Dung pagh";
+Blockly.Msg.MATH_IS_PRIME = "potlh'a' mI'";
+Blockly.Msg.MATH_IS_TOOLTIP = "Check if a number is an even, odd, prime, whole, positive, negative, or if it is divisible by certain number. Returns true or false."; // untranslated
+Blockly.Msg.MATH_IS_WHOLE = "ngoHlaHbe''a'";
+Blockly.Msg.MATH_MODULO_HELPURL = "https://en.wikipedia.org/wiki/Modulo_operation"; // untranslated
+Blockly.Msg.MATH_MODULO_TITLE = "ratlwI' SIm %1 ÷ %2";
+Blockly.Msg.MATH_MODULO_TOOLTIP = "Return the remainder from dividing the two numbers."; // untranslated
+Blockly.Msg.MATH_MULTIPLICATION_SYMBOL = "×";
+Blockly.Msg.MATH_NUMBER_HELPURL = "https://en.wikipedia.org/wiki/Number"; // untranslated
+Blockly.Msg.MATH_NUMBER_TOOLTIP = "A number."; // untranslated
+Blockly.Msg.MATH_ONLIST_HELPURL = ""; // untranslated
+Blockly.Msg.MATH_ONLIST_OPERATOR_AVERAGE = "beQwI' SIm tetlh";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MAX = "tInwI''a' SIm tetlh";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MEDIAN = "beQwI'botlh SIm tetlh";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MIN = "machwI''a' SIm tetlh";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MODE = "beQwI' motlh SIm tetlh";
+Blockly.Msg.MATH_ONLIST_OPERATOR_RANDOM = "SaHbe' SIm tetlh";
+Blockly.Msg.MATH_ONLIST_OPERATOR_STD_DEV = "motlhbe'wI' SIm tetlh";
+Blockly.Msg.MATH_ONLIST_OPERATOR_SUM = "chelwI' SIm tetlh";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_AVERAGE = "Return the average (arithmetic mean) of the numeric values in the list."; // untranslated
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MAX = "Return the largest number in the list."; // untranslated
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MEDIAN = "Return the median number in the list."; // untranslated
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MIN = "Return the smallest number in the list."; // untranslated
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MODE = "Return a list of the most common item(s) in the list."; // untranslated
+Blockly.Msg.MATH_ONLIST_TOOLTIP_RANDOM = "Return a random element from the list."; // untranslated
+Blockly.Msg.MATH_ONLIST_TOOLTIP_STD_DEV = "Return the standard deviation of the list."; // untranslated
+Blockly.Msg.MATH_ONLIST_TOOLTIP_SUM = "Return the sum of all the numbers in the list."; // untranslated
+Blockly.Msg.MATH_POWER_SYMBOL = "^";
+Blockly.Msg.MATH_RANDOM_FLOAT_HELPURL = "https://en.wikipedia.org/wiki/Random_number_generation"; // untranslated
+Blockly.Msg.MATH_RANDOM_FLOAT_TITLE_RANDOM = "mI'HomSaHbe'";
+Blockly.Msg.MATH_RANDOM_FLOAT_TOOLTIP = "Return a random fraction between 0.0 (inclusive) and 1.0 (exclusive)."; // untranslated
+Blockly.Msg.MATH_RANDOM_INT_HELPURL = "https://en.wikipedia.org/wiki/Random_number_generation"; // untranslated
+Blockly.Msg.MATH_RANDOM_INT_TITLE = "ngoH mI'SaHbe' bIng %1 Dung %2";
+Blockly.Msg.MATH_RANDOM_INT_TOOLTIP = "Return a random integer between the two specified limits, inclusive."; // untranslated
+Blockly.Msg.MATH_ROUND_HELPURL = "https://en.wikipedia.org/wiki/Rounding"; // untranslated
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUND = "ngoH";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDDOWN = "bIng ngoH";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDUP = "Dung ngoH";
+Blockly.Msg.MATH_ROUND_TOOLTIP = "Round a number up or down."; // untranslated
+Blockly.Msg.MATH_SINGLE_HELPURL = "https://en.wikipedia.org/wiki/Square_root"; // untranslated
+Blockly.Msg.MATH_SINGLE_OP_ABSOLUTE = "Dung pagh choH";
+Blockly.Msg.MATH_SINGLE_OP_ROOT = "cha'DIch wav";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ABS = "Return the absolute value of a number."; // untranslated
+Blockly.Msg.MATH_SINGLE_TOOLTIP_EXP = "Return e to the power of a number."; // untranslated
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LN = "Return the natural logarithm of a number."; // untranslated
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LOG10 = "Return the base 10 logarithm of a number."; // untranslated
+Blockly.Msg.MATH_SINGLE_TOOLTIP_NEG = "Return the negation of a number."; // untranslated
+Blockly.Msg.MATH_SINGLE_TOOLTIP_POW10 = "Return 10 to the power of a number."; // untranslated
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ROOT = "Return the square root of a number."; // untranslated
+Blockly.Msg.MATH_SUBTRACTION_SYMBOL = "-";
+Blockly.Msg.MATH_TRIG_ACOS = "acos";
+Blockly.Msg.MATH_TRIG_ASIN = "asin";
+Blockly.Msg.MATH_TRIG_ATAN = "atan";
+Blockly.Msg.MATH_TRIG_COS = "cos";
+Blockly.Msg.MATH_TRIG_HELPURL = "https://en.wikipedia.org/wiki/Trigonometric_functions"; // untranslated
+Blockly.Msg.MATH_TRIG_SIN = "sin";
+Blockly.Msg.MATH_TRIG_TAN = "tan";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ACOS = "Return the arccosine of a number."; // untranslated
+Blockly.Msg.MATH_TRIG_TOOLTIP_ASIN = "Return the arcsine of a number."; // untranslated
+Blockly.Msg.MATH_TRIG_TOOLTIP_ATAN = "Return the arctangent of a number."; // untranslated
+Blockly.Msg.MATH_TRIG_TOOLTIP_COS = "Return the cosine of a degree (not radian)."; // untranslated
+Blockly.Msg.MATH_TRIG_TOOLTIP_SIN = "Return the sine of a degree (not radian)."; // untranslated
+Blockly.Msg.MATH_TRIG_TOOLTIP_TAN = "Return the tangent of a degree (not radian)."; // untranslated
+Blockly.Msg.NEW_VARIABLE = "lIw chu'...";
+Blockly.Msg.NEW_VARIABLE_TITLE = "lIw chu' pong:";
+Blockly.Msg.ORDINAL_NUMBER_SUFFIX = "";
+Blockly.Msg.PROCEDURES_ALLOW_STATEMENTS = "mu'tlhegh chaw'";
+Blockly.Msg.PROCEDURES_BEFORE_PARAMS = "qel:";
+Blockly.Msg.PROCEDURES_CALLNORETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_CALLNORETURN_TOOLTIP = "Run the user-defined function '%1'."; // untranslated
+Blockly.Msg.PROCEDURES_CALLRETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_CALLRETURN_TOOLTIP = "Run the user-defined function '%1' and use its output."; // untranslated
+Blockly.Msg.PROCEDURES_CALL_BEFORE_PARAMS = "qel:";
+Blockly.Msg.PROCEDURES_CREATE_DO = "chel '%1'";
+Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT = "mIw yIDel...";
+Blockly.Msg.PROCEDURES_DEFNORETURN_DO = "";
+Blockly.Msg.PROCEDURES_DEFNORETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE = "mIw";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE = "ruch";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TOOLTIP = "Creates a function with no output."; // untranslated
+Blockly.Msg.PROCEDURES_DEFRETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_DEFRETURN_RETURN = "chegh";
+Blockly.Msg.PROCEDURES_DEFRETURN_TOOLTIP = "Creates a function with an output."; // untranslated
+Blockly.Msg.PROCEDURES_DEF_DUPLICATE_WARNING = "ghuHmoHna': qelwI' cha'logh chen.";
+Blockly.Msg.PROCEDURES_HIGHLIGHT_DEF = "mIwna' wew";
+Blockly.Msg.PROCEDURES_IFRETURN_HELPURL = "http://c2.com/cgi/wiki?GuardClause"; // untranslated
+Blockly.Msg.PROCEDURES_IFRETURN_TOOLTIP = "If a value is true, then return a second value."; // untranslated
+Blockly.Msg.PROCEDURES_IFRETURN_WARNING = "ghoHmoHna': ngoghvam ngaSbe' mIwDaq.";
+Blockly.Msg.PROCEDURES_MUTATORARG_TITLE = "pong:";
+Blockly.Msg.PROCEDURES_MUTATORARG_TOOLTIP = "Add an input to the function."; // untranslated
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TITLE = "qelwI'mey";
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TOOLTIP = "Add, remove, or reorder inputs to this function."; // untranslated
+Blockly.Msg.REDO = "vangqa'";
+Blockly.Msg.REMOVE_COMMENT = "QInHom chelHa'";
+Blockly.Msg.RENAME_VARIABLE = "lIw pong choH...";
+Blockly.Msg.RENAME_VARIABLE_TITLE = "Hoch \"%1\" lIwmey pongmey choH:";
+Blockly.Msg.TEXT_APPEND_APPENDTEXT = "ghItlh";
+Blockly.Msg.TEXT_APPEND_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_APPEND_TO = "chel";
+Blockly.Msg.TEXT_APPEND_TOOLTIP = "Append some text to variable '%1'."; // untranslated
+Blockly.Msg.TEXT_CHANGECASE_HELPURL = "https://github.com/google/blockly/wiki/Text#adjusting-text-case"; // untranslated
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_LOWERCASE = "machchoH";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_TITLECASE = "DojchoH";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_UPPERCASE = "tInchoH";
+Blockly.Msg.TEXT_CHANGECASE_TOOLTIP = "Return a copy of the text in a different case."; // untranslated
+Blockly.Msg.TEXT_CHARAT_FIRST = "mu'Hom wa'DIch";
+Blockly.Msg.TEXT_CHARAT_FROM_END = "mu'Hom # Qav";
+Blockly.Msg.TEXT_CHARAT_FROM_START = "mu'Hom #";
+Blockly.Msg.TEXT_CHARAT_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-text"; // untranslated
+Blockly.Msg.TEXT_CHARAT_INPUT_INTEXT = "ghItlhDaq";
+Blockly.Msg.TEXT_CHARAT_LAST = "mu'Hom Qav";
+Blockly.Msg.TEXT_CHARAT_RANDOM = "mu'Hom SaHbe'";
+Blockly.Msg.TEXT_CHARAT_TAIL = "Suq";
+Blockly.Msg.TEXT_CHARAT_TOOLTIP = "Returns the letter at the specified position."; // untranslated
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TOOLTIP = "Add an item to the text."; // untranslated
+Blockly.Msg.TEXT_CREATE_JOIN_TITLE_JOIN = "ghom";
+Blockly.Msg.TEXT_CREATE_JOIN_TOOLTIP = "Add, remove, or reorder sections to reconfigure this text block."; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_END = "mojaq mu'Hom # Qav";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_START = "mojaq mu'Hom #";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_LAST = "mojaq mu'Hom Qav";
+Blockly.Msg.TEXT_GET_SUBSTRING_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_INPUT_IN_TEXT = "ghItlhDaq";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FIRST = "ghItlhHom moHaq mu'Hom wa'DIch";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_END = "ghItlhHom moHaq mu'Hom # Qav";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_START = "ghItlhHom moHaq mu'Hom #";
+Blockly.Msg.TEXT_GET_SUBSTRING_TAIL = "Suq";
+Blockly.Msg.TEXT_GET_SUBSTRING_TOOLTIP = "Returns a specified portion of the text."; // untranslated
+Blockly.Msg.TEXT_INDEXOF_HELPURL = "https://github.com/google/blockly/wiki/Text#finding-text"; // untranslated
+Blockly.Msg.TEXT_INDEXOF_INPUT_INTEXT = "ghItlhDaq";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_FIRST = "ghItlh wa'DIch Sam";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_LAST = "ghItlh Qav Sam";
+Blockly.Msg.TEXT_INDEXOF_TAIL = "";
+Blockly.Msg.TEXT_INDEXOF_TOOLTIP = "Returns the index of the first/last occurrence of the first text in the second text. Returns %1 if text is not found."; // untranslated
+Blockly.Msg.TEXT_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Text#checking-for-empty-text"; // untranslated
+Blockly.Msg.TEXT_ISEMPTY_TITLE = "%1 chIm'a'";
+Blockly.Msg.TEXT_ISEMPTY_TOOLTIP = "Returns true if the provided text is empty."; // untranslated
+Blockly.Msg.TEXT_JOIN_HELPURL = "https://github.com/google/blockly/wiki/Text#text-creation"; // untranslated
+Blockly.Msg.TEXT_JOIN_TITLE_CREATEWITH = "ghItlh ghom";
+Blockly.Msg.TEXT_JOIN_TOOLTIP = "Create a piece of text by joining together any number of items."; // untranslated
+Blockly.Msg.TEXT_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_LENGTH_TITLE = "chuq %1";
+Blockly.Msg.TEXT_LENGTH_TOOLTIP = "Returns the number of letters (including spaces) in the provided text."; // untranslated
+Blockly.Msg.TEXT_PRINT_HELPURL = "https://github.com/google/blockly/wiki/Text#printing-text"; // untranslated
+Blockly.Msg.TEXT_PRINT_TITLE = "maq %1";
+Blockly.Msg.TEXT_PRINT_TOOLTIP = "Print the specified text, number or other value."; // untranslated
+Blockly.Msg.TEXT_PROMPT_HELPURL = "https://github.com/google/blockly/wiki/Text#getting-input-from-the-user"; // untranslated
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_NUMBER = "Prompt for user for a number."; // untranslated
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_TEXT = "Prompt for user for some text."; // untranslated
+Blockly.Msg.TEXT_PROMPT_TYPE_NUMBER = "mI' tlhob 'ej maq";
+Blockly.Msg.TEXT_PROMPT_TYPE_TEXT = "ghItln tlhob 'ej maq";
+Blockly.Msg.TEXT_TEXT_HELPURL = "https://en.wikipedia.org/wiki/String_(computer_science)"; // untranslated
+Blockly.Msg.TEXT_TEXT_TOOLTIP = "A letter, word, or line of text."; // untranslated
+Blockly.Msg.TEXT_TRIM_HELPURL = "https://github.com/google/blockly/wiki/Text#trimming-removing-spaces"; // untranslated
+Blockly.Msg.TEXT_TRIM_OPERATOR_BOTH = "poSnIHlogh pei";
+Blockly.Msg.TEXT_TRIM_OPERATOR_LEFT = "poSlogh pei";
+Blockly.Msg.TEXT_TRIM_OPERATOR_RIGHT = "nIHlogh pei";
+Blockly.Msg.TEXT_TRIM_TOOLTIP = "Return a copy of the text with spaces removed from one or both ends."; // untranslated
+Blockly.Msg.TODAY = "DaHjaj";
+Blockly.Msg.UNDO = "vangHa'";
+Blockly.Msg.VARIABLES_DEFAULT_NAME = "Doch";
+Blockly.Msg.VARIABLES_GET_CREATE_SET = "chel 'choH %1'";
+Blockly.Msg.VARIABLES_GET_HELPURL = "https://github.com/google/blockly/wiki/Variables#get"; // untranslated
+Blockly.Msg.VARIABLES_GET_TOOLTIP = "Returns the value of this variable."; // untranslated
+Blockly.Msg.VARIABLES_SET = "choH %1 %2";
+Blockly.Msg.VARIABLES_SET_CREATE_GET = "chel 'Suq %1'";
+Blockly.Msg.VARIABLES_SET_HELPURL = "https://github.com/google/blockly/wiki/Variables#set"; // untranslated
+Blockly.Msg.VARIABLES_SET_TOOLTIP = "Sets this variable to be equal to the input."; // untranslated
+Blockly.Msg.VARIABLE_ALREADY_EXISTS = "A variable named '%1' already exists."; // untranslated
+Blockly.Msg.PROCEDURES_DEFRETURN_TITLE = Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE;
+Blockly.Msg.CONTROLS_IF_IF_TITLE_IF = Blockly.Msg.CONTROLS_IF_MSG_IF;
+Blockly.Msg.CONTROLS_WHILEUNTIL_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_MSG_THEN = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_ELSE_TITLE_ELSE = Blockly.Msg.CONTROLS_IF_MSG_ELSE;
+Blockly.Msg.PROCEDURES_DEFRETURN_PROCEDURE = Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE;
+Blockly.Msg.LISTS_GET_SUBLIST_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.LISTS_GET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.PROCEDURES_DEFRETURN_DO = Blockly.Msg.PROCEDURES_DEFNORETURN_DO;
+Blockly.Msg.CONTROLS_IF_ELSEIF_TITLE_ELSEIF = Blockly.Msg.CONTROLS_IF_MSG_ELSEIF;
+Blockly.Msg.LISTS_GET_INDEX_HELPURL = Blockly.Msg.LISTS_INDEX_OF_HELPURL;
+Blockly.Msg.CONTROLS_FOREACH_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_SET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TITLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_APPEND_VARIABLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.LISTS_INDEX_OF_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.PROCEDURES_DEFRETURN_COMMENT = Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT; \ No newline at end of file
diff --git a/blockly/msg/js/tr.js b/blockly/msg/js/tr.js
new file mode 100644
index 0000000..e613af9
--- /dev/null
+++ b/blockly/msg/js/tr.js
@@ -0,0 +1,391 @@
+// This file was automatically generated. Do not modify.
+
+'use strict';
+
+goog.provide('Blockly.Msg.tr');
+
+goog.require('Blockly.Msg');
+
+Blockly.Msg.ADD_COMMENT = "Yorum Ekle";
+Blockly.Msg.CHANGE_VALUE_TITLE = "Değeri değiştir:";
+Blockly.Msg.CLEAN_UP = "Blokları temizle";
+Blockly.Msg.COLLAPSE_ALL = "Blokları Daralt";
+Blockly.Msg.COLLAPSE_BLOCK = "Blok'u Daralt";
+Blockly.Msg.COLOUR_BLEND_COLOUR1 = "renk 1";
+Blockly.Msg.COLOUR_BLEND_COLOUR2 = "renk 2";
+Blockly.Msg.COLOUR_BLEND_HELPURL = "http://meyerweb.com/eric/tools/color-blend/";
+Blockly.Msg.COLOUR_BLEND_RATIO = "oran";
+Blockly.Msg.COLOUR_BLEND_TITLE = "karıştır";
+Blockly.Msg.COLOUR_BLEND_TOOLTIP = "Verilen bir orana bağlı olarak iki rengi karıştırır. (0.0 - 1.0).";
+Blockly.Msg.COLOUR_PICKER_HELPURL = "https://tr.wikipedia.org/wiki/Renk";
+Blockly.Msg.COLOUR_PICKER_TOOLTIP = "Paletten bir renk seçin.";
+Blockly.Msg.COLOUR_RANDOM_HELPURL = "http://randomcolour.com"; // untranslated
+Blockly.Msg.COLOUR_RANDOM_TITLE = "rastgele renk";
+Blockly.Msg.COLOUR_RANDOM_TOOLTIP = "Rastgele bir renk seçin.";
+Blockly.Msg.COLOUR_RGB_BLUE = "mavi";
+Blockly.Msg.COLOUR_RGB_GREEN = "yeşil";
+Blockly.Msg.COLOUR_RGB_HELPURL = "http://www.december.com/html/spec/colorper.html";
+Blockly.Msg.COLOUR_RGB_RED = "kırmızı";
+Blockly.Msg.COLOUR_RGB_TITLE = "renk değerleri";
+Blockly.Msg.COLOUR_RGB_TOOLTIP = "Kırmızı, yeşil ve mavinin belirtilen miktarıyla bir renk oluşturun. Tüm değerler 0 ile 100 arasında olmalıdır.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_HELPURL = "https://github.com/google/blockly/wiki/Loops#loop-termination-blocks"; // untranslated
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK = "döngüden çık";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE = "döngünün sonraki adımından devam et";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK = "İçeren döngüden çık.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE = "Bu döngünün geri kalanını atlayın ve sonraki adım ile devam edin.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_WARNING = "Uyarı: Bu blok sadece bir döngü içinde kullanılabilir.";
+Blockly.Msg.CONTROLS_FOREACH_HELPURL = "https://github.com/google/blockly/wiki/Loops#for-each"; // untranslated
+Blockly.Msg.CONTROLS_FOREACH_TITLE = "her öğe için %1 listede %2";
+Blockly.Msg.CONTROLS_FOREACH_TOOLTIP = "Bir listedeki her öğe için '%1' değişkenini maddeye atayın ve bundan sonra bazı açıklamalar yapın.";
+Blockly.Msg.CONTROLS_FOR_HELPURL = "https://github.com/google/blockly/wiki/Loops#count-with"; // untranslated
+Blockly.Msg.CONTROLS_FOR_TITLE = "ile sayılır %1 %2 den %3 ye, her adımda %4 değişim";
+Blockly.Msg.CONTROLS_FOR_TOOLTIP = "Başlangıç sayısından bitiş sayısına kadar belirtilen aralık ve belirtilen engeller ile devam eden değerler alan '%1' değişkeni oluştur.";
+Blockly.Msg.CONTROLS_IF_ELSEIF_TOOLTIP = "If bloğuna bir koşul ekleyin.";
+Blockly.Msg.CONTROLS_IF_ELSE_TOOLTIP = "If bloğuna kalan durumları \"yakalayan\" bir son ekle.";
+Blockly.Msg.CONTROLS_IF_HELPURL = "https://github.com/google/blockly/wiki/IfElse"; // untranslated
+Blockly.Msg.CONTROLS_IF_IF_TOOLTIP = "If bloğuna ekle, kaldır veya yeniden düzenleme yap.";
+Blockly.Msg.CONTROLS_IF_MSG_ELSE = "değilse";
+Blockly.Msg.CONTROLS_IF_MSG_ELSEIF = "değilse eğer";
+Blockly.Msg.CONTROLS_IF_MSG_IF = "eğer";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_1 = "Eğer değişken true , yani gerçekleşmiş ise , ardından gelen işlemi yerine getir .";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_2 = "Eğer değişken true, yani gerçekleşiyor ise ilk blok'taki işlemleri yerine getir, Aksi halde ikinci blok'taki işlemleri yerine getir.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_3 = "Eğer ilk değişken true, yani koşul gerçekleşmiş ise ilk blok içerisindeki işlem(ler)i gerçekleştir. Eğer ikinci değişken true ise, ikinci bloktaki işlem(ler)i gerçekleştir .";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_4 = "Eğer ilk değer true, yani olumlu ise, ilk blok'taki işlem(ler)i gerçekleştir. İlk değer true değil ama ikinci değer true ise, ikinci bloktaki işlem(ler)i gerçekleştir. Eğer değerlerin hiçbiri true değil ise son blok'taki işlem(ler)i gerçekleştir.";
+Blockly.Msg.CONTROLS_REPEAT_HELPURL = "https://tr.wikipedia.org/wiki/For_d%C3%B6ng%C3%BCs%C3%BC";
+Blockly.Msg.CONTROLS_REPEAT_INPUT_DO = "yap";
+Blockly.Msg.CONTROLS_REPEAT_TITLE = "%1 kez tekrarla";
+Blockly.Msg.CONTROLS_REPEAT_TOOLTIP = "Bazı işlemleri birkaç kez yap.";
+Blockly.Msg.CONTROLS_WHILEUNTIL_HELPURL = "https://github.com/google/blockly/wiki/Loops#repeat"; // untranslated
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "kadar tekrarla";
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "tekrar ederken";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "Bir değer yanlış olduğunda bazı beyanlarda bulun.";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "Bir değer doğru olduğunda bazı beyanlarda bulun.";
+Blockly.Msg.DELETE_ALL_BLOCKS = "Tüm %1 blok silinsin mi?";
+Blockly.Msg.DELETE_BLOCK = "Bloğu Sil";
+Blockly.Msg.DELETE_VARIABLE = "'%1' değişkenini silmek istiyor musunuz?";
+Blockly.Msg.DELETE_VARIABLE_CONFIRMATION = "'%2' değişkeninin %1 kullanımını silmek istiyor musunuz?";
+Blockly.Msg.DELETE_X_BLOCKS = "%1 Blokları Sil";
+Blockly.Msg.DISABLE_BLOCK = "Bloğu Devre Dışı Bırak";
+Blockly.Msg.DUPLICATE_BLOCK = "Çoğalt";
+Blockly.Msg.ENABLE_BLOCK = "Bloğu Etkinleştir";
+Blockly.Msg.EXPAND_ALL = "Blokları Genişlet";
+Blockly.Msg.EXPAND_BLOCK = "Bloğu Genişlet";
+Blockly.Msg.EXTERNAL_INPUTS = "Harici Girişler";
+Blockly.Msg.HELP = "Yardım";
+Blockly.Msg.INLINE_INPUTS = "Satır içi girdiler";
+Blockly.Msg.LISTS_CREATE_EMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-empty-list";
+Blockly.Msg.LISTS_CREATE_EMPTY_TITLE = "Boş liste oluştur";
+Blockly.Msg.LISTS_CREATE_EMPTY_TOOLTIP = "Veri kaydı içermeyen uzunluğu 0 olan bir listeyi verir";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TITLE_ADD = "liste";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TOOLTIP = "Bu liste bloğunu yeniden yapılandırmak için bölüm ekle,kaldır veya yeniden çağır.";
+Blockly.Msg.LISTS_CREATE_WITH_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
+Blockly.Msg.LISTS_CREATE_WITH_INPUT_WITH = "İle liste oluşturma";
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TOOLTIP = "Listeye bir nesne ekle.";
+Blockly.Msg.LISTS_CREATE_WITH_TOOLTIP = "Herhangi sayıda nesne içeren bir liste oluştur.";
+Blockly.Msg.LISTS_GET_INDEX_FIRST = "ilk";
+Blockly.Msg.LISTS_GET_INDEX_FROM_END = "# sonundan";
+Blockly.Msg.LISTS_GET_INDEX_FROM_START = "# Kare";
+Blockly.Msg.LISTS_GET_INDEX_GET = "Al";
+Blockly.Msg.LISTS_GET_INDEX_GET_REMOVE = "al ve kaldır";
+Blockly.Msg.LISTS_GET_INDEX_LAST = "son";
+Blockly.Msg.LISTS_GET_INDEX_RANDOM = "rastgele";
+Blockly.Msg.LISTS_GET_INDEX_REMOVE = "kaldır";
+Blockly.Msg.LISTS_GET_INDEX_TAIL = "";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FIRST = "Listedeki ilk öğeyi verir.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FROM = "Listede belirli pozisyondaki bir öğeyi verir.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_LAST = "Listedeki son öğeyi verir.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_RANDOM = "Listedeki rastgele bir öğeyi verir.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST = "Kaldırır ve listedeki ilk öğeyi döndürür.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM = "Kaldırır ve listede belirtilen konumdaki bir öğeyi döndürür.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST = "Kaldırır ve listedeki son öğeyi döndürür.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM = "Kaldırır ve listedeki rastgele bir öğeyi verir.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST = "Listedeki ilk nesneyi kaldırır.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM = "Bir liste içerisinde , tanımlanan pozisyonda ki öğeyi kaldırır.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST = "Listedeki son nesneyi kaldırır.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM = "Listedeki rastgele bir nesneyi kaldırır.";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_END = "Sondan #'a kadar";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_START = "#'a";
+Blockly.Msg.LISTS_GET_SUBLIST_END_LAST = "Sona kadar";
+Blockly.Msg.LISTS_GET_SUBLIST_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-a-sublist"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_START_FIRST = "ilk öğeden alt liste al";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_END = "# işaretinden sonra gelen ifadeye göre alt liste al , # sondan";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_START = "# dan alt liste al";
+Blockly.Msg.LISTS_GET_SUBLIST_TAIL = "";
+Blockly.Msg.LISTS_GET_SUBLIST_TOOLTIP = "Listenin belirli bir kısmının kopyasını yaratır.";
+Blockly.Msg.LISTS_INDEX_FROM_END_TOOLTIP = "%1 son öğedir.";
+Blockly.Msg.LISTS_INDEX_FROM_START_TOOLTIP = "%1 ilk öğedir.";
+Blockly.Msg.LISTS_INDEX_OF_FIRST = "Öğenin ilk varolduğu yeri bul";
+Blockly.Msg.LISTS_INDEX_OF_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-items-from-a-list"; // untranslated
+Blockly.Msg.LISTS_INDEX_OF_LAST = "Öğenin son varolduğu yeri bul";
+Blockly.Msg.LISTS_INDEX_OF_TOOLTIP = "Listedeki öğenin ilk/son oluşumunun indeksini döndürür. Eğer öğe bulunamaz ise %1 döndürür.";
+Blockly.Msg.LISTS_INLIST = "Listede";
+Blockly.Msg.LISTS_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#is-empty"; // untranslated
+Blockly.Msg.LISTS_ISEMPTY_TITLE = "%1 boş";
+Blockly.Msg.LISTS_ISEMPTY_TOOLTIP = "Eğer liste boş ise true döndürür .";
+Blockly.Msg.LISTS_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Lists#length-of"; // untranslated
+Blockly.Msg.LISTS_LENGTH_TITLE = "%1'in uzunluğu";
+Blockly.Msg.LISTS_LENGTH_TOOLTIP = "Bir listenin uzunluğunu verir.";
+Blockly.Msg.LISTS_REPEAT_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
+Blockly.Msg.LISTS_REPEAT_TITLE = "%1 nesnenin %2 kez tekrarlandığı bir liste yarat";
+Blockly.Msg.LISTS_REPEAT_TOOLTIP = "Verilen bir değerin , belirli bir sayıda tekrarlanmasından oluşan bir liste yaratır .";
+Blockly.Msg.LISTS_SET_INDEX_HELPURL = "https://github.com/google/blockly/wiki/Lists#in-list--set"; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_INPUT_TO = "olarak";
+Blockly.Msg.LISTS_SET_INDEX_INSERT = "e yerleştir";
+Blockly.Msg.LISTS_SET_INDEX_SET = "yerleştir";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST = "Nesneyi listenin başlangıcına ekler.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FROM = "Bir öğeyi belirtilen pozisyona göre listeye yerleştirir .";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_LAST = "Öğeyi listenin sonuna ekle .";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM = "Bir öğeyi listeye rast gele ekler .";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FIRST = "Bir listenin ilk öğesini yerleştirir .";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FROM = "Bir öğeyi belirtilen yere göre listeye yerleştirir .";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_LAST = "Bir listedeki son öğeyi yerleştirir .";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_RANDOM = "Listeye rast gele bir öğe yerleştirir .";
+Blockly.Msg.LISTS_SORT_HELPURL = "https://github.com/google/blockly/wiki/Lists#sorting-a-list";
+Blockly.Msg.LISTS_SORT_ORDER_ASCENDING = "artan";
+Blockly.Msg.LISTS_SORT_ORDER_DESCENDING = "azalan";
+Blockly.Msg.LISTS_SORT_TITLE = "kısa %1 %2 %3";
+Blockly.Msg.LISTS_SORT_TOOLTIP = "Listenin kısa bir kopyası.";
+Blockly.Msg.LISTS_SORT_TYPE_IGNORECASE = "alfabetik, gözardı et";
+Blockly.Msg.LISTS_SORT_TYPE_NUMERIC = "sayısal";
+Blockly.Msg.LISTS_SORT_TYPE_TEXT = "alfabetik";
+Blockly.Msg.LISTS_SPLIT_HELPURL = "https://github.com/google/blockly/wiki/Lists#splitting-strings-and-joining-lists"; // untranslated
+Blockly.Msg.LISTS_SPLIT_LIST_FROM_TEXT = "metinden liste yap";
+Blockly.Msg.LISTS_SPLIT_TEXT_FROM_LIST = "listeden metin yap";
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_JOIN = "Bir sınırlayıcı tarafından kesilen metinlerin listesini bir metine ekle.";
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_SPLIT = "Her sınırlayıcıda kesen metinleri bir metin listesine ayır.";
+Blockly.Msg.LISTS_SPLIT_WITH_DELIMITER = "sınırlayıcı ile";
+Blockly.Msg.LOGIC_BOOLEAN_FALSE = "false = Olumsuz";
+Blockly.Msg.LOGIC_BOOLEAN_HELPURL = "https://github.com/google/blockly/wiki/Logic#values"; // untranslated
+Blockly.Msg.LOGIC_BOOLEAN_TOOLTIP = "Ya 'True' yada 'False' değerini verir.";
+Blockly.Msg.LOGIC_BOOLEAN_TRUE = "Olumlu";
+Blockly.Msg.LOGIC_COMPARE_HELPURL = "https://tr.wikipedia.org/wiki/E%C5%9Fitsizlikler";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_EQ = "Girilen iki değer birbirine eşitse \"True\" değerini verir.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GT = "Girilen ilk değer ikinci değerden daha büyükse \"True\" değerini verir.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GTE = "Girilen ilk değer ikinci değerden büyük veya eşitse \"True\" değerini verir.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LT = "Girilen ilk değer ikinci değerden küçükse \"True\" değerini verir.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LTE = "Girilen ilk değer ikinci değerden küçük veya eşitse \"True\" değerini verir.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_NEQ = "Girilen iki değerde birbirine eşit değilse \"True\" değerini verir.";
+Blockly.Msg.LOGIC_NEGATE_HELPURL = "https://github.com/google/blockly/wiki/Logic#not"; // untranslated
+Blockly.Msg.LOGIC_NEGATE_TITLE = "%1 değil";
+Blockly.Msg.LOGIC_NEGATE_TOOLTIP = "Girilen değer yanlışsa \"True\" değerini verir.Girilen değer doğruysa \"False\" değerini verir.";
+Blockly.Msg.LOGIC_NULL = "sıfır";
+Blockly.Msg.LOGIC_NULL_HELPURL = "https://en.wikipedia.org/wiki/Nullable_type";
+Blockly.Msg.LOGIC_NULL_TOOLTIP = "sıfır verir.";
+Blockly.Msg.LOGIC_OPERATION_AND = "ve";
+Blockly.Msg.LOGIC_OPERATION_HELPURL = "https://github.com/google/blockly/wiki/Logic#logical-operations"; // untranslated
+Blockly.Msg.LOGIC_OPERATION_OR = "veya";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_AND = "Girilen iki değerde doğruysa \"True\" değerini verir.";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_OR = "Girilen iki değerden en az biri doğruysa \"True\" değerini verir.";
+Blockly.Msg.LOGIC_TERNARY_CONDITION = "test";
+Blockly.Msg.LOGIC_TERNARY_HELPURL = "https://en.wikipedia.org/wiki/%3F:";
+Blockly.Msg.LOGIC_TERNARY_IF_FALSE = "yanlış ise";
+Blockly.Msg.LOGIC_TERNARY_IF_TRUE = "doğru ise";
+Blockly.Msg.LOGIC_TERNARY_TOOLTIP = "'test'deki şartı test eder. Eğer şart doğru ise 'doğru' değeri döndürür, aksi halde 'yanlış' değeri döndürür.";
+Blockly.Msg.MATH_ADDITION_SYMBOL = "+";
+Blockly.Msg.MATH_ARITHMETIC_HELPURL = "https://tr.wikipedia.org/wiki/Aritmetik";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_ADD = "İki rakamın toplamını döndür.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE = "İki sayının bölümünü döndür.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MINUS = "İki sayını farkını döndür.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MULTIPLY = "İki sayının çarpımını döndür.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_POWER = "İlk sayinin ikincinin kuvvetine yükseltilmişini döndür.";
+Blockly.Msg.MATH_CHANGE_HELPURL = "https://en.wikipedia.org/wiki/Programming_idiom#Incrementing_a_counter";
+Blockly.Msg.MATH_CHANGE_TITLE = "%1'i %2 kadar değiştir";
+Blockly.Msg.MATH_CHANGE_TOOLTIP = "'%1' değişkenine bir sayı ekle.";
+Blockly.Msg.MATH_CONSTANT_HELPURL = "https://en.wikipedia.org/wiki/Mathematical_constant";
+Blockly.Msg.MATH_CONSTANT_TOOLTIP = "Yaygın sabitlerden birini döndür:π (3.141…), e (2.718…), φ (1.618…), sqrt(2) (1.414…), sqrt(½) (0.707…), or ∞ (sonsuz).";
+Blockly.Msg.MATH_CONSTRAIN_HELPURL = "https://en.wikipedia.org/wiki/Clamping_%28graphics%29"; // untranslated
+Blockly.Msg.MATH_CONSTRAIN_TITLE = "%1 i en düşük %2 en yüksek %3 ile sınırla";
+Blockly.Msg.MATH_CONSTRAIN_TOOLTIP = "Bir sayıyı belirli iki sayı arasında sınırlandır(dahil).";
+Blockly.Msg.MATH_DIVISION_SYMBOL = "÷";
+Blockly.Msg.MATH_IS_DIVISIBLE_BY = "bölünebilir";
+Blockly.Msg.MATH_IS_EVEN = "çift";
+Blockly.Msg.MATH_IS_NEGATIVE = "negatif";
+Blockly.Msg.MATH_IS_ODD = "tek";
+Blockly.Msg.MATH_IS_POSITIVE = "pozitif";
+Blockly.Msg.MATH_IS_PRIME = "asal";
+Blockly.Msg.MATH_IS_TOOLTIP = "Bir sayinin çift mi tek mi , tam mı, asal mı , pozitif mi, negatif mi, veya tam bir sayıyla bölünebilirliğini kontrol et.'True' veya 'False' değerini döndür.";
+Blockly.Msg.MATH_IS_WHOLE = "Bütün olduğunu";
+Blockly.Msg.MATH_MODULO_HELPURL = "https://en.wikipedia.org/wiki/Modulo_operation";
+Blockly.Msg.MATH_MODULO_TITLE = "%1 ÷ %2 nin kalanı";
+Blockly.Msg.MATH_MODULO_TOOLTIP = "İki sayının bölümünden kalanı döndür.";
+Blockly.Msg.MATH_MULTIPLICATION_SYMBOL = "x";
+Blockly.Msg.MATH_NUMBER_HELPURL = "https://en.wikipedia.org/wiki/Number";
+Blockly.Msg.MATH_NUMBER_TOOLTIP = "Bir sayı.";
+Blockly.Msg.MATH_ONLIST_HELPURL = "";
+Blockly.Msg.MATH_ONLIST_OPERATOR_AVERAGE = "listenin ortalaması";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MAX = "en büyük sayı";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MEDIAN = "Listenin medyanı";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MIN = "Listenin en küçüğü";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MODE = "Listenin modları";
+Blockly.Msg.MATH_ONLIST_OPERATOR_RANDOM = "Listenin rastgele öğesi";
+Blockly.Msg.MATH_ONLIST_OPERATOR_STD_DEV = "Listenin standart sapması";
+Blockly.Msg.MATH_ONLIST_OPERATOR_SUM = "Listenin toplamı";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_AVERAGE = "Listedeki sayısal değerlerin ortalamasını (aritmetik anlamda) döndür.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MAX = "Listenin en büyüğünü döndür.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MEDIAN = "Listenin medyanını döndür.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MIN = "Listenin en küçüğünü döndür.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MODE = "Listede ki en yaygın öğe veya öğelerinin listesini döndür.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_RANDOM = "Listeden rastgele bir element döndür.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_STD_DEV = "Listenin standart sapmasını döndür.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_SUM = "Listede ki tüm sayıların toplamını döndür.";
+Blockly.Msg.MATH_POWER_SYMBOL = "üst alma";
+Blockly.Msg.MATH_RANDOM_FLOAT_HELPURL = "https://tr.wikipedia.org/wiki/Rastgele_say%C4%B1_%C3%BCretimi";
+Blockly.Msg.MATH_RANDOM_FLOAT_TITLE_RANDOM = "Rast gele kesirli sayı , yada parça";
+Blockly.Msg.MATH_RANDOM_FLOAT_TOOLTIP = "0.0(dahil) ve 1.0 (hariç) sayıları arasında bir sayı döndür .";
+Blockly.Msg.MATH_RANDOM_INT_HELPURL = "https://tr.wikipedia.org/wiki/Rastgele_say%C4%B1_%C3%BCretimi";
+Blockly.Msg.MATH_RANDOM_INT_TITLE = "%1 ile %2 arasında rastgele tam sayı üret";
+Blockly.Msg.MATH_RANDOM_INT_TOOLTIP = "Herhangi iki sayı arasında , sayılar dahil olmak üzere , rastgele bir tam sayı döndür.";
+Blockly.Msg.MATH_ROUND_HELPURL = "https://en.wikipedia.org/wiki/Rounding Yuvarlama fonksiyonu için araştırma yapınız, sayfanın Türkçe çevirisi henüz mevcut değil.";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUND = "Yuvarla";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDDOWN = "aşağı yuvarla";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDUP = "yukarı yuvarla";
+Blockly.Msg.MATH_ROUND_TOOLTIP = "Bir sayı yı yukarı yada aşağı yuvarla .";
+Blockly.Msg.MATH_SINGLE_HELPURL = "https://tr.wikipedia.org/wiki/Karek%C3%B6k";
+Blockly.Msg.MATH_SINGLE_OP_ABSOLUTE = "Kesin";
+Blockly.Msg.MATH_SINGLE_OP_ROOT = "Kare kök";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ABS = "Bir sayının tam değerini döndür .";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_EXP = "Bir sayının e ' inci kuvvetini döndür .";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LN = "Bir sayının doğal logaritmasını döndür .";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LOG10 = "Bir sayının 10 temelinde logaritmasını döndür .";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_NEG = "Bir sayıyı geçersiz olarak döndür .";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_POW10 = "Bir sayının 10. kuvvetini döndür .";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ROOT = "Bir sayının karekökü nü döndür .";
+Blockly.Msg.MATH_SUBTRACTION_SYMBOL = "tire";
+Blockly.Msg.MATH_TRIG_ACOS = "akosünüs";
+Blockly.Msg.MATH_TRIG_ASIN = "asinüs";
+Blockly.Msg.MATH_TRIG_ATAN = "atanjant";
+Blockly.Msg.MATH_TRIG_COS = "kosünüs";
+Blockly.Msg.MATH_TRIG_HELPURL = "https://tr.wikipedia.org/wiki/Trigonometrik_fonksiyonlar";
+Blockly.Msg.MATH_TRIG_SIN = "Sinüs";
+Blockly.Msg.MATH_TRIG_TAN = "tanjant";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ACOS = "Bir sayının ters kosunusunu döndür .";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ASIN = "Bir sayının ters sinüsünü döndür .";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ATAN = "Bir sayının ters tanjantını döndür .";
+Blockly.Msg.MATH_TRIG_TOOLTIP_COS = "Bir açının kosinüsünü döndür(radyan olarak değil).";
+Blockly.Msg.MATH_TRIG_TOOLTIP_SIN = "Bir açının sinüsünü döndür(radyan olarak değil).";
+Blockly.Msg.MATH_TRIG_TOOLTIP_TAN = "Bir açının tanjantını döndür(radyan olarak değil).";
+Blockly.Msg.NEW_VARIABLE = "Değişken oluştur...";
+Blockly.Msg.NEW_VARIABLE_TITLE = "Yeni değişken ismi :";
+Blockly.Msg.ORDINAL_NUMBER_SUFFIX = "";
+Blockly.Msg.PROCEDURES_ALLOW_STATEMENTS = "Eğer ifadelerine izin ver";
+Blockly.Msg.PROCEDURES_BEFORE_PARAMS = "ile :";
+Blockly.Msg.PROCEDURES_CALLNORETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29";
+Blockly.Msg.PROCEDURES_CALLNORETURN_TOOLTIP = "Kullanıcı tanımlı fonksiyonu çalıştır '%1' .";
+Blockly.Msg.PROCEDURES_CALLRETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29";
+Blockly.Msg.PROCEDURES_CALLRETURN_TOOLTIP = "Kullanıcı tanımlı fonksiyonu çalıştır '%1' ve çıktısını kullan .";
+Blockly.Msg.PROCEDURES_CALL_BEFORE_PARAMS = "ile :";
+Blockly.Msg.PROCEDURES_CREATE_DO = "'%1' oluştur";
+Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT = "Bu işlevi açıkla...";
+Blockly.Msg.PROCEDURES_DEFNORETURN_DO = "";
+Blockly.Msg.PROCEDURES_DEFNORETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29";
+Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE = "birşey yap";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE = "e";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TOOLTIP = "Çıktı vermeyen bir fonksiyon yaratır .";
+Blockly.Msg.PROCEDURES_DEFRETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29";
+Blockly.Msg.PROCEDURES_DEFRETURN_RETURN = "Geri dön";
+Blockly.Msg.PROCEDURES_DEFRETURN_TOOLTIP = "Çıktı veren bir fonksiyon oluşturur.";
+Blockly.Msg.PROCEDURES_DEF_DUPLICATE_WARNING = "Uyarı: Bu fonksiyon yinelenen parametreler vardır.";
+Blockly.Msg.PROCEDURES_HIGHLIGHT_DEF = "Fonksiyon tanımı vurgulamak";
+Blockly.Msg.PROCEDURES_IFRETURN_HELPURL = "http://c2.com/cgi/wiki?GuardClause";
+Blockly.Msg.PROCEDURES_IFRETURN_TOOLTIP = "Eğer değer doğruysa, ikinci değere geri dön.";
+Blockly.Msg.PROCEDURES_IFRETURN_WARNING = "Uyarı: Bu blok yalnızca bir fonksiyon tanımı içinde kullanılır.";
+Blockly.Msg.PROCEDURES_MUTATORARG_TITLE = "girdi adı:";
+Blockly.Msg.PROCEDURES_MUTATORARG_TOOLTIP = "İşleve bir girdi ekleyin.";
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TITLE = "girdiler";
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TOOLTIP = "Bu işlevin girdilerini ekleyin, çıkarın, ya da yeniden sıralayın.";
+Blockly.Msg.REDO = "Yinele";
+Blockly.Msg.REMOVE_COMMENT = "Yorumu Sil";
+Blockly.Msg.RENAME_VARIABLE = "Değişkeni yeniden adlandır...";
+Blockly.Msg.RENAME_VARIABLE_TITLE = "Tüm '%1' değişkenlerini yeniden isimlendir:";
+Blockly.Msg.TEXT_APPEND_APPENDTEXT = "Metin Ekle";
+Blockly.Msg.TEXT_APPEND_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_APPEND_TO = "e";
+Blockly.Msg.TEXT_APPEND_TOOLTIP = "Değişken '%1' e bazı metinler ekleyin.";
+Blockly.Msg.TEXT_CHANGECASE_HELPURL = "https://github.com/google/blockly/wiki/Text#adjusting-text-case"; // untranslated
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_LOWERCASE = "küçük harf";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_TITLECASE = "Baş Harfler Büyük";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_UPPERCASE = "büyük harf";
+Blockly.Msg.TEXT_CHANGECASE_TOOLTIP = "Metnin bir kopyasını farklı bir harf durumunda (HEPSİ BÜYÜK - hepsi küçük) getirir.";
+Blockly.Msg.TEXT_CHARAT_FIRST = "İlk harfini al";
+Blockly.Msg.TEXT_CHARAT_FROM_END = "# dan sona harfleri al";
+Blockly.Msg.TEXT_CHARAT_FROM_START = "# harfini al";
+Blockly.Msg.TEXT_CHARAT_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-text"; // untranslated
+Blockly.Msg.TEXT_CHARAT_INPUT_INTEXT = "metinde";
+Blockly.Msg.TEXT_CHARAT_LAST = "son harfi al";
+Blockly.Msg.TEXT_CHARAT_RANDOM = "Rastgele bir harf al";
+Blockly.Msg.TEXT_CHARAT_TAIL = "";
+Blockly.Msg.TEXT_CHARAT_TOOLTIP = "Belirli pozisyonda ki bir harfi döndürür.";
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TOOLTIP = "Metine bir öğe ekle.";
+Blockly.Msg.TEXT_CREATE_JOIN_TITLE_JOIN = "Katıl";
+Blockly.Msg.TEXT_CREATE_JOIN_TOOLTIP = "Bu metin bloğunu düzenlemek için bölüm ekle,sil veya yeniden görevlendir.";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_END = "Sondan # harfe";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_START = "# harfe";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_LAST = "son harfe";
+Blockly.Msg.TEXT_GET_SUBSTRING_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_INPUT_IN_TEXT = "metinde";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FIRST = "ilk harften başlayarak alt-string alma";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_END = "n inci harften sona kadar alt-string alma";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_START = "n inci harften alt-string alma";
+Blockly.Msg.TEXT_GET_SUBSTRING_TAIL = "";
+Blockly.Msg.TEXT_GET_SUBSTRING_TOOLTIP = "Metinin belirli bir kısmını döndürür.";
+Blockly.Msg.TEXT_INDEXOF_HELPURL = "https://github.com/google/blockly/wiki/Text#finding-text"; // untranslated
+Blockly.Msg.TEXT_INDEXOF_INPUT_INTEXT = "metinde";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_FIRST = "Metnin ilk varolduğu yeri bul";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_LAST = "Metnin son varolduğu yeri bul";
+Blockly.Msg.TEXT_INDEXOF_TAIL = "";
+Blockly.Msg.TEXT_INDEXOF_TOOLTIP = "İlk metnin ikinci metnin içindeki ilk ve son varoluşlarının indeksini döndürür.Metin bulunamadıysa %1 döndürür.";
+Blockly.Msg.TEXT_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Text#checking-for-empty-text"; // untranslated
+Blockly.Msg.TEXT_ISEMPTY_TITLE = "%1 boş";
+Blockly.Msg.TEXT_ISEMPTY_TOOLTIP = "Verilen metin boşsa true(doğru) değerini verir.";
+Blockly.Msg.TEXT_JOIN_HELPURL = "https://github.com/google/blockly/wiki/Text#text-creation"; // untranslated
+Blockly.Msg.TEXT_JOIN_TITLE_CREATEWITH = "ile metin oluştur";
+Blockly.Msg.TEXT_JOIN_TOOLTIP = "Herhangi bir sayıda ki öğeleri bir araya getirerek metnin bir parçasını oluştur.";
+Blockly.Msg.TEXT_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_LENGTH_TITLE = "%1 in uzunluğu";
+Blockly.Msg.TEXT_LENGTH_TOOLTIP = "Yazı içerisinde verilen harflerin ( harf arasındaki boşluklar dahil) sayısını verir .";
+Blockly.Msg.TEXT_PRINT_HELPURL = "https://github.com/google/blockly/wiki/Text#printing-text"; // untranslated
+Blockly.Msg.TEXT_PRINT_TITLE = "%1 ' i Yaz";
+Blockly.Msg.TEXT_PRINT_TOOLTIP = "Belirli bir metni,sayıyı veya başka bir değeri yaz.";
+Blockly.Msg.TEXT_PROMPT_HELPURL = "https://github.com/google/blockly/wiki/Text#getting-input-from-the-user"; // untranslated
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_NUMBER = "Kullanıcıdan sayı al .";
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_TEXT = "Kullanıcıdan Yazım al .";
+Blockly.Msg.TEXT_PROMPT_TYPE_NUMBER = "Kullanıcıdan sayı al , istek mesajı göstererek";
+Blockly.Msg.TEXT_PROMPT_TYPE_TEXT = "Kullanıcıdan yazım al , istek mesajıyla";
+Blockly.Msg.TEXT_TEXT_HELPURL = "https://en.wikipedia.org/wiki/String_(computer_science)";
+Blockly.Msg.TEXT_TEXT_TOOLTIP = "Metnin bir harfi,kelimesi veya satırı.";
+Blockly.Msg.TEXT_TRIM_HELPURL = "https://github.com/google/blockly/wiki/Text#trimming-removing-spaces"; // untranslated
+Blockly.Msg.TEXT_TRIM_OPERATOR_BOTH = "iki tarafından da boşlukları temizle";
+Blockly.Msg.TEXT_TRIM_OPERATOR_LEFT = "solundan boşlukları temizle";
+Blockly.Msg.TEXT_TRIM_OPERATOR_RIGHT = "sağından boşlukları temizle";
+Blockly.Msg.TEXT_TRIM_TOOLTIP = "Metnin bir veya her iki sondan da boşlukları silinmiş şekilde kopyasını verir.";
+Blockly.Msg.TODAY = "Bugün";
+Blockly.Msg.UNDO = "Geri al";
+Blockly.Msg.VARIABLES_DEFAULT_NAME = "öge";
+Blockly.Msg.VARIABLES_GET_CREATE_SET = "'set %1' oluştur";
+Blockly.Msg.VARIABLES_GET_HELPURL = "https://github.com/google/blockly/wiki/Variables#get"; // untranslated
+Blockly.Msg.VARIABLES_GET_TOOLTIP = "Bu değişkenin değerini verir.";
+Blockly.Msg.VARIABLES_SET = "Atamak %1 e %2";
+Blockly.Msg.VARIABLES_SET_CREATE_GET = "'get %1' oluştur";
+Blockly.Msg.VARIABLES_SET_HELPURL = "https://github.com/google/blockly/wiki/Variables#set"; // untranslated
+Blockly.Msg.VARIABLES_SET_TOOLTIP = "Bu değişkeni girilen değere eşitler.";
+Blockly.Msg.VARIABLE_ALREADY_EXISTS = "'%1' isimli değişken adı zaten var.";
+Blockly.Msg.PROCEDURES_DEFRETURN_TITLE = Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE;
+Blockly.Msg.CONTROLS_IF_IF_TITLE_IF = Blockly.Msg.CONTROLS_IF_MSG_IF;
+Blockly.Msg.CONTROLS_WHILEUNTIL_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_MSG_THEN = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_ELSE_TITLE_ELSE = Blockly.Msg.CONTROLS_IF_MSG_ELSE;
+Blockly.Msg.PROCEDURES_DEFRETURN_PROCEDURE = Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE;
+Blockly.Msg.LISTS_GET_SUBLIST_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.LISTS_GET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.PROCEDURES_DEFRETURN_DO = Blockly.Msg.PROCEDURES_DEFNORETURN_DO;
+Blockly.Msg.CONTROLS_IF_ELSEIF_TITLE_ELSEIF = Blockly.Msg.CONTROLS_IF_MSG_ELSEIF;
+Blockly.Msg.LISTS_GET_INDEX_HELPURL = Blockly.Msg.LISTS_INDEX_OF_HELPURL;
+Blockly.Msg.CONTROLS_FOREACH_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_SET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TITLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_APPEND_VARIABLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.LISTS_INDEX_OF_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.PROCEDURES_DEFRETURN_COMMENT = Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT; \ No newline at end of file
diff --git a/blockly/msg/js/uk.js b/blockly/msg/js/uk.js
new file mode 100644
index 0000000..832d6af
--- /dev/null
+++ b/blockly/msg/js/uk.js
@@ -0,0 +1,391 @@
+// This file was automatically generated. Do not modify.
+
+'use strict';
+
+goog.provide('Blockly.Msg.uk');
+
+goog.require('Blockly.Msg');
+
+Blockly.Msg.ADD_COMMENT = "Додати коментар";
+Blockly.Msg.CHANGE_VALUE_TITLE = "Змінити значення:";
+Blockly.Msg.CLEAN_UP = "Вирівняти блоки";
+Blockly.Msg.COLLAPSE_ALL = "Згорнути блоки";
+Blockly.Msg.COLLAPSE_BLOCK = "Згорнути блок";
+Blockly.Msg.COLOUR_BLEND_COLOUR1 = "колір 1";
+Blockly.Msg.COLOUR_BLEND_COLOUR2 = "колір 2";
+Blockly.Msg.COLOUR_BLEND_HELPURL = "http://meyerweb.com/eric/tools/color-blend/";
+Blockly.Msg.COLOUR_BLEND_RATIO = "співвідношення";
+Blockly.Msg.COLOUR_BLEND_TITLE = "змішати";
+Blockly.Msg.COLOUR_BLEND_TOOLTIP = "Змішує два кольори разом у вказаному співвідношені (0.0 - 1.0).";
+Blockly.Msg.COLOUR_PICKER_HELPURL = "https://uk.wikipedia.org/wiki/Колір";
+Blockly.Msg.COLOUR_PICKER_TOOLTIP = "Вибрати колір з палітри.";
+Blockly.Msg.COLOUR_RANDOM_HELPURL = "http://randomcolour.com"; // untranslated
+Blockly.Msg.COLOUR_RANDOM_TITLE = "випадковий колір";
+Blockly.Msg.COLOUR_RANDOM_TOOLTIP = "Вибрати колір навмання.";
+Blockly.Msg.COLOUR_RGB_BLUE = "синій";
+Blockly.Msg.COLOUR_RGB_GREEN = "зелений";
+Blockly.Msg.COLOUR_RGB_HELPURL = "http://www.december.com/html/spec/colorper.html";
+Blockly.Msg.COLOUR_RGB_RED = "червоний";
+Blockly.Msg.COLOUR_RGB_TITLE = "колір з";
+Blockly.Msg.COLOUR_RGB_TOOLTIP = "Створити колір зі вказаними рівнями червоного, зеленого та синього. Усі значення мають бути від 0 до 100.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_HELPURL = "https://github.com/google/blockly/wiki/Loops#loop-termination-blocks"; // untranslated
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK = "перервати цикл";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE = "продовжити з наступної ітерації циклу";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK = "Перервати виконання циклу.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE = "Пропустити залишок цього циклу і перейти до виконання наступної ітерації.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_WARNING = "Попередження: цей блок може бути використаний тільки в межах циклу.";
+Blockly.Msg.CONTROLS_FOREACH_HELPURL = "https://github.com/google/blockly/wiki/Loops#for-each"; // untranslated
+Blockly.Msg.CONTROLS_FOREACH_TITLE = "для кожного елемента %1 у списку %2";
+Blockly.Msg.CONTROLS_FOREACH_TOOLTIP = "Для кожного елемента в списку змінна '%1' отримує значення елемента, а потім виконуються певні дії.";
+Blockly.Msg.CONTROLS_FOR_HELPURL = "https://github.com/google/blockly/wiki/Loops#count-with"; // untranslated
+Blockly.Msg.CONTROLS_FOR_TITLE = "рахувати з %1 від %2 до %3 через %4";
+Blockly.Msg.CONTROLS_FOR_TOOLTIP = "Наявна змінна \"%1\" набуває значень від початкового до кінцевого, враховуючи заданий інтервал, і виконуються вказані блоки.";
+Blockly.Msg.CONTROLS_IF_ELSEIF_TOOLTIP = "Додайте умову до блока 'якщо'.";
+Blockly.Msg.CONTROLS_IF_ELSE_TOOLTIP = "Додати остаточну, всеосяжну умову до блоку 'якщо'.";
+Blockly.Msg.CONTROLS_IF_HELPURL = "https://github.com/google/blockly/wiki/IfElse"; // untranslated
+Blockly.Msg.CONTROLS_IF_IF_TOOLTIP = "Додайте, вилучіть або змініть порядок секцій, щоб переналаштувати цей блок 'якщо'.";
+Blockly.Msg.CONTROLS_IF_MSG_ELSE = "інакше";
+Blockly.Msg.CONTROLS_IF_MSG_ELSEIF = "інакше якщо";
+Blockly.Msg.CONTROLS_IF_MSG_IF = "якщо";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_1 = "Якщо значення істинне, то виконати певні дії.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_2 = "Якщо значення істинне, то виконується перший блок операторів. В іншому випадку виконується другий блок операторів.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_3 = "Якщо перше значення істинне, то виконується перший блок операторів. В іншому випадку, якщо друге значення істина, то виконується другий блок операторів.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_4 = "Якщо перше значення істинне, то виконується перший блок операторів. В іншому випадку, якщо друге значення істинне, то виконується другий блок операторів. Якщо жодне із значень не є істинним, то виконується останній блок операторів.";
+Blockly.Msg.CONTROLS_REPEAT_HELPURL = "https://uk.wikipedia.org/wiki/Цикл_(програмування)#.D0.A6.D0.B8.D0.BA.D0.BB_.D0.B7_.D0.BB.D1.96.D1.87.D0.B8.D0.BB.D1.8C.D0.BD.D0.B8.D0.BA.D0.BE.D0.BC";
+Blockly.Msg.CONTROLS_REPEAT_INPUT_DO = "виконати";
+Blockly.Msg.CONTROLS_REPEAT_TITLE = "повторити %1 разів";
+Blockly.Msg.CONTROLS_REPEAT_TOOLTIP = "Виконати певні дії декілька разів.";
+Blockly.Msg.CONTROLS_WHILEUNTIL_HELPURL = "https://github.com/google/blockly/wiki/Loops#repeat"; // untranslated
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "повторювати, доки не";
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "повторювати поки";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "Поки значення хибне, виконувати певні дії.";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "Поки значення істинне, виконувати певні дії.";
+Blockly.Msg.DELETE_ALL_BLOCKS = "Вилучити всі блоки %1?";
+Blockly.Msg.DELETE_BLOCK = "Видалити блок";
+Blockly.Msg.DELETE_VARIABLE = "Delete the '%1' variable"; // untranslated
+Blockly.Msg.DELETE_VARIABLE_CONFIRMATION = "Delete %1 uses of the '%2' variable?"; // untranslated
+Blockly.Msg.DELETE_X_BLOCKS = "Видалити %1 блоків";
+Blockly.Msg.DISABLE_BLOCK = "Вимкнути блок";
+Blockly.Msg.DUPLICATE_BLOCK = "Дублювати";
+Blockly.Msg.ENABLE_BLOCK = "Увімкнути блок";
+Blockly.Msg.EXPAND_ALL = "Розгорнути блоки";
+Blockly.Msg.EXPAND_BLOCK = "Розгорнути блок";
+Blockly.Msg.EXTERNAL_INPUTS = "Зовнішні входи";
+Blockly.Msg.HELP = "Довідка";
+Blockly.Msg.INLINE_INPUTS = "Вбудовані входи";
+Blockly.Msg.LISTS_CREATE_EMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-empty-list";
+Blockly.Msg.LISTS_CREATE_EMPTY_TITLE = "створити порожній список";
+Blockly.Msg.LISTS_CREATE_EMPTY_TOOLTIP = "Повертає список, довжиною 0, що не містить записів даних";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TITLE_ADD = "список";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TOOLTIP = "Додайте, вилучіть або змініть порядок секцій для переналаштування блока списку.";
+Blockly.Msg.LISTS_CREATE_WITH_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
+Blockly.Msg.LISTS_CREATE_WITH_INPUT_WITH = "створити список з";
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TOOLTIP = "Додати елемент до списку.";
+Blockly.Msg.LISTS_CREATE_WITH_TOOLTIP = "Створює список з будь-якою кількістю елементів.";
+Blockly.Msg.LISTS_GET_INDEX_FIRST = "перший";
+Blockly.Msg.LISTS_GET_INDEX_FROM_END = "# з кінця";
+Blockly.Msg.LISTS_GET_INDEX_FROM_START = "#";
+Blockly.Msg.LISTS_GET_INDEX_GET = "отримати";
+Blockly.Msg.LISTS_GET_INDEX_GET_REMOVE = "отримати і вилучити";
+Blockly.Msg.LISTS_GET_INDEX_LAST = "останній";
+Blockly.Msg.LISTS_GET_INDEX_RANDOM = "випадковий";
+Blockly.Msg.LISTS_GET_INDEX_REMOVE = "вилучити";
+Blockly.Msg.LISTS_GET_INDEX_TAIL = "-ий.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FIRST = "Повертає перший елемент списку.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FROM = "Повертає елемент у заданій позиції у списку.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_LAST = "Повертає останній елемент списку.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_RANDOM = "Повертає випадковий елемент списку.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST = "Видаляє і повертає перший елемент списку.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM = "Видаляє і повертає елемент у заданій позиції у списку.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST = "Видаляє і повертає останній елемент списку.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM = "Видаляє і повертає випадковий елемент списоку.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST = "Вилучає перший елемент списку.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM = "Вилучає зі списку елемент у вказаній позиції.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST = "Вилучає останній елемент списку.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM = "Вилучає випадковий елемент списку.";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_END = "до # з кінця";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_START = "до #";
+Blockly.Msg.LISTS_GET_SUBLIST_END_LAST = "до останнього";
+Blockly.Msg.LISTS_GET_SUBLIST_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-a-sublist"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_START_FIRST = "отримати вкладений список з першого";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_END = "отримати вкладений список від # з кінця";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_START = "отримати вкладений список з #";
+Blockly.Msg.LISTS_GET_SUBLIST_TAIL = "символу.";
+Blockly.Msg.LISTS_GET_SUBLIST_TOOLTIP = "Створює копію вказаної частини списку.";
+Blockly.Msg.LISTS_INDEX_FROM_END_TOOLTIP = "%1 - це останній елемент.";
+Blockly.Msg.LISTS_INDEX_FROM_START_TOOLTIP = "%1 - це перший елемент.";
+Blockly.Msg.LISTS_INDEX_OF_FIRST = "знайти перше входження елемента";
+Blockly.Msg.LISTS_INDEX_OF_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-items-from-a-list"; // untranslated
+Blockly.Msg.LISTS_INDEX_OF_LAST = "знайти останнє входження елемента";
+Blockly.Msg.LISTS_INDEX_OF_TOOLTIP = "Повертає індекс першого/останнього входження елемента у списку. Повертає %1, якщо елемент не знайдено.";
+Blockly.Msg.LISTS_INLIST = "у списку";
+Blockly.Msg.LISTS_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#is-empty"; // untranslated
+Blockly.Msg.LISTS_ISEMPTY_TITLE = "%1 є порожнім";
+Blockly.Msg.LISTS_ISEMPTY_TOOLTIP = "Повертає істину, якщо список порожній.";
+Blockly.Msg.LISTS_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Lists#length-of"; // untranslated
+Blockly.Msg.LISTS_LENGTH_TITLE = "довжина %1";
+Blockly.Msg.LISTS_LENGTH_TOOLTIP = "Повертає довжину списку.";
+Blockly.Msg.LISTS_REPEAT_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
+Blockly.Msg.LISTS_REPEAT_TITLE = "створити список з елемента %1 повтореного %2 разів";
+Blockly.Msg.LISTS_REPEAT_TOOLTIP = "Створює список, що складається з заданого значення повтореного задану кількість разів.";
+Blockly.Msg.LISTS_SET_INDEX_HELPURL = "https://github.com/google/blockly/wiki/Lists#in-list--set"; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_INPUT_TO = "як";
+Blockly.Msg.LISTS_SET_INDEX_INSERT = "вставити в";
+Blockly.Msg.LISTS_SET_INDEX_SET = "встановити";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST = "Вставляє елемент на початок списку.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FROM = "Вставка елемента у вказану позицію списку.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_LAST = "Додає елемент у кінці списку.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM = "Випадковим чином вставляє елемент у список.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FIRST = "Задає перший елемент списку.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FROM = "Задає елемент списку у вказаній позиції.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_LAST = "Задає останній елемент списку.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_RANDOM = "Задає випадковий елемент у списку.";
+Blockly.Msg.LISTS_SORT_HELPURL = "https://github.com/google/blockly/wiki/Lists#sorting-a-list";
+Blockly.Msg.LISTS_SORT_ORDER_ASCENDING = "за зростанням";
+Blockly.Msg.LISTS_SORT_ORDER_DESCENDING = "за спаданням";
+Blockly.Msg.LISTS_SORT_TITLE = "сортувати %3 %1 %2";
+Blockly.Msg.LISTS_SORT_TOOLTIP = "Сортувати копію списку.";
+Blockly.Msg.LISTS_SORT_TYPE_IGNORECASE = "за абеткою, ігноруючи регістр";
+Blockly.Msg.LISTS_SORT_TYPE_NUMERIC = "як числа";
+Blockly.Msg.LISTS_SORT_TYPE_TEXT = "за абеткою";
+Blockly.Msg.LISTS_SPLIT_HELPURL = "https://github.com/google/blockly/wiki/Lists#splitting-strings-and-joining-lists"; // untranslated
+Blockly.Msg.LISTS_SPLIT_LIST_FROM_TEXT = "зробити з тексту список";
+Blockly.Msg.LISTS_SPLIT_TEXT_FROM_LIST = "зробити зі списку текст";
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_JOIN = "Злити список текстів у єдиний текст, відокремивши розділювачами.";
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_SPLIT = "Поділити текст на список текстів, розриваючи на кожному розділювачі.";
+Blockly.Msg.LISTS_SPLIT_WITH_DELIMITER = "з розділювачем";
+Blockly.Msg.LOGIC_BOOLEAN_FALSE = "хибність";
+Blockly.Msg.LOGIC_BOOLEAN_HELPURL = "https://github.com/google/blockly/wiki/Logic#values"; // untranslated
+Blockly.Msg.LOGIC_BOOLEAN_TOOLTIP = "Повертає значення істина або хибність.";
+Blockly.Msg.LOGIC_BOOLEAN_TRUE = "істина";
+Blockly.Msg.LOGIC_COMPARE_HELPURL = "https://uk.wikipedia.org/wiki/Нерівність";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_EQ = "Повертає істину, якщо обидва входи рівні один одному.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GT = "Повертає істину, якщо перше вхідне значення більше, ніж друге.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GTE = "Повертає істину, якщо перше вхідне значення більше або дорівнює другому.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LT = "Повертає істину, якщо перше вхідне значення менше, ніж друге.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LTE = "Повертає істину, якщо перше вхідне значення менше або дорівнює другому.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_NEQ = "Повертає істину, якщо обидва входи не дорівнюють один одному.";
+Blockly.Msg.LOGIC_NEGATE_HELPURL = "https://github.com/google/blockly/wiki/Logic#not"; // untranslated
+Blockly.Msg.LOGIC_NEGATE_TITLE = "не %1";
+Blockly.Msg.LOGIC_NEGATE_TOOLTIP = "Повертає істину, якщо вхідне значення хибне. Повертає хибність, якщо вхідне значення істинне.";
+Blockly.Msg.LOGIC_NULL = "ніщо";
+Blockly.Msg.LOGIC_NULL_HELPURL = "https://en.wikipedia.org/wiki/Nullable_type";
+Blockly.Msg.LOGIC_NULL_TOOLTIP = "Повертає ніщо.";
+Blockly.Msg.LOGIC_OPERATION_AND = "та";
+Blockly.Msg.LOGIC_OPERATION_HELPURL = "https://github.com/google/blockly/wiki/Logic#logical-operations"; // untranslated
+Blockly.Msg.LOGIC_OPERATION_OR = "або";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_AND = "Повертає істину, якщо обидва входи істинні.";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_OR = "Повертає істину, якщо принаймні один з входів істинний.";
+Blockly.Msg.LOGIC_TERNARY_CONDITION = "тест";
+Blockly.Msg.LOGIC_TERNARY_HELPURL = "https://en.wikipedia.org/wiki/%3F:";
+Blockly.Msg.LOGIC_TERNARY_IF_FALSE = "якщо хибність";
+Blockly.Msg.LOGIC_TERNARY_IF_TRUE = "якщо істина";
+Blockly.Msg.LOGIC_TERNARY_TOOLTIP = "Перевіряє умову в 'тест'. Якщо умова істинна, то повертає значення 'якщо істина'; в іншому випадку повертає значення 'якщо хибність'.";
+Blockly.Msg.MATH_ADDITION_SYMBOL = "+"; // untranslated
+Blockly.Msg.MATH_ARITHMETIC_HELPURL = "https://uk.wikipedia.org/wiki/Арифметика";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_ADD = "Повертає суму двох чисел.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE = "Повертає частку двох чисел.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MINUS = "Повертає різницю двох чисел.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MULTIPLY = "Повертає добуток двох чисел.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_POWER = "Повертає перше число, піднесене до степеня, вираженого другим числом.";
+Blockly.Msg.MATH_CHANGE_HELPURL = "https://en.wikipedia.org/wiki/Programming_idiom#Incrementing_a_counter";
+Blockly.Msg.MATH_CHANGE_TITLE = "змінити %1 на %2";
+Blockly.Msg.MATH_CHANGE_TOOLTIP = "Додати число до змінної '%1'.";
+Blockly.Msg.MATH_CONSTANT_HELPURL = "https://uk.wikipedia.org/wiki/Математична_константа";
+Blockly.Msg.MATH_CONSTANT_TOOLTIP = "Повертає одну з поширених констант: π (3.141...), e (2.718...), φ (1,618...), sqrt(2) (1.414...), sqrt(½) (0.707...) або ∞ (нескінченність).";
+Blockly.Msg.MATH_CONSTRAIN_HELPURL = "https://en.wikipedia.org/wiki/Clamping_%28graphics%29"; // untranslated
+Blockly.Msg.MATH_CONSTRAIN_TITLE = "обмежити %1 від %2 до %3";
+Blockly.Msg.MATH_CONSTRAIN_TOOLTIP = "Обмежує число вказаними межами (включно).";
+Blockly.Msg.MATH_DIVISION_SYMBOL = "÷"; // untranslated
+Blockly.Msg.MATH_IS_DIVISIBLE_BY = "ділиться на";
+Blockly.Msg.MATH_IS_EVEN = "парне";
+Blockly.Msg.MATH_IS_NEGATIVE = "від'ємне";
+Blockly.Msg.MATH_IS_ODD = "непарне";
+Blockly.Msg.MATH_IS_POSITIVE = "додатне";
+Blockly.Msg.MATH_IS_PRIME = "просте";
+Blockly.Msg.MATH_IS_TOOLTIP = "Перевіряє, чи число парне, непарне, просте, ціле, додатне, від'ємне або чи воно ділиться на певне число без остачі. Повертає істину або хибність.";
+Blockly.Msg.MATH_IS_WHOLE = "ціле";
+Blockly.Msg.MATH_MODULO_HELPURL = "https://uk.wikipedia.org/wiki/Ділення_з_остачею";
+Blockly.Msg.MATH_MODULO_TITLE = "остача від %1 ÷ %2";
+Blockly.Msg.MATH_MODULO_TOOLTIP = "Повертає остачу від ділення двох чисел.";
+Blockly.Msg.MATH_MULTIPLICATION_SYMBOL = "×"; // untranslated
+Blockly.Msg.MATH_NUMBER_HELPURL = "https://uk.wikipedia.org/wiki/Число";
+Blockly.Msg.MATH_NUMBER_TOOLTIP = "Число.";
+Blockly.Msg.MATH_ONLIST_HELPURL = "http://www.mapleprimes.com/questions/100441-Applying-Function-To-List-Of-Numbers";
+Blockly.Msg.MATH_ONLIST_OPERATOR_AVERAGE = "середнє списку";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MAX = "максимум списку";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MEDIAN = "медіана списку";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MIN = "мінімум списку";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MODE = "моди списку";
+Blockly.Msg.MATH_ONLIST_OPERATOR_RANDOM = "випадковий елемент списку";
+Blockly.Msg.MATH_ONLIST_OPERATOR_STD_DEV = "стандартне відхилення списку";
+Blockly.Msg.MATH_ONLIST_OPERATOR_SUM = "сума списку";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_AVERAGE = "Повертає середнє (арифметичне) числових значень у списку.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MAX = "Повертає найбільше число у списку.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MEDIAN = "Повертає медіану списку.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MIN = "Повертає найменше число у списку.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MODE = "Повертає перелік найпоширеніших елементів у списку.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_RANDOM = "Повертає випадковий елемент зі списку.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_STD_DEV = "Повертає стандартне відхилення списку.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_SUM = "Повертає суму всіх чисел у списку.";
+Blockly.Msg.MATH_POWER_SYMBOL = "^"; // untranslated
+Blockly.Msg.MATH_RANDOM_FLOAT_HELPURL = "https://uk.wikipedia.org/wiki/Генерація_випадкових_чисел";
+Blockly.Msg.MATH_RANDOM_FLOAT_TITLE_RANDOM = "випадковий дріб";
+Blockly.Msg.MATH_RANDOM_FLOAT_TOOLTIP = "Повертає випадковий дріб від 0,0 (включно) та 1.0 (не включно).";
+Blockly.Msg.MATH_RANDOM_INT_HELPURL = "https://uk.wikipedia.org/wiki/Генерація_випадкових_чисел";
+Blockly.Msg.MATH_RANDOM_INT_TITLE = "випадкове ціле число від %1 до %2";
+Blockly.Msg.MATH_RANDOM_INT_TOOLTIP = "Повертає випадкове ціле число між двома заданими межами включно.";
+Blockly.Msg.MATH_ROUND_HELPURL = "https://uk.wikipedia.org/wiki/Округлення";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUND = "округлити";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDDOWN = "округлити до меншого";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDUP = "округлити до більшого";
+Blockly.Msg.MATH_ROUND_TOOLTIP = "Округлення числа до більшого або до меншого.";
+Blockly.Msg.MATH_SINGLE_HELPURL = "https://uk.wikipedia.org/wiki/Квадратний_корінь";
+Blockly.Msg.MATH_SINGLE_OP_ABSOLUTE = "модуль";
+Blockly.Msg.MATH_SINGLE_OP_ROOT = "квадратний корінь";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ABS = "Повертає модуль числа.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_EXP = "Повертає e у степені.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LN = "Повертає натуральний логарифм числа.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LOG10 = "Повертає десятковий логарифм числа.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_NEG = "Повертає протилежне число.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_POW10 = "Повертає 10 у степені.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ROOT = "Повертає квадратний корінь з числа.";
+Blockly.Msg.MATH_SUBTRACTION_SYMBOL = "-"; // untranslated
+Blockly.Msg.MATH_TRIG_ACOS = "acos"; // untranslated
+Blockly.Msg.MATH_TRIG_ASIN = "asin"; // untranslated
+Blockly.Msg.MATH_TRIG_ATAN = "atan"; // untranslated
+Blockly.Msg.MATH_TRIG_COS = "cos"; // untranslated
+Blockly.Msg.MATH_TRIG_HELPURL = "https://uk.wikipedia.org/wiki/Тригонометричні_функції";
+Blockly.Msg.MATH_TRIG_SIN = "sin"; // untranslated
+Blockly.Msg.MATH_TRIG_TAN = "tan"; // untranslated
+Blockly.Msg.MATH_TRIG_TOOLTIP_ACOS = "Повертає арккосинус числа.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ASIN = "Повертає арксинус числа.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ATAN = "Повертає арктангенс числа.";
+Blockly.Msg.MATH_TRIG_TOOLTIP_COS = "Повертає косинус кута в градусах (не в радіанах).";
+Blockly.Msg.MATH_TRIG_TOOLTIP_SIN = "Повертає синус кута в градусах (не в радіанах).";
+Blockly.Msg.MATH_TRIG_TOOLTIP_TAN = "Повертає тангенс кута в градусах (не в радіанах).";
+Blockly.Msg.NEW_VARIABLE = "Нова змінна...";
+Blockly.Msg.NEW_VARIABLE_TITLE = "Нова назва змінної:";
+Blockly.Msg.ORDINAL_NUMBER_SUFFIX = "-ий.";
+Blockly.Msg.PROCEDURES_ALLOW_STATEMENTS = "дозволити дії";
+Blockly.Msg.PROCEDURES_BEFORE_PARAMS = "з:";
+Blockly.Msg.PROCEDURES_CALLNORETURN_HELPURL = "https://uk.wikipedia.org/wiki/Підпрограма";
+Blockly.Msg.PROCEDURES_CALLNORETURN_TOOLTIP = "Запустити користувацьку функцію \"%1\".";
+Blockly.Msg.PROCEDURES_CALLRETURN_HELPURL = "https://uk.wikipedia.org/wiki/Підпрограма";
+Blockly.Msg.PROCEDURES_CALLRETURN_TOOLTIP = "Запустити користувацьку функцію \"%1\" і використати її вивід.";
+Blockly.Msg.PROCEDURES_CALL_BEFORE_PARAMS = "з:";
+Blockly.Msg.PROCEDURES_CREATE_DO = "Створити \"%1\"";
+Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT = "Опишіть цю функцію...";
+Blockly.Msg.PROCEDURES_DEFNORETURN_DO = "блок тексту";
+Blockly.Msg.PROCEDURES_DEFNORETURN_HELPURL = "https://uk.wikipedia.org/wiki/Підпрограма";
+Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE = "щось зробити";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE = "до";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TOOLTIP = "Створює функцію без виводу.";
+Blockly.Msg.PROCEDURES_DEFRETURN_HELPURL = "https://uk.wikipedia.org/wiki/Підпрограма";
+Blockly.Msg.PROCEDURES_DEFRETURN_RETURN = "повернути";
+Blockly.Msg.PROCEDURES_DEFRETURN_TOOLTIP = "Створює функцію з виводом.";
+Blockly.Msg.PROCEDURES_DEF_DUPLICATE_WARNING = "Увага: ця функція має дубльовані параметри.";
+Blockly.Msg.PROCEDURES_HIGHLIGHT_DEF = "Підсвітити визначення функції";
+Blockly.Msg.PROCEDURES_IFRETURN_HELPURL = "http://c2.com/cgi/wiki?GuardClause";
+Blockly.Msg.PROCEDURES_IFRETURN_TOOLTIP = "Якщо значення істинне, то повернути друге значення.";
+Blockly.Msg.PROCEDURES_IFRETURN_WARNING = "Попередження: цей блок може використовуватися лише в межах визначення функції.";
+Blockly.Msg.PROCEDURES_MUTATORARG_TITLE = "назва входу:";
+Blockly.Msg.PROCEDURES_MUTATORARG_TOOLTIP = "Додати до функції вхідні параметри.";
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TITLE = "входи";
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TOOLTIP = "Додайте, вилучіть або змініть порядок вхідних параметрів для цієї функції.";
+Blockly.Msg.REDO = "Повторити";
+Blockly.Msg.REMOVE_COMMENT = "Видалити коментар";
+Blockly.Msg.RENAME_VARIABLE = "Перейменувати змінну...";
+Blockly.Msg.RENAME_VARIABLE_TITLE = "Перейменувати усі змінні \"%1\" до:";
+Blockly.Msg.TEXT_APPEND_APPENDTEXT = "додати текст";
+Blockly.Msg.TEXT_APPEND_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_APPEND_TO = "до";
+Blockly.Msg.TEXT_APPEND_TOOLTIP = "Додати деякий текст до змінної '%1'.";
+Blockly.Msg.TEXT_CHANGECASE_HELPURL = "https://github.com/google/blockly/wiki/Text#adjusting-text-case"; // untranslated
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_LOWERCASE = "до нижнього регістру";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_TITLECASE = "Великі Перші Букви";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_UPPERCASE = "до ВЕРХНЬОГО регістру";
+Blockly.Msg.TEXT_CHANGECASE_TOOLTIP = "В іншому випадку повертає копію тексту.";
+Blockly.Msg.TEXT_CHARAT_FIRST = "отримати перший символ";
+Blockly.Msg.TEXT_CHARAT_FROM_END = "отримати символ # з кінця";
+Blockly.Msg.TEXT_CHARAT_FROM_START = "отримати символ #";
+Blockly.Msg.TEXT_CHARAT_HELPURL = "http://publib.boulder.ibm.com/infocenter/lnxpcomp/v8v101/index.jsp?topic=%2Fcom.ibm.xlcpp8l.doc%2Flanguage%2Fref%2Farsubex.htm";
+Blockly.Msg.TEXT_CHARAT_INPUT_INTEXT = "у тексті";
+Blockly.Msg.TEXT_CHARAT_LAST = "отримати останній символ";
+Blockly.Msg.TEXT_CHARAT_RANDOM = "отримати випадковий символ";
+Blockly.Msg.TEXT_CHARAT_TAIL = "-ий.";
+Blockly.Msg.TEXT_CHARAT_TOOLTIP = "Повертає символ у зазначеній позиції.";
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TOOLTIP = "Додати елемент до тексту.";
+Blockly.Msg.TEXT_CREATE_JOIN_TITLE_JOIN = "приєднати";
+Blockly.Msg.TEXT_CREATE_JOIN_TOOLTIP = "Додайте, вилучіть або змініть порядок секцій для переналаштування текстового блоку.";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_END = "до символу # з кінця";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_START = "до символу #";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_LAST = "до останнього символу";
+Blockly.Msg.TEXT_GET_SUBSTRING_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_INPUT_IN_TEXT = "у тексті";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FIRST = "отримати підрядок від першого символу";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_END = "отримати підрядок від символу # з кінця";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_START = "отримати підрядок від символу #";
+Blockly.Msg.TEXT_GET_SUBSTRING_TAIL = "-ого.";
+Blockly.Msg.TEXT_GET_SUBSTRING_TOOLTIP = "Повертає заданий фрагмент тексту.";
+Blockly.Msg.TEXT_INDEXOF_HELPURL = "https://github.com/google/blockly/wiki/Text#finding-text"; // untranslated
+Blockly.Msg.TEXT_INDEXOF_INPUT_INTEXT = "у тексті";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_FIRST = "знайти перше входження тексту";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_LAST = "знайти останнє входження тексту";
+Blockly.Msg.TEXT_INDEXOF_TAIL = ".";
+Blockly.Msg.TEXT_INDEXOF_TOOLTIP = "Повертає індекс першого/останнього входження першого тексту в другий. Повертає %1, якщо текст не знайдено.";
+Blockly.Msg.TEXT_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Text#checking-for-empty-text"; // untranslated
+Blockly.Msg.TEXT_ISEMPTY_TITLE = "%1 є порожнім";
+Blockly.Msg.TEXT_ISEMPTY_TOOLTIP = "Повертає істину, якщо вказаний текст порожній.";
+Blockly.Msg.TEXT_JOIN_HELPURL = "http://www.chemie.fu-berlin.de/chemnet/use/info/make/make_8.html";
+Blockly.Msg.TEXT_JOIN_TITLE_CREATEWITH = "створити текст з";
+Blockly.Msg.TEXT_JOIN_TOOLTIP = "Створити фрагмент тексту шляхом з'єднування будь-якого числа елементів.";
+Blockly.Msg.TEXT_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_LENGTH_TITLE = "довжина %1";
+Blockly.Msg.TEXT_LENGTH_TOOLTIP = "Повертає число символів (включно з пропусками) у даному тексті.";
+Blockly.Msg.TEXT_PRINT_HELPURL = "https://github.com/google/blockly/wiki/Text#printing-text"; // untranslated
+Blockly.Msg.TEXT_PRINT_TITLE = "друк %1";
+Blockly.Msg.TEXT_PRINT_TOOLTIP = "Надрукувати заданий текст, числа або інші значення.";
+Blockly.Msg.TEXT_PROMPT_HELPURL = "https://github.com/google/blockly/wiki/Text#getting-input-from-the-user"; // untranslated
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_NUMBER = "Запитати у користувача число.";
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_TEXT = "Запитати у користувача деякий текст.";
+Blockly.Msg.TEXT_PROMPT_TYPE_NUMBER = "запит числа з повідомленням";
+Blockly.Msg.TEXT_PROMPT_TYPE_TEXT = "запит тексту з повідомленням";
+Blockly.Msg.TEXT_TEXT_HELPURL = "https://uk.wikipedia.org/wiki/Рядок_(програмування)";
+Blockly.Msg.TEXT_TEXT_TOOLTIP = "Символ, слово або рядок тексту.";
+Blockly.Msg.TEXT_TRIM_HELPURL = "https://github.com/google/blockly/wiki/Text#trimming-removing-spaces"; // untranslated
+Blockly.Msg.TEXT_TRIM_OPERATOR_BOTH = "вилучити крайні пропуски з обох кінців";
+Blockly.Msg.TEXT_TRIM_OPERATOR_LEFT = "вилучити пропуски з лівого боку";
+Blockly.Msg.TEXT_TRIM_OPERATOR_RIGHT = "вилучити пропуски з правого боку";
+Blockly.Msg.TEXT_TRIM_TOOLTIP = "Повертає копію тексту з вилученими пропусками з одного або обох кінців.";
+Blockly.Msg.TODAY = "Сьогодні";
+Blockly.Msg.UNDO = "Скасувати";
+Blockly.Msg.VARIABLES_DEFAULT_NAME = "елемент";
+Blockly.Msg.VARIABLES_GET_CREATE_SET = "Створити 'встановити %1'";
+Blockly.Msg.VARIABLES_GET_HELPURL = "https://github.com/google/blockly/wiki/Variables#get"; // untranslated
+Blockly.Msg.VARIABLES_GET_TOOLTIP = "Повертає значення цієї змінної.";
+Blockly.Msg.VARIABLES_SET = "встановити %1 до %2";
+Blockly.Msg.VARIABLES_SET_CREATE_GET = "Створити 'отримати %1'";
+Blockly.Msg.VARIABLES_SET_HELPURL = "https://github.com/google/blockly/wiki/Variables#set"; // untranslated
+Blockly.Msg.VARIABLES_SET_TOOLTIP = "Задає цю змінну рівною входу.";
+Blockly.Msg.VARIABLE_ALREADY_EXISTS = "A variable named '%1' already exists."; // untranslated
+Blockly.Msg.PROCEDURES_DEFRETURN_TITLE = Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE;
+Blockly.Msg.CONTROLS_IF_IF_TITLE_IF = Blockly.Msg.CONTROLS_IF_MSG_IF;
+Blockly.Msg.CONTROLS_WHILEUNTIL_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_MSG_THEN = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_ELSE_TITLE_ELSE = Blockly.Msg.CONTROLS_IF_MSG_ELSE;
+Blockly.Msg.PROCEDURES_DEFRETURN_PROCEDURE = Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE;
+Blockly.Msg.LISTS_GET_SUBLIST_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.LISTS_GET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.PROCEDURES_DEFRETURN_DO = Blockly.Msg.PROCEDURES_DEFNORETURN_DO;
+Blockly.Msg.CONTROLS_IF_ELSEIF_TITLE_ELSEIF = Blockly.Msg.CONTROLS_IF_MSG_ELSEIF;
+Blockly.Msg.LISTS_GET_INDEX_HELPURL = Blockly.Msg.LISTS_INDEX_OF_HELPURL;
+Blockly.Msg.CONTROLS_FOREACH_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_SET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TITLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_APPEND_VARIABLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.LISTS_INDEX_OF_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.PROCEDURES_DEFRETURN_COMMENT = Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT; \ No newline at end of file
diff --git a/blockly/msg/js/vi.js b/blockly/msg/js/vi.js
new file mode 100644
index 0000000..6bd6386
--- /dev/null
+++ b/blockly/msg/js/vi.js
@@ -0,0 +1,391 @@
+// This file was automatically generated. Do not modify.
+
+'use strict';
+
+goog.provide('Blockly.Msg.vi');
+
+goog.require('Blockly.Msg');
+
+Blockly.Msg.ADD_COMMENT = "Thêm Chú Giải";
+Blockly.Msg.CHANGE_VALUE_TITLE = "Thay giá trị thành:";
+Blockly.Msg.CLEAN_UP = "Clean up Blocks"; // untranslated
+Blockly.Msg.COLLAPSE_ALL = "Thu Nhỏ Mọi Mảnh";
+Blockly.Msg.COLLAPSE_BLOCK = "Thu Nhỏ Mảnh";
+Blockly.Msg.COLOUR_BLEND_COLOUR1 = "màu 1";
+Blockly.Msg.COLOUR_BLEND_COLOUR2 = "màu 2";
+Blockly.Msg.COLOUR_BLEND_HELPURL = "http://meyerweb.com/eric/tools/color-blend/"; // untranslated
+Blockly.Msg.COLOUR_BLEND_RATIO = "tỉ lệ";
+Blockly.Msg.COLOUR_BLEND_TITLE = "pha";
+Blockly.Msg.COLOUR_BLEND_TOOLTIP = "Pha hai màu với nhau theo tỉ lệ (0 - 100).";
+Blockly.Msg.COLOUR_PICKER_HELPURL = "https://vi.wikipedia.org/wiki/M%C3%A0u_s%E1%BA%AFc";
+Blockly.Msg.COLOUR_PICKER_TOOLTIP = "Chọn một màu từ bảng màu.";
+Blockly.Msg.COLOUR_RANDOM_HELPURL = "http://randomcolour.com"; // untranslated
+Blockly.Msg.COLOUR_RANDOM_TITLE = "màu bất kỳ";
+Blockly.Msg.COLOUR_RANDOM_TOOLTIP = "chọn một màu bất kỳ.";
+Blockly.Msg.COLOUR_RGB_BLUE = "màu xanh dương";
+Blockly.Msg.COLOUR_RGB_GREEN = "màu xanh lá cây";
+Blockly.Msg.COLOUR_RGB_HELPURL = "http://www.december.com/html/spec/colorper.html"; // untranslated
+Blockly.Msg.COLOUR_RGB_RED = "màu đỏ";
+Blockly.Msg.COLOUR_RGB_TITLE = "Tạo màu từ";
+Blockly.Msg.COLOUR_RGB_TOOLTIP = "Tạo màu từ ba màu: đỏ, xanh lá cây, xanh dương với số lượng cụ thể. Mỗi số phải có giá trị từ 0 đến 100.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_HELPURL = "https://github.com/google/blockly/wiki/Loops#loop-termination-blocks"; // untranslated
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK = "thoát";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE = "sang lần lặp tiếp theo";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK = "Thoát khỏi vòng lặp hiện tại.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE = "Bỏ qua phần còn lại trong vòng lặp này, và sang lần lặp tiếp theo.";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_WARNING = "Chú ý: Mảnh này chỉ có thế dùng trong các vòng lặp.";
+Blockly.Msg.CONTROLS_FOREACH_HELPURL = "https://github.com/google/blockly/wiki/Loops#for-each"; // untranslated
+Blockly.Msg.CONTROLS_FOREACH_TITLE = "với mỗi thành phần %1 trong danh sách %2";
+Blockly.Msg.CONTROLS_FOREACH_TOOLTIP = "Trong một danh sách, lấy từng thành phần, gán vào biến \"%1\", rồi thực hiện một số lệnh.";
+Blockly.Msg.CONTROLS_FOR_HELPURL = "https://github.com/google/blockly/wiki/Loops#count-with"; // untranslated
+Blockly.Msg.CONTROLS_FOR_TITLE = "đếm theo %1 từ %2 đến %3 mỗi lần thêm %4";
+Blockly.Msg.CONTROLS_FOR_TOOLTIP = "Đếm từ số đầu đến số cuối. Khi đến mỗi số, gán số vào biến \"%1\" rồi thực hiện các lệnh.";
+Blockly.Msg.CONTROLS_IF_ELSEIF_TOOLTIP = "Thêm một điều kiện vào mảnh nếu.";
+Blockly.Msg.CONTROLS_IF_ELSE_TOOLTIP = "Cuối cùng, khi không điều kiện nào đúng.";
+Blockly.Msg.CONTROLS_IF_HELPURL = "https://github.com/google/blockly/wiki/IfElse"; // untranslated
+Blockly.Msg.CONTROLS_IF_IF_TOOLTIP = "Thêm, bỏ, hoặc đổi thứ tự các mảnh con để tạo cấu trúc mới cho mảnh nếu.";
+Blockly.Msg.CONTROLS_IF_MSG_ELSE = "nếu không";
+Blockly.Msg.CONTROLS_IF_MSG_ELSEIF = "nếu không nếu";
+Blockly.Msg.CONTROLS_IF_MSG_IF = "nếu";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_1 = "Nếu điều kiện đúng, thực hiện các lệnh.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_2 = "Nếu điều kiện đúng, thực hiện các lệnh đầu. Nếu sai, thực hiện các lệnh sau.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_3 = "Nếu điều kiện đúng, thực hiện các lệnh đầu. Nếu không, nếu điều kiện thứ hai đúng, thực hiện các lệnh thứ hai.";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_4 = "Nếu điều kiện đúng, thực hiện các lệnh đầu. Nếu không, nếu điều kiện thứ hai đúng, thực hiện các lệnh thứ hai. Nếu không điều kiện nào đúng, thực hiện các lệnh cuối cùng.";
+Blockly.Msg.CONTROLS_REPEAT_HELPURL = "https://en.wikipedia.org/wiki/For_loop";
+Blockly.Msg.CONTROLS_REPEAT_INPUT_DO = "thực hiện";
+Blockly.Msg.CONTROLS_REPEAT_TITLE = "lặp lại %1 lần";
+Blockly.Msg.CONTROLS_REPEAT_TOOLTIP = "Thực hiện các lệnh vài lần.";
+Blockly.Msg.CONTROLS_WHILEUNTIL_HELPURL = "https://github.com/google/blockly/wiki/Loops#repeat"; // untranslated
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "lặp lại cho đến khi";
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "lặp lại trong khi";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "Miễn là điều kiện còn sai, thì thực hiện các lệnh. Khi điều kiện đúng thì ngưng.";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "Miễn là điều kiện còn đúng, thì thực hiện các lệnh.";
+Blockly.Msg.DELETE_ALL_BLOCKS = "Xóa hết %1 mảnh?";
+Blockly.Msg.DELETE_BLOCK = "Xóa Mảnh Này";
+Blockly.Msg.DELETE_VARIABLE = "Delete the '%1' variable"; // untranslated
+Blockly.Msg.DELETE_VARIABLE_CONFIRMATION = "Delete %1 uses of the '%2' variable?"; // untranslated
+Blockly.Msg.DELETE_X_BLOCKS = "Xóa %1 Mảnh";
+Blockly.Msg.DISABLE_BLOCK = "Ngưng Tác Dụng";
+Blockly.Msg.DUPLICATE_BLOCK = "Tạo Bản Sao";
+Blockly.Msg.ENABLE_BLOCK = "Phục Hồi Tác Dụng";
+Blockly.Msg.EXPAND_ALL = "Mở Lớn Mọi Mảnh";
+Blockly.Msg.EXPAND_BLOCK = "Mở Lớn Mảnh";
+Blockly.Msg.EXTERNAL_INPUTS = "Chỗ Gắn Bên Ngoài";
+Blockly.Msg.HELP = "Trợ Giúp";
+Blockly.Msg.INLINE_INPUTS = "Chỗ Gắn Cùng Dòng";
+Blockly.Msg.LISTS_CREATE_EMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-empty-list"; // untranslated
+Blockly.Msg.LISTS_CREATE_EMPTY_TITLE = "tạo danh sách trống";
+Blockly.Msg.LISTS_CREATE_EMPTY_TOOLTIP = "Hoàn trả một danh sách, với độ dài 0, không có thành tố nào cả";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TITLE_ADD = "danh sách";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TOOLTIP = "Thêm, bỏ, hoặc sắp xếp lại các thành phần để tạo dựng mảnh danh sách này.";
+Blockly.Msg.LISTS_CREATE_WITH_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
+Blockly.Msg.LISTS_CREATE_WITH_INPUT_WITH = "tạo danh sách gồm";
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TOOLTIP = "Thêm vật vào danh sách.";
+Blockly.Msg.LISTS_CREATE_WITH_TOOLTIP = "Tạo một danh sách bao gồm nhiều vậts, với một số lượng bất kỳ.";
+Blockly.Msg.LISTS_GET_INDEX_FIRST = "đầu tiên";
+Blockly.Msg.LISTS_GET_INDEX_FROM_END = "(đếm từ cuối) thứ";
+Blockly.Msg.LISTS_GET_INDEX_FROM_START = "thứ";
+Blockly.Msg.LISTS_GET_INDEX_GET = "lấy thành tố";
+Blockly.Msg.LISTS_GET_INDEX_GET_REMOVE = "lấy và xóa thành tố";
+Blockly.Msg.LISTS_GET_INDEX_LAST = "cuối cùng";
+Blockly.Msg.LISTS_GET_INDEX_RANDOM = "bất kỳ";
+Blockly.Msg.LISTS_GET_INDEX_REMOVE = "xóa thành tố";
+Blockly.Msg.LISTS_GET_INDEX_TAIL = ""; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FIRST = "Hoàn trả thành tố đầu tiên trong danh sách.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FROM = "Hoàn trả thành tố trong danh sách ở vị trí ấn định.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_LAST = "Hoàn trả thành tố cuối cùng trong danh sách.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_RANDOM = "Hoàn trả một thành tố bất kỳ trong danh sách.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST = "Hoàn trả và xóa thành tố đầu tiên trong danh sách.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM = "Hoàn trả và xóa thành tố trong danh sách ở vị trí ấn định.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST = "Hoàn trả và xóa thành tố cuối cùng trong danh sách.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM = "Hoàn trả và xóa mộtthành tố bất kỳ trong danh sách.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST = "Xóa thành tố đầu tiên trong danh sách.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM = "Xóa thành tố trong danh sách ở vị trí ấn định.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST = "Xóa thành tố cuối cùng trong danh sách.";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM = "Xóa thành tố bất kỳ trong danh sách.";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_END = "đến (đếm từ cuối) thứ";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_START = "đến thứ";
+Blockly.Msg.LISTS_GET_SUBLIST_END_LAST = "đến cuối cùng";
+Blockly.Msg.LISTS_GET_SUBLIST_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-a-sublist"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_START_FIRST = "lấy một danh sách con từ đầu tiên";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_END = "lấy một danh sách con từ (đếm từ cuối) thứ";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_START = "lấy một danh sách con từ thứ";
+Blockly.Msg.LISTS_GET_SUBLIST_TAIL = ""; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_TOOLTIP = "Lấy một mảng của danh sách này để tạo danh sách con.";
+Blockly.Msg.LISTS_INDEX_FROM_END_TOOLTIP = "%1 là thành tố cuối cùng.";
+Blockly.Msg.LISTS_INDEX_FROM_START_TOOLTIP = "%1 là thành tố đầu tiên.";
+Blockly.Msg.LISTS_INDEX_OF_FIRST = "tìm sự có mặt đầu tiên của vật";
+Blockly.Msg.LISTS_INDEX_OF_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-items-from-a-list"; // untranslated
+Blockly.Msg.LISTS_INDEX_OF_LAST = "tìm sự có mặt cuối cùng của vật";
+Blockly.Msg.LISTS_INDEX_OF_TOOLTIP = "Hoàn trả vị trí xuất hiện đầu/cuối của vật trong danh sách. Nếu không tìm thấy thì hoàn trả số %1.";
+Blockly.Msg.LISTS_INLIST = "trong dánh sách";
+Blockly.Msg.LISTS_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#is-empty"; // untranslated
+Blockly.Msg.LISTS_ISEMPTY_TITLE = "%1 trống rỗng";
+Blockly.Msg.LISTS_ISEMPTY_TOOLTIP = "Hoàn trả “đúng\" nếu danh sách không có thành tử nào.";
+Blockly.Msg.LISTS_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Lists#length-of"; // untranslated
+Blockly.Msg.LISTS_LENGTH_TITLE = "độ dài của %1";
+Blockly.Msg.LISTS_LENGTH_TOOLTIP = "Hoàn trả độ dài của một danh sách.";
+Blockly.Msg.LISTS_REPEAT_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
+Blockly.Msg.LISTS_REPEAT_TITLE = "tạo danh sách gồm một vật %1 lặp lại %2 lần";
+Blockly.Msg.LISTS_REPEAT_TOOLTIP = "Tạo danh sách gồm một số lượng vật nhất định với mỗi vật đều giống nhau.";
+Blockly.Msg.LISTS_SET_INDEX_HELPURL = "https://github.com/google/blockly/wiki/Lists#in-list--set"; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_INPUT_TO = "giá trị";
+Blockly.Msg.LISTS_SET_INDEX_INSERT = "gắn chèn vào vị trí";
+Blockly.Msg.LISTS_SET_INDEX_SET = "đặt thành tố";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST = "Gắn chèn vật vào đầu danh sách.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FROM = "Gắn chèn vật vào danh sách theo vị trí ấn định.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_LAST = "Gắn thêm vật vào cuối danh sách.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM = "Gắn chèn vật vào danh sách ở vị trí ngẫu nhiên.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FIRST = "Đặt giá trị của thành tố đầu tiên trong danh sách.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FROM = "Đặt giá trị của thành tố ở vị trí ấn định trong một danh sách.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_LAST = "Đặt giá trị của thành tố cuối cùng trong danh sách.";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_RANDOM = "Đặt giá trị của thành tố ngẫu nhiên trong danh sách.";
+Blockly.Msg.LISTS_SORT_HELPURL = "https://github.com/google/blockly/wiki/Lists#sorting-a-list"; // untranslated
+Blockly.Msg.LISTS_SORT_ORDER_ASCENDING = "ascending"; // untranslated
+Blockly.Msg.LISTS_SORT_ORDER_DESCENDING = "descending"; // untranslated
+Blockly.Msg.LISTS_SORT_TITLE = "sort %1 %2 %3"; // untranslated
+Blockly.Msg.LISTS_SORT_TOOLTIP = "Sort a copy of a list."; // untranslated
+Blockly.Msg.LISTS_SORT_TYPE_IGNORECASE = "alphabetic, ignore case"; // untranslated
+Blockly.Msg.LISTS_SORT_TYPE_NUMERIC = "numeric"; // untranslated
+Blockly.Msg.LISTS_SORT_TYPE_TEXT = "alphabetic"; // untranslated
+Blockly.Msg.LISTS_SPLIT_HELPURL = "https://github.com/google/blockly/wiki/Lists#splitting-strings-and-joining-lists"; // untranslated
+Blockly.Msg.LISTS_SPLIT_LIST_FROM_TEXT = "make list from text"; // untranslated
+Blockly.Msg.LISTS_SPLIT_TEXT_FROM_LIST = "make text from list"; // untranslated
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_JOIN = "Join a list of texts into one text, separated by a delimiter."; // untranslated
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_SPLIT = "Split text into a list of texts, breaking at each delimiter."; // untranslated
+Blockly.Msg.LISTS_SPLIT_WITH_DELIMITER = "with delimiter"; // untranslated
+Blockly.Msg.LOGIC_BOOLEAN_FALSE = "sai";
+Blockly.Msg.LOGIC_BOOLEAN_HELPURL = "https://github.com/google/blockly/wiki/Logic#values"; // untranslated
+Blockly.Msg.LOGIC_BOOLEAN_TOOLTIP = "Hoàn trả \"đúng\" hoặc \"sai\".";
+Blockly.Msg.LOGIC_BOOLEAN_TRUE = "đúng";
+Blockly.Msg.LOGIC_COMPARE_HELPURL = "https://vi.wikipedia.org/wiki/B%E1%BA%A5t_%C4%91%E1%BA%B3ng_th%E1%BB%A9c";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_EQ = "Hoàn trả giá trị \"đúng\" (true) nếu giá trị hai đầu vào bằng nhau.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GT = "Hoàn trả giá trị \"đúng\" (true) nếu đầu vào thứ nhất lớn hơn đầu vào thứ hai.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GTE = "Hoàn trả giá trị \"đúng\" (true) nếu đầu vào thứ nhất lớn hơn hoặc bằng đầu vào thứ hai.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LT = "Hoàn trả giá trị \"đúng\" (true) nếu đầu vào thứ nhất nhỏ hơn đầu vào thứ hai.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LTE = "Hoàn trả giá trị \"đúng\" (true) nếu đầu vào thứ nhất nhỏ hơn hoặc bằng đầu vào thứ hai.";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_NEQ = "Hoàn trả giá trị \"đúng\" (true) nếu giá trị hai đầu vào không bằng nhau.";
+Blockly.Msg.LOGIC_NEGATE_HELPURL = "https://github.com/google/blockly/wiki/Logic#not"; // untranslated
+Blockly.Msg.LOGIC_NEGATE_TITLE = "không %1";
+Blockly.Msg.LOGIC_NEGATE_TOOLTIP = "Hoàn trả \"đúng\" (true) nếu đầu vào sai. Hoàn trả \"sai\" (false) nếu đầu vào đúng.";
+Blockly.Msg.LOGIC_NULL = "trống không";
+Blockly.Msg.LOGIC_NULL_HELPURL = "https://en.wikipedia.org/wiki/Nullable_type"; // untranslated
+Blockly.Msg.LOGIC_NULL_TOOLTIP = "Hoàn trả trống không.";
+Blockly.Msg.LOGIC_OPERATION_AND = "và";
+Blockly.Msg.LOGIC_OPERATION_HELPURL = "https://github.com/google/blockly/wiki/Logic#logical-operations"; // untranslated
+Blockly.Msg.LOGIC_OPERATION_OR = "hoặc";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_AND = "Hoàn trả \"đúng\" (true) nếu cả hai đầu vào đều đúng.";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_OR = "Hoàn trả \"đúng\" (true) nếu ít nhất một trong hai đầu vào đúng.";
+Blockly.Msg.LOGIC_TERNARY_CONDITION = "kiểm tra";
+Blockly.Msg.LOGIC_TERNARY_HELPURL = "https://en.wikipedia.org/wiki/%3F:"; // untranslated
+Blockly.Msg.LOGIC_TERNARY_IF_FALSE = "nếu sai";
+Blockly.Msg.LOGIC_TERNARY_IF_TRUE = "nếu đúng";
+Blockly.Msg.LOGIC_TERNARY_TOOLTIP = "Kiểm tra điều kiện. Nếu điều kiện đúng, hoàn trả giá trị từ mệnh đề \"nếu đúng\" nếu không đúng, hoàn trả giá trị từ mệnh đề \"nếu sai\".";
+Blockly.Msg.MATH_ADDITION_SYMBOL = "+"; // untranslated
+Blockly.Msg.MATH_ARITHMETIC_HELPURL = "https://vi.wikipedia.org/wiki/S%E1%BB%91_h%E1%BB%8Dc";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_ADD = "Hoàn trả tổng của hai con số.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE = "Hoàn trả thương của hai con số.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MINUS = "Hoàn trả hiệu của hai con số.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MULTIPLY = "Hoàn trả tích của hai con số.";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_POWER = "Hoàn trả số lũy thừa với số thứ nhất là cơ số và số thứ hai là số mũ.";
+Blockly.Msg.MATH_CHANGE_HELPURL = "https://vi.wikipedia.org/wiki/Ph%C3%A9p_c%E1%BB%99ng";
+Blockly.Msg.MATH_CHANGE_TITLE = "cộng vào %1 giá trị %2";
+Blockly.Msg.MATH_CHANGE_TOOLTIP = "Cộng số đầu vào vào biến \"%1\".";
+Blockly.Msg.MATH_CONSTANT_HELPURL = "https://en.wikipedia.org/wiki/Mathematical_constant";
+Blockly.Msg.MATH_CONSTANT_TOOLTIP = "Hoàn trả các đẳng số thường gặp: π (3.141…), e (2.718…), φ (1.618…), sqrt(2) (1.414…), sqrt(½) (0.707…), or ∞ (vô cực).";
+Blockly.Msg.MATH_CONSTRAIN_HELPURL = "https://en.wikipedia.org/wiki/Clamping_%28graphics%29"; // untranslated
+Blockly.Msg.MATH_CONSTRAIN_TITLE = "giới hạn %1 không dưới %2 không hơn %3";
+Blockly.Msg.MATH_CONSTRAIN_TOOLTIP = "Giới hạn số đầu vào để không dưới số thứ nhất và không hơn số thứ hai.";
+Blockly.Msg.MATH_DIVISION_SYMBOL = "÷"; // untranslated
+Blockly.Msg.MATH_IS_DIVISIBLE_BY = "chia hết cho";
+Blockly.Msg.MATH_IS_EVEN = "chẵn";
+Blockly.Msg.MATH_IS_NEGATIVE = "là số âm";
+Blockly.Msg.MATH_IS_ODD = "lẻ";
+Blockly.Msg.MATH_IS_POSITIVE = "là số dương";
+Blockly.Msg.MATH_IS_PRIME = "là số nguyên tố";
+Blockly.Msg.MATH_IS_TOOLTIP = "Kiểm tra con số xem nó có phải là số chẵn, lẻ, nguyên tố, nguyên, dương, âm, hay xem nó có chia hết cho số đầu vào hay không. Hoàn trả đúng hay sai.";
+Blockly.Msg.MATH_IS_WHOLE = "là số nguyên";
+Blockly.Msg.MATH_MODULO_HELPURL = "https://en.wikipedia.org/wiki/Modulo_operation";
+Blockly.Msg.MATH_MODULO_TITLE = "số dư của %1 ÷ %2";
+Blockly.Msg.MATH_MODULO_TOOLTIP = "Chia số thứ nhất cho số thứ hai rồi hoàn trả số dư từ.";
+Blockly.Msg.MATH_MULTIPLICATION_SYMBOL = "×"; // untranslated
+Blockly.Msg.MATH_NUMBER_HELPURL = "https://vi.wikipedia.org/wiki/S%E1%BB%91";
+Blockly.Msg.MATH_NUMBER_TOOLTIP = "Một con số.";
+Blockly.Msg.MATH_ONLIST_HELPURL = "";
+Blockly.Msg.MATH_ONLIST_OPERATOR_AVERAGE = "giá trị trung bình của một danh sách";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MAX = "số lớn nhât của một danh sách";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MEDIAN = "số trung vị của một danh sách";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MIN = "số nhỏ nhất của một danh sách";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MODE = "các mode của một danh sách";
+Blockly.Msg.MATH_ONLIST_OPERATOR_RANDOM = "một số bất kỳ của một danh sách";
+Blockly.Msg.MATH_ONLIST_OPERATOR_STD_DEV = "độ lệch chuẩn của một danh sách";
+Blockly.Msg.MATH_ONLIST_OPERATOR_SUM = "tổng của một danh sách";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_AVERAGE = "Hoàn trả giá trị trung bình từ của danh sách số.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MAX = "Hoàn trả số lớn nhất trong tất cả các số trong danh sách.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MEDIAN = "Hoàn trả số trung vị của danh sách số.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MIN = "Hoàn trả số nhỏ nhất trong tất cả các số trong danh sách.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MODE = "Hoàn trả các số có mặt nhiều nhất trong danh sách.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_RANDOM = "Hoàn trả một số bất kỳ từ các số trong danh sách.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_STD_DEV = "Hoàn trả độ lệch chuẩn của danh sách số.";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_SUM = "Hoàn trả tổng số của tất cả các số trong danh sách.";
+Blockly.Msg.MATH_POWER_SYMBOL = "^"; // untranslated
+Blockly.Msg.MATH_RANDOM_FLOAT_HELPURL = "https://en.wikipedia.org/wiki/Random_number_generation";
+Blockly.Msg.MATH_RANDOM_FLOAT_TITLE_RANDOM = "phân số bất kỳ";
+Blockly.Msg.MATH_RANDOM_FLOAT_TOOLTIP = "Hoàn trả một phân số bất kỳ không nhỏ hơn 0.0 và không lớn hơn 1.0.";
+Blockly.Msg.MATH_RANDOM_INT_HELPURL = "https://en.wikipedia.org/wiki/Random_number_generation";
+Blockly.Msg.MATH_RANDOM_INT_TITLE = "Một số nguyên bất kỳ từ %1 đến %2";
+Blockly.Msg.MATH_RANDOM_INT_TOOLTIP = "Hoàn trả một số nguyên bất kỳ lớn hơn hoặc bằng số đầu và nhỏ hơn hoặc bằng số sau.";
+Blockly.Msg.MATH_ROUND_HELPURL = "https://en.wikipedia.org/wiki/Rounding";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUND = "làm tròn";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDDOWN = "làm tròn xuống";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDUP = "làm tròn lên";
+Blockly.Msg.MATH_ROUND_TOOLTIP = "Làm tròn lên hoặc tròn xuống số đầu vào.";
+Blockly.Msg.MATH_SINGLE_HELPURL = "https://vi.wikipedia.org/wiki/C%C4%83n_b%E1%BA%ADc_hai";
+Blockly.Msg.MATH_SINGLE_OP_ABSOLUTE = "giá trị tuyệt đối";
+Blockly.Msg.MATH_SINGLE_OP_ROOT = "căn bật hai";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ABS = "Hoàn trả giá trị tuyệt đối của số đầu vào.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_EXP = "Hoàn trả lũy thừa của số e với số mũ đầu vào.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LN = "Hoàn trả lôgarit tự nhiên của số đầu vào.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LOG10 = "Hoàn trả lôgarit cơ số 10 của số đầu vào.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_NEG = "Đổi dấu của số đầu vào: âm thành dương và dương thành âm, và hoàn trả số mới.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_POW10 = "Hoàn trả lũy thừa của số 10 với số mũ đầu vào.";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ROOT = "Hoàn trả căn bật hai của số đầu vào.";
+Blockly.Msg.MATH_SUBTRACTION_SYMBOL = "-"; // untranslated
+Blockly.Msg.MATH_TRIG_ACOS = "acos"; // untranslated
+Blockly.Msg.MATH_TRIG_ASIN = "asin"; // untranslated
+Blockly.Msg.MATH_TRIG_ATAN = "atan"; // untranslated
+Blockly.Msg.MATH_TRIG_COS = "cos"; // untranslated
+Blockly.Msg.MATH_TRIG_HELPURL = "https://vi.wikipedia.org/wiki/H%C3%A0m_l%C6%B0%E1%BB%A3ng_gi%C3%A1c";
+Blockly.Msg.MATH_TRIG_SIN = "sin"; // untranslated
+Blockly.Msg.MATH_TRIG_TAN = "tan"; // untranslated
+Blockly.Msg.MATH_TRIG_TOOLTIP_ACOS = "Hoàn trả Arccos của một góc (theo độ).";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ASIN = "Hoàn trả Arcsin của một góc (theo độ).";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ATAN = "Hoàn trả Arctang của một góc (theo độ).";
+Blockly.Msg.MATH_TRIG_TOOLTIP_COS = "Hoàn trả Cos của một góc (theo độ).";
+Blockly.Msg.MATH_TRIG_TOOLTIP_SIN = "Hoàn trả Sin của một góc (theo độ).";
+Blockly.Msg.MATH_TRIG_TOOLTIP_TAN = "Hoàn trả Tang của một góc (theo độ).";
+Blockly.Msg.NEW_VARIABLE = "Biến mới...";
+Blockly.Msg.NEW_VARIABLE_TITLE = "Tên của biến mới:";
+Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; // untranslated
+Blockly.Msg.PROCEDURES_ALLOW_STATEMENTS = "cho phép báo cáo";
+Blockly.Msg.PROCEDURES_BEFORE_PARAMS = "với:";
+Blockly.Msg.PROCEDURES_CALLNORETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_CALLNORETURN_TOOLTIP = "Chạy một thủ tục không có giá trị hoàn trả.";
+Blockly.Msg.PROCEDURES_CALLRETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_CALLRETURN_TOOLTIP = "Chạy một thủ tục có giá trị hoàn trả.";
+Blockly.Msg.PROCEDURES_CALL_BEFORE_PARAMS = "với:";
+Blockly.Msg.PROCEDURES_CREATE_DO = "Tạo mảnh \"thực hiện %1\"";
+Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT = "Describe this function..."; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_DO = "";
+Blockly.Msg.PROCEDURES_DEFNORETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE = "thủ tục";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE = "";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TOOLTIP = "Một thủ tục không có giá trị hoàn trả.";
+Blockly.Msg.PROCEDURES_DEFRETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_DEFRETURN_RETURN = "hoàn trả";
+Blockly.Msg.PROCEDURES_DEFRETURN_TOOLTIP = "Một thủ tục có giá trị hoàn trả.";
+Blockly.Msg.PROCEDURES_DEF_DUPLICATE_WARNING = "Chú ý: Thủ tục này có lặp lại tên các tham số.";
+Blockly.Msg.PROCEDURES_HIGHLIGHT_DEF = "Làm nổi bật thủ tục";
+Blockly.Msg.PROCEDURES_IFRETURN_HELPURL = "http://c2.com/cgi/wiki?GuardClause"; // untranslated
+Blockly.Msg.PROCEDURES_IFRETURN_TOOLTIP = "Khi điều kiện đúng thì hoàn trả một giá trị.";
+Blockly.Msg.PROCEDURES_IFRETURN_WARNING = "Chú ý: Mảnh này chỉ có thể dùng trong một thủ tục.";
+Blockly.Msg.PROCEDURES_MUTATORARG_TITLE = "biến:";
+Blockly.Msg.PROCEDURES_MUTATORARG_TOOLTIP = "Thêm một đầu vào cho hàm.";
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TITLE = "các tham số";
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TOOLTIP = "Thêm, xóa hoặc sắp xếp lại các đầu vào cho hàm này.";
+Blockly.Msg.REDO = "Redo"; // untranslated
+Blockly.Msg.REMOVE_COMMENT = "Xóa Chú Giải";
+Blockly.Msg.RENAME_VARIABLE = "Thay tên biến...";
+Blockly.Msg.RENAME_VARIABLE_TITLE = "Thay tên tất cả \"%1\" biến này thành:";
+Blockly.Msg.TEXT_APPEND_APPENDTEXT = "thêm văn bản";
+Blockly.Msg.TEXT_APPEND_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_APPEND_TO = "ở cuối";
+Blockly.Msg.TEXT_APPEND_TOOLTIP = "Thêm một mảng văn bản vào biến \"%1\".";
+Blockly.Msg.TEXT_CHANGECASE_HELPURL = "https://github.com/google/blockly/wiki/Text#adjusting-text-case"; // untranslated
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_LOWERCASE = "thành chữ thường";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_TITLECASE = "thành Chữ In Đầu Mỗi Từ";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_UPPERCASE = "thành CHỮ IN HOA";
+Blockly.Msg.TEXT_CHANGECASE_TOOLTIP = "Hoàn trả văn bản sau khi chuyển đổi chữ in hoa hay thường.";
+Blockly.Msg.TEXT_CHARAT_FIRST = "lấy ký tự đầu tiên";
+Blockly.Msg.TEXT_CHARAT_FROM_END = "lấy từ phía cuối, ký tự thứ";
+Blockly.Msg.TEXT_CHARAT_FROM_START = "lấy ký tự thứ";
+Blockly.Msg.TEXT_CHARAT_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-text"; // untranslated
+Blockly.Msg.TEXT_CHARAT_INPUT_INTEXT = "trong văn bản";
+Blockly.Msg.TEXT_CHARAT_LAST = "lấy ký tự cuối cùng";
+Blockly.Msg.TEXT_CHARAT_RANDOM = "lấy ký tự bất kỳ";
+Blockly.Msg.TEXT_CHARAT_TAIL = "";
+Blockly.Msg.TEXT_CHARAT_TOOLTIP = "Hoàn trả ký tự ở vị trí đặt ra.";
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TOOLTIP = "thêm vật mới vào văn bản.";
+Blockly.Msg.TEXT_CREATE_JOIN_TITLE_JOIN = "kết nối";
+Blockly.Msg.TEXT_CREATE_JOIN_TOOLTIP = "Thêm, bỏ, hoặc sắp xếp lại các thành phần để tạo dựng mảnh văn bản này.";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_END = "đến từ phía cuối, ký tự thứ";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_START = "đến ký tự thứ";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_LAST = "đến ký tự cuối cùng";
+Blockly.Msg.TEXT_GET_SUBSTRING_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_INPUT_IN_TEXT = "trong văn bản";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FIRST = "lấy từ ký tự đầu tiên";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_END = "lấy từ phía cuối, ký tự thứ";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_START = "lấy từ ký tự thứ";
+Blockly.Msg.TEXT_GET_SUBSTRING_TAIL = "";
+Blockly.Msg.TEXT_GET_SUBSTRING_TOOLTIP = "Hoàn trả một mảng ký tự ấn định từ trong văn bản.";
+Blockly.Msg.TEXT_INDEXOF_HELPURL = "https://github.com/google/blockly/wiki/Text#finding-text"; // untranslated
+Blockly.Msg.TEXT_INDEXOF_INPUT_INTEXT = "trong văn bản";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_FIRST = "tìm sự có mặt đầu tiên của";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_LAST = "tìm sự có mặt cuối cùng của";
+Blockly.Msg.TEXT_INDEXOF_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_INDEXOF_TOOLTIP = "Hoàn trả vị trí xuất hiện đầu/cuối của văn bản thứ nhất trong văn bản thứ hai. Nếu không tìm thấy thì hoàn trả số %1.";
+Blockly.Msg.TEXT_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Text#checking-for-empty-text"; // untranslated
+Blockly.Msg.TEXT_ISEMPTY_TITLE = "%1 trống không";
+Blockly.Msg.TEXT_ISEMPTY_TOOLTIP = "Hoàn trả “đúng nếu văn bản không có ký tự nào.";
+Blockly.Msg.TEXT_JOIN_HELPURL = "";
+Blockly.Msg.TEXT_JOIN_TITLE_CREATEWITH = "tạo văn bản từ";
+Blockly.Msg.TEXT_JOIN_TOOLTIP = "Tạo một văn bản từ các thành phần.";
+Blockly.Msg.TEXT_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_LENGTH_TITLE = "độ dài của %1";
+Blockly.Msg.TEXT_LENGTH_TOOLTIP = "Hoàn trả số lượng ký tự (kể cả khoảng trắng) trong văn bản đầu vào.";
+Blockly.Msg.TEXT_PRINT_HELPURL = "https://github.com/google/blockly/wiki/Text#printing-text"; // untranslated
+Blockly.Msg.TEXT_PRINT_TITLE = "in lên màng hình %1";
+Blockly.Msg.TEXT_PRINT_TOOLTIP = "In ra màng hình một văn bản, con số, hay một giá trị đầu vào khác.";
+Blockly.Msg.TEXT_PROMPT_HELPURL = "https://github.com/google/blockly/wiki/Text#getting-input-from-the-user"; // untranslated
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_NUMBER = "Xin người dùng nhập vào một con số.";
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_TEXT = "Xin người dùng nhập vào một văn bản.";
+Blockly.Msg.TEXT_PROMPT_TYPE_NUMBER = "Xin người dùng nhập vào con số với dòng hướng dẫn";
+Blockly.Msg.TEXT_PROMPT_TYPE_TEXT = "Xin người dùng nhập vào văn bản với dòng hướng dẫn";
+Blockly.Msg.TEXT_TEXT_HELPURL = "https://en.wikipedia.org/wiki/string_(computer_science)";
+Blockly.Msg.TEXT_TEXT_TOOLTIP = "Một ký tự, một từ, hay một dòng.";
+Blockly.Msg.TEXT_TRIM_HELPURL = "https://github.com/google/blockly/wiki/Text#trimming-removing-spaces"; // untranslated
+Blockly.Msg.TEXT_TRIM_OPERATOR_BOTH = "cắt các không gian từ cả hai mặt của";
+Blockly.Msg.TEXT_TRIM_OPERATOR_LEFT = "cắt các không gian từ bên trái của";
+Blockly.Msg.TEXT_TRIM_OPERATOR_RIGHT = "cắt các không gian từ bên phải của";
+Blockly.Msg.TEXT_TRIM_TOOLTIP = "Hoàn trả bản sao của văn bản sau khi xóa khoảng trắng từ một hoặc hai bên.";
+Blockly.Msg.TODAY = "Today"; // untranslated
+Blockly.Msg.UNDO = "Undo"; // untranslated
+Blockly.Msg.VARIABLES_DEFAULT_NAME = "vật";
+Blockly.Msg.VARIABLES_GET_CREATE_SET = "Tạo mảnh \"đặt vào %1\"";
+Blockly.Msg.VARIABLES_GET_HELPURL = "https://github.com/google/blockly/wiki/Variables#get"; // untranslated
+Blockly.Msg.VARIABLES_GET_TOOLTIP = "Hoàn trả giá trị của.";
+Blockly.Msg.VARIABLES_SET = "cho %1 bằng %2";
+Blockly.Msg.VARIABLES_SET_CREATE_GET = "Tạo mảnh \"lấy %1\"";
+Blockly.Msg.VARIABLES_SET_HELPURL = "https://github.com/google/blockly/wiki/Variables#set"; // untranslated
+Blockly.Msg.VARIABLES_SET_TOOLTIP = "Đặt giá trị của biến này thành...";
+Blockly.Msg.VARIABLE_ALREADY_EXISTS = "A variable named '%1' already exists."; // untranslated
+Blockly.Msg.PROCEDURES_DEFRETURN_TITLE = Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE;
+Blockly.Msg.CONTROLS_IF_IF_TITLE_IF = Blockly.Msg.CONTROLS_IF_MSG_IF;
+Blockly.Msg.CONTROLS_WHILEUNTIL_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_MSG_THEN = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_ELSE_TITLE_ELSE = Blockly.Msg.CONTROLS_IF_MSG_ELSE;
+Blockly.Msg.PROCEDURES_DEFRETURN_PROCEDURE = Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE;
+Blockly.Msg.LISTS_GET_SUBLIST_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.LISTS_GET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.PROCEDURES_DEFRETURN_DO = Blockly.Msg.PROCEDURES_DEFNORETURN_DO;
+Blockly.Msg.CONTROLS_IF_ELSEIF_TITLE_ELSEIF = Blockly.Msg.CONTROLS_IF_MSG_ELSEIF;
+Blockly.Msg.LISTS_GET_INDEX_HELPURL = Blockly.Msg.LISTS_INDEX_OF_HELPURL;
+Blockly.Msg.CONTROLS_FOREACH_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_SET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TITLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_APPEND_VARIABLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.LISTS_INDEX_OF_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.PROCEDURES_DEFRETURN_COMMENT = Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT; \ No newline at end of file
diff --git a/blockly/msg/js/zh-hans.js b/blockly/msg/js/zh-hans.js
new file mode 100644
index 0000000..66b7ec8
--- /dev/null
+++ b/blockly/msg/js/zh-hans.js
@@ -0,0 +1,391 @@
+// This file was automatically generated. Do not modify.
+
+'use strict';
+
+goog.provide('Blockly.Msg.zh.hans');
+
+goog.require('Blockly.Msg');
+
+Blockly.Msg.ADD_COMMENT = "添加注释";
+Blockly.Msg.CHANGE_VALUE_TITLE = "更改值:";
+Blockly.Msg.CLEAN_UP = "整理块";
+Blockly.Msg.COLLAPSE_ALL = "折叠块";
+Blockly.Msg.COLLAPSE_BLOCK = "折叠块";
+Blockly.Msg.COLOUR_BLEND_COLOUR1 = "颜色1";
+Blockly.Msg.COLOUR_BLEND_COLOUR2 = "颜色2";
+Blockly.Msg.COLOUR_BLEND_HELPURL = "http://meyerweb.com/eric/tools/color-blend/"; // untranslated
+Blockly.Msg.COLOUR_BLEND_RATIO = "比例";
+Blockly.Msg.COLOUR_BLEND_TITLE = "混合";
+Blockly.Msg.COLOUR_BLEND_TOOLTIP = "用一个给定的比率(0.0-1.0)混合两种颜色。";
+Blockly.Msg.COLOUR_PICKER_HELPURL = "https://zh.wikipedia.org/wiki/颜色";
+Blockly.Msg.COLOUR_PICKER_TOOLTIP = "从调色板中选择一种颜色。";
+Blockly.Msg.COLOUR_RANDOM_HELPURL = "http://randomcolour.com"; // untranslated
+Blockly.Msg.COLOUR_RANDOM_TITLE = "随机颜色";
+Blockly.Msg.COLOUR_RANDOM_TOOLTIP = "随机选择一种颜色。";
+Blockly.Msg.COLOUR_RGB_BLUE = "蓝色";
+Blockly.Msg.COLOUR_RGB_GREEN = "绿色";
+Blockly.Msg.COLOUR_RGB_HELPURL = "http://www.december.com/html/spec/colorper.html"; // untranslated
+Blockly.Msg.COLOUR_RGB_RED = "红色";
+Blockly.Msg.COLOUR_RGB_TITLE = "颜色";
+Blockly.Msg.COLOUR_RGB_TOOLTIP = "通过指定红色、绿色和蓝色的量创建一种颜色。所有的值必须介于0和100之间。";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_HELPURL = "https://github.com/google/blockly/wiki/Loops#loop-termination-blocks"; // untranslated
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK = "中断循环";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE = "继续下一次循环";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK = "中断包含它的循环。";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE = "跳过这个循环的剩余部分,并继续下一次迭代。";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_WARNING = "警告:此块仅可用于在一个循环内。";
+Blockly.Msg.CONTROLS_FOREACH_HELPURL = "https://github.com/google/blockly/wiki/Loops#for-each"; // untranslated
+Blockly.Msg.CONTROLS_FOREACH_TITLE = "为每个项目 %1 在列表中 %2";
+Blockly.Msg.CONTROLS_FOREACH_TOOLTIP = "遍历每个列表中的项目,将变量“%1”设定到该项中,然后执行某些语句。";
+Blockly.Msg.CONTROLS_FOR_HELPURL = "https://github.com/google/blockly/wiki/Loops#count-with"; // untranslated
+Blockly.Msg.CONTROLS_FOR_TITLE = "使用 %1 从范围 %2 到 %3 每隔 %4";
+Blockly.Msg.CONTROLS_FOR_TOOLTIP = "从起始数到结尾数中取出变量“%1”的值,按指定的时间间隔,执行指定的块。";
+Blockly.Msg.CONTROLS_IF_ELSEIF_TOOLTIP = "在if语句块中增加一个条件。";
+Blockly.Msg.CONTROLS_IF_ELSE_TOOLTIP = "添加一个最终的,包括所有情况的节到if块中。";
+Blockly.Msg.CONTROLS_IF_HELPURL = "https://github.com/google/blockly/wiki/IfElse"; // untranslated
+Blockly.Msg.CONTROLS_IF_IF_TOOLTIP = "增加、删除或重新排列各节来重新配置“if”块。";
+Blockly.Msg.CONTROLS_IF_MSG_ELSE = "否则";
+Blockly.Msg.CONTROLS_IF_MSG_ELSEIF = "否则如果";
+Blockly.Msg.CONTROLS_IF_MSG_IF = "如果";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_1 = "如果值为真,执行一些语句。";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_2 = "如果值为真,则执行第一块语句。否则,则执行第二块语句。";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_3 = "如果第一个值为真,则执行第一块的语句。否则,如果第二个值为真,则执行第二块的语句。";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_4 = "如果第一个值为真,则执行第一块对语句。否则,如果第二个值为真,则执行语句的第二块。如果没有值为真,则执行最后一块的语句。";
+Blockly.Msg.CONTROLS_REPEAT_HELPURL = "https://zh.wikipedia.org/wiki/For循环";
+Blockly.Msg.CONTROLS_REPEAT_INPUT_DO = "执行";
+Blockly.Msg.CONTROLS_REPEAT_TITLE = "重复 %1 次";
+Blockly.Msg.CONTROLS_REPEAT_TOOLTIP = "多次执行一些语句。";
+Blockly.Msg.CONTROLS_WHILEUNTIL_HELPURL = "https://github.com/google/blockly/wiki/Loops#repeat"; // untranslated
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "重复直到";
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "重复当";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "只要值为假,执行一些语句。";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "只要值为真,执行一些语句。";
+Blockly.Msg.DELETE_ALL_BLOCKS = "删除所有%1块吗?";
+Blockly.Msg.DELETE_BLOCK = "删除块";
+Blockly.Msg.DELETE_VARIABLE = "删除“%1”变量";
+Blockly.Msg.DELETE_VARIABLE_CONFIRMATION = "删除“%2”变量的%1种用途么?";
+Blockly.Msg.DELETE_X_BLOCKS = "删除 %1 块";
+Blockly.Msg.DISABLE_BLOCK = "禁用块";
+Blockly.Msg.DUPLICATE_BLOCK = "复制";
+Blockly.Msg.ENABLE_BLOCK = "启用块";
+Blockly.Msg.EXPAND_ALL = "展开块";
+Blockly.Msg.EXPAND_BLOCK = "展开块";
+Blockly.Msg.EXTERNAL_INPUTS = "外部输入";
+Blockly.Msg.HELP = "帮助";
+Blockly.Msg.INLINE_INPUTS = "单行输入";
+Blockly.Msg.LISTS_CREATE_EMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-empty-list";
+Blockly.Msg.LISTS_CREATE_EMPTY_TITLE = "创建空列表";
+Blockly.Msg.LISTS_CREATE_EMPTY_TOOLTIP = "返回一个列表,长度为 0,不包含任何数据记录";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TITLE_ADD = "列表";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TOOLTIP = "增加、删除或重新排列各部分以此重新配置这个列表块。";
+Blockly.Msg.LISTS_CREATE_WITH_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with";
+Blockly.Msg.LISTS_CREATE_WITH_INPUT_WITH = "建立字串使用";
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TOOLTIP = "将一个项添加到列表中。";
+Blockly.Msg.LISTS_CREATE_WITH_TOOLTIP = "建立一个具有任意数量项目的列表。";
+Blockly.Msg.LISTS_GET_INDEX_FIRST = "第一";
+Blockly.Msg.LISTS_GET_INDEX_FROM_END = "倒数第#";
+Blockly.Msg.LISTS_GET_INDEX_FROM_START = "#";
+Blockly.Msg.LISTS_GET_INDEX_GET = "获得";
+Blockly.Msg.LISTS_GET_INDEX_GET_REMOVE = "取出并移除";
+Blockly.Msg.LISTS_GET_INDEX_LAST = "最后";
+Blockly.Msg.LISTS_GET_INDEX_RANDOM = "随机";
+Blockly.Msg.LISTS_GET_INDEX_REMOVE = "移除";
+Blockly.Msg.LISTS_GET_INDEX_TAIL = "空白";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FIRST = "返回列表中的第一个项目。";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FROM = "返回在列表中的指定位置的项。";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_LAST = "返回列表中的最后一项。";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_RANDOM = "随机返回列表中的一个项目。";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST = "移除并返回列表中的第一个项目。";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM = "移除并返回列表中的指定位置的项。";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST = "移除并返回列表中的最后一个项目。";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM = "移除并返回列表中的一个随机项目中。";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST = "移除列表中的第一项";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM = "移除在列表中的指定位置的项。";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST = "移除列表中的最后一项";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM = "删除列表中的一个随机的项。";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_END = "到倒数第#";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_START = "到#";
+Blockly.Msg.LISTS_GET_SUBLIST_END_LAST = "到最后";
+Blockly.Msg.LISTS_GET_SUBLIST_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-a-sublist"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_START_FIRST = "从头获得子列表";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_END = "从倒数#取得子列表";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_START = "从#取得子列表";
+Blockly.Msg.LISTS_GET_SUBLIST_TAIL = "空白";
+Blockly.Msg.LISTS_GET_SUBLIST_TOOLTIP = "复制列表中指定的部分。";
+Blockly.Msg.LISTS_INDEX_FROM_END_TOOLTIP = "%1是最后一项。";
+Blockly.Msg.LISTS_INDEX_FROM_START_TOOLTIP = "%1是第一个项目。";
+Blockly.Msg.LISTS_INDEX_OF_FIRST = "找出第一个项出现";
+Blockly.Msg.LISTS_INDEX_OF_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-items-from-a-list"; // untranslated
+Blockly.Msg.LISTS_INDEX_OF_LAST = "找出最后一个项出现";
+Blockly.Msg.LISTS_INDEX_OF_TOOLTIP = "返回在列表中的第一/最后一个匹配项的索引值。如果找不到项目则返回%1。";
+Blockly.Msg.LISTS_INLIST = "在列表中";
+Blockly.Msg.LISTS_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#is-empty"; // untranslated
+Blockly.Msg.LISTS_ISEMPTY_TITLE = "%1是空的";
+Blockly.Msg.LISTS_ISEMPTY_TOOLTIP = "如果改列表为空,则返回真。";
+Blockly.Msg.LISTS_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Lists#length-of"; // untranslated
+Blockly.Msg.LISTS_LENGTH_TITLE = "%1的长度";
+Blockly.Msg.LISTS_LENGTH_TOOLTIP = "返回列表的长度。";
+Blockly.Msg.LISTS_REPEAT_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
+Blockly.Msg.LISTS_REPEAT_TITLE = "建立列表使用项 %1 重复 %2 次";
+Blockly.Msg.LISTS_REPEAT_TOOLTIP = "建立包含指定重复次数的值的列表。";
+Blockly.Msg.LISTS_SET_INDEX_HELPURL = "https://github.com/google/blockly/wiki/Lists#in-list--set"; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_INPUT_TO = "为";
+Blockly.Msg.LISTS_SET_INDEX_INSERT = "插入在";
+Blockly.Msg.LISTS_SET_INDEX_SET = "设置";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST = "在列表的起始处添加该项。";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FROM = "插入在列表中指定位置的项。";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_LAST = "将该项追加到列表的末尾。";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM = "在列表中随机插入项。";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FIRST = "设置列表中的第一个项目。";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FROM = "设置在列表中指定位置的项。";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_LAST = "设置列表中的最后一项。";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_RANDOM = "设置列表中一个随机的项目。";
+Blockly.Msg.LISTS_SORT_HELPURL = "https://github.com/google/blockly/wiki/Lists#sorting-a-list";
+Blockly.Msg.LISTS_SORT_ORDER_ASCENDING = "升序";
+Blockly.Msg.LISTS_SORT_ORDER_DESCENDING = "降序";
+Blockly.Msg.LISTS_SORT_TITLE = "排序%1 %2 %3";
+Blockly.Msg.LISTS_SORT_TOOLTIP = "排序一个列表的拷贝。";
+Blockly.Msg.LISTS_SORT_TYPE_IGNORECASE = "按字母排序,忽略大小写";
+Blockly.Msg.LISTS_SORT_TYPE_NUMERIC = "按数字排序";
+Blockly.Msg.LISTS_SORT_TYPE_TEXT = "按字母排序";
+Blockly.Msg.LISTS_SPLIT_HELPURL = "https://github.com/google/blockly/wiki/Lists#splitting-strings-and-joining-lists";
+Blockly.Msg.LISTS_SPLIT_LIST_FROM_TEXT = "从文本制作列表";
+Blockly.Msg.LISTS_SPLIT_TEXT_FROM_LIST = "从列表拆出文本";
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_JOIN = "加入文本列表至一个文本,由分隔符分隔。";
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_SPLIT = "拆分文本到文本列表,按每个分隔符拆分。";
+Blockly.Msg.LISTS_SPLIT_WITH_DELIMITER = "用分隔符";
+Blockly.Msg.LOGIC_BOOLEAN_FALSE = "假";
+Blockly.Msg.LOGIC_BOOLEAN_HELPURL = "https://github.com/google/blockly/wiki/Logic#values"; // untranslated
+Blockly.Msg.LOGIC_BOOLEAN_TOOLTIP = "返回真或假。";
+Blockly.Msg.LOGIC_BOOLEAN_TRUE = "真";
+Blockly.Msg.LOGIC_COMPARE_HELPURL = "https://zh.wikipedia.org/wiki/不等";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_EQ = "如果两个输入结果相等,则返回真。";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GT = "如果第一个输入结果比第二个大,则返回真。";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GTE = "如果第一个输入结果大于或等于第二个输入结果,则返回真。";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LT = "如果第一个输入结果比第二个小,则返回真。";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LTE = "如果第一个输入结果小于或等于第二个输入结果,则返回真。";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_NEQ = "如果两个输入结果不相等,则返回真。";
+Blockly.Msg.LOGIC_NEGATE_HELPURL = "https://github.com/google/blockly/wiki/Logic#not";
+Blockly.Msg.LOGIC_NEGATE_TITLE = "非%1";
+Blockly.Msg.LOGIC_NEGATE_TOOLTIP = "如果输入结果为假,则返回真;如果输入结果为真,则返回假。";
+Blockly.Msg.LOGIC_NULL = "空";
+Blockly.Msg.LOGIC_NULL_HELPURL = "https://en.wikipedia.org/wiki/Nullable_type"; // untranslated
+Blockly.Msg.LOGIC_NULL_TOOLTIP = "返回空值。";
+Blockly.Msg.LOGIC_OPERATION_AND = "和";
+Blockly.Msg.LOGIC_OPERATION_HELPURL = "https://github.com/google/blockly/wiki/Logic#logical-operations"; // untranslated
+Blockly.Msg.LOGIC_OPERATION_OR = "或";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_AND = "如果两个输入结果都为真,则返回真。";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_OR = "如果至少有一个输入结果为真,则返回真。";
+Blockly.Msg.LOGIC_TERNARY_CONDITION = "测试";
+Blockly.Msg.LOGIC_TERNARY_HELPURL = "https://zh.wikipedia.org/wiki/条件运算符";
+Blockly.Msg.LOGIC_TERNARY_IF_FALSE = "如果为假";
+Blockly.Msg.LOGIC_TERNARY_IF_TRUE = "如果为真";
+Blockly.Msg.LOGIC_TERNARY_TOOLTIP = "检查“test”中的条件。如果条件为真,则返回“if true”的值,否则,则返回“if false”的值。";
+Blockly.Msg.MATH_ADDITION_SYMBOL = "+"; // untranslated
+Blockly.Msg.MATH_ARITHMETIC_HELPURL = "https://zh.wikipedia.org/wiki/算术";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_ADD = "返回两个数字的和。";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE = "返回两个数字的商。";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MINUS = "返回两个数字的区别。";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MULTIPLY = "返回两个数字的乘积。";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_POWER = "返回第一个数的第二个数次幂。";
+Blockly.Msg.MATH_CHANGE_HELPURL = "https://zh.wikipedia.org/wiki/%E5%8A%A0%E6%B3%95";
+Blockly.Msg.MATH_CHANGE_TITLE = "更改 %1 由 %2";
+Blockly.Msg.MATH_CHANGE_TOOLTIP = "将一个数添加到变量“%1”。";
+Blockly.Msg.MATH_CONSTANT_HELPURL = "https://zh.wikipedia.org/wiki/数学常数";
+Blockly.Msg.MATH_CONSTANT_TOOLTIP = "返回一个常见常量:π (3.141......),e (2.718...)、φ (1.618...)、 sqrt(2) (1.414......)、sqrt(½) (0.707......)或 ∞(无穷大)。";
+Blockly.Msg.MATH_CONSTRAIN_HELPURL = "https://en.wikipedia.org/wiki/Clamping_%28graphics%29"; // untranslated
+Blockly.Msg.MATH_CONSTRAIN_TITLE = "限制数字 %1 介于 (低) %2 到 (高) %3";
+Blockly.Msg.MATH_CONSTRAIN_TOOLTIP = "限制数字介于两个指定的数字之间";
+Blockly.Msg.MATH_DIVISION_SYMBOL = "÷"; // untranslated
+Blockly.Msg.MATH_IS_DIVISIBLE_BY = "可被整除";
+Blockly.Msg.MATH_IS_EVEN = "是偶数";
+Blockly.Msg.MATH_IS_NEGATIVE = "为负";
+Blockly.Msg.MATH_IS_ODD = "是奇数";
+Blockly.Msg.MATH_IS_POSITIVE = "为正";
+Blockly.Msg.MATH_IS_PRIME = "是质数";
+Blockly.Msg.MATH_IS_TOOLTIP = "如果数字是偶数、奇数、非负整数、正数、负数或如果它可被某数字整除,则返回真或假。";
+Blockly.Msg.MATH_IS_WHOLE = "为整数";
+Blockly.Msg.MATH_MODULO_HELPURL = "https://zh.wikipedia.org/wiki/模除";
+Blockly.Msg.MATH_MODULO_TITLE = "取余数自 %1 ÷ %2";
+Blockly.Msg.MATH_MODULO_TOOLTIP = "返回这两个数字相除后的余数。";
+Blockly.Msg.MATH_MULTIPLICATION_SYMBOL = "×"; // untranslated
+Blockly.Msg.MATH_NUMBER_HELPURL = "https://zh.wikipedia.org/wiki/数";
+Blockly.Msg.MATH_NUMBER_TOOLTIP = "一个数字。";
+Blockly.Msg.MATH_ONLIST_HELPURL = ""; // untranslated
+Blockly.Msg.MATH_ONLIST_OPERATOR_AVERAGE = "列表中的平均数";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MAX = "列表中的最大值";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MEDIAN = "列表中位数";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MIN = "列表中的最小值";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MODE = "列表模式";
+Blockly.Msg.MATH_ONLIST_OPERATOR_RANDOM = "列表的随机项";
+Blockly.Msg.MATH_ONLIST_OPERATOR_STD_DEV = "列表中的标准差";
+Blockly.Msg.MATH_ONLIST_OPERATOR_SUM = "列表中的数的总和";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_AVERAGE = "返回列表中的数值的平均值。";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MAX = "返回列表中最大数。";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MEDIAN = "返回列表中的中位数。";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MIN = "返回列表中最小数。";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MODE = "返回列表中的最常见的项的列表。";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_RANDOM = "从列表中返回一个随机的元素。";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_STD_DEV = "返回列表的标准偏差。";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_SUM = "返回列表中的所有数字的和。";
+Blockly.Msg.MATH_POWER_SYMBOL = "^"; // untranslated
+Blockly.Msg.MATH_RANDOM_FLOAT_HELPURL = "https://zh.wikipedia.org/wiki/随机数生成器";
+Blockly.Msg.MATH_RANDOM_FLOAT_TITLE_RANDOM = "随机分数";
+Blockly.Msg.MATH_RANDOM_FLOAT_TOOLTIP = "返回介于(包含)0.0到1.0之间的随机数。";
+Blockly.Msg.MATH_RANDOM_INT_HELPURL = "https://zh.wikipedia.org/wiki/随机数生成器";
+Blockly.Msg.MATH_RANDOM_INT_TITLE = "从 %1 到 %2 之间的随机整数";
+Blockly.Msg.MATH_RANDOM_INT_TOOLTIP = "返回两个指定的范围(含)之间的随机整数。";
+Blockly.Msg.MATH_ROUND_HELPURL = "https://zh.wikipedia.org/wiki/数值修约";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUND = "向下舍入";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDDOWN = "向下舍入";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDUP = "向上舍入";
+Blockly.Msg.MATH_ROUND_TOOLTIP = "数字向上或向下舍入。";
+Blockly.Msg.MATH_SINGLE_HELPURL = "https://zh.wikipedia.org/wiki/平方根";
+Blockly.Msg.MATH_SINGLE_OP_ABSOLUTE = "绝对";
+Blockly.Msg.MATH_SINGLE_OP_ROOT = "平方根";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ABS = "返回一个数的绝对值。";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_EXP = "返回数的e次幂。";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LN = "返回一个数的自然对数。";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LOG10 = "返回数字的对数。";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_NEG = "返回数的逻辑非。";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_POW10 = "返回数的10次幂。";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ROOT = "返回数的平方根。";
+Blockly.Msg.MATH_SUBTRACTION_SYMBOL = "-"; // untranslated
+Blockly.Msg.MATH_TRIG_ACOS = "acos"; // untranslated
+Blockly.Msg.MATH_TRIG_ASIN = "asin"; // untranslated
+Blockly.Msg.MATH_TRIG_ATAN = "atan"; // untranslated
+Blockly.Msg.MATH_TRIG_COS = "cos"; // untranslated
+Blockly.Msg.MATH_TRIG_HELPURL = "https://zh.wikipedia.org/wiki/三角函数";
+Blockly.Msg.MATH_TRIG_SIN = "sin"; // untranslated
+Blockly.Msg.MATH_TRIG_TAN = "tan"; // untranslated
+Blockly.Msg.MATH_TRIG_TOOLTIP_ACOS = "返回一个数的反余弦值。";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ASIN = "返回一个数的反正弦值。";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ATAN = "返回指定角度的反正切值。";
+Blockly.Msg.MATH_TRIG_TOOLTIP_COS = "返回指定角度的余弦值(非弧度)。";
+Blockly.Msg.MATH_TRIG_TOOLTIP_SIN = "返回指定角度的正弦值(非弧度)。";
+Blockly.Msg.MATH_TRIG_TOOLTIP_TAN = "返回指定角度的正切值(非弧度)。";
+Blockly.Msg.NEW_VARIABLE = "创建变量...";
+Blockly.Msg.NEW_VARIABLE_TITLE = "新变量的名称:";
+Blockly.Msg.ORDINAL_NUMBER_SUFFIX = "空白";
+Blockly.Msg.PROCEDURES_ALLOW_STATEMENTS = "允许声明";
+Blockly.Msg.PROCEDURES_BEFORE_PARAMS = "与:";
+Blockly.Msg.PROCEDURES_CALLNORETURN_HELPURL = "https://zh.wikipedia.org/wiki/子程序";
+Blockly.Msg.PROCEDURES_CALLNORETURN_TOOLTIP = "运行用户定义的函数“%1”。";
+Blockly.Msg.PROCEDURES_CALLRETURN_HELPURL = "https://zh.wikipedia.org/wiki/子程序";
+Blockly.Msg.PROCEDURES_CALLRETURN_TOOLTIP = "运行用户定义的函数“%1”,并使用它的输出值。";
+Blockly.Msg.PROCEDURES_CALL_BEFORE_PARAMS = "与:";
+Blockly.Msg.PROCEDURES_CREATE_DO = "创建“%1”";
+Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT = "描述该功能...";
+Blockly.Msg.PROCEDURES_DEFNORETURN_DO = "空白";
+Blockly.Msg.PROCEDURES_DEFNORETURN_HELPURL = "https://zh.wikipedia.org/wiki/子程序";
+Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE = "做点什么";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE = "至";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TOOLTIP = "创建一个不带输出值的函数。";
+Blockly.Msg.PROCEDURES_DEFRETURN_HELPURL = "https://zh.wikipedia.org/wiki/子程序";
+Blockly.Msg.PROCEDURES_DEFRETURN_RETURN = "返回";
+Blockly.Msg.PROCEDURES_DEFRETURN_TOOLTIP = "创建一个有输出值的函数。";
+Blockly.Msg.PROCEDURES_DEF_DUPLICATE_WARNING = "警告: 此函数具有重复参数。";
+Blockly.Msg.PROCEDURES_HIGHLIGHT_DEF = "突出显示函数定义";
+Blockly.Msg.PROCEDURES_IFRETURN_HELPURL = "http://c2.com/cgi/wiki?GuardClause";
+Blockly.Msg.PROCEDURES_IFRETURN_TOOLTIP = "如果值为真,则返回第二个值。";
+Blockly.Msg.PROCEDURES_IFRETURN_WARNING = "警告: 仅在定义函数内可使用此块。";
+Blockly.Msg.PROCEDURES_MUTATORARG_TITLE = "输入名称:";
+Blockly.Msg.PROCEDURES_MUTATORARG_TOOLTIP = "添加函数输入。";
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TITLE = "输入";
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TOOLTIP = "添加、删除或重新排此函数的输入。";
+Blockly.Msg.REDO = "重做";
+Blockly.Msg.REMOVE_COMMENT = "删除注释";
+Blockly.Msg.RENAME_VARIABLE = "重命名变量...";
+Blockly.Msg.RENAME_VARIABLE_TITLE = "将所有“%1”变量重命名为:";
+Blockly.Msg.TEXT_APPEND_APPENDTEXT = "追加文本";
+Blockly.Msg.TEXT_APPEND_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_APPEND_TO = "在";
+Blockly.Msg.TEXT_APPEND_TOOLTIP = "将一些文本追加到变量“%1”。";
+Blockly.Msg.TEXT_CHANGECASE_HELPURL = "https://github.com/google/blockly/wiki/Text#adjusting-text-case"; // untranslated
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_LOWERCASE = "为小写";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_TITLECASE = "为首字母大写";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_UPPERCASE = "为大写";
+Blockly.Msg.TEXT_CHANGECASE_TOOLTIP = "使用不同的大小写复制这段文字。";
+Blockly.Msg.TEXT_CHARAT_FIRST = "获得第一个字符";
+Blockly.Msg.TEXT_CHARAT_FROM_END = "获得倒数第#个字符";
+Blockly.Msg.TEXT_CHARAT_FROM_START = "获得字符#";
+Blockly.Msg.TEXT_CHARAT_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-text"; // untranslated
+Blockly.Msg.TEXT_CHARAT_INPUT_INTEXT = "于文本中";
+Blockly.Msg.TEXT_CHARAT_LAST = "获得最后一个字符";
+Blockly.Msg.TEXT_CHARAT_RANDOM = "获取随机的字母";
+Blockly.Msg.TEXT_CHARAT_TAIL = "空白";
+Blockly.Msg.TEXT_CHARAT_TOOLTIP = "返回位于指定位置的字母。";
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TOOLTIP = "将一个项添加到文本中。";
+Blockly.Msg.TEXT_CREATE_JOIN_TITLE_JOIN = "加入";
+Blockly.Msg.TEXT_CREATE_JOIN_TOOLTIP = "添加、移除或重新排列各节来重新配置这个文本块。";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_END = "到倒数第#个字符";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_START = "到字符#";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_LAST = "到最后一个字符";
+Blockly.Msg.TEXT_GET_SUBSTRING_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_INPUT_IN_TEXT = "自文本";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FIRST = "取得一段字串自第一个字符";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_END = "取得一段字串自倒数第#个字符";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_START = "取得一段字串自#";
+Blockly.Msg.TEXT_GET_SUBSTRING_TAIL = "空白";
+Blockly.Msg.TEXT_GET_SUBSTRING_TOOLTIP = "返回指定的部分文本。";
+Blockly.Msg.TEXT_INDEXOF_HELPURL = "https://github.com/google/blockly/wiki/Text#finding-text"; // untranslated
+Blockly.Msg.TEXT_INDEXOF_INPUT_INTEXT = "自文本";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_FIRST = "寻找第一个出现的文本";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_LAST = "寻找最后一个出现的文本";
+Blockly.Msg.TEXT_INDEXOF_TAIL = "空白";
+Blockly.Msg.TEXT_INDEXOF_TOOLTIP = "返回在第二个字串中的第一/最后一个匹配项的索引值。如果未找到则返回%1。";
+Blockly.Msg.TEXT_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Text#checking-for-empty-text"; // untranslated
+Blockly.Msg.TEXT_ISEMPTY_TITLE = "%1是空的";
+Blockly.Msg.TEXT_ISEMPTY_TOOLTIP = "如果提供的文本为空,则返回真。";
+Blockly.Msg.TEXT_JOIN_HELPURL = "https://github.com/google/blockly/wiki/Text#text-creation"; // untranslated
+Blockly.Msg.TEXT_JOIN_TITLE_CREATEWITH = "建立字串使用";
+Blockly.Msg.TEXT_JOIN_TOOLTIP = "通过串起任意数量的项以建立一段文字。";
+Blockly.Msg.TEXT_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_LENGTH_TITLE = "%1的长度";
+Blockly.Msg.TEXT_LENGTH_TOOLTIP = "返回提供文本的字母数(包括空格)。";
+Blockly.Msg.TEXT_PRINT_HELPURL = "https://github.com/google/blockly/wiki/Text#printing-text"; // untranslated
+Blockly.Msg.TEXT_PRINT_TITLE = "打印%1";
+Blockly.Msg.TEXT_PRINT_TOOLTIP = "打印指定的文字、数字或其他值。";
+Blockly.Msg.TEXT_PROMPT_HELPURL = "https://github.com/google/blockly/wiki/Text#getting-input-from-the-user"; // untranslated
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_NUMBER = "提示用户输入数字。";
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_TEXT = "提示用户输入一些文本。";
+Blockly.Msg.TEXT_PROMPT_TYPE_NUMBER = "输入数字并显示提示消息";
+Blockly.Msg.TEXT_PROMPT_TYPE_TEXT = "输入数字并显示提示消息";
+Blockly.Msg.TEXT_TEXT_HELPURL = "https://zh.wikipedia.org/wiki/字符串";
+Blockly.Msg.TEXT_TEXT_TOOLTIP = "一个字母、单词或一行文本。";
+Blockly.Msg.TEXT_TRIM_HELPURL = "https://github.com/google/blockly/wiki/Text#trimming-removing-spaces"; // untranslated
+Blockly.Msg.TEXT_TRIM_OPERATOR_BOTH = "消除两侧空格";
+Blockly.Msg.TEXT_TRIM_OPERATOR_LEFT = "消除左侧空格";
+Blockly.Msg.TEXT_TRIM_OPERATOR_RIGHT = "消除右侧空格";
+Blockly.Msg.TEXT_TRIM_TOOLTIP = "复制这段文字的同时删除两端多余的空格。";
+Blockly.Msg.TODAY = "今天";
+Blockly.Msg.UNDO = "撤销";
+Blockly.Msg.VARIABLES_DEFAULT_NAME = "项目";
+Blockly.Msg.VARIABLES_GET_CREATE_SET = "创建“设定%1”";
+Blockly.Msg.VARIABLES_GET_HELPURL = "https://github.com/google/blockly/wiki/Variables#get"; // untranslated
+Blockly.Msg.VARIABLES_GET_TOOLTIP = "返回此变量的值。";
+Blockly.Msg.VARIABLES_SET = "赋值 %1 到 %2";
+Blockly.Msg.VARIABLES_SET_CREATE_GET = "创建“获得%1”";
+Blockly.Msg.VARIABLES_SET_HELPURL = "https://github.com/google/blockly/wiki/Variables#set"; // untranslated
+Blockly.Msg.VARIABLES_SET_TOOLTIP = "设置此变量,以使它和输入值相等。";
+Blockly.Msg.VARIABLE_ALREADY_EXISTS = "已存在名为“%1”的变量。";
+Blockly.Msg.PROCEDURES_DEFRETURN_TITLE = Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE;
+Blockly.Msg.CONTROLS_IF_IF_TITLE_IF = Blockly.Msg.CONTROLS_IF_MSG_IF;
+Blockly.Msg.CONTROLS_WHILEUNTIL_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_MSG_THEN = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_ELSE_TITLE_ELSE = Blockly.Msg.CONTROLS_IF_MSG_ELSE;
+Blockly.Msg.PROCEDURES_DEFRETURN_PROCEDURE = Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE;
+Blockly.Msg.LISTS_GET_SUBLIST_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.LISTS_GET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.PROCEDURES_DEFRETURN_DO = Blockly.Msg.PROCEDURES_DEFNORETURN_DO;
+Blockly.Msg.CONTROLS_IF_ELSEIF_TITLE_ELSEIF = Blockly.Msg.CONTROLS_IF_MSG_ELSEIF;
+Blockly.Msg.LISTS_GET_INDEX_HELPURL = Blockly.Msg.LISTS_INDEX_OF_HELPURL;
+Blockly.Msg.CONTROLS_FOREACH_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_SET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TITLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_APPEND_VARIABLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.LISTS_INDEX_OF_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.PROCEDURES_DEFRETURN_COMMENT = Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT; \ No newline at end of file
diff --git a/blockly/msg/js/zh-hant.js b/blockly/msg/js/zh-hant.js
new file mode 100644
index 0000000..5b92bd2
--- /dev/null
+++ b/blockly/msg/js/zh-hant.js
@@ -0,0 +1,391 @@
+// This file was automatically generated. Do not modify.
+
+'use strict';
+
+goog.provide('Blockly.Msg.zh.hant');
+
+goog.require('Blockly.Msg');
+
+Blockly.Msg.ADD_COMMENT = "加入註解";
+Blockly.Msg.CHANGE_VALUE_TITLE = "修改值:";
+Blockly.Msg.CLEAN_UP = "清理積木";
+Blockly.Msg.COLLAPSE_ALL = "收合積木";
+Blockly.Msg.COLLAPSE_BLOCK = "收合積木";
+Blockly.Msg.COLOUR_BLEND_COLOUR1 = "顏色 1";
+Blockly.Msg.COLOUR_BLEND_COLOUR2 = "顏色 2";
+Blockly.Msg.COLOUR_BLEND_HELPURL = "http://meyerweb.com/eric/tools/color-blend/"; // untranslated
+Blockly.Msg.COLOUR_BLEND_RATIO = "比例";
+Blockly.Msg.COLOUR_BLEND_TITLE = "混合";
+Blockly.Msg.COLOUR_BLEND_TOOLTIP = "透過一個比率 (0.0-1.0)來混合兩種顏色。";
+Blockly.Msg.COLOUR_PICKER_HELPURL = "https://zh.wikipedia.org/wiki/顏色";
+Blockly.Msg.COLOUR_PICKER_TOOLTIP = "從調色板中選擇一種顏色。";
+Blockly.Msg.COLOUR_RANDOM_HELPURL = "http://randomcolour.com"; // untranslated
+Blockly.Msg.COLOUR_RANDOM_TITLE = "隨機顏色";
+Blockly.Msg.COLOUR_RANDOM_TOOLTIP = "隨機選擇一種顏色。";
+Blockly.Msg.COLOUR_RGB_BLUE = "藍";
+Blockly.Msg.COLOUR_RGB_GREEN = "綠";
+Blockly.Msg.COLOUR_RGB_HELPURL = "http://www.december.com/html/spec/colorper.html"; // untranslated
+Blockly.Msg.COLOUR_RGB_RED = "紅";
+Blockly.Msg.COLOUR_RGB_TITLE = "顏色";
+Blockly.Msg.COLOUR_RGB_TOOLTIP = "透過指定紅、綠、 藍色的值來建立一種顏色。所有的值必須介於 0 和 100 之間。";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_HELPURL = "https://github.com/google/blockly/wiki/Loops#loop-termination-blocks"; // untranslated
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK = "停止 迴圈";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE = "繼續下一個 迴圈";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK = "離開當前的 迴圈";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE = "跳過這個迴圈的其餘步驟,並繼續下一次的迴圈運算。";
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_WARNING = "警告: 此積木僅可用於迴圈內。";
+Blockly.Msg.CONTROLS_FOREACH_HELPURL = "https://github.com/google/blockly/wiki/Loops#for-each"; // untranslated
+Blockly.Msg.CONTROLS_FOREACH_TITLE = "取出每個 %1 自列表 %2";
+Blockly.Msg.CONTROLS_FOREACH_TOOLTIP = "遍歷每個列表中的項目,將變數 '%1' 設定到該項目中,然後執行某些語句";
+Blockly.Msg.CONTROLS_FOR_HELPURL = "https://github.com/google/blockly/wiki/Loops#count-with"; // untranslated
+Blockly.Msg.CONTROLS_FOR_TITLE = "使用 %1 從範圍 %2 到 %3 每隔 %4";
+Blockly.Msg.CONTROLS_FOR_TOOLTIP = "從起始數到結尾數中取出變數 \"%1\" 的值,按指定的時間間隔,執行指定的積木。";
+Blockly.Msg.CONTROLS_IF_ELSEIF_TOOLTIP = "將條件添加到'如果'積木。";
+Blockly.Msg.CONTROLS_IF_ELSE_TOOLTIP = "加入一個最終,所有條件下都都執行的區塊到'如果'積木中";
+Blockly.Msg.CONTROLS_IF_HELPURL = "https://github.com/google/blockly/wiki/IfElse"; // untranslated
+Blockly.Msg.CONTROLS_IF_IF_TOOLTIP = "添加、 刪除或重新排列各區塊來此重新配置這個'如果'積木。";
+Blockly.Msg.CONTROLS_IF_MSG_ELSE = "否則";
+Blockly.Msg.CONTROLS_IF_MSG_ELSEIF = "否則如果";
+Blockly.Msg.CONTROLS_IF_MSG_IF = "如果";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_1 = "當值為真時,執行一些語句";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_2 = "當值為真時,執行第一個語句,否則則執行第二個語句";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_3 = "如果第一個值為真,則執行第一個語句。否則當第二個值為真時,則執行第二個語句";
+Blockly.Msg.CONTROLS_IF_TOOLTIP_4 = "如果第一個值為真,則執行第一個語句。否則當第二個值為真時,則執行第二個語句。如果前幾個敘述都不為真,則執行最後一個語句";
+Blockly.Msg.CONTROLS_REPEAT_HELPURL = "https://zh.wikipedia.org/wiki/For迴圈";
+Blockly.Msg.CONTROLS_REPEAT_INPUT_DO = "執行";
+Blockly.Msg.CONTROLS_REPEAT_TITLE = "重複 %1 次";
+Blockly.Msg.CONTROLS_REPEAT_TOOLTIP = "多次執行一些語句";
+Blockly.Msg.CONTROLS_WHILEUNTIL_HELPURL = "https://github.com/google/blockly/wiki/Loops#repeat"; // untranslated
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "重複 直到";
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "重複 當";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "當值為否時,執行一些語句";
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "當值為真時,執行一些語句";
+Blockly.Msg.DELETE_ALL_BLOCKS = "刪除共 %1 塊積木?";
+Blockly.Msg.DELETE_BLOCK = "刪除積木";
+Blockly.Msg.DELETE_VARIABLE = "刪除%1變數";
+Blockly.Msg.DELETE_VARIABLE_CONFIRMATION = "刪除%1使用的%2變數?";
+Blockly.Msg.DELETE_X_BLOCKS = "刪除 %1 塊積木";
+Blockly.Msg.DISABLE_BLOCK = "停用積木";
+Blockly.Msg.DUPLICATE_BLOCK = "複製";
+Blockly.Msg.ENABLE_BLOCK = "啟用積木";
+Blockly.Msg.EXPAND_ALL = "展開積木";
+Blockly.Msg.EXPAND_BLOCK = "展開積木";
+Blockly.Msg.EXTERNAL_INPUTS = "多行輸入";
+Blockly.Msg.HELP = "說明";
+Blockly.Msg.INLINE_INPUTS = "單行輸入";
+Blockly.Msg.LISTS_CREATE_EMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-empty-list"; // untranslated
+Blockly.Msg.LISTS_CREATE_EMPTY_TITLE = "建立空列表";
+Blockly.Msg.LISTS_CREATE_EMPTY_TOOLTIP = "返回一個長度為 0 的列表,不包含任何資料記錄";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TITLE_ADD = "列表";
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TOOLTIP = "添加、 刪除或重新排列各區塊來此重新配置這個 列表 積木。";
+Blockly.Msg.LISTS_CREATE_WITH_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
+Blockly.Msg.LISTS_CREATE_WITH_INPUT_WITH = "使用這些值建立列表";
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TOOLTIP = "將一個項目加入到列表中。";
+Blockly.Msg.LISTS_CREATE_WITH_TOOLTIP = "建立一個具備任意數量項目的列表。";
+Blockly.Msg.LISTS_GET_INDEX_FIRST = "第一筆";
+Blockly.Msg.LISTS_GET_INDEX_FROM_END = "倒數第#筆";
+Blockly.Msg.LISTS_GET_INDEX_FROM_START = "#"; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_GET = "取值";
+Blockly.Msg.LISTS_GET_INDEX_GET_REMOVE = "取出並移除";
+Blockly.Msg.LISTS_GET_INDEX_LAST = "最後一筆";
+Blockly.Msg.LISTS_GET_INDEX_RANDOM = "隨機";
+Blockly.Msg.LISTS_GET_INDEX_REMOVE = "移除";
+Blockly.Msg.LISTS_GET_INDEX_TAIL = ""; // untranslated
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FIRST = "返回列表中的第一個項目";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FROM = "返回在列表中的指定位置的項目。";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_LAST = "返回列表中的最後一個項目";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_RANDOM = "返回列表中隨機的一個項目";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST = "移除並返回列表中的第一個項目";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM = "移除並返回列表中的指定位置的項目。";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST = "移除並返回列表中的最後一個項目";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM = "移除並返回列表中的隨機一個項目";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST = "移除列表中的第一個項目";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM = "移除在列表中的指定位置的項目。";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST = "移除列表中的最後一個項目";
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM = "移除列表中隨機的一個項目";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_END = "到 倒數 # 位";
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_START = "到 #";
+Blockly.Msg.LISTS_GET_SUBLIST_END_LAST = "到 最後";
+Blockly.Msg.LISTS_GET_SUBLIST_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-a-sublist"; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_START_FIRST = "從 頭 取得子列表";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_END = "從倒數 # 取得子列表";
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_START = "從 # 取得子列表";
+Blockly.Msg.LISTS_GET_SUBLIST_TAIL = ""; // untranslated
+Blockly.Msg.LISTS_GET_SUBLIST_TOOLTIP = "複製列表中指定的部分。";
+Blockly.Msg.LISTS_INDEX_FROM_END_TOOLTIP = "%1 是最後一個項目。";
+Blockly.Msg.LISTS_INDEX_FROM_START_TOOLTIP = "%1 是第一個項目。";
+Blockly.Msg.LISTS_INDEX_OF_FIRST = "找出 第一個 項目出現";
+Blockly.Msg.LISTS_INDEX_OF_HELPURL = "https://github.com/google/blockly/wiki/Lists#getting-items-from-a-list"; // untranslated
+Blockly.Msg.LISTS_INDEX_OF_LAST = "找出 最後一個 項目出現";
+Blockly.Msg.LISTS_INDEX_OF_TOOLTIP = "返回在列表中的第一個/最後一個匹配項目的索引值。如果未找到則返回 %1。";
+Blockly.Msg.LISTS_INLIST = "自列表";
+Blockly.Msg.LISTS_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Lists#is-empty"; // untranslated
+Blockly.Msg.LISTS_ISEMPTY_TITLE = "%1 值為空";
+Blockly.Msg.LISTS_ISEMPTY_TOOLTIP = "如果該列表為空,則返回 真。";
+Blockly.Msg.LISTS_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Lists#length-of"; // untranslated
+Blockly.Msg.LISTS_LENGTH_TITLE = "長度 %1";
+Blockly.Msg.LISTS_LENGTH_TOOLTIP = "返回列表的長度。";
+Blockly.Msg.LISTS_REPEAT_HELPURL = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
+Blockly.Msg.LISTS_REPEAT_TITLE = "建立列表使用項目 %1 重複 %2 次數";
+Blockly.Msg.LISTS_REPEAT_TOOLTIP = "建立包含指定重複次數的 值 的列表。";
+Blockly.Msg.LISTS_SET_INDEX_HELPURL = "https://github.com/google/blockly/wiki/Lists#in-list--set"; // untranslated
+Blockly.Msg.LISTS_SET_INDEX_INPUT_TO = "為";
+Blockly.Msg.LISTS_SET_INDEX_INSERT = "插入在";
+Blockly.Msg.LISTS_SET_INDEX_SET = "設定";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST = "在列表的起始處添加一個項目";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FROM = "插入在列表中的指定位置的項目。";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_LAST = "在列表的尾端加入一個項目";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM = "在列表中隨機插入項目";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FIRST = "設定列表中的第一個項目";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FROM = "設定在列表中的指定位置的項目。";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_LAST = "設定列表中的最後一個項目";
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_RANDOM = "設定列表中隨機的一個項目";
+Blockly.Msg.LISTS_SORT_HELPURL = "https://github.com/google/blockly/wiki/Lists#sorting-a-list";
+Blockly.Msg.LISTS_SORT_ORDER_ASCENDING = "升冪排序";
+Blockly.Msg.LISTS_SORT_ORDER_DESCENDING = "降冪排序";
+Blockly.Msg.LISTS_SORT_TITLE = "依%1%2%3排序";
+Blockly.Msg.LISTS_SORT_TOOLTIP = "排序清單的複製內容";
+Blockly.Msg.LISTS_SORT_TYPE_IGNORECASE = "依字母排序並忽略大小寫";
+Blockly.Msg.LISTS_SORT_TYPE_NUMERIC = "依數字排序";
+Blockly.Msg.LISTS_SORT_TYPE_TEXT = "依字母排序";
+Blockly.Msg.LISTS_SPLIT_HELPURL = "https://github.com/google/blockly/wiki/Lists#splitting-strings-and-joining-lists"; // untranslated
+Blockly.Msg.LISTS_SPLIT_LIST_FROM_TEXT = "從文本製作列表";
+Blockly.Msg.LISTS_SPLIT_TEXT_FROM_LIST = "從列表拆出文本";
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_JOIN = "串起文本列表成一個文本,由分隔符分隔。";
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_SPLIT = "拆分文本到文本列表,按每個分隔符拆分。";
+Blockly.Msg.LISTS_SPLIT_WITH_DELIMITER = "用分隔符";
+Blockly.Msg.LOGIC_BOOLEAN_FALSE = "否";
+Blockly.Msg.LOGIC_BOOLEAN_HELPURL = "https://github.com/google/blockly/wiki/Logic#values"; // untranslated
+Blockly.Msg.LOGIC_BOOLEAN_TOOLTIP = "返回 真 或 否。";
+Blockly.Msg.LOGIC_BOOLEAN_TRUE = "真";
+Blockly.Msg.LOGIC_COMPARE_HELPURL = "https://zh.wikipedia.org/wiki/不等";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_EQ = "如果這兩個輸入區塊內容相等,返回 真。";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GT = "如果第一個輸入大於第二個輸入,返回 真。";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GTE = "如果第一個輸入大於或等於第二個輸入,返回 真。";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LT = "如果第一個輸入小於第二個輸入,返回 真。";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LTE = "如果第一個輸入是小於或等於第二個輸入,返回 真。";
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_NEQ = "如果這兩個輸入區塊內容不相等,返回 真。";
+Blockly.Msg.LOGIC_NEGATE_HELPURL = "https://github.com/google/blockly/wiki/Logic#not"; // untranslated
+Blockly.Msg.LOGIC_NEGATE_TITLE = "非 %1";
+Blockly.Msg.LOGIC_NEGATE_TOOLTIP = "如果輸入的值是 否,則返回 真。如果輸入的值是 真 返回 否。";
+Blockly.Msg.LOGIC_NULL = "空";
+Blockly.Msg.LOGIC_NULL_HELPURL = "https://en.wikipedia.org/wiki/Nullable_type"; // untranslated
+Blockly.Msg.LOGIC_NULL_TOOLTIP = "返回 空。";
+Blockly.Msg.LOGIC_OPERATION_AND = "且";
+Blockly.Msg.LOGIC_OPERATION_HELPURL = "https://github.com/google/blockly/wiki/Logic#logical-operations"; // untranslated
+Blockly.Msg.LOGIC_OPERATION_OR = "或";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_AND = "如果這兩個輸入值都為 真,則返回 真。";
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_OR = "如果至少一個輸入的值為 真,返回 真。";
+Blockly.Msg.LOGIC_TERNARY_CONDITION = "測試";
+Blockly.Msg.LOGIC_TERNARY_HELPURL = "https://zh.wikipedia.org/wiki/條件運算符";
+Blockly.Msg.LOGIC_TERNARY_IF_FALSE = "如果為非";
+Blockly.Msg.LOGIC_TERNARY_IF_TRUE = "如果為真";
+Blockly.Msg.LOGIC_TERNARY_TOOLTIP = "檢查 'test' 中的條件。如果條件為 真,將返回 '如果為 真' 值 ;否則,返回 '如果為 否' 的值。";
+Blockly.Msg.MATH_ADDITION_SYMBOL = "+"; // untranslated
+Blockly.Msg.MATH_ARITHMETIC_HELPURL = "https://zh.wikipedia.org/wiki/算術";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_ADD = "返回兩個數字的總和。";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE = "返回兩個數字的商。";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MINUS = "返回兩個數字的差。";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MULTIPLY = "返回兩個數字的乘積。";
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_POWER = "返回第二個數字的指數的第一個數字。";
+Blockly.Msg.MATH_CHANGE_HELPURL = "https://zh.wikipedia.org/wiki/加法";
+Blockly.Msg.MATH_CHANGE_TITLE = "修改 %1 自 %2";
+Blockly.Msg.MATH_CHANGE_TOOLTIP = "將數字添加到變數 '%1'。";
+Blockly.Msg.MATH_CONSTANT_HELPURL = "https://zh.wikipedia.org/wiki/數學常數";
+Blockly.Msg.MATH_CONSTANT_TOOLTIP = "返回一個的常見常量: π (3.141......),e (2.718...)、 φ (1.618...)、 開方(2) (1.414......)、 開方(½) (0.707......) 或 ∞ (無窮大)。";
+Blockly.Msg.MATH_CONSTRAIN_HELPURL = "https://en.wikipedia.org/wiki/Clamping_%28graphics%29"; // untranslated
+Blockly.Msg.MATH_CONSTRAIN_TITLE = "限制數字 %1 介於 (低) %2 到 (高) %3";
+Blockly.Msg.MATH_CONSTRAIN_TOOLTIP = "限制數字介於兩個指定的數字之間";
+Blockly.Msg.MATH_DIVISION_SYMBOL = "÷"; // untranslated
+Blockly.Msg.MATH_IS_DIVISIBLE_BY = "可被整除";
+Blockly.Msg.MATH_IS_EVEN = "是偶數";
+Blockly.Msg.MATH_IS_NEGATIVE = "是負值";
+Blockly.Msg.MATH_IS_ODD = "是奇數";
+Blockly.Msg.MATH_IS_POSITIVE = "是正值";
+Blockly.Msg.MATH_IS_PRIME = "是質數";
+Blockly.Msg.MATH_IS_TOOLTIP = "如果數字是偶數,奇數,非負整數,正數、 負數或如果它是可被某數字整除,則返回 真 或 否。";
+Blockly.Msg.MATH_IS_WHOLE = "是非負整數";
+Blockly.Msg.MATH_MODULO_HELPURL = "https://zh.wikipedia.org/wiki/模除";
+Blockly.Msg.MATH_MODULO_TITLE = "取餘數自 %1 ÷ %2";
+Blockly.Msg.MATH_MODULO_TOOLTIP = "回傳兩個數字相除的餘數";
+Blockly.Msg.MATH_MULTIPLICATION_SYMBOL = "×"; // untranslated
+Blockly.Msg.MATH_NUMBER_HELPURL = "https://zh.wikipedia.org/wiki/數";
+Blockly.Msg.MATH_NUMBER_TOOLTIP = "一個數字。";
+Blockly.Msg.MATH_ONLIST_HELPURL = ""; // untranslated
+Blockly.Msg.MATH_ONLIST_OPERATOR_AVERAGE = "平均值 自列表";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MAX = "最大值 自列表";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MEDIAN = "中位數 自列表";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MIN = "最小值 自列表";
+Blockly.Msg.MATH_ONLIST_OPERATOR_MODE = "比較眾數 自列表";
+Blockly.Msg.MATH_ONLIST_OPERATOR_RANDOM = "隨機抽取 自列表";
+Blockly.Msg.MATH_ONLIST_OPERATOR_STD_DEV = "標準差 自列表";
+Blockly.Msg.MATH_ONLIST_OPERATOR_SUM = "總和 自列表";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_AVERAGE = "返回列表中數值的平均值 (算術平均值)。";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MAX = "返回列表中的最大數字。";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MEDIAN = "返回列表中數值的中位數。";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MIN = "返回列表中的最小數字。";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MODE = "返回一個列表中的最常見項目的列表。";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_RANDOM = "從列表中返回一個隨機的項目。";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_STD_DEV = "返回列表中數字的標準差。";
+Blockly.Msg.MATH_ONLIST_TOOLTIP_SUM = "返回列表中的所有數字的總和。";
+Blockly.Msg.MATH_POWER_SYMBOL = "^"; // untranslated
+Blockly.Msg.MATH_RANDOM_FLOAT_HELPURL = "https://zh.wikipedia.org/wiki/隨機數生成器";
+Blockly.Msg.MATH_RANDOM_FLOAT_TITLE_RANDOM = "取隨機分數";
+Blockly.Msg.MATH_RANDOM_FLOAT_TOOLTIP = "返回介於 (包含) 0.0 到 1.0 之間的隨機數。";
+Blockly.Msg.MATH_RANDOM_INT_HELPURL = "https://zh.wikipedia.org/wiki/隨機數生成器";
+Blockly.Msg.MATH_RANDOM_INT_TITLE = "取隨機整數介於 (低) %1 到 %2";
+Blockly.Msg.MATH_RANDOM_INT_TOOLTIP = "回傳限制的數字區間內的隨機數字";
+Blockly.Msg.MATH_ROUND_HELPURL = "https://zh.wikipedia.org/wiki/數值簡化";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUND = "四捨五入";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDDOWN = "無條件捨去";
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDUP = "無條件進位";
+Blockly.Msg.MATH_ROUND_TOOLTIP = "將數字向上或向下舍入。";
+Blockly.Msg.MATH_SINGLE_HELPURL = "https://zh.wikipedia.org/wiki/平方根";
+Blockly.Msg.MATH_SINGLE_OP_ABSOLUTE = "絕對值";
+Blockly.Msg.MATH_SINGLE_OP_ROOT = "開根號";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ABS = "返回指定數字的絕對值。";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_EXP = "返回指定數字指數的 e";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LN = "返回指定數字的自然對數。";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LOG10 = "返回指定數字的對數。";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_NEG = "返回指定數字的 negation。";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_POW10 = "返回指定數字指數的10的冪次。";
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ROOT = "返回指定數字的平方根。";
+Blockly.Msg.MATH_SUBTRACTION_SYMBOL = "-"; // untranslated
+Blockly.Msg.MATH_TRIG_ACOS = "acos"; // untranslated
+Blockly.Msg.MATH_TRIG_ASIN = "asin"; // untranslated
+Blockly.Msg.MATH_TRIG_ATAN = "atan"; // untranslated
+Blockly.Msg.MATH_TRIG_COS = "cos"; // untranslated
+Blockly.Msg.MATH_TRIG_HELPURL = "https://zh.wikipedia.org/wiki/三角函數";
+Blockly.Msg.MATH_TRIG_SIN = "sin"; // untranslated
+Blockly.Msg.MATH_TRIG_TAN = "tan"; // untranslated
+Blockly.Msg.MATH_TRIG_TOOLTIP_ACOS = "返回指定角度的反餘弦值(非弧度)。";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ASIN = "返回指定角度的反正弦值(非弧度)。";
+Blockly.Msg.MATH_TRIG_TOOLTIP_ATAN = "返回指定角度的反正切值。";
+Blockly.Msg.MATH_TRIG_TOOLTIP_COS = "返回指定角度的餘弦值(非弧度)。";
+Blockly.Msg.MATH_TRIG_TOOLTIP_SIN = "返回指定角度的正弦值(非弧度)。";
+Blockly.Msg.MATH_TRIG_TOOLTIP_TAN = "返回指定角度的正切值(非弧度)。";
+Blockly.Msg.NEW_VARIABLE = "建立變數...";
+Blockly.Msg.NEW_VARIABLE_TITLE = "新變數名稱:";
+Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; // untranslated
+Blockly.Msg.PROCEDURES_ALLOW_STATEMENTS = "允許語句";
+Blockly.Msg.PROCEDURES_BEFORE_PARAMS = "與:";
+Blockly.Msg.PROCEDURES_CALLNORETURN_HELPURL = "https://zh.wikipedia.org/wiki/子程式";
+Blockly.Msg.PROCEDURES_CALLNORETURN_TOOLTIP = "執行使用者定義的函數 '%1'。";
+Blockly.Msg.PROCEDURES_CALLRETURN_HELPURL = "https://zh.wikipedia.org/wiki/子程式";
+Blockly.Msg.PROCEDURES_CALLRETURN_TOOLTIP = "執行使用者定義的函數 '%1' 並使用它的回傳值";
+Blockly.Msg.PROCEDURES_CALL_BEFORE_PARAMS = "與:";
+Blockly.Msg.PROCEDURES_CREATE_DO = "建立 '%1'";
+Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT = "描述此函數...";
+Blockly.Msg.PROCEDURES_DEFNORETURN_DO = ""; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE = "流程";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE = "到";
+Blockly.Msg.PROCEDURES_DEFNORETURN_TOOLTIP = "創建一個無回傳值的函數。";
+Blockly.Msg.PROCEDURES_DEFRETURN_HELPURL = "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29"; // untranslated
+Blockly.Msg.PROCEDURES_DEFRETURN_RETURN = "回傳";
+Blockly.Msg.PROCEDURES_DEFRETURN_TOOLTIP = "創建一個有回傳值的函數。";
+Blockly.Msg.PROCEDURES_DEF_DUPLICATE_WARNING = "警告: 此函數中有重複的參數。";
+Blockly.Msg.PROCEDURES_HIGHLIGHT_DEF = "反白顯示函式定義";
+Blockly.Msg.PROCEDURES_IFRETURN_HELPURL = "http://c2.com/cgi/wiki?GuardClause"; // untranslated
+Blockly.Msg.PROCEDURES_IFRETURN_TOOLTIP = "如果值為 真,則返回第二個值。";
+Blockly.Msg.PROCEDURES_IFRETURN_WARNING = "警告: 此積木僅可在定義函式時使用。";
+Blockly.Msg.PROCEDURES_MUTATORARG_TITLE = "變數:";
+Blockly.Msg.PROCEDURES_MUTATORARG_TOOLTIP = "添加函數輸入。";
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TITLE = "參數";
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TOOLTIP = "添加、刪除或重新排列此函數的輸入。";
+Blockly.Msg.REDO = "重試";
+Blockly.Msg.REMOVE_COMMENT = "移除註解";
+Blockly.Msg.RENAME_VARIABLE = "重新命名變數...";
+Blockly.Msg.RENAME_VARIABLE_TITLE = "將所有 \"%1\" 變數重新命名為:";
+Blockly.Msg.TEXT_APPEND_APPENDTEXT = "後加入文字";
+Blockly.Msg.TEXT_APPEND_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_APPEND_TO = "在";
+Blockly.Msg.TEXT_APPEND_TOOLTIP = "將一些文字追加到變數 '%1'。";
+Blockly.Msg.TEXT_CHANGECASE_HELPURL = "https://github.com/google/blockly/wiki/Text#adjusting-text-case"; // untranslated
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_LOWERCASE = "轉成 小寫";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_TITLECASE = "轉成 首字母大寫";
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_UPPERCASE = "轉成 大寫";
+Blockly.Msg.TEXT_CHANGECASE_TOOLTIP = "使用不同的大小寫複製這段文字。";
+Blockly.Msg.TEXT_CHARAT_FIRST = "取第一個字元";
+Blockly.Msg.TEXT_CHARAT_FROM_END = "取得 倒數第 # 個字元";
+Blockly.Msg.TEXT_CHARAT_FROM_START = "取得 字元 #";
+Blockly.Msg.TEXT_CHARAT_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-text"; // untranslated
+Blockly.Msg.TEXT_CHARAT_INPUT_INTEXT = "的字元在字串";
+Blockly.Msg.TEXT_CHARAT_LAST = "取最後一個字元";
+Blockly.Msg.TEXT_CHARAT_RANDOM = "取隨機一個字元";
+Blockly.Msg.TEXT_CHARAT_TAIL = "";
+Blockly.Msg.TEXT_CHARAT_TOOLTIP = "返回位於指定位置的字元。";
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TOOLTIP = "將一個項目加入到字串中。";
+Blockly.Msg.TEXT_CREATE_JOIN_TITLE_JOIN = "加入";
+Blockly.Msg.TEXT_CREATE_JOIN_TOOLTIP = "添加、 刪除或重新排列各區塊來此重新配置這個文字積木。";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_END = "到 倒數第 # 個字元";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_START = "到 字元 #";
+Blockly.Msg.TEXT_GET_SUBSTRING_END_LAST = "到 最後一個字元";
+Blockly.Msg.TEXT_GET_SUBSTRING_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text"; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_INPUT_IN_TEXT = "自字串";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FIRST = "取得一段字串 自 第一個字元";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_END = "取得一段字串自 #";
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_START = "取得一段字串自 #";
+Blockly.Msg.TEXT_GET_SUBSTRING_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_GET_SUBSTRING_TOOLTIP = "返回指定的部分文字。";
+Blockly.Msg.TEXT_INDEXOF_HELPURL = "https://github.com/google/blockly/wiki/Text#finding-text"; // untranslated
+Blockly.Msg.TEXT_INDEXOF_INPUT_INTEXT = "在字串";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_FIRST = "尋找 第一個 出現的字串";
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_LAST = "尋找 最後一個 出現的字串";
+Blockly.Msg.TEXT_INDEXOF_TAIL = ""; // untranslated
+Blockly.Msg.TEXT_INDEXOF_TOOLTIP = "返回在第二個字串中的第一個/最後一個匹配項目的索引值。如果未找到則返回 %1。";
+Blockly.Msg.TEXT_ISEMPTY_HELPURL = "https://github.com/google/blockly/wiki/Text#checking-for-empty-text"; // untranslated
+Blockly.Msg.TEXT_ISEMPTY_TITLE = "%1 為空";
+Blockly.Msg.TEXT_ISEMPTY_TOOLTIP = "如果提供的字串為空,則返回 真。";
+Blockly.Msg.TEXT_JOIN_HELPURL = "https://github.com/google/blockly/wiki/Text#text-creation"; // untranslated
+Blockly.Msg.TEXT_JOIN_TITLE_CREATEWITH = "建立字串使用";
+Blockly.Msg.TEXT_JOIN_TOOLTIP = "通過串起任意數量的項目來建立一段文字。";
+Blockly.Msg.TEXT_LENGTH_HELPURL = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
+Blockly.Msg.TEXT_LENGTH_TITLE = "長度 %1";
+Blockly.Msg.TEXT_LENGTH_TOOLTIP = "返回這串文字的字元數(含空格) 。";
+Blockly.Msg.TEXT_PRINT_HELPURL = "https://github.com/google/blockly/wiki/Text#printing-text"; // untranslated
+Blockly.Msg.TEXT_PRINT_TITLE = "印出 %1";
+Blockly.Msg.TEXT_PRINT_TOOLTIP = "印出指定的文字、 數字或其他值。";
+Blockly.Msg.TEXT_PROMPT_HELPURL = "https://github.com/google/blockly/wiki/Text#getting-input-from-the-user"; // untranslated
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_NUMBER = "輸入數字";
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_TEXT = "輸入文字";
+Blockly.Msg.TEXT_PROMPT_TYPE_NUMBER = "輸入 數字 並顯示提示訊息";
+Blockly.Msg.TEXT_PROMPT_TYPE_TEXT = "輸入 文字 並顯示提示訊息";
+Blockly.Msg.TEXT_TEXT_HELPURL = "https://zh.wikipedia.org/wiki/字串";
+Blockly.Msg.TEXT_TEXT_TOOLTIP = "字元、 單詞或一行文字。";
+Blockly.Msg.TEXT_TRIM_HELPURL = "https://github.com/google/blockly/wiki/Text#trimming-removing-spaces"; // untranslated
+Blockly.Msg.TEXT_TRIM_OPERATOR_BOTH = "消除兩側空格";
+Blockly.Msg.TEXT_TRIM_OPERATOR_LEFT = "消除左側空格";
+Blockly.Msg.TEXT_TRIM_OPERATOR_RIGHT = "消除右側空格";
+Blockly.Msg.TEXT_TRIM_TOOLTIP = "複製這段文字的同時刪除兩端多餘的空格。";
+Blockly.Msg.TODAY = "今天";
+Blockly.Msg.UNDO = "還原";
+Blockly.Msg.VARIABLES_DEFAULT_NAME = "變數";
+Blockly.Msg.VARIABLES_GET_CREATE_SET = "建立 '設定 %1'";
+Blockly.Msg.VARIABLES_GET_HELPURL = "https://github.com/google/blockly/wiki/Variables#get"; // untranslated
+Blockly.Msg.VARIABLES_GET_TOOLTIP = "返回此變數的值。";
+Blockly.Msg.VARIABLES_SET = "賦值 %1 到 %2";
+Blockly.Msg.VARIABLES_SET_CREATE_GET = "建立 '取得 %1'";
+Blockly.Msg.VARIABLES_SET_HELPURL = "https://github.com/google/blockly/wiki/Variables#set"; // untranslated
+Blockly.Msg.VARIABLES_SET_TOOLTIP = "設定此變數,好和輸入值相等。";
+Blockly.Msg.VARIABLE_ALREADY_EXISTS = "一個名為%1的變數已存在。";
+Blockly.Msg.PROCEDURES_DEFRETURN_TITLE = Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE;
+Blockly.Msg.CONTROLS_IF_IF_TITLE_IF = Blockly.Msg.CONTROLS_IF_MSG_IF;
+Blockly.Msg.CONTROLS_WHILEUNTIL_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_MSG_THEN = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_ELSE_TITLE_ELSE = Blockly.Msg.CONTROLS_IF_MSG_ELSE;
+Blockly.Msg.PROCEDURES_DEFRETURN_PROCEDURE = Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE;
+Blockly.Msg.LISTS_GET_SUBLIST_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.LISTS_GET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.PROCEDURES_DEFRETURN_DO = Blockly.Msg.PROCEDURES_DEFNORETURN_DO;
+Blockly.Msg.CONTROLS_IF_ELSEIF_TITLE_ELSEIF = Blockly.Msg.CONTROLS_IF_MSG_ELSEIF;
+Blockly.Msg.LISTS_GET_INDEX_HELPURL = Blockly.Msg.LISTS_INDEX_OF_HELPURL;
+Blockly.Msg.CONTROLS_FOREACH_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_SET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TITLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_APPEND_VARIABLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+Blockly.Msg.LISTS_INDEX_OF_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+Blockly.Msg.PROCEDURES_DEFRETURN_COMMENT = Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT; \ No newline at end of file
diff --git a/blockly/msg/json/ar.json b/blockly/msg/json/ar.json
new file mode 100644
index 0000000..0c2b413
--- /dev/null
+++ b/blockly/msg/json/ar.json
@@ -0,0 +1,316 @@
+{
+ "@metadata": {
+ "authors": [
+ "Meno25",
+ "Test Create account",
+ "아라",
+ "Diyariq",
+ "محمد أحمد عبد الفتاح",
+ "Moud hosny"
+ ]
+ },
+ "VARIABLES_DEFAULT_NAME": "البند",
+ "TODAY": "اليوم",
+ "DUPLICATE_BLOCK": "ادمج",
+ "ADD_COMMENT": "اضافة تعليق",
+ "REMOVE_COMMENT": "ازل التعليق",
+ "EXTERNAL_INPUTS": "ادخال خارجي",
+ "INLINE_INPUTS": "ادخال خطي",
+ "DELETE_BLOCK": "إحذف القطعة",
+ "DELETE_X_BLOCKS": "إحذف قطع %1",
+ "DELETE_ALL_BLOCKS": "حذف كل مناعات %1؟",
+ "COLLAPSE_BLOCK": "إخفاء القطعة",
+ "COLLAPSE_ALL": "إخفاء القطع",
+ "EXPAND_BLOCK": "وسٌّع القطعة",
+ "EXPAND_ALL": "وسٌّع القطع",
+ "DISABLE_BLOCK": "عطّل القطعة",
+ "ENABLE_BLOCK": "أعد تفعيل القطعة",
+ "HELP": "مساعدة",
+ "UNDO": "رجوع",
+ "CHANGE_VALUE_TITLE": "تغيير قيمة:",
+ "RENAME_VARIABLE": "إعادة تسمية المتغير...",
+ "RENAME_VARIABLE_TITLE": "إعادة تسمية كافة المتغيرات '%1' إلى:",
+ "NEW_VARIABLE": "متغير جديد...",
+ "NEW_VARIABLE_TITLE": "اسم المتغير الجديد:",
+ "VARIABLE_ALREADY_EXISTS": "المتغير '%1' موجود بالفعل",
+ "COLOUR_PICKER_HELPURL": "https://ar.wikipedia.org/wiki/Color",
+ "COLOUR_PICKER_TOOLTIP": "اختر لون من اللوحة.",
+ "COLOUR_RANDOM_TITLE": "لون عشوائي",
+ "COLOUR_RANDOM_TOOLTIP": "اختر لون بشكل عشوائي.",
+ "COLOUR_RGB_HELPURL": "http://www.december.com/html/spec/colorper.html",
+ "COLOUR_RGB_TITLE": "لون مع",
+ "COLOUR_RGB_RED": "أحمر",
+ "COLOUR_RGB_GREEN": "أخضر",
+ "COLOUR_RGB_BLUE": "أزرق",
+ "COLOUR_RGB_TOOLTIP": "إنشئ لون بالكمية المحددة من الأحمر, الأخضر والأزرق. بحيث يجب تكون كافة القيم بين 0 و 100.",
+ "COLOUR_BLEND_HELPURL": "http://meyerweb.com/eric/tools/color-blend/",
+ "COLOUR_BLEND_TITLE": "دمج",
+ "COLOUR_BLEND_COLOUR1": "اللون 1",
+ "COLOUR_BLEND_COLOUR2": "اللون 2",
+ "COLOUR_BLEND_RATIO": "نسبة",
+ "COLOUR_BLEND_TOOLTIP": "دمج لونين ببعضهما البعض بنسبة (0.0 - 1.0).",
+ "CONTROLS_REPEAT_HELPURL": "https://en.wikipedia.org/wiki/For_loop",
+ "CONTROLS_REPEAT_TITLE": "كرر %1 مرات",
+ "CONTROLS_REPEAT_INPUT_DO": "نفّذ",
+ "CONTROLS_REPEAT_TOOLTIP": "نفّذ بعض الأوامر عدة مرات.",
+ "CONTROLS_WHILEUNTIL_OPERATOR_WHILE": "اكرّر طالما",
+ "CONTROLS_WHILEUNTIL_OPERATOR_UNTIL": "اكرّر حتى",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_WHILE": "بما ان القيمة صحيحة, نفّذ بعض الأوامر.",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL": "بما ان القيمة خاطئة, نفّذ بعض الأوامر.",
+ "CONTROLS_FOR_TOOLTIP": "اجعل المتغير %1 يأخذ القيم من رقم البداية الى رقم النهاية، قم بالعد داخل المجال المحدد، وطبق أوامر القطع المحددة.",
+ "CONTROLS_FOR_TITLE": "عد بـ %1 من %2 إلى %3 بمعدل %4",
+ "CONTROLS_FOREACH_TITLE": "لكل عنصر %1 في قائمة %2",
+ "CONTROLS_FOREACH_TOOLTIP": "لكل عنصر في قائمة ما، عين المتغير '%1' لهذا الغنصر، ومن ثم نفذ بعض الأوامر.",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK": "اخرج من الحلقة",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE": "استمر ابتداءا من التكرار التالي من الحلقة",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK": "اخرج من الحلقة الحالية.",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE": "تخط ما تبقى من هذه الحلقة، واستمر ابتداءا من التكرار التالي.",
+ "CONTROLS_FLOW_STATEMENTS_WARNING": "تحذير: يمكن استخدام هذه القطعة فقط داخل حلقة.",
+ "CONTROLS_IF_TOOLTIP_1": "إذا كانت قيمة ما تساوي صحيح, إذن قم بتنفيذ أمر ما.",
+ "CONTROLS_IF_TOOLTIP_2": "إذا كانت قيمة ما تساوي \"صحيح\"، إذن قم بتنفيذ أول قطعة من الأوامر. والا ،قم بتنفيذ القطعة الثانية من الأوامر.",
+ "CONTROLS_IF_TOOLTIP_3": "إذا كانت القيمة الأولى تساوي \"صحيح\", إذن قم بتنفيذ القطعة الأولى من الأوامر. والا, إذا كانت القيمة الثانية تساوي \"صحيح\", قم بتنفيذ القطعة الثانية من الأوامر.",
+ "CONTROLS_IF_TOOLTIP_4": "إذا كانت القيمة الأولى تساوي \"صحيح\", إذن قم بتنفيذ القطعة الأولى من الأوامر. والا , إذا كانت القيمة الثانية تساوي \"صحيح\", قم بتنفيذ القطعة الثانية من الأوامر. إذا لم تكن هناك أي قيمة تساوي صحيح, قم بتنفيذ آخر قطعة من الأوامر.",
+ "CONTROLS_IF_MSG_IF": "إذا",
+ "CONTROLS_IF_MSG_ELSEIF": "وإﻻ إذا",
+ "CONTROLS_IF_MSG_ELSE": "والا",
+ "CONTROLS_IF_IF_TOOLTIP": "أضف, إزل, أو أعد ترتيب المقاطع لإعادة تكوين القطعة الشرطية \"إذا\".",
+ "CONTROLS_IF_ELSEIF_TOOLTIP": "إضف شرطا إلى القطعة الشرطية \"إذا\".",
+ "CONTROLS_IF_ELSE_TOOLTIP": "أضف شرط \"نهاية، إجمع\" إلى القطعة الشرطية \"إذا\".",
+ "LOGIC_COMPARE_HELPURL": "https://en.wikipedia.org/wiki/Inequality_(mathematics)",
+ "LOGIC_COMPARE_TOOLTIP_EQ": "يرجع صحيح إذا كان كلا المدخلات مساوية بعضها البعض.",
+ "LOGIC_COMPARE_TOOLTIP_NEQ": "يرجع صحيح إذا كانت كلا المدخلات غير مساوية لبعضها البعض.",
+ "LOGIC_COMPARE_TOOLTIP_LT": "يرجع صحيح إذا كان الإدخال الأول أصغر من الإدخال الثاني.",
+ "LOGIC_COMPARE_TOOLTIP_LTE": "يرجع صحيح إذا كان الإدخال الأول أصغر من أو يساوي الإدخال الثاني.",
+ "LOGIC_COMPARE_TOOLTIP_GT": "يرجع صحيح إذا كان الإدخال الأول أكبر من الإدخال الثاني.",
+ "LOGIC_COMPARE_TOOLTIP_GTE": "يرجع صحيح إذا كان الإدخال الأول أكبر من أو يساوي الإدخال الثاني.",
+ "LOGIC_OPERATION_TOOLTIP_AND": "ترجع صحيح إذا كان كلا المٌدخلات صحيح.",
+ "LOGIC_OPERATION_AND": "و",
+ "LOGIC_OPERATION_TOOLTIP_OR": "ترجع صحيح إذا كان واحد على الأقل من المدخلات صحيح.",
+ "LOGIC_OPERATION_OR": "أو",
+ "LOGIC_NEGATE_TITLE": "ليس من %1",
+ "LOGIC_NEGATE_TOOLTIP": "يرجع صحيح إذا كان الإدخال خاطئ . يرجع خاطئ إذا كان الإدخال صحيح.",
+ "LOGIC_BOOLEAN_TRUE": "صحيح",
+ "LOGIC_BOOLEAN_FALSE": "خاطئ",
+ "LOGIC_BOOLEAN_TOOLTIP": "يرجع صحيح أو خاطئ.",
+ "LOGIC_NULL_HELPURL": "https://en.wikipedia.org/wiki/Nullable_type",
+ "LOGIC_NULL": "ملغى",
+ "LOGIC_NULL_TOOLTIP": "ترجع ملغى.",
+ "LOGIC_TERNARY_HELPURL": "https://en.wikipedia.org/wiki/%3F:",
+ "LOGIC_TERNARY_CONDITION": "اختبار",
+ "LOGIC_TERNARY_IF_TRUE": "إذا كانت العبارة صحيحة",
+ "LOGIC_TERNARY_IF_FALSE": "إذا كانت العبارة خاطئة",
+ "LOGIC_TERNARY_TOOLTIP": "تحقق الشرط في 'الاختبار'. إذا كان الشرط صحيح، يقوم بإرجاع قيمة 'اذا كانت العبارة صحيحة'؛ خلاف ذلك يرجع قيمة 'اذا كانت العبارة خاطئة'.",
+ "MATH_NUMBER_HELPURL": "https://en.wikipedia.org/wiki/Number",
+ "MATH_NUMBER_TOOLTIP": "عدد ما.",
+ "MATH_ADDITION_SYMBOL": "+",
+ "MATH_SUBTRACTION_SYMBOL": "-",
+ "MATH_DIVISION_SYMBOL": "÷",
+ "MATH_MULTIPLICATION_SYMBOL": "×",
+ "MATH_POWER_SYMBOL": "^",
+ "MATH_TRIG_SIN": "جيب",
+ "MATH_TRIG_COS": "جيب تمام",
+ "MATH_TRIG_TAN": "ظل",
+ "MATH_TRIG_ASIN": "asin",
+ "MATH_TRIG_ACOS": "acos",
+ "MATH_TRIG_ATAN": "atan",
+ "MATH_ARITHMETIC_HELPURL": "https://en.wikipedia.org/wiki/Arithmetic",
+ "MATH_ARITHMETIC_TOOLTIP_ADD": "يرجع مجموع الرقمين.",
+ "MATH_ARITHMETIC_TOOLTIP_MINUS": "يرجع الفرق بين الرقمين.",
+ "MATH_ARITHMETIC_TOOLTIP_MULTIPLY": "يرجع حاصل ضرب الرقمين.",
+ "MATH_ARITHMETIC_TOOLTIP_DIVIDE": "يرجع حاصل قسمة الرقمين.",
+ "MATH_ARITHMETIC_TOOLTIP_POWER": "يرجع الرقم الأول مرفوع إلى تربيع الرقم الثاني.",
+ "MATH_SINGLE_HELPURL": "https://en.wikipedia.org/wiki/Square_root",
+ "MATH_SINGLE_OP_ROOT": "الجذر التربيعي",
+ "MATH_SINGLE_TOOLTIP_ROOT": "يرجع الجذر التربيعي للرقم.",
+ "MATH_SINGLE_OP_ABSOLUTE": "مطلق",
+ "MATH_SINGLE_TOOLTIP_ABS": "يرجع القيمة المطلقة لرقم.",
+ "MATH_SINGLE_TOOLTIP_NEG": "يرجع عدد سالب.",
+ "MATH_SINGLE_TOOLTIP_LN": "يرجع اللوغاريتم الطبيعي لرقم.",
+ "MATH_SINGLE_TOOLTIP_LOG10": "يرجع لوغاريتم عدد معين للاساس 10.",
+ "MATH_SINGLE_TOOLTIP_EXP": "يرجع e الذي هو الاس المرفوع للرقم.",
+ "MATH_SINGLE_TOOLTIP_POW10": "يرجع مضروب الرقم 10 في نفسه .",
+ "MATH_TRIG_HELPURL": "https://en.wikipedia.org/wiki/Trigonometric_functions",
+ "MATH_TRIG_TOOLTIP_SIN": "يرجع جيب التمام لدرجة (لا زواية نصف قطرية).",
+ "MATH_TRIG_TOOLTIP_COS": "يرجع جيب التمام لدرجة (لا زواية نصف قطرية).",
+ "MATH_TRIG_TOOLTIP_TAN": "يرجع الظل لدرجة (لا دائرة نصف قطرية).",
+ "MATH_TRIG_TOOLTIP_ASIN": "يرجع قوس الجيب للرقم.",
+ "MATH_TRIG_TOOLTIP_ACOS": "يرجع قوس جيب التمام لرقم.",
+ "MATH_TRIG_TOOLTIP_ATAN": "يرجع قوس الظل للرقم.",
+ "MATH_CONSTANT_HELPURL": "https://en.wikipedia.org/wiki/Mathematical_constant",
+ "MATH_CONSTANT_TOOLTIP": "ير جع واحد من الثوابت الشائعة : π (3.141…), e (2.718…), φ (1.618…), sqrt(2) (1.414…), sqrt(½) (0.707…), or ∞ (infinity).",
+ "MATH_IS_EVEN": "هو زوجي",
+ "MATH_IS_ODD": "هو فرذي",
+ "MATH_IS_PRIME": "هو أولي",
+ "MATH_IS_WHOLE": "هو صحيح",
+ "MATH_IS_POSITIVE": "هو موجب",
+ "MATH_IS_NEGATIVE": "هو سالب",
+ "MATH_IS_DIVISIBLE_BY": "قابل للقسمة",
+ "MATH_IS_TOOLTIP": "تحقق إذا كان عدد ما زوجيا، فرذيا, أوليا، صحيحا،موجبا أو سالبا، أو إذا كان قابلا للقسمة على عدد معين. يرجع صحيح أو خاطئ.",
+ "MATH_CHANGE_HELPURL": "https://en.wikipedia.org/wiki/Programming_idiom#Incrementing_a_counter",
+ "MATH_CHANGE_TITLE": "غير %1 بـ %2",
+ "MATH_CHANGE_TOOLTIP": "إضف رقم إلى متغير '%1'.",
+ "MATH_ROUND_HELPURL": "https://en.wikipedia.org/wiki/Rounding",
+ "MATH_ROUND_TOOLTIP": "تقريب الى اكبر عدد صحيح أو الى اصغر عدد صحيح.",
+ "MATH_ROUND_OPERATOR_ROUND": "تقريب",
+ "MATH_ROUND_OPERATOR_ROUNDUP": "تقريب الى اكبر عدد صحيح",
+ "MATH_ROUND_OPERATOR_ROUNDDOWN": "تقريب إلى اصغر عدد صحيح",
+ "MATH_ONLIST_OPERATOR_SUM": "مجموع القائمة",
+ "MATH_ONLIST_TOOLTIP_SUM": "يرجع مجموع كافة الأرقام الموجودة في القائمة.",
+ "MATH_ONLIST_OPERATOR_MIN": "الحد الأدنى من قائمة",
+ "MATH_ONLIST_TOOLTIP_MIN": "يرجع أصغر رقم في القائمة.",
+ "MATH_ONLIST_OPERATOR_MAX": "الحد الأقصى لقائمة",
+ "MATH_ONLIST_TOOLTIP_MAX": "يرجع أكبر عدد في القائمة.",
+ "MATH_ONLIST_OPERATOR_AVERAGE": "متوسط القائمة",
+ "MATH_ONLIST_TOOLTIP_AVERAGE": "يرجع المعدل (الوسط الحسابي) للقيم الرقمية في القائمة.",
+ "MATH_ONLIST_OPERATOR_MEDIAN": "متوسط القائمة",
+ "MATH_ONLIST_TOOLTIP_MEDIAN": "يرجع وسيط العدد في القائمة.",
+ "MATH_ONLIST_OPERATOR_MODE": "منوال القائمة",
+ "MATH_ONLIST_TOOLTIP_MODE": "يرجع قائمة من العنصر أو العناصر الأكثر شيوعاً في القائمة.",
+ "MATH_ONLIST_OPERATOR_STD_DEV": "الانحراف المعياري للقائمة",
+ "MATH_ONLIST_TOOLTIP_STD_DEV": "يرجع الانحراف المعياري للقائمة.",
+ "MATH_ONLIST_OPERATOR_RANDOM": "عنصر عشوائي من القائمة",
+ "MATH_ONLIST_TOOLTIP_RANDOM": "يرجع عنصر عشوائي من القائمة.",
+ "MATH_MODULO_HELPURL": "https://en.wikipedia.org/wiki/Modulo_operation",
+ "MATH_MODULO_TITLE": "باقي %1 ÷ %2",
+ "MATH_MODULO_TOOLTIP": "يرجع الباقي من قسمة الرقمين.",
+ "MATH_CONSTRAIN_TITLE": "تقيد %1 منخفض %2 مرتفع %3",
+ "MATH_CONSTRAIN_TOOLTIP": "تقييد العددليكون بين الحدود المحددة (ضمناً).",
+ "MATH_RANDOM_INT_HELPURL": "https://en.wikipedia.org/wiki/Random_number_generation",
+ "MATH_RANDOM_INT_TITLE": " عدد صحيح عشوائي من %1 إلى %2",
+ "MATH_RANDOM_INT_TOOLTIP": "يرجع عدد صحيح عشوائي بين حدين محددين, ضمنيا.",
+ "MATH_RANDOM_FLOAT_HELPURL": "https://en.wikipedia.org/wiki/Random_number_generation",
+ "MATH_RANDOM_FLOAT_TITLE_RANDOM": "كسر عشوائي",
+ "MATH_RANDOM_FLOAT_TOOLTIP": "يرجع جزء عشوائي بين 0.0 (ضمنياً) و 1.0 (خارجيا).",
+ "TEXT_TEXT_HELPURL": "https://en.wikipedia.org/wiki/String_(computer_science)",
+ "TEXT_TEXT_TOOLTIP": "حرف أو كلمة أو سطر من النص.",
+ "TEXT_JOIN_TITLE_CREATEWITH": "انشئ نص مع",
+ "TEXT_JOIN_TOOLTIP": "أنشئ جزء من النص بالصاق أي عدد من العناصر ببعضها البعض.",
+ "TEXT_CREATE_JOIN_TITLE_JOIN": "الانضمام إلى",
+ "TEXT_CREATE_JOIN_TOOLTIP": "أضف, إحذف, أو أعد ترتيب المقاطع لإعادة تكوين النص من القطع التالية.",
+ "TEXT_CREATE_JOIN_ITEM_TOOLTIP": "إضف عنصر إلى النص.",
+ "TEXT_APPEND_TO": "إلى",
+ "TEXT_APPEND_APPENDTEXT": "إلصق نص",
+ "TEXT_APPEND_TOOLTIP": "إلصق جزءا من النص إلى متغير '%1'.",
+ "TEXT_LENGTH_TITLE": "طول %1",
+ "TEXT_LENGTH_TOOLTIP": "تقوم بإرجاع عدد الاحرف (بما في ذلك الفراغات) في النص المقدم.",
+ "TEXT_ISEMPTY_TITLE": "%1 فارغ",
+ "TEXT_ISEMPTY_TOOLTIP": "يرجع \"صحيح\" إذا كان النص المقدم فارغ.",
+ "TEXT_INDEXOF_TOOLTIP": "تقوم بإرجاع مؤشر التواجد الأول/الأخير للنص الأول في النص الثاني. تقوم بإرجاع %1 إذا لم يتم العثور على النص.",
+ "TEXT_INDEXOF_INPUT_INTEXT": "في النص",
+ "TEXT_INDEXOF_OPERATOR_FIRST": "ابحث عن التواجد الأول للنص",
+ "TEXT_INDEXOF_OPERATOR_LAST": "ابحث عن التواجد الأخير للنص",
+ "TEXT_CHARAT_INPUT_INTEXT": "في النص",
+ "TEXT_CHARAT_FROM_START": "الحصول على الحرف #",
+ "TEXT_CHARAT_FROM_END": "الحصول على الحرف # من نهاية",
+ "TEXT_CHARAT_FIRST": "احصل على الحرف الأول",
+ "TEXT_CHARAT_LAST": "احصل على آخر حرف",
+ "TEXT_CHARAT_RANDOM": "الحصول على حرف عشوائي",
+ "TEXT_CHARAT_TOOLTIP": "يرجع حرف ما في الموضع المحدد.",
+ "TEXT_GET_SUBSTRING_TOOLTIP": "يرجع جزء معين من النص.",
+ "TEXT_GET_SUBSTRING_INPUT_IN_TEXT": "في النص",
+ "TEXT_GET_SUBSTRING_START_FROM_START": "الحصول على سلسلة حروف فرعية من الحرف #",
+ "TEXT_GET_SUBSTRING_START_FROM_END": "الحصول على سلسلة حروف فرعية من الحرف # من نهاية",
+ "TEXT_GET_SUBSTRING_START_FIRST": "الحصول على سلسلة فرعية من الحرف الأول",
+ "TEXT_GET_SUBSTRING_END_FROM_START": "إلى حرف #",
+ "TEXT_GET_SUBSTRING_END_FROM_END": "إلى حرف # من نهاية",
+ "TEXT_GET_SUBSTRING_END_LAST": "إلى آخر حرف",
+ "TEXT_CHANGECASE_TOOLTIP": "يرجع نسخة من النص في حالة مختلفة.",
+ "TEXT_CHANGECASE_OPERATOR_UPPERCASE": "الى حروف كبيرة",
+ "TEXT_CHANGECASE_OPERATOR_LOWERCASE": "الى حروف صغيرة",
+ "TEXT_CHANGECASE_OPERATOR_TITLECASE": "الى حروف العنوان",
+ "TEXT_TRIM_TOOLTIP": "يرجع نسخة من النص مع حذف من أحد أو كلا الفراغات من أطرافه.",
+ "TEXT_TRIM_OPERATOR_BOTH": "إزالة الفراغات من كلا الجانبين",
+ "TEXT_TRIM_OPERATOR_LEFT": "إزالة الفراغات من الجانب الأيسر من",
+ "TEXT_TRIM_OPERATOR_RIGHT": "إزالة الفراغات من الجانب الأيمن من",
+ "TEXT_PRINT_TITLE": "اطبع %1",
+ "TEXT_PRINT_TOOLTIP": "اطبع النص المحدد أو العدد أو قيمة أخرى.",
+ "TEXT_PROMPT_TYPE_TEXT": "انتظر ادخال المستخدم لنص ما مع اظهار رسالة",
+ "TEXT_PROMPT_TYPE_NUMBER": "انتظر ادخال المستخدم لرقم ما مع اظهار رسالة",
+ "TEXT_PROMPT_TOOLTIP_NUMBER": "انتظر ادخال المستخذم لرقم ما.",
+ "TEXT_PROMPT_TOOLTIP_TEXT": "انتظر ادخال المستخدم لنص ما.",
+ "LISTS_CREATE_EMPTY_HELPURL": "https://github.com/google/blockly/wiki/Lists#create-empty-list",
+ "LISTS_CREATE_EMPTY_TITLE": "إنشئ قائمة فارغة",
+ "LISTS_CREATE_EMPTY_TOOLTIP": "تقوم بإرجاع قائمة، طولها 0, لا تحتوي على أية سجلات البيانات",
+ "LISTS_CREATE_WITH_TOOLTIP": "أنشيء قائمة من أي عدد من العناصر.",
+ "LISTS_CREATE_WITH_INPUT_WITH": "أتشئ قائمة مع",
+ "LISTS_CREATE_WITH_CONTAINER_TITLE_ADD": "قائمة",
+ "LISTS_CREATE_WITH_CONTAINER_TOOLTIP": "أضف, إزل, أو أعد ترتيب المقاطع لإعادة تكوين القطعة قائمة القطع التالية.",
+ "LISTS_CREATE_WITH_ITEM_TOOLTIP": "أضف عنصرا إلى القائمة.",
+ "LISTS_REPEAT_TOOLTIP": "انشئ قائمة تتألف من القيمة المعطاة متكررة لعدد محدد من المرات.",
+ "LISTS_REPEAT_TITLE": "إنشئ قائمة مع العنصر %1 %2 مرات",
+ "LISTS_LENGTH_TITLE": "الطول من %1",
+ "LISTS_LENGTH_TOOLTIP": "تقوم بإرجاع طول قائمة.",
+ "LISTS_ISEMPTY_TITLE": "%1 فارغ",
+ "LISTS_ISEMPTY_TOOLTIP": "يرجع \"صحيح\" إذا كانت القائمة فارغة.",
+ "LISTS_INLIST": "في قائمة",
+ "LISTS_INDEX_OF_FIRST": "ابحث على على التواجد الأول للعنصر",
+ "LISTS_INDEX_OF_LAST": "ابحث على التواجد الأخير للعنصر",
+ "LISTS_INDEX_OF_TOOLTIP": "تقوم بإرجاع مؤشر التواجد الأول/الأخير في القائمة. تقوم بإرجاع %1 إذا لم يتم العثور على النص.",
+ "LISTS_GET_INDEX_GET": "احصل على",
+ "LISTS_GET_INDEX_GET_REMOVE": "احصل على و ازل",
+ "LISTS_GET_INDEX_REMOVE": "ازل",
+ "LISTS_GET_INDEX_FROM_START": "#",
+ "LISTS_GET_INDEX_FROM_END": "# من نهاية",
+ "LISTS_GET_INDEX_FIRST": "أول",
+ "LISTS_GET_INDEX_LAST": "أخير",
+ "LISTS_GET_INDEX_RANDOM": "عشوائي",
+ "LISTS_INDEX_FROM_START_TOOLTIP": "%1 هو العنصر الأول.",
+ "LISTS_INDEX_FROM_END_TOOLTIP": "%1 هو العنصر الأخير.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_FROM": "يقوم بإرجاع العنصر في الموضع المحدد في قائمة ما.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_FIRST": "يرجع العنصر الأول في قائمة ما.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_LAST": "يرجع العنصر الأخير في قائمة ما.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_RANDOM": "يرجع عنصرا عشوائيا في قائمة.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM": "يزيل ويقوم بإرجاع العنصر في الموضع المحدد في قائمة ما.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST": "يزيل ويرجع العنصر الأول في قائمة.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST": "يزيل ويرجع العنصر الأخير في قائمة ما.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM": "يزيل و يرجع عنصرا عشوائيا في قائمة ما.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM": "يزيل العنصر الموجود في الموضع المحدد في قائمة ما.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST": "يزيل العنصر الأول في قائمة ما.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST": "يزيل العنصر الأخير في قائمة ما.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM": "يزيل عنصرا عشوائيا في قائمة ما.",
+ "LISTS_SET_INDEX_SET": "تعيين",
+ "LISTS_SET_INDEX_INSERT": "أدخل في",
+ "LISTS_SET_INDEX_INPUT_TO": "مثل",
+ "LISTS_SET_INDEX_TOOLTIP_SET_FROM": "يحدد العنصر في الموضع المحدد في قائمة ما.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_FIRST": "يحدد العنصر الأول في قائمة.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_LAST": "يحدد العنصر الأخير في قائمة.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_RANDOM": "يحدد عنصرا عشوائيا في قائمة.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_FROM": "يقوم بإدخال العنصر في الموضع المحدد في قائمة ما.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST": "يقوم بإدراج هذا العنصر في بداية قائمة.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_LAST": "ألصق هذا العنصر بنهاية قائمة.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM": "ادخل العنصر عشوائياً في القائمة.",
+ "LISTS_GET_SUBLIST_START_FROM_START": "احصل على قائمة فرعية من #",
+ "LISTS_GET_SUBLIST_START_FROM_END": "احصل على قائمة فرعية من # من نهاية",
+ "LISTS_GET_SUBLIST_START_FIRST": "احصل على قائمة فرعية من الأول",
+ "LISTS_GET_SUBLIST_END_FROM_START": "إلى #",
+ "LISTS_GET_SUBLIST_END_FROM_END": "إلى # من نهاية",
+ "LISTS_GET_SUBLIST_END_LAST": "إلى الأخير",
+ "LISTS_GET_SUBLIST_TOOLTIP": "يقوم بإنشاء نسخة من الجزء المحدد من قائمة ما.",
+ "LISTS_SPLIT_LIST_FROM_TEXT": "إعداد قائمة من النصوص",
+ "LISTS_SPLIT_TEXT_FROM_LIST": "إعداد نص من القائمة",
+ "VARIABLES_GET_TOOLTIP": "يرجع قيمة هذا المتغير.",
+ "VARIABLES_GET_CREATE_SET": "انشئ 'التعيين %1'",
+ "VARIABLES_SET": "تعيين %1 إلى %2",
+ "VARIABLES_SET_TOOLTIP": "تعيين هذا المتغير لتكون مساوية للقيمة المدخلة.",
+ "VARIABLES_SET_CREATE_GET": "انشئ 'احصل على %1'",
+ "PROCEDURES_DEFNORETURN_HELPURL": "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29",
+ "PROCEDURES_DEFNORETURN_TITLE": "إلى",
+ "PROCEDURES_DEFNORETURN_PROCEDURE": "القيام بشيء ما",
+ "PROCEDURES_BEFORE_PARAMS": "مع:",
+ "PROCEDURES_CALL_BEFORE_PARAMS": "مع:",
+ "PROCEDURES_DEFNORETURN_TOOLTIP": "انشئ دالة بدون مخرجات .",
+ "PROCEDURES_DEFRETURN_HELPURL": "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29",
+ "PROCEDURES_DEFRETURN_RETURN": "يرجع",
+ "PROCEDURES_DEFRETURN_TOOLTIP": "انشئ دالة مع المخرجات.",
+ "PROCEDURES_DEF_DUPLICATE_WARNING": "تحذير: هذه الدالة تحتوي على معلمات مكررة.",
+ "PROCEDURES_CALLNORETURN_HELPURL": "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29",
+ "PROCEDURES_CALLNORETURN_TOOLTIP": "تشغيل الدالة المعرفة من قبل المستخدم '%1'.",
+ "PROCEDURES_CALLRETURN_HELPURL": "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29",
+ "PROCEDURES_CALLRETURN_TOOLTIP": "تشغيل الدالة المعرفة من قبل المستخدم %1 واستخدام مخرجاتها.",
+ "PROCEDURES_MUTATORCONTAINER_TITLE": "المدخلات",
+ "PROCEDURES_MUTATORARG_TITLE": "اسم الإدخال:",
+ "PROCEDURES_HIGHLIGHT_DEF": "تسليط الضوء على تعريف الدالة",
+ "PROCEDURES_CREATE_DO": "إنشئ '%1'",
+ "PROCEDURES_IFRETURN_TOOLTIP": "إذا كانت القيمة صحيحة ، اذان قم بارجاع القيمة الثانية.",
+ "PROCEDURES_IFRETURN_WARNING": "تحذير:هذه القطعة تستخدم فقط داخل تعريف دالة."
+}
diff --git a/blockly/msg/json/az.json b/blockly/msg/json/az.json
new file mode 100644
index 0000000..1463692
--- /dev/null
+++ b/blockly/msg/json/az.json
@@ -0,0 +1,296 @@
+{
+ "@metadata": {
+ "authors": [
+ "Cekli829",
+ "AZISS"
+ ]
+ },
+ "VARIABLES_DEFAULT_NAME": "element",
+ "TODAY": "Bugün",
+ "DUPLICATE_BLOCK": "Dublikat",
+ "ADD_COMMENT": "Şərh əlavə et",
+ "REMOVE_COMMENT": "Şərhi sil",
+ "EXTERNAL_INPUTS": "Xarici girişlər",
+ "INLINE_INPUTS": "Sətiriçi girişlər",
+ "DELETE_BLOCK": "Bloku sil",
+ "DELETE_X_BLOCKS": "%1 bloku sil",
+ "DELETE_ALL_BLOCKS": "Bütün %1 blok silinsin?",
+ "CLEAN_UP": "Blokları təmizlə",
+ "COLLAPSE_BLOCK": "Bloku yığ",
+ "COLLAPSE_ALL": "Blokları yığ",
+ "EXPAND_BLOCK": "Bloku aç",
+ "EXPAND_ALL": "Blokları aç",
+ "DISABLE_BLOCK": "Bloku söndür",
+ "ENABLE_BLOCK": "Bloku aktivləşdir",
+ "HELP": "Kömək",
+ "CHANGE_VALUE_TITLE": "Qiyməti dəyiş:",
+ "RENAME_VARIABLE": "Dəyişənin adını dəyiş...",
+ "RENAME_VARIABLE_TITLE": "Bütün '%1' dəyişənlərinin adını buna dəyiş:",
+ "NEW_VARIABLE": "Yeni dəyişən...",
+ "NEW_VARIABLE_TITLE": "Yeni dəyişənin adı:",
+ "COLOUR_PICKER_HELPURL": "https://az.wikipedia.org/wiki/Rəng",
+ "COLOUR_PICKER_TOOLTIP": "Palitradan bir rəng seçin.",
+ "COLOUR_RANDOM_TITLE": "təsadüfi rəng",
+ "COLOUR_RANDOM_TOOLTIP": "Təsadüfi bir rəng seçin.",
+ "COLOUR_RGB_HELPURL": "http://www.december.com/html/spec/colorper.html",
+ "COLOUR_RGB_TITLE": "rənglə",
+ "COLOUR_RGB_RED": "qırmızı",
+ "COLOUR_RGB_GREEN": "yaşıl",
+ "COLOUR_RGB_BLUE": "mavi",
+ "COLOUR_RGB_TOOLTIP": "Qırmızı, yaşıl və mavinin göstərilən miqdarı ilə bir rəng düzəlt. Bütün qiymətlər 0 ilə 100 arasında olmalıdır.",
+ "COLOUR_BLEND_HELPURL": "http://meyerweb.com/eric/tools/color-blend/",
+ "COLOUR_BLEND_TITLE": "qarışdır",
+ "COLOUR_BLEND_COLOUR1": "rəng 1",
+ "COLOUR_BLEND_COLOUR2": "rəng 2",
+ "COLOUR_BLEND_RATIO": "nisbət",
+ "COLOUR_BLEND_TOOLTIP": "İki rəngi verilmiş nisbətdə (0,0 - 1,0) qarışdırır.",
+ "CONTROLS_REPEAT_HELPURL": "https://az.wikipedia.org/wiki/For_loop",
+ "CONTROLS_REPEAT_TITLE": "%1 dəfə təkrar et",
+ "CONTROLS_REPEAT_INPUT_DO": "icra et",
+ "CONTROLS_REPEAT_TOOLTIP": "Bəzi əmrləri bir neçə dəfə yerinə yetir.",
+ "CONTROLS_WHILEUNTIL_OPERATOR_WHILE": "təkrar et, hələ ki",
+ "CONTROLS_WHILEUNTIL_OPERATOR_UNTIL": "təkrar et, ta ki",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_WHILE": "Hələ ki, qiymət \"doğru\"dur, bəzi əmrləri yerinə yetir.",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL": "Hələ ki, qiymət \"yalan\"dır, bəzi əmrləri yerinə yetir.",
+ "CONTROLS_FOR_TOOLTIP": "\"%1\" dəyişəni başlanğıc ədəddən son ədədə qədər göstərilən aralıqla qiymətlər aldıqca göstərilən blokları yerinə yetir.",
+ "CONTROLS_FOR_TITLE": "say: %1 %2 ilə başlayıb, %3 qiymətinə kimi %4 qədər dəyiş",
+ "CONTROLS_FOREACH_TITLE": "hər element üçün %1 siyahıda %2",
+ "CONTROLS_FOREACH_TOOLTIP": "Siyahıdakı hər element üçün \"%1\" dəyişənini elementə mənimsət və bundan sonra bəzi əmrləri yerinə yetir.",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK": "dövrdən çıx",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE": "dövrün növbəti addımından davam et",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK": "Cari dövrdən çıx.",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE": "Bu dövrün qalanını ötür və növbəti addımla davam et.",
+ "CONTROLS_FLOW_STATEMENTS_WARNING": "Xəbərdarlıq: Bu blok ancaq dövr daxilində istifadə oluna bilər.",
+ "CONTROLS_IF_TOOLTIP_1": "Əgər qiymət doğrudursa, onda bəzi əmrləri yerinə yetir.",
+ "CONTROLS_IF_TOOLTIP_2": "Əgər qiymət doğrudursa, onda birinci əmrlər blokunu yerinə yetir. Əks halda isə ikinci əmrlər blokunu yerinə yetir.",
+ "CONTROLS_IF_TOOLTIP_3": "Əgər birinci qiymət doğrudursa, onda birinci əmrlər blokunu yerinə yetir. Əks halda əgər ikinci qiymət doğrudursa, onda ikinci əmrlər blokunu yerinə yetir.",
+ "CONTROLS_IF_TOOLTIP_4": "Əgər birinci qiymət doğrudursa, onda birinci əmrlər blokunu yerinə yetir. Əks halda əgər ikinci qiymət doğrudursa, onda ikinci əmrlər blokunu yerinə yetir. Əgər qiymətlərdən heç biri doğru deyilsə, onda axırıncı əmrlər blokunu yerinə yetir.",
+ "CONTROLS_IF_MSG_IF": "əgər",
+ "CONTROLS_IF_MSG_ELSEIF": "əks halda əgər",
+ "CONTROLS_IF_MSG_ELSE": "əks halda",
+ "CONTROLS_IF_IF_TOOLTIP": "Bu \"əgər\" blokunu dəyişdirmək üçün bölümlərin yenisini əlavə et, sil və ya yerini dəyiş.",
+ "CONTROLS_IF_ELSEIF_TOOLTIP": "\"Əgər\" blokuna bir şərt əlavə et.",
+ "CONTROLS_IF_ELSE_TOOLTIP": "\"Əgər\" blokuna qalan bütün halları əhatə edəb son bir şərt əlavə et.",
+ "LOGIC_COMPARE_HELPURL": "https://az.wikipedia.org/wiki/bərabərsizlik_(riyazi)",
+ "LOGIC_COMPARE_TOOLTIP_EQ": "Girişlər bir birinə bərabərdirsə \"doğru\" cavabını qaytarır.",
+ "LOGIC_COMPARE_TOOLTIP_NEQ": "Girişlər bərabər deyillərsə \"doğru\" cavabını qaytarır.",
+ "LOGIC_COMPARE_TOOLTIP_LT": "Birinci giriş ikincidən kiçikdirsə \"doğru\" cavabını qaytarır.",
+ "LOGIC_COMPARE_TOOLTIP_LTE": "Birinci giriş ikincidən kiçik və ya bərarbərdirsə \"doğru\" cavabını qaytarır.",
+ "LOGIC_COMPARE_TOOLTIP_GT": "Birinci giriş ikincidən böyükdürsə \"doğru\" cavabını qaytarır.",
+ "LOGIC_COMPARE_TOOLTIP_GTE": "Birinci giriş ikincidən böyük və ya bərarbərdirsə \"doğru\" cavabını qaytarır.",
+ "LOGIC_OPERATION_TOOLTIP_AND": "Hər iki giriş \"doğru\"-dursa \"doğru\" cavabını qaytarır.",
+ "LOGIC_OPERATION_AND": "və",
+ "LOGIC_OPERATION_TOOLTIP_OR": "Girişlərdən heç olmasa biri \"doğru\"-dursa \"doğru\" cavabını qaytarır.",
+ "LOGIC_OPERATION_OR": "və ya",
+ "LOGIC_NEGATE_TITLE": "%1 deyil",
+ "LOGIC_NEGATE_TOOLTIP": "Giriş \"yalan\"-dursa \"doğru\" cavabını qaytarır. Giriş \"doğru\"-dursa \"səhf\" cavabını qaytarır.",
+ "LOGIC_BOOLEAN_TRUE": "doğru",
+ "LOGIC_BOOLEAN_FALSE": "səhf",
+ "LOGIC_BOOLEAN_TOOLTIP": "\"doğru\" və ya \"səhf\" cavanını qaytarır.",
+ "LOGIC_NULL": "boş",
+ "LOGIC_NULL_TOOLTIP": "Boş cavab qaytarır.",
+ "LOGIC_TERNARY_CONDITION": "test",
+ "LOGIC_TERNARY_IF_TRUE": "əgər doğrudursa",
+ "LOGIC_TERNARY_IF_FALSE": "əgər səhfdirsə",
+ "LOGIC_TERNARY_TOOLTIP": "'Yoxla' əmrindəki şərtə nəzər yetirin. Əgər şərt \"doğru\"-dursa \"əgər doğru\", əks halda isə \"əgər yalan\" cavabını qaytarır.",
+ "MATH_NUMBER_HELPURL": "https://az.wikipedia.org/wiki/Ədəd",
+ "MATH_NUMBER_TOOLTIP": "Ədəd.",
+ "MATH_ADDITION_SYMBOL": "+",
+ "MATH_SUBTRACTION_SYMBOL": "-",
+ "MATH_DIVISION_SYMBOL": "÷",
+ "MATH_MULTIPLICATION_SYMBOL": "×",
+ "MATH_POWER_SYMBOL": "^",
+ "MATH_TRIG_SIN": "sin",
+ "MATH_TRIG_COS": "cos",
+ "MATH_TRIG_TAN": "tg",
+ "MATH_TRIG_ASIN": "arcsin",
+ "MATH_TRIG_ACOS": "arccos",
+ "MATH_TRIG_ATAN": "arctan",
+ "MATH_ARITHMETIC_HELPURL": "https://az.wikipedia.org/wiki/Hesab",
+ "MATH_ARITHMETIC_TOOLTIP_ADD": "İki ədədin cəmini qaytarır.",
+ "MATH_ARITHMETIC_TOOLTIP_MINUS": "İki ədədin fərqini qaytarır.",
+ "MATH_ARITHMETIC_TOOLTIP_MULTIPLY": "İki ədədin hasilini verir.",
+ "MATH_ARITHMETIC_TOOLTIP_DIVIDE": "İki ədədin nisbətini qaytarır.",
+ "MATH_ARITHMETIC_TOOLTIP_POWER": "Birinci ədədin ikinci ədəd dərəcəsindən qüvvətini qaytarır.",
+ "MATH_SINGLE_HELPURL": "https://az.wikipedia.org/wiki/Kvadrat_kökləri",
+ "MATH_SINGLE_OP_ROOT": "kvadrat kök",
+ "MATH_SINGLE_TOOLTIP_ROOT": "Ədədin kvadrat kökünü qaytarır.",
+ "MATH_SINGLE_OP_ABSOLUTE": "modul",
+ "MATH_SINGLE_TOOLTIP_ABS": "Ədədin modulunu qaytarır.",
+ "MATH_SINGLE_TOOLTIP_NEG": "Ədədin əksini qaytarır.",
+ "MATH_SINGLE_TOOLTIP_LN": "Ədədin natural loqarifmini tapır.",
+ "MATH_SINGLE_TOOLTIP_LOG10": "Ədədin 10-cu dərəcədən loqarifmini tapır.",
+ "MATH_SINGLE_TOOLTIP_EXP": "e sabitinin verilmiş ədədə qüvvətini qaytarır.",
+ "MATH_SINGLE_TOOLTIP_POW10": "10-un verilmiş ədədə qüvvətini qaytarır.",
+ "MATH_TRIG_HELPURL": "https://az.wikipedia.org/wiki/Triqonometrik_funksiyalar",
+ "MATH_TRIG_TOOLTIP_SIN": "Dərəcənin sinusunu qaytar (radianın yox).",
+ "MATH_TRIG_TOOLTIP_COS": "Dərəcənin kosinusunu qaytarır (radianın yox).",
+ "MATH_TRIG_TOOLTIP_TAN": "Dərəcənin tangensini qaytar (radianın yox).",
+ "MATH_TRIG_TOOLTIP_ASIN": "Ədədin arcsinusunu qaytarır.",
+ "MATH_TRIG_TOOLTIP_ACOS": "Ədədin arccosinusunu qaytarır.",
+ "MATH_TRIG_TOOLTIP_ATAN": "Ədədin arctanqensini qaytarır.",
+ "MATH_CONSTANT_HELPURL": "https://az.wikipedia.org/wiki/Riyazi_sabitlər",
+ "MATH_CONSTANT_TOOLTIP": "Ümumi sabitlərdən birini qaytarır π (3.141…), e (2.718…), φ (1.618…), sqrt(2) (1.414…), sqrt(½) (0.707…), və ya ∞ (sonsuzluq).",
+ "MATH_IS_EVEN": "cütdür",
+ "MATH_IS_ODD": "təkdir",
+ "MATH_IS_PRIME": "sadədir",
+ "MATH_IS_WHOLE": "tamdır",
+ "MATH_IS_POSITIVE": "müsətdir",
+ "MATH_IS_NEGATIVE": "mənfidir",
+ "MATH_IS_DIVISIBLE_BY": "bölünür",
+ "MATH_IS_TOOLTIP": "Bir ədədin cüt, tək, sadə, tam, müsbət, mənfi olmasını və ya müəyyən bir ədədə bölünməsini yoxlayır. \"Doğru\" və ya \"yalan\" qiymətini qaytarır.",
+ "MATH_CHANGE_TITLE": "dəyiş: %1 buna: %2",
+ "MATH_CHANGE_TOOLTIP": "'%1' dəyişəninin üzərinə bir ədəd artır.",
+ "MATH_ROUND_TOOLTIP": "Ədədi aşağı və ya yuxari yuvarlaqşdır.",
+ "MATH_ROUND_OPERATOR_ROUND": "yuvarlaqlaşdır",
+ "MATH_ROUND_OPERATOR_ROUNDUP": "yuxarı yuvarlaqlaşdır",
+ "MATH_ROUND_OPERATOR_ROUNDDOWN": "aşağı yuvarlaqlaşdır",
+ "MATH_ONLIST_OPERATOR_SUM": "Siyahının cəmi",
+ "MATH_ONLIST_TOOLTIP_SUM": "Siyahıdakı bütün ədədlərin cəmini qaytarır.",
+ "MATH_ONLIST_OPERATOR_MIN": "siyahının minimumu",
+ "MATH_ONLIST_TOOLTIP_MIN": "Siyahıdaki ən kiçik ədədi qaytarır.",
+ "MATH_ONLIST_OPERATOR_MAX": "siyahının maksimumu",
+ "MATH_ONLIST_TOOLTIP_MAX": "Siyahıdaki ən böyük elementi qaytarır.",
+ "MATH_ONLIST_OPERATOR_AVERAGE": "siyahının ədədi ortası",
+ "MATH_ONLIST_TOOLTIP_AVERAGE": "Siyahıdaki ədədlərin ədədi ortasını qaytarır.",
+ "MATH_ONLIST_OPERATOR_MEDIAN": "siyahının medianı",
+ "MATH_ONLIST_TOOLTIP_MEDIAN": "Siyahının median elementini qaytarır.",
+ "MATH_ONLIST_OPERATOR_MODE": "Siyahı modları( Ən çox rastlaşılan elementləri)",
+ "MATH_ONLIST_TOOLTIP_MODE": "Siyahıdaki ən çox rastlanan element(lər)dən ibarət siyahı qaytarır.",
+ "MATH_ONLIST_OPERATOR_STD_DEV": "Siyahının standart deviasiyası",
+ "MATH_ONLIST_TOOLTIP_STD_DEV": "Siyahının standart deviasiyasını qaytarır.",
+ "MATH_ONLIST_OPERATOR_RANDOM": "siyahıdan təsadüfi seçilmiş bir element",
+ "MATH_ONLIST_TOOLTIP_RANDOM": "Siyahıdan təsadüfi bir element qaytarır.",
+ "MATH_MODULO_TITLE": "%1 ÷ %2 bölməsinin qalığı",
+ "MATH_MODULO_TOOLTIP": "İki ədədin nisbətindən alınan qalığı qaytarır.",
+ "MATH_CONSTRAIN_TITLE": "%1 üçün ən aşağı %2, ən yuxarı %3 olmağı tələb et",
+ "MATH_CONSTRAIN_TOOLTIP": "Bir ədədin verilmiş iki ədəd arasında olmasını tələb edir (sərhədlər də daxil olmaqla).",
+ "MATH_RANDOM_INT_TITLE": "%1 ilə %2 arasından təsadüfi tam ədəd",
+ "MATH_RANDOM_INT_TOOLTIP": "Verilmiş iki ədəd arasından (ədədrlər də daxil olmaqla) təsadüfi bir tam ədəd qaytarır.",
+ "MATH_RANDOM_FLOAT_TITLE_RANDOM": "təsadüfi kəsr",
+ "MATH_RANDOM_FLOAT_TOOLTIP": "0.0 (daxil olmaqla) və 1.0 (daxil olmamaqla) ədədlərinin arasından təsadüfi bir kəsr ədəd qaytarır.",
+ "TEXT_TEXT_TOOLTIP": "Mətndəki hərf, söz və ya sətir.",
+ "TEXT_JOIN_TITLE_CREATEWITH": "Verilmişlərlə mətn yarat",
+ "TEXT_JOIN_TOOLTIP": "İxtiyari sayda elementlərinin birləşməsi ilə mətn parçası yarat.",
+ "TEXT_CREATE_JOIN_TITLE_JOIN": "birləşdir",
+ "TEXT_CREATE_JOIN_TOOLTIP": "Bu mətn blokunu yenidən konfigurasiya etmək üçün bölmələri əlavə edin, silin və ya yerlərini dəyişin.",
+ "TEXT_CREATE_JOIN_ITEM_TOOLTIP": "Mətnə bir element əlavə et.",
+ "TEXT_APPEND_TO": "bu mətnin sonuna:",
+ "TEXT_APPEND_APPENDTEXT": "bu mətni əlavə et:",
+ "TEXT_APPEND_TOOLTIP": "'%1' dəyişəninin sonuna nəsə əlavə et.",
+ "TEXT_LENGTH_TITLE": "%1 - ın uzunluğu",
+ "TEXT_LENGTH_TOOLTIP": "Verilmiş mətndəki hərflərin(sözlər arası boşluqlar sayılmaqla) sayını qaytarır.",
+ "TEXT_ISEMPTY_TITLE": "%1 boşdur",
+ "TEXT_ISEMPTY_TOOLTIP": "Verilmiş mətn boşdursa, doğru qiymətini qaytarır.",
+ "TEXT_INDEXOF_TOOLTIP": "Birinci mətnin ikinci mətndə ilk/son rastlaşma indeksini qaytarır. Əgər rastlaşma baş verməzsə, %1 qaytarır.",
+ "TEXT_INDEXOF_INPUT_INTEXT": "mətndə",
+ "TEXT_INDEXOF_OPERATOR_FIRST": "Bu mətn ilə ilk rastlaşmanı tap:",
+ "TEXT_INDEXOF_OPERATOR_LAST": "Bu mətn ilə son rastlaşmanı tap:",
+ "TEXT_CHARAT_INPUT_INTEXT": "növbəti mətndə",
+ "TEXT_CHARAT_FROM_START": "bu nömrəli hərfi götür",
+ "TEXT_CHARAT_FROM_END": "axırdan bu nömrəli hərfi götür",
+ "TEXT_CHARAT_FIRST": "birinci hərfi götür",
+ "TEXT_CHARAT_LAST": "axırıncı hərfi götür",
+ "TEXT_CHARAT_RANDOM": "təsadüfi hərf götür",
+ "TEXT_CHARAT_TOOLTIP": "Göstərilən mövqedəki hərfi qaytarır.",
+ "TEXT_GET_SUBSTRING_TOOLTIP": "Mətnin təyin olunmuş hissəsini qaytarır.",
+ "TEXT_GET_SUBSTRING_INPUT_IN_TEXT": "mətndə",
+ "TEXT_GET_SUBSTRING_START_FROM_START": "Mətnin surətini bu nömrəli hərfdən",
+ "TEXT_GET_SUBSTRING_START_FROM_END": "Mətnin surətini sondan bu nömrəli # hərfdən",
+ "TEXT_GET_SUBSTRING_START_FIRST": "Mətnin surətini ilk hərfdən",
+ "TEXT_GET_SUBSTRING_END_FROM_START": "bu nömrəli hərfə qədər",
+ "TEXT_GET_SUBSTRING_END_FROM_END": "axırdan bu nömrəli hərfə qədər",
+ "TEXT_GET_SUBSTRING_END_LAST": "son hərfə qədər",
+ "TEXT_CHANGECASE_TOOLTIP": "Mətndə hərflərin böyük-kiçikliyini dəyiş.",
+ "TEXT_CHANGECASE_OPERATOR_UPPERCASE": "BÖYÜK HƏRFLƏRLƏ",
+ "TEXT_CHANGECASE_OPERATOR_LOWERCASE": "kiçik hərflərlə",
+ "TEXT_CHANGECASE_OPERATOR_TITLECASE": "Baş Hərflərlə",
+ "TEXT_TRIM_TOOLTIP": "Mətnin hər iki və ya yalnız bir tərəfdən olan boşluqları pozulmuş surətini qaytarın.",
+ "TEXT_TRIM_OPERATOR_BOTH": "Boşluqları hər iki tərəfdən pozun",
+ "TEXT_TRIM_OPERATOR_LEFT": "Boşluqlari yalnız sol tərəfdən pozun",
+ "TEXT_TRIM_OPERATOR_RIGHT": "Boşluqları yalnız sağ tərəfdən pozun",
+ "TEXT_PRINT_TITLE": "%1 - i çap elə",
+ "TEXT_PRINT_TOOLTIP": "Təyin olunmuş mətn, ədəd və ya hər hansı bir başqa elementi çap elə.",
+ "TEXT_PROMPT_TYPE_TEXT": "İstifadəçiyə mətn daxil etməsi üçün sorğunu/tələbi ismarıc ilə göndərin",
+ "TEXT_PROMPT_TYPE_NUMBER": "İstifadəçiyə ədəd daxil etməsi üçün sorğunu/tələbi ismarıc kimi göndərin",
+ "TEXT_PROMPT_TOOLTIP_NUMBER": "İstifadəçiyə ədəd daxil etməsi üçün sorğu/tələb göndərin.",
+ "TEXT_PROMPT_TOOLTIP_TEXT": "İstifadəçiyə mətn daxil etməsi üçün sorğu/tələb göndərin.",
+ "LISTS_CREATE_EMPTY_TITLE": "boş siyahı düzəlt",
+ "LISTS_CREATE_EMPTY_TOOLTIP": "Heç bir verilən qeyd olunmamış, uzunluğu 0 olan bir siyahı verir",
+ "LISTS_CREATE_WITH_TOOLTIP": "İstənilən ölçülü siyahı yaradın.",
+ "LISTS_CREATE_WITH_INPUT_WITH": "bunlardan siyahı düzəlt",
+ "LISTS_CREATE_WITH_CONTAINER_TITLE_ADD": "siyahı",
+ "LISTS_CREATE_WITH_CONTAINER_TOOLTIP": "Bu siyahı blokunu yenidən konfigurasiya etmək üçün bölmələri əlavə edin, silin və ya yerlərini dəyişin.",
+ "LISTS_CREATE_WITH_ITEM_TOOLTIP": "Siyahıya element əlavə edin.",
+ "LISTS_REPEAT_TOOLTIP": "Təyin olunmuş elementin/qiymətin təyin olunmuş sayda təkrarlandığı siyahını yaradır.",
+ "LISTS_REPEAT_TITLE": "%1 elementinin %2 dəfə təkrarlandığı siyahı düzəlt",
+ "LISTS_LENGTH_TITLE": "%1 siyahısının uzunluğu",
+ "LISTS_LENGTH_TOOLTIP": "Siyahının uzunluğunu verir.",
+ "LISTS_ISEMPTY_TITLE": "%1 boşdur",
+ "LISTS_ISEMPTY_TOOLTIP": "Siyahı boşdursa \"doğru\" cavabını qaytarır.",
+ "LISTS_INLIST": "siyahıda",
+ "LISTS_INDEX_OF_FIRST": "Element ilə ilk rastlaşma indeksini müəyyən edin",
+ "LISTS_INDEX_OF_LAST": "Element ilə son rastlaşma indeksini müəyyən edin",
+ "LISTS_INDEX_OF_TOOLTIP": "Siyahıda element ilə ilk/son rastlaşma indeksini qaytarır. Əgər tekst siyahıda tapılmazsa, %1 qaytarılır.",
+ "LISTS_GET_INDEX_GET": "götür",
+ "LISTS_GET_INDEX_GET_REMOVE": "götür və sil",
+ "LISTS_GET_INDEX_REMOVE": "yığışdır",
+ "LISTS_GET_INDEX_FROM_START": "#",
+ "LISTS_GET_INDEX_FROM_END": "axırdan # nömrəli",
+ "LISTS_GET_INDEX_FIRST": "birinci",
+ "LISTS_GET_INDEX_LAST": "axırıncı",
+ "LISTS_GET_INDEX_RANDOM": "təsadüfi",
+ "LISTS_INDEX_FROM_START_TOOLTIP": "%1 ilk elementdir.",
+ "LISTS_INDEX_FROM_END_TOOLTIP": "%1 son elementdir.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_FROM": "Siyahıdan təyin olunmuş indeksli elementi qaytarır.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_FIRST": "Siyahının ilk elementini qaytarır.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_LAST": "Siyahının son elementini qaytarır.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_RANDOM": "Siyahıdan hər hansı təsadüfi elementi qaytarır.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM": "Siyahıdan təyin olunmuş indeksli elementi silir və qaytarır.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST": "Siyahıdan ilk elementi silir və qaytarır.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST": "Siyahıdan son elementi silir və qaytarır.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM": "Siyahıdan təsadufi elementi silir və qaytarır.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM": "Siyahıdan təyin olunmuş indeksli elementi silir.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST": "Siyahıdan ilk elementi silir.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST": "Siyahıdan son elementi silir.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM": "Siyahıdan təsadüfi bir elementi silir.",
+ "LISTS_SET_INDEX_SET": "təyin et",
+ "LISTS_SET_INDEX_INSERT": "daxil et",
+ "LISTS_SET_INDEX_INPUT_TO": "Kimi",
+ "LISTS_SET_INDEX_TOOLTIP_SET_FROM": "Siyahının göstərilən yerdəki elementini təyin edir.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_FIRST": "Siyahıda birinci elementi təyin edir.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_LAST": "Siyahının sonuncu elementini təyin edir.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_RANDOM": "Siyahının təsadüfi seçilmiş bir elementini təyin edir.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_FROM": "Elementi siyahıda göstərilən yerə daxil edir.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST": "Elementi siyahının əvvəlinə daxil edir.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_LAST": "Elementi siyahının sonuna artırır.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM": "Elementi siyahıda təsadüfi seçilmiş bir yerə atır.",
+ "LISTS_GET_SUBLIST_START_FROM_START": "# - dən alt-siyahını alın",
+ "LISTS_GET_SUBLIST_START_FROM_END": "# sonuncudan alt-siyahını alın",
+ "LISTS_GET_SUBLIST_START_FIRST": "Birincidən alt-siyahını alın",
+ "LISTS_GET_SUBLIST_END_FROM_START": "# nömrəliyə",
+ "LISTS_GET_SUBLIST_END_FROM_END": "sondan # nömrəliyə",
+ "LISTS_GET_SUBLIST_END_LAST": "Sonuncuya",
+ "LISTS_GET_SUBLIST_TOOLTIP": "Siyahının təyin olunmuş hissəsinin surətini yaradın.",
+ "VARIABLES_GET_TOOLTIP": "Bu dəyişənin qiymətini qaytarır.",
+ "VARIABLES_GET_CREATE_SET": "'%1 - i təyin et' - i yarat",
+ "VARIABLES_SET": "%1 - i bu qiymət ilə təyin et: %2",
+ "VARIABLES_SET_TOOLTIP": "Bu dəyişəni daxil edilmiş qiymətə bərabər edir.",
+ "VARIABLES_SET_CREATE_GET": "'%1 - i götür' - ü yarat",
+ "PROCEDURES_DEFNORETURN_TITLE": "icra et:",
+ "PROCEDURES_DEFNORETURN_PROCEDURE": "hansısa əməliyyat",
+ "PROCEDURES_BEFORE_PARAMS": "ilə:",
+ "PROCEDURES_CALL_BEFORE_PARAMS": "ilə:",
+ "PROCEDURES_DEFNORETURN_TOOLTIP": "Nəticəsi olmayan funksiya yaradır.",
+ "PROCEDURES_DEFRETURN_RETURN": "qaytar",
+ "PROCEDURES_DEFRETURN_TOOLTIP": "Nəticəsi olan funksiya yaradır.",
+ "PROCEDURES_DEF_DUPLICATE_WARNING": "Xəbərdarlıq: Bu funksiyanın təkrar olunmuş parametrləri var.",
+ "PROCEDURES_CALLNORETURN_TOOLTIP": "Yaradılmış '%1' funksiyasını çalışdır.",
+ "PROCEDURES_CALLRETURN_TOOLTIP": "Yaradılmış '%1' funksiyasını çalışdır və nəticəni istifadə et.",
+ "PROCEDURES_MUTATORCONTAINER_TITLE": "girişlər",
+ "PROCEDURES_MUTATORARG_TITLE": "Giriş adı:",
+ "PROCEDURES_HIGHLIGHT_DEF": "Funksiyanın təyinatını vurğula",
+ "PROCEDURES_CREATE_DO": "'%1' yarat",
+ "PROCEDURES_IFRETURN_TOOLTIP": "Əgər bir dəyər \"doğru\"-dursa onda ikinci dəyəri qaytar.",
+ "PROCEDURES_IFRETURN_WARNING": "Xəbərdarlıq: Bu blok ancaq bir funksiyanın təyinatı daxilində işlədilə bilər."
+}
diff --git a/blockly/msg/json/ba.json b/blockly/msg/json/ba.json
new file mode 100644
index 0000000..e1cc00c
--- /dev/null
+++ b/blockly/msg/json/ba.json
@@ -0,0 +1,210 @@
+{
+ "@metadata": {
+ "authors": [
+ "Alfiya55",
+ "Ләйсән",
+ "Айсар",
+ "Кутлубаева Кунсулу Закиевна",
+ "Азат Хәлилов",
+ "Танзиля Кутлугильдина"
+ ]
+ },
+ "VARIABLES_DEFAULT_NAME": "элемент",
+ "TODAY": "Бөгөн",
+ "DUPLICATE_BLOCK": "Күсереп алырға",
+ "ADD_COMMENT": "Фекер өҫтәргә",
+ "REMOVE_COMMENT": "Аңлатмаларҙы юйырға",
+ "EXTERNAL_INPUTS": "Тышҡы өҫтәлмә",
+ "INLINE_INPUTS": "Эске өҫтәлмә",
+ "DELETE_BLOCK": "Блокты юйҙырырға",
+ "DELETE_X_BLOCKS": " %1 блокты юйҙырырға",
+ "DELETE_ALL_BLOCKS": "Бөтә %1 блоктарҙы юйырғамы?",
+ "CLEAN_UP": "Блоктарҙы таҙартырға",
+ "COLLAPSE_BLOCK": "Блокты төрөргә",
+ "COLLAPSE_ALL": "Блоктарҙы төрөргә",
+ "EXPAND_BLOCK": "Блокты йәйергә",
+ "EXPAND_ALL": "Блоктарҙы йәйергә",
+ "DISABLE_BLOCK": "Блокты һүндерергә",
+ "ENABLE_BLOCK": "Блокты тоҡандырырға",
+ "HELP": "Ярҙам",
+ "UNDO": "Кире алырға",
+ "REDO": "документтарҙы үҙгәртергә",
+ "CHANGE_VALUE_TITLE": "Мәғәнәне үҙгәртегеҙ:",
+ "RENAME_VARIABLE": "Үҙгәреүсәндең исемен алмаштырырға...",
+ "RENAME_VARIABLE_TITLE": "Бөтә '%1' үҙгәреүсәндәрҙең исемен ошолай алмаштырырға:",
+ "NEW_VARIABLE": "Яңы үҙгәреүсән...",
+ "NEW_VARIABLE_TITLE": "Яңы үҙгәреүсәндең исеме:",
+ "COLOUR_PICKER_HELPURL": "https://en.wikipedia.org/wiki/Төҫ",
+ "COLOUR_PICKER_TOOLTIP": "Палитранан төҫ һайлағыҙ.",
+ "COLOUR_RANDOM_TITLE": "осраҡлы төҫ",
+ "COLOUR_RANDOM_TOOLTIP": "Төҫтө осраҡлылыҡ буйынса һайлай.",
+ "COLOUR_RGB_TITLE": "ошонан төҫ",
+ "COLOUR_RGB_RED": "ҡыҙылдан",
+ "COLOUR_RGB_GREEN": "йәшелдән",
+ "COLOUR_RGB_BLUE": "зәңгәр",
+ "COLOUR_RGB_TOOLTIP": "Бирелгән нисбәттәрҙә ҡыҙылдан, йәшелдән һәм зәңгәрҙән төҫ барлыҡҡа килә. Бөтә мәғәнәләр 0 менән 100 араһында булырға тейеш.",
+ "COLOUR_BLEND_TITLE": "ҡатнаштырырға",
+ "COLOUR_BLEND_COLOUR1": "1-се төҫ",
+ "COLOUR_BLEND_COLOUR2": "2-се төҫ",
+ "COLOUR_BLEND_RATIO": "1-се төҫтөң өлөшө",
+ "COLOUR_BLEND_TOOLTIP": "Ике төҫтө бирелгән нисбәттә болғата (0.0 - 1.0).",
+ "CONTROLS_REPEAT_HELPURL": "https://en.wikipedia.org/wiki/Цикл_(программалау)",
+ "CONTROLS_REPEAT_TITLE": " %1 тапҡыр ҡабатларға",
+ "CONTROLS_REPEAT_INPUT_DO": "үтәргә",
+ "CONTROLS_REPEAT_TOOLTIP": "Командаларҙы бер нисә тапҡыр үтәй.",
+ "CONTROLS_WHILEUNTIL_OPERATOR_WHILE": "ҡабатларға, әлегә",
+ "CONTROLS_WHILEUNTIL_OPERATOR_UNTIL": "ҡабатларға, әлегә юҡ",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_WHILE": "Мәғәнә дөрөҫ булғанда, командаларҙы ҡабатлай.",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL": "Мәғәнә ялған булғанда, командаларҙы ҡабатлай.",
+ "CONTROLS_FOR_TOOLTIP": "Үҙгәреүсәнгә башынан аҙағына тиклем тәғәйен аҙым менән %1 мәғәнәне бирә һәм күрһәтелгән командаларҙы үтәй.",
+ "CONTROLS_FOREACH_TITLE": "һәр элемент өсөн %1 исемлектә %2",
+ "CONTROLS_FOREACH_TOOLTIP": "Исемлектәге һәр элемент өсөн үҙгәреүсәнгә элементтың '%1' мәғәнәһен бирә һәм күрһәтелгән командаларҙы үтәй.",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK": "циклдан сығырға",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE": "циклдың киләһе аҙымына күсергә",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK": "Был циклды өҙә.",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE": "Циклдың ҡалдығын төшөрөп ҡалдыра һәм киләһе аҙымға күсә.",
+ "CONTROLS_FLOW_STATEMENTS_WARNING": "Иҫкәртеү: был блок цикл эсендә генә ҡулланыла ала.",
+ "CONTROLS_IF_TOOLTIP_1": "Мәғәнә дөрөҫ булғанда, командаларҙы үтәй.",
+ "CONTROLS_IF_TOOLTIP_2": "Шарт дөрөҫ булғанда, командаларҙың беренсе блогын үтәй. Улай булмаһа, командаларҙың икенсе блогы үтәлә.",
+ "CONTROLS_IF_TOOLTIP_3": "Беренсе шарт дөрөҫ булһа, командаларҙың беренсе блогын үтәй. Икенсе шарт дөрөҫ булһа, командаларҙың икенсе блогын үтәй.",
+ "CONTROLS_IF_TOOLTIP_4": "Беренсе шарт дөрөҫ булһа, командаларҙың беренсе блогын үтәй. Әгәр икенсе шарт дөрөҫ булһа, командаларҙың икенсе блогын үтәй. Бер шарт та дөрөҫ булмаһа, команда блоктарының һуңғыһын үтәй.",
+ "CONTROLS_IF_MSG_IF": "әгәр",
+ "CONTROLS_IF_MSG_ELSEIF": "юғиһә, әгәр",
+ "CONTROLS_IF_MSG_ELSE": "юғиһә",
+ "CONTROLS_IF_IF_TOOLTIP": "\"Әгәр\" блогын ҡабаттан төҙөү өсөн киҫәктәрҙе өҫтәгеҙ, юйҙырығыҙ, урындарын алмаштырығыҙ.",
+ "CONTROLS_IF_ELSEIF_TOOLTIP": "\"Әгәр\" блогына шарт өҫтәй",
+ "CONTROLS_IF_ELSE_TOOLTIP": "Бер шарт та дөрөҫ булмаған осраҡҡа йомғаҡлау ярҙамсы блогын өҫтәргә.",
+ "LOGIC_COMPARE_HELPURL": "https://en.wikipedia.org/wiki/Inequality_(математика)",
+ "LOGIC_COMPARE_TOOLTIP_EQ": "Өҫтәмәләр тигеҙ булһа, дөрөҫ мәғәнәһен кире ҡайтара.",
+ "LOGIC_COMPARE_TOOLTIP_NEQ": "Өҫтәмәләр тигеҙ булмаһа, дөрөҫ мәғәнәһен кире ҡайтара.",
+ "LOGIC_COMPARE_TOOLTIP_LT": "Беренсе өҫтәмә икенсеһенән бәләкәйерәк булһа, дөрөҫ мәғәнәһен кире ҡайтара.",
+ "LOGIC_COMPARE_TOOLTIP_LTE": "Беренсе өҫтәмә икенсеһенән бәләкәйерәк йә уға тиң булһа, дөрөҫ мәғәнәһен кире ҡайтара.",
+ "LOGIC_COMPARE_TOOLTIP_GT": "Беренсе өҫтәмә икенсеһенән ҙурыраҡ булһа, дөрөҫ мәғәнәһен кире ҡайтара.",
+ "LOGIC_COMPARE_TOOLTIP_GTE": "Беренсе өҫтәмә икенсеһенән бәләкәйерәк йә уға тиң булһа, дөрөҫ мәғәнәһен кире ҡайтара.",
+ "LOGIC_OPERATION_TOOLTIP_AND": "Әгәр ҙә ике өҫтәлмә лә тап килһә, дөрөҫ аңлатманы кире ҡайтара.",
+ "LOGIC_OPERATION_AND": "һәм",
+ "LOGIC_OPERATION_TOOLTIP_OR": "Өҫтәлмәләрҙең береһе генә дөрөҫ булһа, дөрөҫ аңлатманы ҡайтара.",
+ "LOGIC_OPERATION_OR": "йәки",
+ "LOGIC_NEGATE_TITLE": "%1 түгел",
+ "LOGIC_NEGATE_TOOLTIP": "Өҫтәлмә ялған булһа, дөрөҫ аңлатманы ҡайтара. Өҫтәлмә дөрөҫ булһа, ялған аңлатманы ҡайтара.",
+ "LOGIC_BOOLEAN_TRUE": "дөрөҫ",
+ "LOGIC_BOOLEAN_FALSE": "ялған",
+ "LOGIC_BOOLEAN_TOOLTIP": "Дөрөҫ йәки ялғанды ҡайтара.",
+ "LOGIC_NULL": "нуль",
+ "LOGIC_NULL_TOOLTIP": "Нулде ҡайтара.",
+ "LOGIC_TERNARY_CONDITION": "тест",
+ "LOGIC_TERNARY_IF_TRUE": "әгәр дөрөҫ булһа",
+ "LOGIC_TERNARY_IF_FALSE": "әгәр ялған булһа",
+ "LOGIC_TERNARY_TOOLTIP": "Һайлау шартын тикшерә. Әгәр ул дөрөҫ булһа, беренсе мәғәнәне, хата булһа, икенсе мәғәнәне ҡайтара.",
+ "MATH_NUMBER_HELPURL": "https://ba.wikipedia.org/wiki/Һан",
+ "MATH_NUMBER_TOOLTIP": "Рәт.",
+ "MATH_ARITHMETIC_HELPURL": "https://ba.wikipedia.org/wiki/Арифметика",
+ "MATH_ARITHMETIC_TOOLTIP_ADD": "Ике һандың суммаһын ҡайтара.",
+ "MATH_ARITHMETIC_TOOLTIP_MINUS": "Ике һандың айырмаһын ҡайтара.",
+ "MATH_ARITHMETIC_TOOLTIP_MULTIPLY": "Ике һандың ҡабатландығын ҡайтара.",
+ "MATH_ARITHMETIC_TOOLTIP_DIVIDE": "Ике һандың бүлендеген ҡайтара.",
+ "MATH_ARITHMETIC_TOOLTIP_POWER": "Дәрәжәгә күтәрелгән икенсе һандан тәүгеһенә ҡайтара.",
+ "MATH_SINGLE_HELPURL": "https://ba.wikipedia.org/wiki/Квадрат_тамыр",
+ "MATH_SINGLE_OP_ROOT": "квадрат тамыр",
+ "MATH_SINGLE_TOOLTIP_ROOT": "Һандың квадрат тамырын ҡайтара.",
+ "MATH_SINGLE_OP_ABSOLUTE": "абсолют",
+ "MATH_SINGLE_TOOLTIP_ABS": "Һандың модулен ҡайтара.",
+ "MATH_SINGLE_TOOLTIP_NEG": "Кире һанды ҡайтара.",
+ "MATH_SINGLE_TOOLTIP_LN": "Һандың натураль логаритмын ҡайтара.",
+ "MATH_SINGLE_TOOLTIP_LOG10": "Һандың унынсы логаритмын ҡайтара.",
+ "MATH_SINGLE_TOOLTIP_EXP": "Күрһәтелгән дәрәжәлә ҡайтара.",
+ "MATH_SINGLE_TOOLTIP_POW10": "Күрһәтелгән 10-сы дәрәжәлә ҡайтара.",
+ "MATH_TRIG_HELPURL": "https://ba..wikipedia.org/wiki/Тригонометрик_функциялар",
+ "MATH_TRIG_TOOLTIP_SIN": "Мөйөштөң синусын градустарҙа ҡайтара.",
+ "MATH_TRIG_TOOLTIP_COS": "Мөйөштөң косинусын градустарҙа ҡайтара.",
+ "MATH_TRIG_TOOLTIP_TAN": "Мөйөштөң тангенсын градустарҙа күрһәтә.",
+ "MATH_TRIG_TOOLTIP_ASIN": "Арксинусты градустарҙа күрһәтә.",
+ "MATH_TRIG_TOOLTIP_ACOS": "Арккосинусты градустарҙа күрһәтә.",
+ "MATH_TRIG_TOOLTIP_ATAN": "Арктангенсты градустарҙа күрһәтә.",
+ "MATH_CONSTANT_HELPURL": "https://ba.wikipedia.org/wiki/Математик_константа",
+ "MATH_CONSTANT_TOOLTIP": "Таралған константаның береһен күрһәтә: π (3.141...), e (2.718...), φ (1.618...), sqrt(2) (1.414...), sqrt(½) (0.707...) йәки ∞ (сикһеҙлек).",
+ "MATH_IS_EVEN": "тағы",
+ "MATH_IS_ODD": "сәйер",
+ "MATH_IS_PRIME": "ябай",
+ "MATH_IS_WHOLE": "бөтөн",
+ "MATH_IS_POSITIVE": "ыңғай",
+ "MATH_IS_NEGATIVE": "тиҫкәре",
+ "MATH_IS_DIVISIBLE_BY": "бүленә",
+ "MATH_IS_TOOLTIP": "Һандың йоп, таҡ, ябай, бөтөн, ыңғай, кире йәки билдәле һанға ҡарата ниндәй булыуын тикшерә. Дөрөҫ йә ялған мәғәнәһен күрһәтә.",
+ "MATH_CHANGE_HELPURL": "https://ba.wikipedia.org/wiki/Programming_idiom#Incrementing_a_counter",
+ "MATH_CHANGE_TITLE": "%1 тан %2 ҡа арттырырға",
+ "MATH_CHANGE_TOOLTIP": "Үҙгәреүсән һанға өҫтәй '%1'.",
+ "MATH_ROUND_HELPURL": "https://ba.wikipedia.org/wiki/Т=Түңәрәкләү",
+ "MATH_ROUND_TOOLTIP": "Һанды ҙурына йә бәләкәйенә тиклем түңәрәкләргә.",
+ "MATH_ROUND_OPERATOR_ROUND": "түңәрәк",
+ "MATH_ROUND_OPERATOR_ROUNDUP": "ҙурына тиклем түңәрәкләргә",
+ "MATH_ROUND_OPERATOR_ROUNDDOWN": "бәләкәйгә тиклем түңәрәкләргә",
+ "MATH_ONLIST_OPERATOR_SUM": "исемлек суммаһы",
+ "MATH_ONLIST_TOOLTIP_SUM": "Исемлектәрҙәге һандар суммаһын күрһәтә.",
+ "MATH_ONLIST_OPERATOR_MIN": "Исемлектәге иң бәләкәйе",
+ "MATH_ONLIST_TOOLTIP_MIN": "Исемлектәге иң бәләкәй һанды күрһәтә.",
+ "MATH_ONLIST_OPERATOR_MAX": "исемлектәге иң ҙуры",
+ "MATH_ONLIST_TOOLTIP_MAX": "Исемлектең иң ҙур һанын күрһәтә.",
+ "MATH_ONLIST_OPERATOR_AVERAGE": "исемлектең уртаса арифметик дәүмәле",
+ "MATH_ONLIST_TOOLTIP_AVERAGE": "Исемлектең уртаса арифметик дәүмәле күрһәтә.",
+ "MATH_ONLIST_OPERATOR_MEDIAN": "исемлек медианаһы",
+ "MATH_ONLIST_TOOLTIP_MEDIAN": "Исемлек медианаһын күрһәтә.",
+ "MATH_ONLIST_OPERATOR_MODE": "исемлек модалары",
+ "MATH_ONLIST_TOOLTIP_MODE": "Исемлектең иң күп осраған элементтарын күрһәтә.",
+ "MATH_ONLIST_OPERATOR_STD_DEV": "исемлекте стандарт кире ҡағыу",
+ "MATH_ONLIST_TOOLTIP_STD_DEV": "Исемлекте стандарт кире ҡағыуҙы күрһәтә.",
+ "MATH_ONLIST_OPERATOR_RANDOM": "исемлектең осраҡлы элементы",
+ "MATH_ONLIST_TOOLTIP_RANDOM": "Исемлектең осраҡлы элементын күрһәтә.",
+ "MATH_MODULO_HELPURL": "https://ba.wikipedia.org/wiki/Ҡалдыҡ_менән_бүлеү",
+ "MATH_MODULO_TITLE": "ҡалдыҡ %1 : %2 араһында",
+ "MATH_MODULO_TOOLTIP": "Ике һанды бүлеү ҡалдығын күрһәтә.",
+ "MATH_CONSTRAIN_TITLE": "сикләргә %1 аҫтан %2 өҫтән %3",
+ "MATH_CONSTRAIN_TOOLTIP": "Һанды аҫтан һәм өҫтән сикләй (сиктәгеләрен индереп).",
+ "MATH_RANDOM_INT_HELPURL": "https://ba.wikipedia.org/wiki/Ялған осраҡлы_һандар_генераторы",
+ "MATH_RANDOM_INT_TITLE": "%1-ҙән %2-гә тиклем осраҡлы бөтөн һан",
+ "MATH_RANDOM_INT_TOOLTIP": "Ике бирелгән һан араһындағы (үҙҙәрен дә индереп) осраҡлы һанды күрһәтә.",
+ "MATH_RANDOM_FLOAT_HELPURL": "https://ba.wikipedia.org/wiki/Ялған осраҡлы_һандар_генераторы",
+ "MATH_RANDOM_FLOAT_TITLE_RANDOM": "0 (үҙен дә индереп) һәм 1 араһындағы осраҡлы һан",
+ "TEXT_TEXT_TOOLTIP": "Текстың хәрефе, һүҙе йәки юлы.",
+ "TEXT_JOIN_TITLE_CREATEWITH": "текст төҙөргә",
+ "TEXT_JOIN_TOOLTIP": "Элементтарҙың теләһә күпме һанын берләштереп текст фрагментын булдыра.",
+ "TEXT_CREATE_JOIN_TITLE_JOIN": "ҡушылығыҙ",
+ "TEXT_CREATE_JOIN_ITEM_TOOLTIP": "Текстҡа элемент өҫтәү.",
+ "TEXT_APPEND_APPENDTEXT": "текст өҫтәргә",
+ "TEXT_APPEND_TOOLTIP": "Үҙгәреүсән «%1»-гә текст өҫтәргә.",
+ "TEXT_LENGTH_TITLE": "оҙонлоғо %1",
+ "TEXT_LENGTH_TOOLTIP": "Бирелгән текстағы символдар һанын (буш урындар менән бергә) кире ҡайтара.",
+ "TEXT_ISEMPTY_TITLE": "%1 буш",
+ "TEXT_INDEXOF_INPUT_INTEXT": "текстҡа",
+ "TEXT_INDEXOF_OPERATOR_FIRST": "текстың тәүге инеүен табырға",
+ "TEXT_INDEXOF_OPERATOR_LAST": "Текстың һуңғы инеүен табырға",
+ "TEXT_CHARAT_INPUT_INTEXT": "текста",
+ "TEXT_CHARAT_FROM_START": "хат алырға #",
+ "TEXT_CHARAT_FROM_END": "№ хәрефен аҙаҡтан алырға",
+ "TEXT_CHARAT_FIRST": "тәүге хәрефте алырға",
+ "TEXT_CHARAT_LAST": "һуңғы хәрефте алырға",
+ "TEXT_CHARAT_RANDOM": "осраҡлы хәрефте алырға",
+ "TEXT_GET_SUBSTRING_INPUT_IN_TEXT": "текста",
+ "TEXT_GET_SUBSTRING_END_FROM_START": "# хатҡа",
+ "TEXT_GET_SUBSTRING_END_LAST": "һуңғы хәрефкә тиклем",
+ "TEXT_PRINT_TITLE": "%1 баҫтырырға",
+ "LISTS_CREATE_WITH_INPUT_WITH": "менән исемлек төҙөргә",
+ "LISTS_CREATE_WITH_CONTAINER_TITLE_ADD": "исемлек",
+ "LISTS_LENGTH_TITLE": "оҙонлоғо %1",
+ "LISTS_ISEMPTY_TITLE": "%1 буш",
+ "LISTS_INLIST": "исемлеккә",
+ "LISTS_GET_INDEX_GET": "алырға",
+ "LISTS_GET_INDEX_GET_REMOVE": "алырға һәм юйырға",
+ "LISTS_GET_INDEX_REMOVE": "юйырға",
+ "LISTS_GET_INDEX_FROM_END": "# аҙағынан",
+ "LISTS_GET_INDEX_FIRST": "беренсе",
+ "LISTS_GET_INDEX_LAST": "аҙаҡҡы",
+ "LISTS_GET_INDEX_RANDOM": "осраҡлы",
+ "LISTS_SET_INDEX_SET": "йыйылма",
+ "LISTS_SET_INDEX_INSERT": "өҫтәп ҡуйырға",
+ "LISTS_SET_INDEX_INPUT_TO": "кеүек",
+ "PROCEDURES_DEFRETURN_RETURN": "кире ҡайтарыу",
+ "PROCEDURES_MUTATORCONTAINER_TITLE": "инеү",
+ "PROCEDURES_MUTATORARG_TITLE": "инеү исеме:",
+ "PROCEDURES_CREATE_DO": "'%1' төҙөргә"
+}
diff --git a/blockly/msg/json/bcc.json b/blockly/msg/json/bcc.json
new file mode 100644
index 0000000..88fd167
--- /dev/null
+++ b/blockly/msg/json/bcc.json
@@ -0,0 +1,289 @@
+{
+ "@metadata": {
+ "authors": [
+ "Baloch Afghanistan"
+ ]
+ },
+ "VARIABLES_DEFAULT_NAME": "مورد",
+ "DUPLICATE_BLOCK": "تکراری",
+ "ADD_COMMENT": "افزودن نظر",
+ "REMOVE_COMMENT": "حذف نظر",
+ "EXTERNAL_INPUTS": "ورودی‌های خارجی",
+ "INLINE_INPUTS": "ورودی‌های درون خطی",
+ "DELETE_BLOCK": "حذف بلوک",
+ "DELETE_X_BLOCKS": "حذف بلوک‌های %1",
+ "COLLAPSE_BLOCK": "فروپاشی بلوک",
+ "COLLAPSE_ALL": "فروپاشی بلوک‌ها",
+ "EXPAND_BLOCK": "گسترش بلوک",
+ "EXPAND_ALL": "گسترش بلوک‌ها",
+ "DISABLE_BLOCK": "غیرفعال‌سازی بلوک",
+ "ENABLE_BLOCK": "فعال‌سازی بلوک",
+ "HELP": "کومک",
+ "CHANGE_VALUE_TITLE": "تغییر مقدار:",
+ "RENAME_VARIABLE": "تغییر نام متغیر...",
+ "RENAME_VARIABLE_TITLE": "تغییر نام همهٔ متغیرهای «%1» به:",
+ "NEW_VARIABLE": "متغیر تازه...",
+ "NEW_VARIABLE_TITLE": "نام متغیر تازه:",
+ "COLOUR_PICKER_HELPURL": "https://fa.wikipedia.org/wiki/%D8%B1%D9%86%DA%AF",
+ "COLOUR_PICKER_TOOLTIP": "انتخاب یک رنگ از تخته‌رنگ.",
+ "COLOUR_RANDOM_TITLE": "رنگ تصادفی",
+ "COLOUR_RANDOM_TOOLTIP": "انتخاب یک رنگ به شکل تصادفی.",
+ "COLOUR_RGB_TITLE": "رنگ با",
+ "COLOUR_RGB_RED": "قرمز",
+ "COLOUR_RGB_GREEN": "سبز",
+ "COLOUR_RGB_BLUE": "آبی",
+ "COLOUR_RGB_TOOLTIP": "ساخت یک رنگ با مقدار مشخص‌شده‌ای از قرمز، سبز و آبی. همهٔ مقادیر باید بین ۰ تا ۱۰۰ باشند.",
+ "COLOUR_BLEND_TITLE": "مخلوط",
+ "COLOUR_BLEND_COLOUR1": "رنگ ۱",
+ "COLOUR_BLEND_COLOUR2": "رنگ ۲",
+ "COLOUR_BLEND_RATIO": "نسبت",
+ "COLOUR_BLEND_TOOLTIP": "دو رنگ را با نسبت مشخص‌شده مخلوط می‌کند (۰٫۰ - ۱٫۰)",
+ "CONTROLS_REPEAT_HELPURL": "https://fa.wikipedia.org/wiki/%D8%AD%D9%84%D9%82%D9%87_%D9%81%D9%88%D8%B1",
+ "CONTROLS_REPEAT_TITLE": "%1 بار تکرار",
+ "CONTROLS_REPEAT_INPUT_DO": "انجام",
+ "CONTROLS_REPEAT_TOOLTIP": "انجام چند عبارت چندین بار.",
+ "CONTROLS_WHILEUNTIL_OPERATOR_WHILE": "تکرار در حالی که",
+ "CONTROLS_WHILEUNTIL_OPERATOR_UNTIL": "تکرار تا",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_WHILE": "تا زمانی که یک مقدار صحیح است، چند عبارت را انجام بده.",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL": "تا زمانی که یک مقدار ناصحیح است، چند عبارت را انجام بده.",
+ "CONTROLS_FOR_TOOLTIP": "متغیر %1 را در مقادیر شروع‌شده از عدد انتهای به عدد انتهایی را دارد، با فواصل مشخص‌شده می‌شمارد و این بلوک مشخص‌شده را انجام می‌دهد.",
+ "CONTROLS_FOR_TITLE": "با تعداد %1 از %2 به %3 با گام‌های %4",
+ "CONTROLS_FOREACH_TITLE": "برای هر مورد %1 در فهرست %2",
+ "CONTROLS_FOREACH_TOOLTIP": "برای هر مورد در این فهرست، تنظیم متغیر «%1» به مورد و انجام تعدادی عبارت.",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK": "شکستن حلقه",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE": "ادامه با تکرار بعدی حلقه",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK": "شکستن حلقهٔ شامل.",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE": "پریدن از بقیهٔ حلقه و ادامه با تکرار بعدی.",
+ "CONTROLS_FLOW_STATEMENTS_WARNING": "اخطار: این بلوک ممکن است فقط داخل یک حلقه استفاده شود.",
+ "CONTROLS_IF_TOOLTIP_1": "اگر یک مقدار صحیح است، سپس چند عبارت را انجام بده.",
+ "CONTROLS_IF_TOOLTIP_2": "اگر یک مقدار صحیح است، اول بلوک اول عبارات را انجام بده. در غیر این صورت بلوک دوم عبارات انجام بده.",
+ "CONTROLS_IF_TOOLTIP_3": "اگر مقدار اول صحیح بود، از آن بلوک اول عبارات را انجام بده. در غیر این صورت، اگر مقدار دوم صحیح است، بلوک دوم عبارات را انجام بده.",
+ "CONTROLS_IF_TOOLTIP_4": "اگر مقدار اول درست است، بلوک اول عبارات را انجام بده. در غیر این صورت، اگر مقدار دوم درست باشد بلوک دوم عبارات را انجام بده. اگر هیچ از مقادیر درست نبود، آخرین بلوک عبارات را انجام بده.",
+ "CONTROLS_IF_MSG_IF": "اگر",
+ "CONTROLS_IF_MSG_ELSEIF": "اگر آنگاه",
+ "CONTROLS_IF_MSG_ELSE": "آنگاه",
+ "CONTROLS_IF_IF_TOOLTIP": "اضافه، حذف یا ترتیب‌سازی قسمت‌ها برای تنظیم مجدد این بلوک اگر مسدود است.",
+ "CONTROLS_IF_ELSEIF_TOOLTIP": "افزودن یک شرط به بلوک اگر.",
+ "CONTROLS_IF_ELSE_TOOLTIP": "اضافه‌کردن نهایی، گرفتن همهٔ شرایط به بلوک اگر.",
+ "LOGIC_COMPARE_HELPURL": "https://fa.wikipedia.org/wiki/%D9%86%D8%A7%D8%A8%D8%B1%D8%A7%D8%A8%D8%B1%DB%8C",
+ "LOGIC_COMPARE_TOOLTIP_EQ": "بازگشت صحیح اگر هر دو ورودی با یکدیگر برابر باشد.",
+ "LOGIC_COMPARE_TOOLTIP_NEQ": "برگرداندن صحیح اگر هر دو ورودی با یکدیگر برابر نباشند.",
+ "LOGIC_COMPARE_TOOLTIP_LT": "بازگرداندن صحیح اگر ورودی اول کوچکتر از ورودی دوم باشد.",
+ "LOGIC_COMPARE_TOOLTIP_LTE": "بازگرداندن صحیح اگر ورودی اول کوچکتر یا مساوی با ورودی دوم باشد.",
+ "LOGIC_COMPARE_TOOLTIP_GT": "بازگرداندن صحیح اگر ورودی اول بزرگتر از ورودی دوم باشد.",
+ "LOGIC_COMPARE_TOOLTIP_GTE": "بازگرداندن صحیح اگر ورودی اول بزرگتر یا مساوی یا ورودی دوم باشد.",
+ "LOGIC_OPERATION_TOOLTIP_AND": "بازگرداندن صحیح اگر هر دو ورودی صحیح باشد.",
+ "LOGIC_OPERATION_AND": "و",
+ "LOGIC_OPERATION_TOOLTIP_OR": "بازگرداندن صحیح اگر یکی از دو ورودی صحیح باشد.",
+ "LOGIC_OPERATION_OR": "یا",
+ "LOGIC_NEGATE_TITLE": "نه %1",
+ "LOGIC_NEGATE_TOOLTIP": "صجیج باز می‌گرداند اگر ورودی نا صحیح باشند. ناصحیح بازمی‌گرداند اگر ورودی صحیح باشد.",
+ "LOGIC_BOOLEAN_TRUE": "صحیح",
+ "LOGIC_BOOLEAN_FALSE": "ناصحیح",
+ "LOGIC_BOOLEAN_TOOLTIP": "بازگرداندن یکی از صحیح یا ناصحیح.",
+ "LOGIC_NULL": "تهی",
+ "LOGIC_NULL_TOOLTIP": "تهی بازمی‌گرداند.",
+ "LOGIC_TERNARY_CONDITION": "آزمایش",
+ "LOGIC_TERNARY_IF_TRUE": "اگر صحیح",
+ "LOGIC_TERNARY_IF_FALSE": "اگر ناصحیح",
+ "LOGIC_TERNARY_TOOLTIP": "بررسی وضعیت در «آزمایش». اگر وضعیت صحیح باشد، مقدار «اگر صحیح» را بر می‌گرداند در غیر اینصورت مقدار «اگر ناصحیح» را.",
+ "MATH_NUMBER_HELPURL": "https://fa.wikipedia.org/wiki/%D8%B9%D8%AF%D8%AF",
+ "MATH_NUMBER_TOOLTIP": "یک عدد.",
+ "MATH_ARITHMETIC_HELPURL": "https://fa.wikipedia.org/wiki/%D8%AD%D8%B3%D8%A7%D8%A8",
+ "MATH_ARITHMETIC_TOOLTIP_ADD": "بازگرداندن مقدار جمع دو عدد.",
+ "MATH_ARITHMETIC_TOOLTIP_MINUS": "بازگرداندن تفاوت دو عدد.",
+ "MATH_ARITHMETIC_TOOLTIP_MULTIPLY": "بازگرداندن حاصلضرب دو عدد.",
+ "MATH_ARITHMETIC_TOOLTIP_DIVIDE": "بازگرداندن باقی‌ماندهٔ دو عدد.",
+ "MATH_ARITHMETIC_TOOLTIP_POWER": "بازگرداندن اولین عددی که از توان عدد دوم حاصل شده باشد.",
+ "MATH_SINGLE_HELPURL": "https://fa.wikipedia.org/wiki/%D8%B1%DB%8C%D8%B4%D9%87_%D8%AF%D9%88%D9%85",
+ "MATH_SINGLE_OP_ROOT": "ریشهٔ دوم",
+ "MATH_SINGLE_TOOLTIP_ROOT": "ریشهٔ دوم یک عدد را باز می‌گرداند.",
+ "MATH_SINGLE_OP_ABSOLUTE": "مطلق",
+ "MATH_SINGLE_TOOLTIP_ABS": "قدر مطلق یک عدد را بازمی‌گرداند.",
+ "MATH_SINGLE_TOOLTIP_NEG": "منفی‌شدهٔ یک عدد را باز می‌گرداند.",
+ "MATH_SINGLE_TOOLTIP_LN": "لوگاریتم طبیعی یک عدد را باز می‌گرداند.",
+ "MATH_SINGLE_TOOLTIP_LOG10": "بازگرداندن لگاریتم بر پایهٔ ۱۰ یک عدد.",
+ "MATH_SINGLE_TOOLTIP_EXP": "بازگرداندن توان e یک عدد.",
+ "MATH_SINGLE_TOOLTIP_POW10": "بازگرداندن توان ۱۰ یک عدد.",
+ "MATH_TRIG_HELPURL": "https://fa.wikipedia.org/wiki/%D8%AA%D8%A7%D8%A8%D8%B9%E2%80%8C%D9%87%D8%A7%DB%8C_%D9%85%D8%AB%D9%84%D8%AB%D8%A7%D8%AA%DB%8C",
+ "MATH_TRIG_TOOLTIP_SIN": "بازگرداندن سینوس درجه (نه رادیان).",
+ "MATH_TRIG_TOOLTIP_COS": "بازگرداندن کسینوس درجه (نه رادیان).",
+ "MATH_TRIG_TOOLTIP_TAN": "بازگرداندن تانژانت یک درجه (نه رادیان).",
+ "MATH_TRIG_TOOLTIP_ASIN": "بازگرداندن آرک‌سینوس درجه (نه رادیان).",
+ "MATH_TRIG_TOOLTIP_ACOS": "بازگرداندن آرک‌کسینوس درجه (نه رادیان).",
+ "MATH_TRIG_TOOLTIP_ATAN": "بازگرداندن آرک‌تانژانت درجه (نه رادیان).",
+ "MATH_CONSTANT_HELPURL": "https://fa.wikipedia.org/wiki/%D8%AB%D8%A7%D8%A8%D8%AA_%D8%B1%DB%8C%D8%A7%D8%B6%DB%8C",
+ "MATH_CONSTANT_TOOLTIP": "یکی از مقادیر مشترک را برمی‌گرداند: π (۳٫۱۴۱…)، e (۲٫۷۱۸...)، φ (۱٫۶۱۸)، sqrt(۲) (۱٫۴۱۴)، sqrt(۱/۲) (۰٫۷۰۷...) و یا ∞ (بی‌نهایت).",
+ "MATH_IS_EVEN": "زوج است",
+ "MATH_IS_ODD": "فرد است",
+ "MATH_IS_PRIME": "عدد اول است",
+ "MATH_IS_WHOLE": "کامل است",
+ "MATH_IS_POSITIVE": "مثبت است",
+ "MATH_IS_NEGATIVE": "منفی است",
+ "MATH_IS_DIVISIBLE_BY": "تقسیم شده بر",
+ "MATH_IS_TOOLTIP": "بررسی می‌کند که آیا یک عدد زوج، فرد، اول، کامل، مثبت، منفی یا بخش‌پذیر عدد خاصی باشد را بررسی می‌کند. درست یا نادرست باز می‌گرداند.",
+ "MATH_CHANGE_HELPURL": "https://fa.wikipedia.org/wiki/%D8%A7%D8%B5%D8%B7%D9%84%D8%A7%D8%AD_%D8%A8%D8%B1%D9%86%D8%A7%D9%85%D9%87%E2%80%8C%D9%86%D9%88%DB%8C%D8%B3%DB%8C#.D8.A7.D9.81.D8.B2.D8.A7.DB.8C.D8.B4_.D8.B4.D9.85.D8.A7.D8.B1.D9.86.D8.AF.D9.87",
+ "MATH_CHANGE_TITLE": "تغییر %1 با %2",
+ "MATH_CHANGE_TOOLTIP": "افزودن یک عدد به متغیر '%1'.",
+ "MATH_ROUND_HELPURL": "https://fa.wikipedia.org/wiki/%D8%B1%D9%88%DB%8C%D9%87_%28%D8%B9%D9%84%D9%88%D9%85_%D8%B1%D8%A7%DB%8C%D8%A7%D9%86%D9%87%29",
+ "MATH_ROUND_TOOLTIP": "گردکردن یک عدد به بالا یا پایین.",
+ "MATH_ROUND_OPERATOR_ROUND": "گردکردن",
+ "MATH_ROUND_OPERATOR_ROUNDUP": "گرد به بالا",
+ "MATH_ROUND_OPERATOR_ROUNDDOWN": "گرد به پایین",
+ "MATH_ONLIST_OPERATOR_SUM": "جمع فهرست",
+ "MATH_ONLIST_TOOLTIP_SUM": "جمع همهٔ عددهای فهرست را باز می‌گرداند.",
+ "MATH_ONLIST_OPERATOR_MIN": "کوچکترین فهرست",
+ "MATH_ONLIST_TOOLTIP_MIN": "کوچک‌ترین عدد در فهرست را باز می‌گرداند.",
+ "MATH_ONLIST_OPERATOR_MAX": "بزرگ‌ترین فهرست",
+ "MATH_ONLIST_TOOLTIP_MAX": "بزرگ‌ترین عدد در فهرست را باز می‌گرداند.",
+ "MATH_ONLIST_OPERATOR_AVERAGE": "میانگین فهرست",
+ "MATH_ONLIST_TOOLTIP_AVERAGE": "میانگین (میانگین ریاضی) مقادیر عددی فهرست را بر می‌گرداند.",
+ "MATH_ONLIST_OPERATOR_MEDIAN": "میانهٔ فهرست",
+ "MATH_ONLIST_TOOLTIP_MEDIAN": "میانهٔ عدد در فهرست را بر می‌گرداند.",
+ "MATH_ONLIST_OPERATOR_MODE": "مد فهرست",
+ "MATH_ONLIST_TOOLTIP_MODE": "شایع‌ترین قلم(های) در فهرست را بر می‌گرداند.",
+ "MATH_ONLIST_OPERATOR_STD_DEV": "انحراف معیار فهرست",
+ "MATH_ONLIST_TOOLTIP_STD_DEV": "انحراف معیار فهرست را بر می‌گرداند.",
+ "MATH_ONLIST_OPERATOR_RANDOM": "مورد تصادفی از فهرست",
+ "MATH_ONLIST_TOOLTIP_RANDOM": "موردی تصادفی از فهرست را بر می‌گرداند.",
+ "MATH_MODULO_HELPURL": "https://fa.wikipedia.org/wiki/%D8%B9%D9%85%D9%84%DB%8C%D8%A7%D8%AA_%D9%BE%DB%8C%D9%85%D8%A7%D9%86%D9%87",
+ "MATH_MODULO_TITLE": "باقی‌ماندهٔ %1 + %2",
+ "MATH_MODULO_TOOLTIP": "باقی‌ماندهٔ تقسیم دو عدد را بر می‌گرداند.",
+ "MATH_CONSTRAIN_TITLE": "محدودکردن %1 پایین %2 بالا %3",
+ "MATH_CONSTRAIN_TOOLTIP": "محدودکردن یک عدد بین محدودیت‌های مشخص‌شده (بسته).",
+ "MATH_RANDOM_INT_HELPURL": "https://fa.wikipedia.org/wiki/%D8%AA%D9%88%D9%84%DB%8C%D8%AF_%D8%A7%D8%B9%D8%AF%D8%A7%D8%AF_%D8%AA%D8%B5%D8%A7%D8%AF%D9%81%DB%8C",
+ "MATH_RANDOM_INT_TITLE": "عدد صحیح تصادفی بین %1 تا %2",
+ "MATH_RANDOM_INT_TOOLTIP": "یک عدد تصادفی بین دو مقدار مشخص‌شده به صورت بسته باز می‌گرداند.",
+ "MATH_RANDOM_FLOAT_HELPURL": "https://fa.wikipedia.org/wiki/%D8%AA%D9%88%D9%84%DB%8C%D8%AF_%D8%A7%D8%B9%D8%AF%D8%A7%D8%AF_%D8%AA%D8%B5%D8%A7%D8%AF%D9%81%DB%8C",
+ "MATH_RANDOM_FLOAT_TITLE_RANDOM": "کسر تصادفی",
+ "MATH_RANDOM_FLOAT_TOOLTIP": "بازگرداندن کسری تصادفی بین ۰٫۰ (بسته) تا ۱٫۰ (باز).",
+ "TEXT_TEXT_HELPURL": "https://fa.wikipedia.org/wiki/%D8%B1%D8%B4%D8%AA%D9%87_%28%D8%B9%D9%84%D9%88%D9%85_%D8%B1%D8%A7%DB%8C%D8%A7%D9%86%D9%87%29",
+ "TEXT_TEXT_TOOLTIP": "یک حرف، کلمه یا خطی از متن.",
+ "TEXT_JOIN_TITLE_CREATEWITH": "ایجاد متن با",
+ "TEXT_JOIN_TOOLTIP": "یک تکه‌ای از متن را با چسپاندن همهٔ تعداد از موارد ایجاد می‌کند.",
+ "TEXT_CREATE_JOIN_TITLE_JOIN": "عضویت",
+ "TEXT_CREATE_JOIN_TOOLTIP": "اضافه، حذف یا ترتیب‌سازی قسمت‌ها برای تنظیم مجدد این بلوک اگر مسدود است.",
+ "TEXT_CREATE_JOIN_ITEM_TOOLTIP": "افزودن یک مورد به متن.",
+ "TEXT_APPEND_TO": "به",
+ "TEXT_APPEND_APPENDTEXT": "الحاق متن",
+ "TEXT_APPEND_TOOLTIP": "الحاق متنی به متغیر «%1».",
+ "TEXT_LENGTH_TITLE": "طول %1",
+ "TEXT_LENGTH_TOOLTIP": "بازگرداندن عددی از حروف (شامل فاصله‌ها) در متن فراهم‌شده.",
+ "TEXT_ISEMPTY_TITLE": "%1 خالی است",
+ "TEXT_ISEMPTY_TOOLTIP": "اضافه‌کردن صحیح اگر متن فراهم‌شده خالی است.",
+ "TEXT_INDEXOF_TOOLTIP": "شاخصی از اولین آخرین رخ‌داد متن اول در متن دوم بر می‌گرداند. اگر متن یافت نشد %1 باز می‌گرداند.",
+ "TEXT_INDEXOF_INPUT_INTEXT": "در متن",
+ "TEXT_INDEXOF_OPERATOR_FIRST": "اولین رخداد متن را بیاب",
+ "TEXT_INDEXOF_OPERATOR_LAST": "آخرین رخداد متن را بیاب",
+ "TEXT_CHARAT_INPUT_INTEXT": "در متن",
+ "TEXT_CHARAT_FROM_START": "گرفتن حرف #",
+ "TEXT_CHARAT_FROM_END": "گرفتن حرف # از آخر",
+ "TEXT_CHARAT_FIRST": "گرفتن اولین حرف",
+ "TEXT_CHARAT_LAST": "گرفتن آخرین حرف",
+ "TEXT_CHARAT_RANDOM": "گرفتن حرف تصادفی",
+ "TEXT_CHARAT_TOOLTIP": "حرفی در موقعیت مشخص‌شده بر می‌گرداند.",
+ "TEXT_GET_SUBSTRING_TOOLTIP": "قسمت مشخصی‌شده‌ای از متن را بر می‌گرداند.",
+ "TEXT_GET_SUBSTRING_INPUT_IN_TEXT": "در متن",
+ "TEXT_GET_SUBSTRING_START_FROM_START": "گرفتن زیرمتن از حرف #",
+ "TEXT_GET_SUBSTRING_START_FROM_END": "گرفتن زیرمتن از حرف # به انتها",
+ "TEXT_GET_SUBSTRING_START_FIRST": "گرفتن زیرمتن از اولین حرف",
+ "TEXT_GET_SUBSTRING_END_FROM_START": "به حرف #",
+ "TEXT_GET_SUBSTRING_END_FROM_END": "به حرف # از انتها",
+ "TEXT_GET_SUBSTRING_END_LAST": "گرفتن آخرین حرف",
+ "TEXT_CHANGECASE_TOOLTIP": "بازگرداندن کپی متن در حالتی متفاوت.",
+ "TEXT_CHANGECASE_OPERATOR_UPPERCASE": "به حروف بزرگ",
+ "TEXT_CHANGECASE_OPERATOR_LOWERCASE": "به حروف کوچک",
+ "TEXT_CHANGECASE_OPERATOR_TITLECASE": "به حروف بزرگ عنوان",
+ "TEXT_TRIM_TOOLTIP": "کپی از متن با فاصله‌های حذف‌شده از یک یا هر دو پایان باز می‌گرداند.",
+ "TEXT_TRIM_OPERATOR_BOTH": "تراشیدن فاصله‌ها از هر دو طرف",
+ "TEXT_TRIM_OPERATOR_LEFT": "تراشیدن فاصله‌ها از طرف چپ",
+ "TEXT_TRIM_OPERATOR_RIGHT": "تراشیدن فاصله‌ها از طرف چپ",
+ "TEXT_PRINT_TITLE": "چاپ %1",
+ "TEXT_PRINT_TOOLTIP": "چاپ متن، عدد یا هر مقدار دیگر مشخص‌شده.",
+ "TEXT_PROMPT_TYPE_TEXT": "اعلان برای متن با پیام",
+ "TEXT_PROMPT_TYPE_NUMBER": "اعلان برای عدد با پیام",
+ "TEXT_PROMPT_TOOLTIP_NUMBER": "اعلان برای کاربر با یک عدد.",
+ "TEXT_PROMPT_TOOLTIP_TEXT": "اعلان برای کاربر برای یک متن.",
+ "LISTS_CREATE_EMPTY_TITLE": "ایجاد فهرست خالی",
+ "LISTS_CREATE_EMPTY_TOOLTIP": "فهرستی با طول صفر شامل هیچ رکورد داده‌ای بر می‌گرداند.",
+ "LISTS_CREATE_WITH_TOOLTIP": "فهرستی از هر عددی از موارد می‌سازد.",
+ "LISTS_CREATE_WITH_INPUT_WITH": "ایجاد فهرست با",
+ "LISTS_CREATE_WITH_CONTAINER_TITLE_ADD": "فهرست",
+ "LISTS_CREATE_WITH_CONTAINER_TOOLTIP": "اضافه‌کردن، حذف‌کردن یا ترتیب‌سازی مجدد بخش‌ها این بلوک فهرستی.",
+ "LISTS_CREATE_WITH_ITEM_TOOLTIP": "اضافه‌کردن یک مورد به فهرست.",
+ "LISTS_REPEAT_TOOLTIP": "فهرستی شامل مقادیر داده‌شدهٔ تکرار شده عدد مشخص‌شده می‌سازد.",
+ "LISTS_REPEAT_TITLE": "فهرستی با %1 تکرارشده به اندازهٔ %2 می‌سازد",
+ "LISTS_LENGTH_TITLE": "طول %1",
+ "LISTS_LENGTH_TOOLTIP": "طول یک فهرست را برمی‌گرداند.",
+ "LISTS_ISEMPTY_TITLE": "%1 خالی است",
+ "LISTS_ISEMPTY_TOOLTIP": "اگر فهرست خالی است مقدار صجیج بر می‌گرداند.",
+ "LISTS_INLIST": "در فهرست",
+ "LISTS_INDEX_OF_FIRST": "آخرین رخداد متن را بیاب",
+ "LISTS_INDEX_OF_LAST": "یافتن آخرین رخ‌داد مورد",
+ "LISTS_INDEX_OF_TOOLTIP": "شاخصی از اولین/آخرین رخ‌داد مورد در فهرست را بر می‌گرداند. %1 بر می‌گرداند اگر متن موجود نبود.",
+ "LISTS_GET_INDEX_GET": "گرفتن",
+ "LISTS_GET_INDEX_GET_REMOVE": "گرفتن و حذف‌کردن",
+ "LISTS_GET_INDEX_REMOVE": "حذف‌کردن",
+ "LISTS_GET_INDEX_FROM_END": "# از انتها",
+ "LISTS_GET_INDEX_FIRST": "اولین",
+ "LISTS_GET_INDEX_LAST": "اهرین",
+ "LISTS_GET_INDEX_RANDOM": "تصادفی",
+ "LISTS_INDEX_FROM_START_TOOLTIP": "%1 اولین مورد است.",
+ "LISTS_INDEX_FROM_END_TOOLTIP": "%1 آخرین مورد است.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_FROM": "موردی در محل مشخص‌شده بر می‌گرداند.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_FIRST": "اولین مورد یک فهرست را بر می‌گرداند.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_LAST": "آخرین مورد در یک فهرست را بر می‌گرداند.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_RANDOM": "یک مورد تصادفی در یک فهرست بر می‌گرداند.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM": "مورد در محل مشخص‌شده در فهرست را حذف و بر می‌گرداند.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST": "اولین مورد مشخص‌شده در فهرست را حذف و بر می‌گرداند.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST": "آخرین مورد مشخص‌شده در فهرست را حذف و بر می‌گرداند.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM": "مورد تصادفی‌ای را در فهرست حذف و بر می‌گرداند.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM": "مورد مشخص‌شده در موقعیت مشخص در یک فهرست را حذف و بر می‌گرداند.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST": "اولین مورد را در یک فهرست حذف می‌کند.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST": "آخرین مورد را در یک فهرست حذف می‌کند.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM": "یک مورد تصادفی را یک فهرست حذف می‌کند.",
+ "LISTS_SET_INDEX_SET": "مجموعه",
+ "LISTS_SET_INDEX_INSERT": "درج در",
+ "LISTS_SET_INDEX_INPUT_TO": "به‌عنوان",
+ "LISTS_SET_INDEX_TOOLTIP_SET_FROM": "مورد مشخص‌شده در یک فهرست را قرار می‌دهد.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_FIRST": "اولین مورد در یک فهرست را تعیین می‌کند.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_LAST": "آخرین مورد در یک فهرست را تعیین می‌کند.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_RANDOM": "یک مورد تصادفی در یک فهرست را تعیین می‌کند.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_FROM": "موردی در موقعیت مشخص‌شده در یک فهرست اضافه می‌کند.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST": "موردی به ته فهرست اضافه می‌کند.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_LAST": "موردی به ته فهرست الحاق می‌کند.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM": "مورد را به صورت تصادفی در یک فهرست می‌افزاید.",
+ "LISTS_GET_SUBLIST_START_FROM_START": "گرفتن زیرمجموعه‌ای از #",
+ "LISTS_GET_SUBLIST_START_FROM_END": "گرفتن زیرمجموعه‌ای از # از انتها",
+ "LISTS_GET_SUBLIST_START_FIRST": "گرفتن زیرمجموعه‌ای از ابتدا",
+ "LISTS_GET_SUBLIST_END_FROM_START": "به #",
+ "LISTS_GET_SUBLIST_END_FROM_END": "به # از انتها",
+ "LISTS_GET_SUBLIST_END_LAST": "به آخرین",
+ "LISTS_GET_SUBLIST_TOOLTIP": "کپی از قسمت مشخص‌شدهٔ لیست درست می‌کند.",
+ "VARIABLES_GET_TOOLTIP": "مقدار این متغیر را بر می‌گرداند.",
+ "VARIABLES_GET_CREATE_SET": "درست‌کردن «تنظیم %1»",
+ "VARIABLES_SET": "مجموعه %1 به %2",
+ "VARIABLES_SET_TOOLTIP": "متغیر برابر با خروجی را مشخص می‌کند.",
+ "VARIABLES_SET_CREATE_GET": "درست‌کردن «تنظیم %1»",
+ "PROCEDURES_DEFNORETURN_TITLE": "به",
+ "PROCEDURES_DEFNORETURN_PROCEDURE": "انجام چیزی",
+ "PROCEDURES_BEFORE_PARAMS": "با:",
+ "PROCEDURES_CALL_BEFORE_PARAMS": "با:",
+ "PROCEDURES_DEFNORETURN_TOOLTIP": "تابعی می‌سازد بدون هیچ خروجی.",
+ "PROCEDURES_DEFRETURN_RETURN": "بازگشت",
+ "PROCEDURES_DEFRETURN_TOOLTIP": "تابعی با یک خروجی می‌سازد.",
+ "PROCEDURES_ALLOW_STATEMENTS": "اجازه اظهارات",
+ "PROCEDURES_DEF_DUPLICATE_WARNING": "اخطار: این تابعی پارامتر تکراری دارد.",
+ "PROCEDURES_CALLNORETURN_HELPURL": "https://fa.wikipedia.org/wiki/%D8%B1%D9%88%DB%8C%D9%87_%28%D8%B9%D9%84%D9%88%D9%85_%D8%B1%D8%A7%DB%8C%D8%A7%D9%86%D9%87%29",
+ "PROCEDURES_CALLNORETURN_TOOLTIP": "اجرای تابع تعریف‌شده توسط کاربر «%1».",
+ "PROCEDURES_CALLRETURN_HELPURL": "https://fa.wikipedia.org/wiki/%D8%B1%D9%88%DB%8C%D9%87_%28%D8%B9%D9%84%D9%88%D9%85_%D8%B1%D8%A7%DB%8C%D8%A7%D9%86%D9%87%29",
+ "PROCEDURES_CALLRETURN_TOOLTIP": "اجرای تابع تعریف‌شده توسط کاربر «%1» و استفاده از خروجی آن.",
+ "PROCEDURES_MUTATORCONTAINER_TITLE": "ورودی‌ها",
+ "PROCEDURES_MUTATORCONTAINER_TOOLTIP": "افزودن، حذف یا دوباره مرتب‌کردن ورودی این تابع.",
+ "PROCEDURES_MUTATORARG_TITLE": "نام ورودی:",
+ "PROCEDURES_MUTATORARG_TOOLTIP": "اضافه کردن ورودی به تابع.",
+ "PROCEDURES_HIGHLIGHT_DEF": "برجسته‌سازی تعریف تابع",
+ "PROCEDURES_CREATE_DO": "ساختن «%1»",
+ "PROCEDURES_IFRETURN_TOOLTIP": "اگر یک مقدار صحیح است، مقدار دوم را برگردان.",
+ "PROCEDURES_IFRETURN_WARNING": "اخطار: این بلوک احتمالاً فقط داخل یک تابع استفاده می‌شود."
+}
diff --git a/blockly/msg/json/be-tarask.json b/blockly/msg/json/be-tarask.json
new file mode 100644
index 0000000..353ea32
--- /dev/null
+++ b/blockly/msg/json/be-tarask.json
@@ -0,0 +1,314 @@
+{
+ "@metadata": {
+ "authors": [
+ "Renessaince",
+ "Jim-by",
+ "Red Winged Duck"
+ ]
+ },
+ "VARIABLES_DEFAULT_NAME": "аб’ект",
+ "TODAY": "Сёньня",
+ "DUPLICATE_BLOCK": "Капіяваць",
+ "ADD_COMMENT": "Дадаць камэнтар",
+ "REMOVE_COMMENT": "Выдаліць камэнтар",
+ "EXTERNAL_INPUTS": "Зьнешнія ўваходы",
+ "INLINE_INPUTS": "Унутраныя ўваходы",
+ "DELETE_BLOCK": "Выдаліць блёк",
+ "DELETE_X_BLOCKS": "Выдаліць %1 блёкі",
+ "DELETE_ALL_BLOCKS": "Выдаліць усе блёкі %1?",
+ "CLEAN_UP": "Ачысьціць блёкі",
+ "COLLAPSE_BLOCK": "Згарнуць блёк",
+ "COLLAPSE_ALL": "Згарнуць блёкі",
+ "EXPAND_BLOCK": "Разгарнуць блёк",
+ "EXPAND_ALL": "Разгарнуць блёкі",
+ "DISABLE_BLOCK": "Адключыць блёк",
+ "ENABLE_BLOCK": "Уключыць блёк",
+ "HELP": "Дапамога",
+ "UNDO": "Скасаваць",
+ "REDO": "Паўтарыць",
+ "CHANGE_VALUE_TITLE": "Зьмяніць значэньне:",
+ "RENAME_VARIABLE": "Перайменаваць зьменную…",
+ "RENAME_VARIABLE_TITLE": "Перайменаваць усе назвы зьменных '%1' на:",
+ "NEW_VARIABLE": "Стварыць зьменную…",
+ "NEW_VARIABLE_TITLE": "Імя новай зьменнай:",
+ "VARIABLE_ALREADY_EXISTS": "Зьменная з назвай «%1» ужо існуе.",
+ "DELETE_VARIABLE_CONFIRMATION": "Выдаліць %1 выкарыстаньняў зьменнай «%2»?",
+ "DELETE_VARIABLE": "Выдаліць зьменную «%1»",
+ "COLOUR_PICKER_HELPURL": "https://be-x-old.wikipedia.org/wiki/%D0%9A%D0%BE%D0%BB%D0%B5%D1%80",
+ "COLOUR_PICKER_TOOLTIP": "Абярыце колер з палітры.",
+ "COLOUR_RANDOM_TITLE": "выпадковы колер",
+ "COLOUR_RANDOM_TOOLTIP": "Абраць выпадковы колер.",
+ "COLOUR_RGB_TITLE": "колер з",
+ "COLOUR_RGB_RED": "чырвонага",
+ "COLOUR_RGB_GREEN": "зялёнага",
+ "COLOUR_RGB_BLUE": "сіняга",
+ "COLOUR_RGB_TOOLTIP": "Стварыць колер з абранымі прапорцыямі чырвонага, зялёнага і сіняга. Усе значэньні павінны быць ад 0 да 100.",
+ "COLOUR_BLEND_TITLE": "зьмяшаць",
+ "COLOUR_BLEND_COLOUR1": "колер 1",
+ "COLOUR_BLEND_COLOUR2": "колер 2",
+ "COLOUR_BLEND_RATIO": "дзеля",
+ "COLOUR_BLEND_TOOLTIP": "Зьмешвае два колеры ў дадзенай прапорцыі (0.0 — 1.0)",
+ "CONTROLS_REPEAT_HELPURL": "https://en.wikipedia.org/wiki/For_loop",
+ "CONTROLS_REPEAT_TITLE": "паўтарыць %1 раз(ы)",
+ "CONTROLS_REPEAT_INPUT_DO": "выканаць",
+ "CONTROLS_REPEAT_TOOLTIP": "Выконвае апэрацыі некалькі разоў.",
+ "CONTROLS_WHILEUNTIL_OPERATOR_WHILE": "паўтараць, пакуль",
+ "CONTROLS_WHILEUNTIL_OPERATOR_UNTIL": "паўтараць, пакуль не",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_WHILE": "Пакуль значэньне ісьціна, выконваць пэўныя апэрацыі.",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL": "Пакуль значэньне хлусьня, выконваць пэўныя апэрацыі.",
+ "CONTROLS_FOR_TOOLTIP": "Прысвойвае зьменнай \"%1\" значэньні ад пачатковага да канчатковага значэньня, улічваючы зададзены крок, і выконвае абраныя блёкі.",
+ "CONTROLS_FOR_TITLE": "лічыць з %1 ад %2 да %3 па %4",
+ "CONTROLS_FOREACH_TITLE": "для кожнага элемэнта %1 у сьпісе %2",
+ "CONTROLS_FOREACH_TOOLTIP": "Для кожнага элемэнту сьпісу прысвойвае зьменнай '%1' ягонае значэньне і выконвае пэўныя апэрацыі.",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK": "перарваць цыкль",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE": "працягнуць з наступнага кроку цыклю",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK": "Спыніць гэты цыкль.",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE": "Прапусьціць рэшту цыклю і перайсьці да наступнага кроку.",
+ "CONTROLS_FLOW_STATEMENTS_WARNING": "Увага: гэты блёк можа быць выкарыстаны толькі ў цыклі.",
+ "CONTROLS_IF_TOOLTIP_1": "Калі значэньне ісьціна, выканаць пэўныя апэрацыі.",
+ "CONTROLS_IF_TOOLTIP_2": "Калі значэньне ісьціна, выканаць першы блёк апэрацыяў, інакш выканаць другі блёк.",
+ "CONTROLS_IF_TOOLTIP_3": "Калі першае значэньне ісьціна, выканаць першы блёк апэрацыяў. Інакш, калі другое значэньне ісьціна, выканаць другі блёк апэрацыяў.",
+ "CONTROLS_IF_TOOLTIP_4": "Калі першае значэньне ісьціна, выканаць першы блёк апэрацыяў. Інакш, калі другое значэньне ісьціна, выканаць другі блёк апэрацыяў. Калі ніводнае з значэньняў не сапраўднае, выканаць апошні блёк апэрацыяў.",
+ "CONTROLS_IF_MSG_IF": "калі",
+ "CONTROLS_IF_MSG_ELSEIF": "інакш, калі",
+ "CONTROLS_IF_MSG_ELSE": "інакш",
+ "CONTROLS_IF_IF_TOOLTIP": "Дадаць, выдаліць ці пераставіць сэкцыі для пераканфігураваньня гэтага блёку «калі».",
+ "CONTROLS_IF_ELSEIF_TOOLTIP": "Дадаць умову да блёку «калі».",
+ "CONTROLS_IF_ELSE_TOOLTIP": "Дадаць заключную ўмову для ўсіх астатніх варыянтаў блёку «калі».",
+ "LOGIC_COMPARE_HELPURL": "https://be-x-old.wikipedia.org/wiki/%D0%9D%D1%8F%D1%80%D0%BE%D1%9E%D0%BD%D0%B0%D1%81%D1%8C%D1%86%D1%8C",
+ "LOGIC_COMPARE_TOOLTIP_EQ": "Вяртае «ісьціна», калі абодва ўводы роўныя.",
+ "LOGIC_COMPARE_TOOLTIP_NEQ": "Вяртае «ісьціна», калі абодва ўводы ня роўныя.",
+ "LOGIC_COMPARE_TOOLTIP_LT": "Вяртае «ісьціна», калі першы ўвод меншы за другі.",
+ "LOGIC_COMPARE_TOOLTIP_LTE": "Вяртае «ісьціна», калі першы ўвод меншы ці роўны другому.",
+ "LOGIC_COMPARE_TOOLTIP_GT": "Вяртае «ісьціна», калі першы ўвод большы за другі.",
+ "LOGIC_COMPARE_TOOLTIP_GTE": "Вяртае «ісьціна», калі першы ўвод большы ці роўны другому.",
+ "LOGIC_OPERATION_TOOLTIP_AND": "Вяртае «ісьціна», калі абодва ўводы праўдзівыя.",
+ "LOGIC_OPERATION_AND": "і",
+ "LOGIC_OPERATION_TOOLTIP_OR": "Вяртае «ісьціна», калі прынамсі адзін з уводаў праўдзівы.",
+ "LOGIC_OPERATION_OR": "ці",
+ "LOGIC_NEGATE_TITLE": "не %1",
+ "LOGIC_NEGATE_TOOLTIP": "Вяртае «ісьціна», калі ўвод непраўдзівы. Вяртае «хлусьня», калі ўвод праўдзівы.",
+ "LOGIC_BOOLEAN_TRUE": "ісьціна",
+ "LOGIC_BOOLEAN_FALSE": "хлусьня",
+ "LOGIC_BOOLEAN_TOOLTIP": "Вяртае «ісьціна» ці «хлусьня».",
+ "LOGIC_NULL": "нічога",
+ "LOGIC_NULL_TOOLTIP": "Вяртае нічога.",
+ "LOGIC_TERNARY_CONDITION": "тэст",
+ "LOGIC_TERNARY_IF_TRUE": "калі ісьціна",
+ "LOGIC_TERNARY_IF_FALSE": "калі хлусьня",
+ "LOGIC_TERNARY_TOOLTIP": "Праверыць умову ў 'тэст'. Калі ўмова праўдзівая, будзе вернутае значэньне «калі ісьціна»; інакш будзе вернутае «калі хлусьня».",
+ "MATH_NUMBER_HELPURL": "https://be-x-old.wikipedia.org/wiki/%D0%9B%D1%96%D0%BA",
+ "MATH_NUMBER_TOOLTIP": "Лік.",
+ "MATH_ARITHMETIC_HELPURL": "https://be-x-old.wikipedia.org/wiki/%D0%90%D1%80%D1%8B%D1%82%D0%BC%D1%8D%D1%82%D1%8B%D0%BA%D0%B0",
+ "MATH_ARITHMETIC_TOOLTIP_ADD": "Вяртае суму двух лікаў.",
+ "MATH_ARITHMETIC_TOOLTIP_MINUS": "Вяртае рознасьць двух лікаў.",
+ "MATH_ARITHMETIC_TOOLTIP_MULTIPLY": "Вяртае здабытак двух лікаў.",
+ "MATH_ARITHMETIC_TOOLTIP_DIVIDE": "Вяртае дзель двух лікаў.",
+ "MATH_ARITHMETIC_TOOLTIP_POWER": "Вяртае першы лік у ступені другога ліку.",
+ "MATH_SINGLE_HELPURL": "https://be-x-old.wikipedia.org/wiki/%D0%9A%D0%B2%D0%B0%D0%B4%D1%80%D0%B0%D1%82%D0%BD%D1%8B_%D0%BA%D0%BE%D1%80%D0%B0%D0%BD%D1%8C",
+ "MATH_SINGLE_OP_ROOT": "квадратны корань",
+ "MATH_SINGLE_TOOLTIP_ROOT": "Вяртае квадратны корань ліку.",
+ "MATH_SINGLE_OP_ABSOLUTE": "модуль",
+ "MATH_SINGLE_TOOLTIP_ABS": "Вяртае модуль ліку.",
+ "MATH_SINGLE_TOOLTIP_NEG": "Вяртае супрацьлеглы лік.",
+ "MATH_SINGLE_TOOLTIP_LN": "Вяртае натуральны лягарытм ліку.",
+ "MATH_SINGLE_TOOLTIP_LOG10": "Вяртае дзесятковы лягарытм ліку.",
+ "MATH_SINGLE_TOOLTIP_EXP": "Вяртае e ў ступені ліку.",
+ "MATH_SINGLE_TOOLTIP_POW10": "Вяртае 10 у ступені ліку.",
+ "MATH_TRIG_HELPURL": "https://be-x-old.wikipedia.org/wiki/%D0%A2%D1%80%D1%8B%D0%B3%D0%B0%D0%BD%D0%B0%D0%BC%D1%8D%D1%82%D1%80%D1%8B%D1%8F#.D0.A2.D1.80.D1.8B.D0.B3.D0.B0.D0.BD.D0.B0.D0.BC.D1.8D.D1.82.D1.80.D1.8B.D1.87.D0.BD.D1.8B.D1.8F_.D1.84.D1.83.D0.BD.D0.BA.D1.86.D1.8B.D1.96",
+ "MATH_TRIG_TOOLTIP_SIN": "Вяртае сынус кута ў градусах.",
+ "MATH_TRIG_TOOLTIP_COS": "Вяртае косынус кута ў градусах.",
+ "MATH_TRIG_TOOLTIP_TAN": "Вяртае тангэнс кута ў градусах.",
+ "MATH_TRIG_TOOLTIP_ASIN": "Вяртае арксынус ліку.",
+ "MATH_TRIG_TOOLTIP_ACOS": "Вяртае арккосынус ліку.",
+ "MATH_TRIG_TOOLTIP_ATAN": "Вяртае арктангэнс ліку.",
+ "MATH_CONSTANT_HELPURL": "https://be-x-old.wikipedia.org/wiki/%D0%9C%D0%B0%D1%82%D1%8D%D0%BC%D0%B0%D1%82%D1%8B%D1%87%D0%BD%D0%B0%D1%8F_%D0%BA%D0%B0%D0%BD%D1%81%D1%82%D0%B0%D0%BD%D1%82%D0%B0",
+ "MATH_CONSTANT_TOOLTIP": "Вяртае адну з агульных канстантаў: π (3.141...), e (2.718...), φ (1.618...), sqrt(2) (1.414...), sqrt(½) (0,707...) або ∞ (бясконцасьць).",
+ "MATH_IS_EVEN": "парная",
+ "MATH_IS_ODD": "няпарная",
+ "MATH_IS_PRIME": "простая",
+ "MATH_IS_WHOLE": "цэлая",
+ "MATH_IS_POSITIVE": "станоўчая",
+ "MATH_IS_NEGATIVE": "адмоўная",
+ "MATH_IS_DIVISIBLE_BY": "дзяліць на",
+ "MATH_IS_TOOLTIP": "Правярае, ці зьяўляецца лік парным, няпарным, простым, станоўчым, адмоўным, ці ён дзеліцца на пэўны лік без астатку. Вяртае значэньне ісьціна або няпраўда.",
+ "MATH_CHANGE_HELPURL": "https://en.wikipedia.org/wiki/Programming_idiom#Incrementing_a_counter",
+ "MATH_CHANGE_TITLE": "зьмяніць %1 на %2",
+ "MATH_CHANGE_TOOLTIP": "Дадае лічбу да зьменнай '%1'.",
+ "MATH_ROUND_HELPURL": "https://en.wikipedia.org/wiki/Rounding",
+ "MATH_ROUND_TOOLTIP": "Акругленьне ліку да большага ці меншага.",
+ "MATH_ROUND_OPERATOR_ROUND": "акругліць",
+ "MATH_ROUND_OPERATOR_ROUNDUP": "акругліць да большага",
+ "MATH_ROUND_OPERATOR_ROUNDDOWN": "акругліць да меншага",
+ "MATH_ONLIST_OPERATOR_SUM": "Сума сьпісу",
+ "MATH_ONLIST_TOOLTIP_SUM": "Вяртае суму ўсіх лікаў у сьпісе.",
+ "MATH_ONLIST_OPERATOR_MIN": "мінімальная ў сьпісе",
+ "MATH_ONLIST_TOOLTIP_MIN": "Вяртае найменшы лік у сьпісе.",
+ "MATH_ONLIST_OPERATOR_MAX": "мінімальная ў сьпісе",
+ "MATH_ONLIST_TOOLTIP_MAX": "Вяртае найменшы лік у сьпісе.",
+ "MATH_ONLIST_OPERATOR_AVERAGE": "сярэдняя ў сьпісе",
+ "MATH_ONLIST_TOOLTIP_AVERAGE": "Вяртае сярэднеарытмэтычнае значэньне лікавых значэньняў у сьпісе.",
+ "MATH_ONLIST_OPERATOR_MEDIAN": "мэдыяна сьпісу",
+ "MATH_ONLIST_TOOLTIP_MEDIAN": "Вяртае мэдыяну сьпісу.",
+ "MATH_ONLIST_OPERATOR_MODE": "рэжымы сьпісу",
+ "MATH_ONLIST_TOOLTIP_MODE": "Вяртае сьпіс самых распаўсюджаных элемэнтаў у сьпісе.",
+ "MATH_ONLIST_OPERATOR_STD_DEV": "стандартнае адхіленьне сьпісу",
+ "MATH_ONLIST_TOOLTIP_STD_DEV": "Вяртае стандартнае адхіленьне сьпісу.",
+ "MATH_ONLIST_OPERATOR_RANDOM": "выпадковы элемэнт сьпісу",
+ "MATH_ONLIST_TOOLTIP_RANDOM": "Вяртае выпадковы элемэнт сьпісу.",
+ "MATH_MODULO_HELPURL": "https://en.wikipedia.org/wiki/Modulo_operation",
+ "MATH_MODULO_TITLE": "рэшта дзяленьня %1 ÷ %2",
+ "MATH_MODULO_TOOLTIP": "Вяртае рэшту дзяленьня двух лікаў.",
+ "MATH_CONSTRAIN_TITLE": "абмежаваць %1 зьнізу %2 зьверху %3",
+ "MATH_CONSTRAIN_TOOLTIP": "Абмяжоўвае колькасьць ніжняй і верхняй межамі (уключна).",
+ "MATH_RANDOM_INT_HELPURL": "https://en.wikipedia.org/wiki/Random_number_generation",
+ "MATH_RANDOM_INT_TITLE": "выпадковая цэлая з %1 для %2",
+ "MATH_RANDOM_INT_TOOLTIP": "Вяртае выпадковы цэлы лік паміж двума зададзенымі абмежаваньнямі ўключна.",
+ "MATH_RANDOM_FLOAT_HELPURL": "https://en.wikipedia.org/wiki/Random_number_generation",
+ "MATH_RANDOM_FLOAT_TITLE_RANDOM": "выпадковая дроб",
+ "MATH_RANDOM_FLOAT_TOOLTIP": "Вяртае выпадковую дроб у дыяпазоне ад 0,0 (уключна) да 1,0.",
+ "TEXT_TEXT_HELPURL": "https://en.wikipedia.org/wiki/String_(computer_science)",
+ "TEXT_TEXT_TOOLTIP": "Літара, слова ці радок тэксту.",
+ "TEXT_JOIN_TITLE_CREATEWITH": "стварыць тэкст з",
+ "TEXT_JOIN_TOOLTIP": "Стварае фрагмэнт тэксту аб’яднаньнем любой колькасьці элемэнтаў.",
+ "TEXT_CREATE_JOIN_TITLE_JOIN": "далучыць",
+ "TEXT_CREATE_JOIN_TOOLTIP": "Дадайце, выдаліце ці зьмяніце парадак разьдзелаў для перадачы тэкставага блёку.",
+ "TEXT_CREATE_JOIN_ITEM_TOOLTIP": "Дадаць элемэнт да тэксту.",
+ "TEXT_APPEND_TO": "да",
+ "TEXT_APPEND_APPENDTEXT": "дадаць тэкст",
+ "TEXT_APPEND_TOOLTIP": "Дадаць які-небудзь тэкст да зьменнай '%1'.",
+ "TEXT_LENGTH_TITLE": "даўжыня %1",
+ "TEXT_LENGTH_TOOLTIP": "Вяртае колькасьць літараў (у тым ліку прабелы) у пададзеным тэксьце.",
+ "TEXT_ISEMPTY_TITLE": "%1 пусты",
+ "TEXT_ISEMPTY_TOOLTIP": "Вяртае значэньне ісьціна, калі тэкст пусты.",
+ "TEXT_INDEXOF_TOOLTIP": "Вяртае індэкс першага/апошняга ўваходжаньня першага тэксту ў другі тэкст. Вяртае %1, калі тэкст ня знойдзены.",
+ "TEXT_INDEXOF_INPUT_INTEXT": "у тэксьце",
+ "TEXT_INDEXOF_OPERATOR_FIRST": "знайсьці першае ўваходжаньне тэксту",
+ "TEXT_INDEXOF_OPERATOR_LAST": "знайсьці апошняе ўваходжаньне тэксту",
+ "TEXT_CHARAT_INPUT_INTEXT": "у тэксьце",
+ "TEXT_CHARAT_FROM_START": "узяць літару №",
+ "TEXT_CHARAT_FROM_END": "узяць літару № з канца",
+ "TEXT_CHARAT_FIRST": "узяць першую літару",
+ "TEXT_CHARAT_LAST": "узяць апошнюю літару",
+ "TEXT_CHARAT_RANDOM": "узяць выпадковую літару",
+ "TEXT_CHARAT_TOOLTIP": "Вяртае літару ў пазначанай пазыцыі.",
+ "TEXT_GET_SUBSTRING_TOOLTIP": "Вяртае пазначаную частку тэксту.",
+ "TEXT_GET_SUBSTRING_INPUT_IN_TEXT": "у тэксьце",
+ "TEXT_GET_SUBSTRING_START_FROM_START": "узяць падрадок зь літары №",
+ "TEXT_GET_SUBSTRING_START_FROM_END": "узяць падрадок зь літары № з канца",
+ "TEXT_GET_SUBSTRING_START_FIRST": "атрымаць падрадок зь першай літары",
+ "TEXT_GET_SUBSTRING_END_FROM_START": "да літары №",
+ "TEXT_GET_SUBSTRING_END_FROM_END": "да літары № з канца",
+ "TEXT_GET_SUBSTRING_END_LAST": "да апошняй літары",
+ "TEXT_CHANGECASE_TOOLTIP": "Вярнуць копію тэксту зь іншай велічынёй літар.",
+ "TEXT_CHANGECASE_OPERATOR_UPPERCASE": "да ВЕРХНЯГА РЭГІСТРУ",
+ "TEXT_CHANGECASE_OPERATOR_LOWERCASE": "да ніжняга рэгістру",
+ "TEXT_CHANGECASE_OPERATOR_TITLECASE": "Вялікія Першыя Літары",
+ "TEXT_TRIM_TOOLTIP": "Вяртае копію тэксту з прабеламі, выдаленымі ад аднаго ці абодвух бакоў.",
+ "TEXT_TRIM_OPERATOR_BOTH": "абрэзаць прабелы з абодвух бакоў",
+ "TEXT_TRIM_OPERATOR_LEFT": "абрэзаць прабелы зь левага боку",
+ "TEXT_TRIM_OPERATOR_RIGHT": "абрэзаць прабелы з правага боку",
+ "TEXT_PRINT_TITLE": "друкаваць %1",
+ "TEXT_PRINT_TOOLTIP": "Надрукаваць пазначаны тэкст, лічбу ці іншыя сымбалі.",
+ "TEXT_PROMPT_TYPE_TEXT": "запытаць тэкст з падказкай",
+ "TEXT_PROMPT_TYPE_NUMBER": "запытаць лічбу з падказкай",
+ "TEXT_PROMPT_TOOLTIP_NUMBER": "Запытаць у карыстальніка лічбу.",
+ "TEXT_PROMPT_TOOLTIP_TEXT": "Запытаць у карыстальніка тэкст.",
+ "LISTS_CREATE_EMPTY_TITLE": "стварыць пусты сьпіс",
+ "LISTS_CREATE_EMPTY_TOOLTIP": "Вяртае сьпіс даўжынёй 0, які ня ўтрымлівае запісаў зьвестак",
+ "LISTS_CREATE_WITH_TOOLTIP": "Ставарае сьпіс зь любой колькасьцю элемэнтаў.",
+ "LISTS_CREATE_WITH_INPUT_WITH": "стварыць сьпіс з",
+ "LISTS_CREATE_WITH_CONTAINER_TITLE_ADD": "сьпіс",
+ "LISTS_CREATE_WITH_CONTAINER_TOOLTIP": "Дадаць, выдаліць ці пераставіць сэкцыі для пераканфігураваньня гэтага блёку.",
+ "LISTS_CREATE_WITH_ITEM_TOOLTIP": "Дадаць элемэнт да сьпісу.",
+ "LISTS_REPEAT_TOOLTIP": "Стварае сьпіс, які ўтрымлівае пададзеную колькасьць копіяў элемэнту.",
+ "LISTS_REPEAT_TITLE": "стварыць сьпіс з элемэнту %1, які паўтараецца %2 разоў",
+ "LISTS_LENGTH_TITLE": "даўжыня %1",
+ "LISTS_LENGTH_TOOLTIP": "Вяртае даўжыню сьпісу.",
+ "LISTS_ISEMPTY_TITLE": "%1 пусты",
+ "LISTS_ISEMPTY_TOOLTIP": "Вяртае значэньне ісьціна, калі сьпіс пусты.",
+ "LISTS_INLIST": "у сьпісе",
+ "LISTS_INDEX_OF_FIRST": "знайсьці першае ўваходжаньне элемэнту",
+ "LISTS_INDEX_OF_LAST": "знайсьці апошняе ўваходжаньне элемэнту",
+ "LISTS_INDEX_OF_TOOLTIP": "Вяртае індэкс першага/апошняга ўваходжаньня элемэнту ў сьпіс. Вяртае %1, калі элемэнт ня знойдзены.",
+ "LISTS_GET_INDEX_GET": "атрымаць",
+ "LISTS_GET_INDEX_GET_REMOVE": "атрымаць і выдаліць",
+ "LISTS_GET_INDEX_REMOVE": "выдаліць",
+ "LISTS_GET_INDEX_FROM_END": "№ з канца",
+ "LISTS_GET_INDEX_FIRST": "першы",
+ "LISTS_GET_INDEX_LAST": "апошні",
+ "LISTS_GET_INDEX_RANDOM": "выпадковы",
+ "LISTS_INDEX_FROM_START_TOOLTIP": "№%1 — першы элемэнт.",
+ "LISTS_INDEX_FROM_END_TOOLTIP": "№%1 — апошні элемэнт.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_FROM": "Вяртае элемэнт у пазначанай пазыцыі ў сьпісе.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_FIRST": "Вяртае першы элемэнт у сьпісе.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_LAST": "Вяртае апошні элемэнт у сьпісе.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_RANDOM": "Вяртае выпадковы элемэнт у сьпісе.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM": "Выдаляе і вяртае элемэнт у пазначанай пазыцыі ў сьпісе.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST": "Выдаляе і вяртае першы элемэнт у сьпісе.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST": "Выдаляе і вяртае апошні элемэнт у сьпісе.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM": "Выдаляе і вяртае выпадковы элемэнт у сьпісе.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM": "Выдаляе элемэнт у пазначанай пазыцыі ў сьпісе.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST": "Выдаляе першы элемэнт у сьпісе.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST": "Выдаляе апошні элемэнт у сьпісе.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM": "Выдаляе выпадковы элемэнт у сьпісе.",
+ "LISTS_SET_INDEX_SET": "усталяваць",
+ "LISTS_SET_INDEX_INSERT": "уставіць у",
+ "LISTS_SET_INDEX_INPUT_TO": "як",
+ "LISTS_SET_INDEX_TOOLTIP_SET_FROM": "Задае элемэнт у пазначанай пазыцыі ў сьпісе.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_FIRST": "Задае першы элемэнт у сьпісе.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_LAST": "Задае апошні элемэнт у сьпісе.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_RANDOM": "Задае выпадковы элемэнт у сьпісе.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_FROM": "Устаўляе элемэнт у пазначанай пазыцыі ў сьпісе.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST": "Устаўляе элемэнт у пачатак сьпісу.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_LAST": "Дадае элемэнт у канец сьпісу.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM": "Выпадковым чынам устаўляе элемэнт у сьпіс.",
+ "LISTS_GET_SUBLIST_START_FROM_START": "атрымаць падсьпіс з №",
+ "LISTS_GET_SUBLIST_START_FROM_END": "атрымаць падсьпіс з № з канца",
+ "LISTS_GET_SUBLIST_START_FIRST": "атрымаць падсьпіс зь першага",
+ "LISTS_GET_SUBLIST_END_FROM_START": "да #",
+ "LISTS_GET_SUBLIST_END_FROM_END": "па № з канца",
+ "LISTS_GET_SUBLIST_END_LAST": "да апошняга",
+ "LISTS_GET_SUBLIST_TOOLTIP": "Стварае копію пазначанай часткі сьпісу.",
+ "LISTS_SORT_HELPURL": "https://github.com/google/blockly/wiki/Lists#sorting-a-list",
+ "LISTS_SORT_TITLE": "сартаваць %1 %2 %3",
+ "LISTS_SORT_TOOLTIP": "Сартаваць копію сьпісу.",
+ "LISTS_SORT_ORDER_ASCENDING": "па павелічэньні",
+ "LISTS_SORT_ORDER_DESCENDING": "па зьмяншэньні",
+ "LISTS_SORT_TYPE_NUMERIC": "як лікі",
+ "LISTS_SORT_TYPE_TEXT": "паводле альфабэту",
+ "LISTS_SORT_TYPE_IGNORECASE": "паводле альфабэту, ігнараваць рэгістар",
+ "LISTS_SPLIT_LIST_FROM_TEXT": "стварыць сьпіс з тэксту",
+ "LISTS_SPLIT_TEXT_FROM_LIST": "стварыць тэкст са сьпісу",
+ "LISTS_SPLIT_WITH_DELIMITER": "з падзяляльнікам",
+ "LISTS_SPLIT_TOOLTIP_SPLIT": "Падзяліць тэкст у сьпіс тэкстаў, па падзяляльніках.",
+ "LISTS_SPLIT_TOOLTIP_JOIN": "Аб’ядноўвае сьпіс тэкстаў у адзін тэкст па падзяляльніках.",
+ "VARIABLES_GET_TOOLTIP": "Вяртае значэньне гэтай зьменнай.",
+ "VARIABLES_GET_CREATE_SET": "Стварыць блёк «усталяваць %1»",
+ "VARIABLES_SET": "усталяваць %1 да %2",
+ "VARIABLES_SET_TOOLTIP": "Надаць гэтай зьменнай значэньне ўстаўкі.",
+ "VARIABLES_SET_CREATE_GET": "Стварыць блёк «атрымаць %1»",
+ "PROCEDURES_DEFNORETURN_TITLE": "да",
+ "PROCEDURES_DEFNORETURN_PROCEDURE": "зрабіць што-небудзь",
+ "PROCEDURES_BEFORE_PARAMS": "з:",
+ "PROCEDURES_CALL_BEFORE_PARAMS": "з:",
+ "PROCEDURES_DEFNORETURN_TOOLTIP": "Стварае функцыю бяз выніку.",
+ "PROCEDURES_DEFNORETURN_COMMENT": "Апішыце гэтую функцыю…",
+ "PROCEDURES_DEFRETURN_RETURN": "вярнуць",
+ "PROCEDURES_DEFRETURN_TOOLTIP": "Стварае функцыю з вынікам.",
+ "PROCEDURES_ALLOW_STATEMENTS": "дазволіць зацьвярджэньне",
+ "PROCEDURES_DEF_DUPLICATE_WARNING": "Увага: гэтая функцыя мае парамэтры-дублікаты.",
+ "PROCEDURES_CALLNORETURN_HELPURL": "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29",
+ "PROCEDURES_CALLNORETURN_TOOLTIP": "Запусьціць функцыю вызначаную карыстальнікам '%1'.",
+ "PROCEDURES_CALLRETURN_HELPURL": "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29",
+ "PROCEDURES_CALLRETURN_TOOLTIP": "Запусьціць функцыю вызначаную карыстальнікам '%1' і выкарыстаць яе вынік.",
+ "PROCEDURES_MUTATORCONTAINER_TITLE": "парамэтры",
+ "PROCEDURES_MUTATORCONTAINER_TOOLTIP": "Дадаць, выдаліць ці запісаць чаргу ўваходных парамэтраў для гэтай функцыі.",
+ "PROCEDURES_MUTATORARG_TITLE": "назва парамэтру:",
+ "PROCEDURES_MUTATORARG_TOOLTIP": "Дадаць уваходныя парамэтры ў функцыю.",
+ "PROCEDURES_HIGHLIGHT_DEF": "Падсьвяціць вызначэньне функцыі",
+ "PROCEDURES_CREATE_DO": "Стварыць '%1'",
+ "PROCEDURES_IFRETURN_TOOLTIP": "Калі значэньне ісьціна, вярнуць другое значэньне.",
+ "PROCEDURES_IFRETURN_HELPURL": "http://c2.com/cgi/wiki?GuardClause",
+ "PROCEDURES_IFRETURN_WARNING": "Папярэджаньне: гэты блёк можа выкарыстоўвацца толькі ў вызначанай функцыі."
+}
diff --git a/blockly/msg/json/bg.json b/blockly/msg/json/bg.json
new file mode 100644
index 0000000..336c2af
--- /dev/null
+++ b/blockly/msg/json/bg.json
@@ -0,0 +1,312 @@
+{
+ "@metadata": {
+ "authors": [
+ "Gkostov",
+ "Vodnokon4e",
+ "Alpinistbg",
+ "Miroslav35232",
+ "StanProg"
+ ]
+ },
+ "VARIABLES_DEFAULT_NAME": "елемент",
+ "TODAY": "Днес",
+ "DUPLICATE_BLOCK": "Копирай",
+ "ADD_COMMENT": "Добави коментар",
+ "REMOVE_COMMENT": "Премахни коментар",
+ "EXTERNAL_INPUTS": "Външни входове",
+ "INLINE_INPUTS": "Вътрешни входове",
+ "DELETE_BLOCK": "Изтрий блок",
+ "DELETE_X_BLOCKS": "Изтрий %1 блока",
+ "DELETE_ALL_BLOCKS": "Изтриване на всички 1% блокове?",
+ "CLEAN_UP": "Премахни блокове",
+ "COLLAPSE_BLOCK": "Скрий блок",
+ "COLLAPSE_ALL": "Скрий блокове",
+ "EXPAND_BLOCK": "Покажи блок",
+ "EXPAND_ALL": "Покажи блокове",
+ "DISABLE_BLOCK": "Деактивирай блок",
+ "ENABLE_BLOCK": "Активирай блок",
+ "HELP": "Помощ",
+ "UNDO": "Отмяна",
+ "REDO": "Повторение",
+ "CHANGE_VALUE_TITLE": "Промени стойността:",
+ "RENAME_VARIABLE": "Преименувай променливата...",
+ "RENAME_VARIABLE_TITLE": "Преименувай всички '%1' променливи на:",
+ "NEW_VARIABLE": "Нова променлива...",
+ "NEW_VARIABLE_TITLE": "Ново име на променливата:",
+ "COLOUR_PICKER_HELPURL": "https://bg.wikipedia.org/wiki/Цвят_(оптика)",
+ "COLOUR_PICKER_TOOLTIP": "Избери цвят от палитрата.",
+ "COLOUR_RANDOM_TITLE": "случаен цвят",
+ "COLOUR_RANDOM_TOOLTIP": "Избери цвят на случаен принцип.",
+ "COLOUR_RGB_TITLE": "оцвети с",
+ "COLOUR_RGB_RED": "червен",
+ "COLOUR_RGB_GREEN": "зелен",
+ "COLOUR_RGB_BLUE": "син",
+ "COLOUR_RGB_TOOLTIP": "Създай цвят с избраните пропорции, червено, зелено и синьо. Всички стойности трябва да бъдат от 0 до 100.",
+ "COLOUR_BLEND_TITLE": "смеси",
+ "COLOUR_BLEND_COLOUR1": "цвят 1",
+ "COLOUR_BLEND_COLOUR2": "цвят 2",
+ "COLOUR_BLEND_RATIO": "съотношение",
+ "COLOUR_BLEND_TOOLTIP": "Смесва два цвят в дадено съотношение (0.0 - 1.0).",
+ "CONTROLS_REPEAT_HELPURL": "https://bg.wikipedia.org/wiki/Цикъл_(програмиране)#For_.D1.86.D0.B8.D0.BA.D1.8A.D0.BB.D1.8A.D1.82",
+ "CONTROLS_REPEAT_TITLE": "Повтори %1 пъти",
+ "CONTROLS_REPEAT_INPUT_DO": "изпълни",
+ "CONTROLS_REPEAT_TOOLTIP": "Изпълнява команди няколко пъти.",
+ "CONTROLS_WHILEUNTIL_OPERATOR_WHILE": "повтаряй докато е вярно, че",
+ "CONTROLS_WHILEUNTIL_OPERATOR_UNTIL": "повтаряй докато",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_WHILE": "Докато стойността е истина, изпълнявай командите.",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL": "Докато стойността е лъжа, изпълнявай командите.",
+ "CONTROLS_FOR_TOOLTIP": "Нека променлива \"%1\" премине през стойностите от началното до крайното число през зададената стъпка и изпълни избраните блокове.",
+ "CONTROLS_FOR_TITLE": "преброй чрез %1 от %2 до %3 през %4",
+ "CONTROLS_FOREACH_TITLE": "за всеки елемент %1 в списъка %2",
+ "CONTROLS_FOREACH_TOOLTIP": "За всеки елемент в списък присвои елемента на променливата '%1' и след това изпълни командите.",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK": "прекъсни цикъла",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE": "премини към следващата стъпка от цикъла",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK": "Прекъсни цикъла, в койте се съдержа тази команда.",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE": "Премини към следващата стъпка от цикъла",
+ "CONTROLS_FLOW_STATEMENTS_WARNING": "Предупреждение: Този блок може да се използва само в цикъл.",
+ "CONTROLS_IF_TOOLTIP_1": "Ако стойността е вярна, изпълни операциите.",
+ "CONTROLS_IF_TOOLTIP_2": "Ако стойността е вярна, изпълни първия блок. Иначе, изпълни втория блок.",
+ "CONTROLS_IF_TOOLTIP_3": "Ако първата стойност е вярна, изпълни първия блок. Иначе, ако втората стойност е вярна, изпълни втория блок.",
+ "CONTROLS_IF_TOOLTIP_4": "Ако първата стойност е вярна, изпълни първия блок. В противен случай, ако втората стойност е вярна, изпълни втория блок. Ако нито една от стойностите не е вярна, изпълни последния блок.",
+ "CONTROLS_IF_MSG_IF": "ако",
+ "CONTROLS_IF_MSG_ELSEIF": "иначе ако",
+ "CONTROLS_IF_MSG_ELSE": "иначе",
+ "CONTROLS_IF_IF_TOOLTIP": "Добави, премахни или пренареди частите, за да промениш този \"ако\" блок.",
+ "CONTROLS_IF_ELSEIF_TOOLTIP": "Добави условие към \"ако\" блока.",
+ "CONTROLS_IF_ELSE_TOOLTIP": "Добави окончателено, прихващащо всичко останали случаи условие към \"ако\" блока.",
+ "LOGIC_COMPARE_HELPURL": "https://en.wikipedia.org/wiki/Inequality_(mathematics)",
+ "LOGIC_COMPARE_TOOLTIP_EQ": "Върни вярно, ако двата параметъра са еднакви.",
+ "LOGIC_COMPARE_TOOLTIP_NEQ": "Върни вярно, ако двата параметъра са различни.",
+ "LOGIC_COMPARE_TOOLTIP_LT": "Върни вярно, ако първия параметър е по-малък от втория.",
+ "LOGIC_COMPARE_TOOLTIP_LTE": "Върни истина, ако първия параметър е по-малък или равен на втория.",
+ "LOGIC_COMPARE_TOOLTIP_GT": "Върни истина, ако първия параметър е по-голям от втория.",
+ "LOGIC_COMPARE_TOOLTIP_GTE": "Върни истина, ако първия параметър е по-голям или равен на втория.",
+ "LOGIC_OPERATION_TOOLTIP_AND": "Върни вярно, ако и двата параметъра са верни.",
+ "LOGIC_OPERATION_AND": "и",
+ "LOGIC_OPERATION_TOOLTIP_OR": "Върни \"вярно\", ако поне един от входовете е верен.",
+ "LOGIC_OPERATION_OR": "или",
+ "LOGIC_NEGATE_TITLE": "не %1",
+ "LOGIC_NEGATE_TOOLTIP": "Върни вярно, ако параметърът е неверен. Върни невярно, ако параметърът е верен.",
+ "LOGIC_BOOLEAN_TRUE": "вярно",
+ "LOGIC_BOOLEAN_FALSE": "невярно",
+ "LOGIC_BOOLEAN_TOOLTIP": "Връща вярно или невярно.",
+ "LOGIC_NULL": "нула",
+ "LOGIC_NULL_TOOLTIP": "Връща нула.",
+ "LOGIC_TERNARY_CONDITION": "тест",
+ "LOGIC_TERNARY_IF_TRUE": "Ако е вярно",
+ "LOGIC_TERNARY_IF_FALSE": "Ако е невярно",
+ "LOGIC_TERNARY_TOOLTIP": "Провери исловието в \"тест\". Ако условието е истина, върни \"ако е истина\" стойността, иначе върни \"ако е лъжа\" стойността.",
+ "MATH_NUMBER_HELPURL": "https://bg.wikipedia.org/wiki/Число",
+ "MATH_NUMBER_TOOLTIP": "Число.",
+ "MATH_ARITHMETIC_HELPURL": "https://bg.wikipedia.org/wiki/Аритметика",
+ "MATH_ARITHMETIC_TOOLTIP_ADD": "Върни сумата на двете числа.",
+ "MATH_ARITHMETIC_TOOLTIP_MINUS": "Върни разликата на двете числа.",
+ "MATH_ARITHMETIC_TOOLTIP_MULTIPLY": "Върни произведението на двете числа.",
+ "MATH_ARITHMETIC_TOOLTIP_DIVIDE": "Върни частното на двете числа.",
+ "MATH_ARITHMETIC_TOOLTIP_POWER": "Върни първото число, повдигнато на степен на второто число.",
+ "MATH_SINGLE_HELPURL": "https://en.wikipedia.org/wiki/Square_root",
+ "MATH_SINGLE_OP_ROOT": "корен квадратен",
+ "MATH_SINGLE_TOOLTIP_ROOT": "Връща корен квадратен от число.",
+ "MATH_SINGLE_OP_ABSOLUTE": "абсолютна",
+ "MATH_SINGLE_TOOLTIP_ABS": "Връща абсолютната стойност на число.",
+ "MATH_SINGLE_TOOLTIP_NEG": "Върни числото с обърнат знак.",
+ "MATH_SINGLE_TOOLTIP_LN": "Върни натуралния логаритъм от число.",
+ "MATH_SINGLE_TOOLTIP_LOG10": "Върни десетичния логаритъм на число.",
+ "MATH_SINGLE_TOOLTIP_EXP": "Върни е (неперовото число) на степен зададеното число.",
+ "MATH_SINGLE_TOOLTIP_POW10": "Върни 10 на степен зададеното число.",
+ "MATH_TRIG_HELPURL": "https://bg.wikipedia.org/wiki/Тригонометрична_функция",
+ "MATH_TRIG_TOOLTIP_SIN": "Върни синус от ъгъл в градуси (не в радиани)",
+ "MATH_TRIG_TOOLTIP_COS": "Върни косинус от ъгъл в градуси (не в радиани)",
+ "MATH_TRIG_TOOLTIP_TAN": "Върни тангенс от ъгъл в градуси (не в радиани)",
+ "MATH_TRIG_TOOLTIP_ASIN": "Върни аркуссинус от число.",
+ "MATH_TRIG_TOOLTIP_ACOS": "Върни аркускосинус от число.",
+ "MATH_TRIG_TOOLTIP_ATAN": "Върни аркустангенс от число.",
+ "MATH_CONSTANT_HELPURL": "http://bg.wikipedia.org/wiki/Константа",
+ "MATH_CONSTANT_TOOLTIP": "Връща една от често срещаните константи: π (3.141...), e (2.718...), φ (1.618...), sqrt(2) (1.414...), sqrt(½) (0.707...) или ∞ (безкрайност).",
+ "MATH_IS_EVEN": "е четно",
+ "MATH_IS_ODD": "е нечетно",
+ "MATH_IS_PRIME": "е просто",
+ "MATH_IS_WHOLE": "е цяло",
+ "MATH_IS_POSITIVE": "е положително",
+ "MATH_IS_NEGATIVE": "е отрицателно",
+ "MATH_IS_DIVISIBLE_BY": "се дели на",
+ "MATH_IS_TOOLTIP": "Проверете дали дадено число е четно, нечетно, просто, цяло, положително, отрицателно или дали се дели на друго число. Връща истина или лъжа.",
+ "MATH_CHANGE_HELPURL": "https://bg.wikipedia.org/wiki/Събиране",
+ "MATH_CHANGE_TITLE": "промени %1 на %2",
+ "MATH_CHANGE_TOOLTIP": "Добави число към променлива '%1'.",
+ "MATH_ROUND_HELPURL": "https://en.wikipedia.org/wiki/Rounding",
+ "MATH_ROUND_TOOLTIP": "Закръгли число нагоре или надолу.",
+ "MATH_ROUND_OPERATOR_ROUND": "закръгли",
+ "MATH_ROUND_OPERATOR_ROUNDUP": "закръгли нагоре",
+ "MATH_ROUND_OPERATOR_ROUNDDOWN": "закръгли надолу",
+ "MATH_ONLIST_OPERATOR_SUM": "сумирай списъка",
+ "MATH_ONLIST_TOOLTIP_SUM": "Върни сумата на всички числа в списъка.",
+ "MATH_ONLIST_OPERATOR_MIN": "най-малката стойност в списъка",
+ "MATH_ONLIST_TOOLTIP_MIN": "Върни най-малкото число в списъка.",
+ "MATH_ONLIST_OPERATOR_MAX": "най-голямата стойност в списъка",
+ "MATH_ONLIST_TOOLTIP_MAX": "Върни най-голямото число в списъка.",
+ "MATH_ONLIST_OPERATOR_AVERAGE": "средната стойност на числата в списъка",
+ "MATH_ONLIST_TOOLTIP_AVERAGE": "Върни средната стойност (аритметичното средно) на числата в списъка.",
+ "MATH_ONLIST_OPERATOR_MEDIAN": "медианата на списък",
+ "MATH_ONLIST_TOOLTIP_MEDIAN": "Върни медианата в списъка.",
+ "MATH_ONLIST_OPERATOR_MODE": "мода на списъка",
+ "MATH_ONLIST_TOOLTIP_MODE": "Върни списък на най-често срещаните елементи в списъка.",
+ "MATH_ONLIST_OPERATOR_STD_DEV": "стандартно отклонение на списък",
+ "MATH_ONLIST_TOOLTIP_STD_DEV": "Връща стандартното отклонение на списъка.",
+ "MATH_ONLIST_OPERATOR_RANDOM": "случаен елемент от списъка",
+ "MATH_ONLIST_TOOLTIP_RANDOM": "Върни случаен елемент от списъка.",
+ "MATH_MODULO_HELPURL": "http://bg.wikipedia.org/wiki/Остатък",
+ "MATH_MODULO_TITLE": "остатъка от делението на %1 на %2",
+ "MATH_MODULO_TOOLTIP": "Върни остатъка от деление на две числа.",
+ "MATH_CONSTRAIN_TITLE": "ограничи %1 между %2 и %3",
+ "MATH_CONSTRAIN_TOOLTIP": "Ограничи число да бъде в определените граници (включително).",
+ "MATH_RANDOM_INT_HELPURL": "https://bg.wikipedia.org/wiki/Генератор_на_случайни_числа",
+ "MATH_RANDOM_INT_TITLE": "случайно цяло число между %1 и %2",
+ "MATH_RANDOM_INT_TOOLTIP": "Върни случайно число в определените граници (включително).",
+ "MATH_RANDOM_FLOAT_HELPURL": "https://bg.wikipedia.org/wiki/Генератор_на_случайни_числа",
+ "MATH_RANDOM_FLOAT_TITLE_RANDOM": "случайно дробно число",
+ "MATH_RANDOM_FLOAT_TOOLTIP": "Върни случайно дробно число между 0.0 (включително) и 1.0 (без да го включва)",
+ "TEXT_TEXT_HELPURL": "https://bg.wikipedia.org/wiki/Низ",
+ "TEXT_TEXT_TOOLTIP": "Буква, дума или ред",
+ "TEXT_JOIN_TITLE_CREATEWITH": "създай текст с",
+ "TEXT_JOIN_TOOLTIP": "Създай текст като съчетаеш няколко елемента.",
+ "TEXT_CREATE_JOIN_TITLE_JOIN": "свържи",
+ "TEXT_CREATE_JOIN_TOOLTIP": "Добави, премахни или пренареди частите, за да промениш този текстов блок.",
+ "TEXT_CREATE_JOIN_ITEM_TOOLTIP": "Добави елемент към текста.",
+ "TEXT_APPEND_TO": "към",
+ "TEXT_APPEND_APPENDTEXT": "добави текста",
+ "TEXT_APPEND_TOOLTIP": "Добави текста към променливата \"%1\".",
+ "TEXT_LENGTH_TITLE": "дължината на %1",
+ "TEXT_LENGTH_TOOLTIP": "Връща броя на символите (включително и интервалите) в текста.",
+ "TEXT_ISEMPTY_TITLE": "%1 е празен",
+ "TEXT_ISEMPTY_TOOLTIP": "Връща истина, ако текста е празен.",
+ "TEXT_INDEXOF_TOOLTIP": "Връща индекса на първото/последното срещане на първия текст във втория текст. Връща %1, ако текстът не е намерен.",
+ "TEXT_INDEXOF_INPUT_INTEXT": "в текста",
+ "TEXT_INDEXOF_OPERATOR_FIRST": "намери първата поява на текста",
+ "TEXT_INDEXOF_OPERATOR_LAST": "намери последната поява на текста",
+ "TEXT_CHARAT_INPUT_INTEXT": "от текста",
+ "TEXT_CHARAT_FROM_START": "вземи поредна буква",
+ "TEXT_CHARAT_FROM_END": "вземи поредна буква от края",
+ "TEXT_CHARAT_FIRST": "вземи първата буква",
+ "TEXT_CHARAT_LAST": "вземи последната буква",
+ "TEXT_CHARAT_RANDOM": "вземи произволна буква",
+ "TEXT_CHARAT_TOOLTIP": "Връща буквата в определена позиция.",
+ "TEXT_GET_SUBSTRING_TOOLTIP": "Връща определена част от текста.",
+ "TEXT_GET_SUBSTRING_INPUT_IN_TEXT": "В текста",
+ "TEXT_GET_SUBSTRING_START_FROM_START": "вземи текста от буква №",
+ "TEXT_GET_SUBSTRING_START_FROM_END": "вземи текста от буква № (броено отзад-напред)",
+ "TEXT_GET_SUBSTRING_START_FIRST": "вземи текста от първата буква",
+ "TEXT_GET_SUBSTRING_END_FROM_START": "до буква №",
+ "TEXT_GET_SUBSTRING_END_FROM_END": "со буква № (броено отзад-напред)",
+ "TEXT_GET_SUBSTRING_END_LAST": "со последната буква.",
+ "TEXT_CHANGECASE_TOOLTIP": "Връща копие на текста със сменени малки и главни букви.",
+ "TEXT_CHANGECASE_OPERATOR_UPPERCASE": "с ГЛАВНИ БУКВИ",
+ "TEXT_CHANGECASE_OPERATOR_LOWERCASE": "с малки букви",
+ "TEXT_CHANGECASE_OPERATOR_TITLECASE": "с Главна Буква На Всяка Дума",
+ "TEXT_TRIM_TOOLTIP": "Върни копие на текста с пемахнати интервали от диния или двата края.",
+ "TEXT_TRIM_OPERATOR_BOTH": "премахни интервалите от двете страни",
+ "TEXT_TRIM_OPERATOR_LEFT": "премахни интервалите отляво",
+ "TEXT_TRIM_OPERATOR_RIGHT": "премахни интервалите отдясно",
+ "TEXT_PRINT_TITLE": "отпечатай %1",
+ "TEXT_PRINT_TOOLTIP": "Отпечатай текста, числото или друга стойност.",
+ "TEXT_PROMPT_TYPE_TEXT": "питай за текст със съобщение",
+ "TEXT_PROMPT_TYPE_NUMBER": "питай за число със съобщение",
+ "TEXT_PROMPT_TOOLTIP_NUMBER": "Питай потребителя за число.",
+ "TEXT_PROMPT_TOOLTIP_TEXT": "Питай потребителя за текст.",
+ "LISTS_CREATE_EMPTY_TITLE": "създай празен списък",
+ "LISTS_CREATE_EMPTY_TOOLTIP": "Връща списък с дължина 0, не съдържащ данни",
+ "LISTS_CREATE_WITH_TOOLTIP": "Създай списък с произволен брой елементи.",
+ "LISTS_CREATE_WITH_INPUT_WITH": "създай списък с",
+ "LISTS_CREATE_WITH_CONTAINER_TITLE_ADD": "списък",
+ "LISTS_CREATE_WITH_CONTAINER_TOOLTIP": "Добави, премахни или пренареди частите, за да промениш този списъчен блок.",
+ "LISTS_CREATE_WITH_ITEM_TOOLTIP": "Добави елемент към текста.",
+ "LISTS_REPEAT_TOOLTIP": "Създава списък, състоящ се от определен брой копия на елемента.",
+ "LISTS_REPEAT_TITLE": "създай списък от %1 повторен %2 пъти",
+ "LISTS_LENGTH_TITLE": "дължината на %1",
+ "LISTS_LENGTH_TOOLTIP": "Връща дължината на списък.",
+ "LISTS_ISEMPTY_TITLE": "%1 е празен",
+ "LISTS_ISEMPTY_TOOLTIP": "Връща стойност вярно, ако списъкът е празен.",
+ "LISTS_INLIST": "в списъка",
+ "LISTS_INDEX_OF_FIRST": "намери първата поява на елемента",
+ "LISTS_INDEX_OF_LAST": "намери последната поява на елемента",
+ "LISTS_INDEX_OF_TOOLTIP": "Връща индекса на първото/последното появяване на елемента в списъка. Връща %1 ако елементът не е намерен.",
+ "LISTS_GET_INDEX_GET": "вземи",
+ "LISTS_GET_INDEX_GET_REMOVE": "вземи и премахни",
+ "LISTS_GET_INDEX_REMOVE": "премахни",
+ "LISTS_GET_INDEX_FROM_END": "№ от края",
+ "LISTS_GET_INDEX_FIRST": "първия",
+ "LISTS_GET_INDEX_LAST": "последния",
+ "LISTS_GET_INDEX_RANDOM": "произволен",
+ "LISTS_INDEX_FROM_START_TOOLTIP": "%1 е първият елемент.",
+ "LISTS_INDEX_FROM_END_TOOLTIP": "%1 е последният елемент.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_FROM": "Връща елемента на определената позиция в списък.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_FIRST": "Връща първия елемент в списък.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_LAST": "Връща последния елемент в списък.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_RANDOM": "Връща случаен елемент от списъка.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM": "Премахва и връща елемента на определена позиция в списък.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST": "Премахва и връща първия елемент в списък.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST": "Премахва и връща последния елемент в списък.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM": "Премахва и връща случаен елемент в списък.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM": "Премахва елемент на определена позиция в списък.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST": "Премахва първия елемент в списък.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST": "Премахва последния елемент в списък.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM": "Премахва случаен елемент от списък.",
+ "LISTS_SET_INDEX_SET": "промени",
+ "LISTS_SET_INDEX_INSERT": "вмъкни на позиция",
+ "LISTS_SET_INDEX_INPUT_TO": "следното",
+ "LISTS_SET_INDEX_TOOLTIP_SET_FROM": "Променя елемента на определена позиция в списък.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_FIRST": "Променя първия елемент в списък.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_LAST": "Променя последния елемент в списък.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_RANDOM": "Променя случаен елемент от списък.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_FROM": "Вмъква елемент на определена позиция в списък.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST": "Вмъква елемент в началото на списъка.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_LAST": "Добави елемент в края на списък.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM": "Вмъква елемент на произволно място в списък.",
+ "LISTS_GET_SUBLIST_START_FROM_START": "вземи подсписък от №",
+ "LISTS_GET_SUBLIST_START_FROM_END": "вземи подсписък от № от края",
+ "LISTS_GET_SUBLIST_START_FIRST": "вземи подсписък от първия",
+ "LISTS_GET_SUBLIST_END_FROM_START": "до #",
+ "LISTS_GET_SUBLIST_END_FROM_END": "до № открая",
+ "LISTS_GET_SUBLIST_END_LAST": "до края",
+ "LISTS_GET_SUBLIST_TOOLTIP": "Копира част от списък.",
+ "LISTS_SORT_HELPURL": "https://github.com/google/blockly/wiki/Lists#sorting-a-list",
+ "LISTS_SORT_TOOLTIP": "Подреди копие на списъка.",
+ "LISTS_SORT_ORDER_ASCENDING": "възходящо",
+ "LISTS_SORT_ORDER_DESCENDING": "низходящо",
+ "LISTS_SORT_TYPE_NUMERIC": "в числов ред",
+ "LISTS_SORT_TYPE_TEXT": "по азбучен ред",
+ "LISTS_SORT_TYPE_IGNORECASE": "по азбучен ред, без отчитане на малки и главни букви",
+ "LISTS_SPLIT_LIST_FROM_TEXT": "Направи списък от текст",
+ "LISTS_SPLIT_TEXT_FROM_LIST": "направи текст от списък",
+ "LISTS_SPLIT_WITH_DELIMITER": "с разделител",
+ "LISTS_SPLIT_TOOLTIP_SPLIT": "Разделя текст в списък на текстове, по всеки разделител.",
+ "LISTS_SPLIT_TOOLTIP_JOIN": "Събира списък от текстове в един текст, раделени с разделител.",
+ "VARIABLES_GET_TOOLTIP": "Връща стойността на тази променлива.",
+ "VARIABLES_GET_CREATE_SET": "Създай \"промени стойността на %1\"",
+ "VARIABLES_SET": "нека %1 бъде %2",
+ "VARIABLES_SET_TOOLTIP": "Задава тази променлива да бъде равен на входа.",
+ "VARIABLES_SET_CREATE_GET": "Създай \"вземи стойността на %1\"",
+ "PROCEDURES_DEFNORETURN_TITLE": "за да",
+ "PROCEDURES_DEFNORETURN_PROCEDURE": "направиш",
+ "PROCEDURES_BEFORE_PARAMS": "със:",
+ "PROCEDURES_CALL_BEFORE_PARAMS": "със:",
+ "PROCEDURES_DEFNORETURN_TOOLTIP": "Създава функция, която не връща резултат.",
+ "PROCEDURES_DEFNORETURN_COMMENT": "Опишете тази функция...",
+ "PROCEDURES_DEFRETURN_RETURN": "върни",
+ "PROCEDURES_DEFRETURN_TOOLTIP": "Създава функция, която връща резултат.",
+ "PROCEDURES_ALLOW_STATEMENTS": "позволи операциите",
+ "PROCEDURES_DEF_DUPLICATE_WARNING": "Предупреждение: Тази функция има дублиращи се параметри.",
+ "PROCEDURES_CALLNORETURN_HELPURL": "https://bg.wikipedia.org/wiki/Подпрограма",
+ "PROCEDURES_CALLNORETURN_TOOLTIP": "Изпълни дефинирана от потребителя функция \"%1\".",
+ "PROCEDURES_CALLRETURN_HELPURL": "https://bg.wikipedia.org/wiki/Подпрограма",
+ "PROCEDURES_CALLRETURN_TOOLTIP": "Изпълни дефинирана от потребителя функция \"%1\" и използвай резултата.",
+ "PROCEDURES_MUTATORCONTAINER_TITLE": "вход",
+ "PROCEDURES_MUTATORCONTAINER_TOOLTIP": "Добави, премахни или пренареди входните параметри за тази функция.",
+ "PROCEDURES_MUTATORARG_TITLE": "име на параметър",
+ "PROCEDURES_MUTATORARG_TOOLTIP": "Добавяне на параметър към функцията.",
+ "PROCEDURES_HIGHLIGHT_DEF": "Покажи дефиницията на функцията",
+ "PROCEDURES_CREATE_DO": "Създай '%1'",
+ "PROCEDURES_IFRETURN_TOOLTIP": "Ако стойността е истина, върни втората стойност.",
+ "PROCEDURES_IFRETURN_HELPURL": "http://c2.com/cgi/wiki?GuardClause",
+ "PROCEDURES_IFRETURN_WARNING": "Предупреждение: Този блок може да се използва само във функция."
+}
diff --git a/blockly/msg/json/bn.json b/blockly/msg/json/bn.json
new file mode 100644
index 0000000..1a4e1aa
--- /dev/null
+++ b/blockly/msg/json/bn.json
@@ -0,0 +1,156 @@
+{
+ "@metadata": {
+ "authors": [
+ "Aftabuzzaman",
+ "Rakibul",
+ "Tauhid16",
+ "MasterMinhaz",
+ "এম আবু সাঈদ"
+ ]
+ },
+ "VARIABLES_DEFAULT_NAME": "পদ",
+ "TODAY": "আজ",
+ "DUPLICATE_BLOCK": "প্রতিলিপি",
+ "ADD_COMMENT": "মন্তব্য যোগ করুন",
+ "REMOVE_COMMENT": "মন্তব্য সরাও",
+ "EXTERNAL_INPUTS": "বহি:স্থ ইনপুট",
+ "INLINE_INPUTS": "সারি ইনপুট",
+ "DELETE_BLOCK": "ব্লকটি মুছে ফেল",
+ "DELETE_X_BLOCKS": "%1 ব্লক অপসারণ কর",
+ "EXPAND_BLOCK": "ব্লকটি সম্প্রসারিত কর",
+ "EXPAND_ALL": "ব্লকগুলো সম্প্রসারিত কর",
+ "DISABLE_BLOCK": "ব্লকটি বিকল কর",
+ "ENABLE_BLOCK": "ব্লকটি সচল কর",
+ "HELP": "সাহায্য",
+ "UNDO": "পূর্বাবস্থা",
+ "REDO": "পুনরায় করুন",
+ "CHANGE_VALUE_TITLE": "মান পরিবর্তন করুন:",
+ "RENAME_VARIABLE": "চলকের নাম পরিবর্তন...",
+ "NEW_VARIABLE": "নতুন চলক...",
+ "NEW_VARIABLE_TITLE": "নতুন চলকের নাম:",
+ "COLOUR_PICKER_TOOLTIP": "প্যালেট থেকে একটি রং পছন্দ করুন",
+ "COLOUR_RANDOM_TITLE": "এলোমেলো রং",
+ "COLOUR_RANDOM_TOOLTIP": "এলোমেলোভাবে একটি রং পছন্দ করুন।",
+ "COLOUR_RGB_TITLE": "রং সহ",
+ "COLOUR_RGB_RED": "লাল",
+ "COLOUR_RGB_GREEN": "সবুজ",
+ "COLOUR_RGB_BLUE": "নীল",
+ "COLOUR_RGB_TOOLTIP": "একটি রং তৈরি করুন নির্দিষ্ট পরিমাণে লাল, সবুজ এবং নীল রং মিশ্রিত করে। প্রত্যেকটির মান অবশ্যই ০ থেকে ১০০ এর মধ্যে হতে হবে।",
+ "COLOUR_BLEND_TITLE": "মিশ্রণ",
+ "COLOUR_BLEND_COLOUR1": "রং ১",
+ "COLOUR_BLEND_COLOUR2": "রং ২",
+ "COLOUR_BLEND_RATIO": "অনুপাত",
+ "COLOUR_BLEND_TOOLTIP": "প্রদত্ত অনুপাত(০.০ - ১.০) অনুসারে দুটি রং একসাথে মিশ্রিত করুন।",
+ "CONTROLS_REPEAT_TITLE": "%1 বার পুনরাবৃত্তি করো",
+ "CONTROLS_REPEAT_INPUT_DO": "করুন",
+ "CONTROLS_FOR_TITLE": "গণনা কর %1 %4 দিয়ে %2 থেকে %3",
+ "CONTROLS_FOREACH_TITLE": "প্রত্যেকটি পদের জন্য %1 তালিকার মধ্যে %2",
+ "CONTROLS_FLOW_STATEMENTS_WARNING": "সর্তকীবার্তা: এই ব্লকটি শুধুমাত্র লুপের মধ্যে ব্যবহার করা যাবে।",
+ "CONTROLS_IF_MSG_IF": "যদি",
+ "CONTROLS_IF_MSG_ELSEIF": "নতুবা যদি",
+ "CONTROLS_IF_MSG_ELSE": "নতুবা",
+ "CONTROLS_IF_ELSEIF_TOOLTIP": "যদি নামক ব্লক এ একটি শর্ত যোগ করুন।",
+ "LOGIC_COMPARE_TOOLTIP_EQ": "পাঠাবে সত্য যদি উভয় ইনপুটই সমান হয়।",
+ "LOGIC_COMPARE_TOOLTIP_NEQ": "পাঠাবে সত্য যদি উভয় ইনপুটই সমান না হয়।",
+ "LOGIC_COMPARE_TOOLTIP_LT": "পাঠাবে সত্য যদি প্রথম ইনপুট দ্বিতীয় ইনপুট থেকে ছোট হয়।",
+ "LOGIC_COMPARE_TOOLTIP_LTE": "পাঠাবে সত্য যদি প্রথম ইনপুট দ্বিতীয় ইনপুট থেকে ছোট অথবা সমান হয়।",
+ "LOGIC_COMPARE_TOOLTIP_GT": "পাঠাবে সত্য যদি প্রথম ইনপুট দ্বিতীয় ইনপুট থেকে বড় হয়।",
+ "LOGIC_COMPARE_TOOLTIP_GTE": "পাঠাবে সত্য যদি প্রথম ইনপুট দ্বিতীয় ইনপুট থেকে বড় অথবা সমান হয়।",
+ "LOGIC_OPERATION_TOOLTIP_AND": "পাঠাবে সত্য যদি উভয় ইনপুটই সত্য হয়।",
+ "LOGIC_OPERATION_AND": "এবং",
+ "LOGIC_OPERATION_TOOLTIP_OR": "পাঠাবে সত্য যদি অন্ততপক্ষে যেকোন একটি ইনপুট সত্য হয়।",
+ "LOGIC_OPERATION_OR": "অথবা",
+ "LOGIC_NEGATE_TITLE": "%1 নয়",
+ "LOGIC_NEGATE_TOOLTIP": "পাঠাবে সত্য যদি ইনপুট মিথ্যা হয়। পাঠাবে মিথ্যা যদি ইনপুট সত্য হয়।",
+ "LOGIC_BOOLEAN_TRUE": "সত্য",
+ "LOGIC_BOOLEAN_FALSE": "মিথ্যা",
+ "LOGIC_BOOLEAN_TOOLTIP": "পাঠাবে হয় সত্য অথবা মিথ্যা।",
+ "LOGIC_NULL": "কিছু না",
+ "LOGIC_NULL_TOOLTIP": "কিছু ফেরত দিবে না।",
+ "LOGIC_TERNARY_CONDITION": "পরীক্ষা",
+ "LOGIC_TERNARY_IF_TRUE": "যদি সত্য হয়",
+ "LOGIC_TERNARY_IF_FALSE": "যদি মিথ্যা হয়",
+ "MATH_NUMBER_HELPURL": "https://bn.wikipedia.org/wiki/সংখ্যা",
+ "MATH_NUMBER_TOOLTIP": "একটি সংখ্যা।",
+ "MATH_ARITHMETIC_TOOLTIP_ADD": "পাঠাবে দুটি সংখ্যার যোগফল।",
+ "MATH_ARITHMETIC_TOOLTIP_MINUS": "পাঠাবে দুটি সংখ্যার বিয়োগফল।",
+ "MATH_ARITHMETIC_TOOLTIP_MULTIPLY": "পাঠাবে দুটি সংখ্যার গুণফল।",
+ "MATH_ARITHMETIC_TOOLTIP_DIVIDE": "পাঠাবে দুটি সংখ্যার ভাগফল।",
+ "MATH_SINGLE_OP_ROOT": "বর্গমূল",
+ "MATH_SINGLE_TOOLTIP_ROOT": "পাঠাবে একটি সংখ্যার বর্গমূল।",
+ "MATH_SINGLE_OP_ABSOLUTE": "পরম",
+ "MATH_SINGLE_TOOLTIP_ABS": "পাঠাবে সংখ্যার পরমমান।",
+ "MATH_IS_EVEN": "জোড় সংখ্যা",
+ "MATH_IS_ODD": "বিজোড় সংখ্যা",
+ "MATH_IS_PRIME": "মৌলিক সংখ্যা",
+ "MATH_IS_POSITIVE": "ইতিবাচক",
+ "MATH_IS_NEGATIVE": "নেতিবাচক",
+ "MATH_IS_DIVISIBLE_BY": "দ্বারা বিভাজ্য",
+ "MATH_CHANGE_TITLE": "%2 দ্বারা %1 পরিবর্তন",
+ "MATH_ONLIST_OPERATOR_SUM": "তালিকার যোগফল",
+ "MATH_ONLIST_TOOLTIP_SUM": "পাঠাবে তালিকার সব সংখ্যার যোগফল।",
+ "MATH_ONLIST_OPERATOR_MIN": "তালিকার মধ্যে সর্বনিম্ন",
+ "MATH_ONLIST_TOOLTIP_MIN": "তালিকার মধ্যে সর্বনিম্ন সংখ্যাটি পাঠাও",
+ "MATH_ONLIST_OPERATOR_MAX": "তালিকার মধ্যে সর্বোচ্চ",
+ "MATH_ONLIST_TOOLTIP_MAX": "তালিকার মধ্যে সর্বোচ্চ সংখ্যাটি পাঠাও",
+ "MATH_ONLIST_OPERATOR_AVERAGE": "তালিকার গড়",
+ "MATH_ONLIST_TOOLTIP_AVERAGE": "পাঠাবে তালিকার সব সংখ্যার গড়।",
+ "MATH_ONLIST_OPERATOR_MEDIAN": "তালিকার মধ্যমা",
+ "MATH_ONLIST_TOOLTIP_MEDIAN": "তালিকার মধ্যমা সংখ্যাটি পাঠাবে।",
+ "MATH_ONLIST_OPERATOR_RANDOM": "তালিকার এলোমেলো পদ",
+ "MATH_ONLIST_TOOLTIP_RANDOM": "তালিকা থেকে এলোমেলোভাবে একটি পদ পাঠাবে।",
+ "MATH_MODULO_TITLE": "%1 ÷ %2 এর ভাগশেষ",
+ "MATH_RANDOM_FLOAT_TITLE_RANDOM": "এলোমেলো ভগ্নাংশ",
+ "TEXT_TEXT_TOOLTIP": "একটি অক্ষর, শব্দ অথবা বাক্য।",
+ "TEXT_CREATE_JOIN_TITLE_JOIN": "যোগ",
+ "TEXT_CREATE_JOIN_ITEM_TOOLTIP": "লেখাটিতে একটি পদ যোগ করুন।",
+ "TEXT_APPEND_TO": "এতে",
+ "TEXT_LENGTH_TITLE": "%1-এর দৈর্ঘ্য",
+ "TEXT_ISEMPTY_TITLE": "%1 খালি",
+ "TEXT_ISEMPTY_TOOLTIP": "পাঠাবে সত্য যদি সরবরাহকৃত লেখাটি খালি হয়।",
+ "TEXT_CHANGECASE_OPERATOR_UPPERCASE": "বড়হাতের অক্ষরে",
+ "TEXT_CHANGECASE_OPERATOR_LOWERCASE": "ছোটহাতের অক্ষরে",
+ "TEXT_TRIM_OPERATOR_BOTH": "উভয় পাশ থেকে খালি অংশ ছাটাই",
+ "TEXT_TRIM_OPERATOR_LEFT": "বামপাশ থেকে খালি অংশ ছাটাই",
+ "TEXT_TRIM_OPERATOR_RIGHT": "ডানপাশ থেকে খালি অংশ ছাটাই",
+ "TEXT_PRINT_TITLE": "%1 মুদ্রণ করুন",
+ "LISTS_CREATE_EMPTY_TITLE": "খালি তালিকা তৈরি করুন",
+ "LISTS_CREATE_EMPTY_TOOLTIP": "পাঠাবে একটি তালিকা, দের্ঘ্য হবে ০, কোন উপাত্ত থাকবে না",
+ "LISTS_CREATE_WITH_TOOLTIP": "যেকোন সংখ্যক পদ নিয়ে একটি তালিকা তৈরি করুন।",
+ "LISTS_CREATE_WITH_CONTAINER_TITLE_ADD": "তালিকা",
+ "LISTS_CREATE_WITH_ITEM_TOOLTIP": "তালিকায় একটি পদ যোগ করুন।",
+ "LISTS_LENGTH_TITLE": "%1-এর দৈর্ঘ্য",
+ "LISTS_LENGTH_TOOLTIP": "একটি তালিকার দৈর্ঘ্য পাঠাবে।",
+ "LISTS_ISEMPTY_TITLE": "%1 খালি",
+ "LISTS_ISEMPTY_TOOLTIP": "পাঠাবে সত্য যদি তালিকাটি খালি হয়।",
+ "LISTS_INLIST": "তালিকার মধ্যে",
+ "LISTS_INDEX_OF_FIRST": "আইটেমের প্রথম সংঘটন খুঁজুন",
+ "LISTS_INDEX_OF_LAST": "আইটেমের শেষ সংঘটন খুঁজুন",
+ "LISTS_GET_INDEX_GET": "নিন",
+ "LISTS_GET_INDEX_GET_REMOVE": "নিন ও সরান",
+ "LISTS_GET_INDEX_REMOVE": "অপসারণ",
+ "LISTS_GET_INDEX_FROM_END": "# শেষ থেকে",
+ "LISTS_GET_INDEX_FIRST": "প্রথম",
+ "LISTS_GET_INDEX_LAST": "শেষ",
+ "LISTS_GET_INDEX_RANDOM": "এলোমেলো",
+ "LISTS_GET_INDEX_TOOLTIP_GET_FIRST": "তালিকার প্রথম পদটি পাঠাবে।",
+ "LISTS_GET_INDEX_TOOLTIP_GET_LAST": "তালিকার শেষ পদটি পাঠাবে।",
+ "LISTS_GET_INDEX_TOOLTIP_GET_RANDOM": "এলোমেলোভাবে তালিকার যেকোন একটি পদ পাঠাবে।",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST": "অপসারণ করুন এবং তালিকার প্রথম পদটি পাঠান।",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST": "অপসারণ করুন এবং তালিকার শেষ পদটি পাঠান।",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM": "অপসারণ করুন এবং তালিকার এলোমেলো একটি পদ পাঠান।",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST": "তালিকার প্রথম পদটি অপসারণ করা হয়েছে।",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST": "তালিকার শেষ পদটি অপসারণ করা হয়েছে।",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM": "তালিকা থেকে এলোমেলো একটি পদ অপসারণ করা হয়েছে।",
+ "LISTS_SPLIT_LIST_FROM_TEXT": "লিখা থেকে তালিকা তৈরি করুন",
+ "LISTS_SPLIT_TEXT_FROM_LIST": "তালিকা থেকে লিখা তৈরি করুন",
+ "VARIABLES_SET_CREATE_GET": "'%1 নিন' তৈরি করুন",
+ "PROCEDURES_DEFNORETURN_TITLE": "এতে",
+ "PROCEDURES_DEFNORETURN_TOOLTIP": "আউটপুট ছাড়া একটি ক্রিয়া তৈরি করুন।",
+ "PROCEDURES_DEFRETURN_RETURN": "পাঠাবে",
+ "PROCEDURES_DEFRETURN_TOOLTIP": "আউটপুট সহ একটি ক্রিয়া তৈরি করুন।",
+ "PROCEDURES_MUTATORARG_TITLE": "ইনপুটের নাম:",
+ "PROCEDURES_MUTATORARG_TOOLTIP": "ক্রিয়াতে একটি ইনপুট যোগ করুন।",
+ "PROCEDURES_HIGHLIGHT_DEF": "ক্রিয়ার সংজ্ঞা উজ্জল করুন",
+ "PROCEDURES_IFRETURN_TOOLTIP": "যদি মান সত্য হয় তাহলে দ্বিতীয় মান পাঠাবে।"
+}
diff --git a/blockly/msg/json/br.json b/blockly/msg/json/br.json
new file mode 100644
index 0000000..8b62774
--- /dev/null
+++ b/blockly/msg/json/br.json
@@ -0,0 +1,315 @@
+{
+ "@metadata": {
+ "authors": [
+ "Fohanno",
+ "Y-M D",
+ "Gwenn-Ael"
+ ]
+ },
+ "VARIABLES_DEFAULT_NAME": "elfenn",
+ "TODAY": "Hiziv",
+ "DUPLICATE_BLOCK": "Eiladuriñ",
+ "ADD_COMMENT": "Ouzhpennañ un evezhiadenn",
+ "REMOVE_COMMENT": "Lemel an evezhiadenn kuit",
+ "EXTERNAL_INPUTS": "Monedoù diavaez",
+ "INLINE_INPUTS": "Monedoù enlinenn",
+ "DELETE_BLOCK": "Dilemel ar bloc'h",
+ "DELETE_X_BLOCKS": "Dilemel %1 bloc'h",
+ "DELETE_ALL_BLOCKS": "Diverkañ an holl vloc'hoù %1 ?",
+ "CLEAN_UP": "Naetaat ar bloc'hoù",
+ "COLLAPSE_BLOCK": "Bihanaat ar bloc'h",
+ "COLLAPSE_ALL": "Bihanaat ar bloc'hoù",
+ "EXPAND_BLOCK": "Astenn ar bloc'h",
+ "EXPAND_ALL": "Astenn ar bloc'hoù",
+ "DISABLE_BLOCK": "Diweredekaat ar bloc'h",
+ "ENABLE_BLOCK": "Gweredekaat ar bloc'h",
+ "HELP": "Skoazell",
+ "UNDO": "Dizober",
+ "REDO": "Adober",
+ "CHANGE_VALUE_TITLE": "Kemmañ an dalvoudenn :",
+ "RENAME_VARIABLE": "Adenvel an argemmenn...",
+ "RENAME_VARIABLE_TITLE": "Adenvel an holl argemmennoù '%1' e :",
+ "NEW_VARIABLE": "Krouiñ un argemm nevez...",
+ "NEW_VARIABLE_TITLE": "Anv an argemmenn nevez :",
+ "VARIABLE_ALREADY_EXISTS": "Un argemm anvet '%1' zo anezhañ dija.",
+ "DELETE_VARIABLE_CONFIRMATION": "Lemel %1 implij eus an argemm '%2' ?",
+ "DELETE_VARIABLE": "Lemel an argemm '%1'",
+ "COLOUR_PICKER_HELPURL": "http://br.wikipedia.org/wiki/Liv",
+ "COLOUR_PICKER_TOOLTIP": "Dibab ul liv diwar al livaoueg.",
+ "COLOUR_RANDOM_TITLE": "liv dargouezhek",
+ "COLOUR_RANDOM_TOOLTIP": "Tennañ ul liv d'ar sord",
+ "COLOUR_RGB_TITLE": "liv gant",
+ "COLOUR_RGB_RED": "ruz",
+ "COLOUR_RGB_GREEN": "gwer",
+ "COLOUR_RGB_BLUE": "glas",
+ "COLOUR_RGB_TOOLTIP": "Krouiñ ul liv gant ar c'hementad spisaet a ruz, a wer hag a c'hlas. Etre 0 ha 100 e tle bezañ an holl dalvoudoù.",
+ "COLOUR_BLEND_TITLE": "meskañ",
+ "COLOUR_BLEND_COLOUR1": "liv 1",
+ "COLOUR_BLEND_COLOUR2": "liv 2",
+ "COLOUR_BLEND_RATIO": "feur",
+ "COLOUR_BLEND_TOOLTIP": "a gemmesk daou liv gant ur feur roet(0.0 - 1.0).",
+ "CONTROLS_REPEAT_HELPURL": "https://en.wikipedia.org/wiki/For_loop",
+ "CONTROLS_REPEAT_TITLE": "adober %1 gwech",
+ "CONTROLS_REPEAT_INPUT_DO": "ober",
+ "CONTROLS_REPEAT_TOOLTIP": "Seveniñ urzhioù zo meur a wech",
+ "CONTROLS_WHILEUNTIL_OPERATOR_WHILE": "adober keit ha ma",
+ "CONTROLS_WHILEUNTIL_OPERATOR_UNTIL": "adober betek",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_WHILE": "Keit ha ma vez gwir un dalvoudenn, seveniñ urzhioù zo neuze.",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL": "Keit ha ma vez faos un dalvoudenn,seveniñ urzhioù zo neuze.",
+ "CONTROLS_FOR_TOOLTIP": "Ober e doare ma kemero an argemmenn \"%1\" an talvoudennoù adalek niverenn an deroù betek niverenn an dibenn, en ur inkremantiñ an esaouenn, ha seveniñ an urzhioù spisaet.",
+ "CONTROLS_FOR_TITLE": "kontañ gant %1 eus %2 da %3 dre %4",
+ "CONTROLS_FOREACH_TITLE": "evit pep elfenn %1 er roll %2",
+ "CONTROLS_FOREACH_TOOLTIP": "Evit pep elfenn en ur roll, reiñ talvoud an elfenn d'an argemmenn '%1', ha seveniñ urzhioù zo da c'houde.",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK": "Mont e-maez an adlañsañ",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE": "Kenderc'hel gant iteradur nevez ar rodell",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK": "Mont e-maez ar boukl engronnus.",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE": "Lammat ar rest eus ar rodell, ha kenderc'hel gant an iteradur war-lerc'h.",
+ "CONTROLS_FLOW_STATEMENTS_WARNING": "Diwallit : ne c'hall ar bloc'h-mañ bezañ implijet nemet e-barzh ur boukl.",
+ "CONTROLS_IF_TOOLTIP_1": "Ma vez gwir un dalvoudenn, seveniñ urzhioù zo neuze.",
+ "CONTROLS_IF_TOOLTIP_2": "Ma vez gwir un dalvoudenn, seveniñ ar c'henañ bloc'had urzhioù neuze. Anez seveniñ an eil bloc'had urzhioù.",
+ "CONTROLS_IF_TOOLTIP_3": "Ma vez gwir an dalvoudenn gentañ, seveniñ ar c'hentañ bloc'had urzhioù neuze. Anez ma vez gwir an eil talvoudenn, seveniñ an eil bloc'had urzhioù.",
+ "CONTROLS_IF_TOOLTIP_4": "Ma vez gwir an dalvoudenn gentañ, seveniñ ar c'hentañ bloc'had. Anez, ma vez gwir an eil talvoudenn, seveniñ an eil bloc'had urzhioù. Ma ne vez gwir talvoudenn ebet, seveniñ ar bloc'had diwezhañ a urzhioù.",
+ "CONTROLS_IF_MSG_IF": "ma",
+ "CONTROLS_IF_MSG_ELSEIF": "mod all ma",
+ "CONTROLS_IF_MSG_ELSE": "a-hend-all",
+ "CONTROLS_IF_IF_TOOLTIP": "Ouzhpennañ, lemel pe adurzhiañ ar rannoù evit kefluniañ ar bloc'h ma.",
+ "CONTROLS_IF_ELSEIF_TOOLTIP": "Ouzhpennañ un amplegad d'ar bloc'h ma.",
+ "CONTROLS_IF_ELSE_TOOLTIP": "Ouzhpennañ un amplegad dibenn lak-pep-tra d'ar bloc'h ma.",
+ "LOGIC_COMPARE_HELPURL": "https://en.wikipedia.org/wiki/Inequality_(mathematics)",
+ "LOGIC_COMPARE_TOOLTIP_EQ": "Distreiñ gwir m'eo par an daou voned.",
+ "LOGIC_COMPARE_TOOLTIP_NEQ": "Distreiñ gwir ma n'eo ket par an daou voned.",
+ "LOGIC_COMPARE_TOOLTIP_LT": "Distreiñ gwir m'eo bihanoc'h ar moned kentañ eget an eil.",
+ "LOGIC_COMPARE_TOOLTIP_LTE": "Distreiñ gwir m'eo bihanoc'h ar moned kentañ eget an eil pe m'eo par dezhañ.",
+ "LOGIC_COMPARE_TOOLTIP_GT": "Distreiñ gwir m'eo brasoc'h ar moned kentañ eget an eil.",
+ "LOGIC_COMPARE_TOOLTIP_GTE": "Distreiñ gwir m'eo brasoc'h ar moned kentañ eget an eil pe par dezhañ.",
+ "LOGIC_OPERATION_TOOLTIP_AND": "Distreiñ gwir m'eo gwir an da daou voned.",
+ "LOGIC_OPERATION_AND": "ha(g)",
+ "LOGIC_OPERATION_TOOLTIP_OR": "Distreiñ gwir m'eo gwir unan eus an daou voned da nebeutañ.",
+ "LOGIC_OPERATION_OR": "pe",
+ "LOGIC_NEGATE_TITLE": "nann %1",
+ "LOGIC_NEGATE_TOOLTIP": "Distreiñ gwir m'eo faos ar moned. Distreiñ faos m'eo gwir ar moned.",
+ "LOGIC_BOOLEAN_TRUE": "gwir",
+ "LOGIC_BOOLEAN_FALSE": "gaou",
+ "LOGIC_BOOLEAN_TOOLTIP": "Distreiñ pe gwir pe faos",
+ "LOGIC_NULL": "Null",
+ "LOGIC_NULL_TOOLTIP": "Distreiñ null.",
+ "LOGIC_TERNARY_CONDITION": "amprouad",
+ "LOGIC_TERNARY_IF_TRUE": "m'eo gwir",
+ "LOGIC_TERNARY_IF_FALSE": "m'eo gaou",
+ "LOGIC_TERNARY_TOOLTIP": "Gwiriañ an amplegad e 'prouad'. M'eo gwir an amplegad, distreiñ an dalvoudenn 'm'eo gwir'; anez distreiñ ar moned 'm'eo faos'.",
+ "MATH_NUMBER_HELPURL": "https://br.wikipedia.org/wiki/Niver",
+ "MATH_NUMBER_TOOLTIP": "Un niver.",
+ "MATH_ARITHMETIC_HELPURL": "https://br.wikipedia.org/wiki/Aritmetik",
+ "MATH_ARITHMETIC_TOOLTIP_ADD": "Distreiñ sammad daou niver.",
+ "MATH_ARITHMETIC_TOOLTIP_MINUS": "Distreiñ diforc'h daou niver",
+ "MATH_ARITHMETIC_TOOLTIP_MULTIPLY": "Distreiñ liesad daou niver.",
+ "MATH_ARITHMETIC_TOOLTIP_DIVIDE": "Distreiñ rannad daou niver.",
+ "MATH_ARITHMETIC_TOOLTIP_POWER": "Distreiñ an niver kentañ lakaet dindan gallouter an eil niver.",
+ "MATH_SINGLE_HELPURL": "https://br.wikipedia.org/wiki/Square_root",
+ "MATH_SINGLE_OP_ROOT": "gwrizienn garrez",
+ "MATH_SINGLE_TOOLTIP_ROOT": "Distreiñ gwrizienn garrez un niver",
+ "MATH_SINGLE_OP_ABSOLUTE": "dizave",
+ "MATH_SINGLE_TOOLTIP_ABS": "Distreiñ talvoud dizave un niver.",
+ "MATH_SINGLE_TOOLTIP_NEG": "Distreiñ enebad un niver",
+ "MATH_SINGLE_TOOLTIP_LN": "Distreiñ logaritm naturel un niver",
+ "MATH_SINGLE_TOOLTIP_LOG10": "Distreiñ logaritm diazez 10 un niver",
+ "MATH_SINGLE_TOOLTIP_EXP": "Distreiñ galloudad un niver.",
+ "MATH_SINGLE_TOOLTIP_POW10": "Distreiñ 10 da c'halloudad un niver.",
+ "MATH_TRIG_HELPURL": "https://br.wikipedia.org/wiki/Trigonometric_functions",
+ "MATH_TRIG_TOOLTIP_SIN": "Distreiñ sinuz ur c'horn (ket e radianoù)",
+ "MATH_TRIG_TOOLTIP_COS": "Distreiñ kosinuz ur c'horn (ket e radianoù)",
+ "MATH_TRIG_TOOLTIP_TAN": "Distreiñ tangent ur c'horn (ket e radianoù).",
+ "MATH_TRIG_TOOLTIP_ASIN": "Distreiñ ark sinuz un niver",
+ "MATH_TRIG_TOOLTIP_ACOS": "Distreiñ ark kosinuz un niver",
+ "MATH_TRIG_TOOLTIP_ATAN": "Distreiñ ark tangent un niver",
+ "MATH_CONSTANT_HELPURL": "https://en.wikipedia.org/wiki/Mathematical_constant",
+ "MATH_CONSTANT_TOOLTIP": "Distreiñ unan eus digemmennoù red : π (3.141…), e (2.718…), φ (1.618…), sqrt(2) (1.414…), sqrt(½) (0.707…), or ∞ (anvevenn).",
+ "MATH_IS_EVEN": "zo par",
+ "MATH_IS_ODD": "zo ampar",
+ "MATH_IS_PRIME": "zo kentañ",
+ "MATH_IS_WHOLE": "zo anterin",
+ "MATH_IS_POSITIVE": "a zo pozitivel",
+ "MATH_IS_NEGATIVE": "a zo negativel",
+ "MATH_IS_DIVISIBLE_BY": "a zo rannadus dre",
+ "MATH_IS_TOOLTIP": "Gwiriañ m'eo par, anpar, kentañ, muiel, leiel un niverenn pe ma c'haller rannañ anezhi dre un niver roet zo. Distreiñ gwir pe faos.",
+ "MATH_CHANGE_HELPURL": "https://en.wikipedia.org/wiki/Programming_idiom#Incrementing_a_counter",
+ "MATH_CHANGE_TITLE": "kemmañ %1 gant %2",
+ "MATH_CHANGE_TOOLTIP": "Ouzhpennañ un niver d'an argemm '%1'.",
+ "MATH_ROUND_HELPURL": "https://en.wikipedia.org/wiki/Rounding",
+ "MATH_ROUND_TOOLTIP": "Rontaat un niver dindan pe a-us",
+ "MATH_ROUND_OPERATOR_ROUND": "Rontaat",
+ "MATH_ROUND_OPERATOR_ROUNDUP": "Rontaat a-us",
+ "MATH_ROUND_OPERATOR_ROUNDDOWN": "Rontaat dindan",
+ "MATH_ONLIST_OPERATOR_SUM": "Sammad al listenn",
+ "MATH_ONLIST_TOOLTIP_SUM": "Distreiñ sammad an holl niveroù zo el listenn.",
+ "MATH_ONLIST_OPERATOR_MIN": "Izegenn al listenn",
+ "MATH_ONLIST_TOOLTIP_MIN": "Distreiñ an niver bihanañ el listenn",
+ "MATH_ONLIST_OPERATOR_MAX": "Uc'hegenn al listenn",
+ "MATH_ONLIST_TOOLTIP_MAX": "Distreiñ an niver brasañ el listenn.",
+ "MATH_ONLIST_OPERATOR_AVERAGE": "Keitat al listenn",
+ "MATH_ONLIST_TOOLTIP_AVERAGE": "Distreiñ keitad (niveroniel) an talvoudennoù niverel el listenn.",
+ "MATH_ONLIST_OPERATOR_MEDIAN": "Kreizad al listenn",
+ "MATH_ONLIST_TOOLTIP_MEDIAN": "Distreiñ an niver kreiz el listenn",
+ "MATH_ONLIST_OPERATOR_MODE": "modoù stankañ el listenn",
+ "MATH_ONLIST_TOOLTIP_MODE": "Distreiñ ul listennad elfennoù stankoc'h el listenn.",
+ "MATH_ONLIST_OPERATOR_STD_DEV": "forc'had standart eus al listenn",
+ "MATH_ONLIST_TOOLTIP_STD_DEV": "Distreiñ forc'had standart al listenn.",
+ "MATH_ONLIST_OPERATOR_RANDOM": "Elfennn eus al listenn tennet d'ar sord",
+ "MATH_ONLIST_TOOLTIP_RANDOM": "Distreiñ un elfenn zargouezhek el listenn",
+ "MATH_MODULO_HELPURL": "https://en.wikipedia.org/wiki/Modulo_operation",
+ "MATH_MODULO_TITLE": "rest eus %1 ÷ %2",
+ "MATH_MODULO_TOOLTIP": "Distreiñ dilerc'h rannadur an div niver",
+ "MATH_CONSTRAIN_TITLE": "destrizhañ %1 etre %2 ha %3",
+ "MATH_CONSTRAIN_TOOLTIP": "Destrizhañ un niver da vezañ etre ar bevennoù spisaet (enlakaet)",
+ "MATH_RANDOM_INT_HELPURL": "https://en.wikipedia.org/wiki/Random_number_generation",
+ "MATH_RANDOM_INT_TITLE": "anterin dargouezhek etre %1 ha %2",
+ "MATH_RANDOM_INT_TOOLTIP": "Distreiñ un anterin dargouezhek etre an div vevenn spisaet, endalc'het.",
+ "MATH_RANDOM_FLOAT_HELPURL": "https://en.wikipedia.org/wiki/Random_number_generation",
+ "MATH_RANDOM_FLOAT_TITLE_RANDOM": "Rann dargouezhek",
+ "MATH_RANDOM_FLOAT_TOOLTIP": "Distreiñ ur rann dargouezhek etre 0.0 (enkaelat) hag 1.0 (ezkaelat).",
+ "TEXT_TEXT_HELPURL": "https://en.wikipedia.org/wiki/String_(computer_science)",
+ "TEXT_TEXT_TOOLTIP": "Ul lizherenn, ur ger pe ul linennad testenn.",
+ "TEXT_JOIN_TITLE_CREATEWITH": "krouiñ un destenn gant",
+ "TEXT_JOIN_TOOLTIP": "Krouit un tamm testenn en ur gevelstrollañ un niver bennak a elfennoù",
+ "TEXT_CREATE_JOIN_TITLE_JOIN": "stagañ",
+ "TEXT_CREATE_JOIN_TOOLTIP": "Ouzhpennañ, lemel pe adurzhiañ ar rannoù evit kefluniañ ar bloc'h testenn-mañ.",
+ "TEXT_CREATE_JOIN_ITEM_TOOLTIP": "Ouzhpennañ un elfenn d'an destenn.",
+ "TEXT_APPEND_TO": "da",
+ "TEXT_APPEND_APPENDTEXT": "ouzhpennañ an destenn",
+ "TEXT_APPEND_TOOLTIP": "Ouzhpennañ testenn d'an argemmenn'%1'.",
+ "TEXT_LENGTH_TITLE": "hirder %1",
+ "TEXT_LENGTH_TOOLTIP": "Distreiñ an niver a lizherennoù(en ur gontañ an esaouennoù e-barzh) en destenn roet.",
+ "TEXT_ISEMPTY_TITLE": "%1 zo goullo",
+ "TEXT_ISEMPTY_TOOLTIP": "Adkas gwir m'eo goullo an destenn roet.",
+ "TEXT_INDEXOF_TOOLTIP": "Distreiñ meneger ar c'hentañ/an eil reveziadenn eus ar chadenn gentañ en eil chadenn. Distreiñ %1 ma n'eo ket kavet ar chadenn.",
+ "TEXT_INDEXOF_INPUT_INTEXT": "en destenn",
+ "TEXT_INDEXOF_OPERATOR_FIRST": "kavout reveziadenn gentañ an destenn",
+ "TEXT_INDEXOF_OPERATOR_LAST": "kavout reveziadenn diwezhañ an destenn",
+ "TEXT_CHARAT_INPUT_INTEXT": "en destenn",
+ "TEXT_CHARAT_FROM_START": "Kaout al lizherenn #",
+ "TEXT_CHARAT_FROM_END": "Kaout al lizherenn # adalek an dibenn.",
+ "TEXT_CHARAT_FIRST": "tapout al lizherenn gentañ",
+ "TEXT_CHARAT_LAST": "tapout al lizherenn ziwezhañ",
+ "TEXT_CHARAT_RANDOM": "Kaout ul lizherenn dre zegouezh",
+ "TEXT_CHARAT_TOOLTIP": "Distreiñ al lizherenn d'al lec'h spisaet.",
+ "TEXT_GET_SUBSTRING_TOOLTIP": "Distreiñ un tamm spisaet eus an destenn.",
+ "TEXT_GET_SUBSTRING_INPUT_IN_TEXT": "en destenn",
+ "TEXT_GET_SUBSTRING_START_FROM_START": "Kaout an ischadenn adalek al lizherenn #",
+ "TEXT_GET_SUBSTRING_START_FROM_END": "Kaout an ischadenn adalek al lizherenn # betek an dibenn",
+ "TEXT_GET_SUBSTRING_START_FIRST": "Kaout an ischadenn adalek al lizherenn gentañ",
+ "TEXT_GET_SUBSTRING_END_FROM_START": "betek al lizherenn #",
+ "TEXT_GET_SUBSTRING_END_FROM_END": "Betek al lizherenn # adalek an dibenn.",
+ "TEXT_GET_SUBSTRING_END_LAST": "d'al lizherenn diwezhañ",
+ "TEXT_CHANGECASE_TOOLTIP": "Distreiñ un eilenn eus an eilenn en un direnneg all",
+ "TEXT_CHANGECASE_OPERATOR_UPPERCASE": "e PENNLIZHERENNOÙ",
+ "TEXT_CHANGECASE_OPERATOR_LOWERCASE": "e lizherennoù bihan",
+ "TEXT_CHANGECASE_OPERATOR_TITLECASE": "Gant Ur Bennlizherenn E Deroù Pep Ger",
+ "TEXT_TRIM_TOOLTIP": "Distreiñ un eilenn eus an destenn gant an esaouennoù lamet eus un tu pe eus an daou du",
+ "TEXT_TRIM_OPERATOR_BOTH": "Lemel an esaouennoù en daou du",
+ "TEXT_TRIM_OPERATOR_LEFT": "Lemel an esaouennoù eus an tu kleiz",
+ "TEXT_TRIM_OPERATOR_RIGHT": "Lemel an esaouennoù eus an tu dehou",
+ "TEXT_PRINT_TITLE": "moullañ %1",
+ "TEXT_PRINT_TOOLTIP": "Moullañ an destenn, an niverenn pe un dalvoudenn spisaet all",
+ "TEXT_PROMPT_TYPE_TEXT": "pedadenn evit un destenn gant ur c'hemennad",
+ "TEXT_PROMPT_TYPE_NUMBER": "pedadenn evit un niver gant ur c'hemennad",
+ "TEXT_PROMPT_TOOLTIP_NUMBER": "Goulenn un niver gant an implijer.",
+ "TEXT_PROMPT_TOOLTIP_TEXT": "Goulenn un destenn gant an implijer.",
+ "LISTS_CREATE_EMPTY_TITLE": "krouiñ ur roll goullo",
+ "LISTS_CREATE_EMPTY_TOOLTIP": "Distreiñ ul listenn, 0 a hirder, n'eus enrolladenn ebet enni",
+ "LISTS_CREATE_WITH_HELPURL": "https://github.com/google/blockly/wiki/Lists#create-list-with",
+ "LISTS_CREATE_WITH_TOOLTIP": "Krouiñ ur roll gant un niver bennak a elfennoù.",
+ "LISTS_CREATE_WITH_INPUT_WITH": "krouiñ ur roll gant",
+ "LISTS_CREATE_WITH_CONTAINER_TITLE_ADD": "roll",
+ "LISTS_CREATE_WITH_CONTAINER_TOOLTIP": "Ouzhpennañ, lemel pe adurzhiañ ar rannoù evit kefluniañ ar bloc'h listenn-mañ.",
+ "LISTS_CREATE_WITH_ITEM_TOOLTIP": "Ouzhpennañ un elfenn d'ar roll",
+ "LISTS_REPEAT_TOOLTIP": "Krouiñ ul listenn a c'hoarvez eus an dalvoudenn roet arreet an niver a wech meneget",
+ "LISTS_REPEAT_TITLE": "Krouiñ ul listenn gant an elfenn %1 arreet div wech",
+ "LISTS_LENGTH_TITLE": "hirder %1",
+ "LISTS_LENGTH_TOOLTIP": "Distreiñ hirder ul listenn.",
+ "LISTS_ISEMPTY_TITLE": "%1 zo goullo",
+ "LISTS_ISEMPTY_TOOLTIP": "Distreiñ gwir m'eo goullo al listenn.",
+ "LISTS_INLIST": "el listenn",
+ "LISTS_INDEX_OF_FIRST": "kavout reveziadenn gentañ un elfenn",
+ "LISTS_INDEX_OF_LAST": "kavout reveziadenn diwezhañ un elfenn",
+ "LISTS_INDEX_OF_TOOLTIP": "Distreiñ meneger ar c'hentañ/an eil reveziadenn eus an elfenn en ul listenn. Distreiñ %1 ma n'eo ket kavet an destenn.",
+ "LISTS_GET_INDEX_GET": "tapout",
+ "LISTS_GET_INDEX_GET_REMOVE": "tapout ha lemel",
+ "LISTS_GET_INDEX_REMOVE": "lemel",
+ "LISTS_GET_INDEX_FROM_END": "# adalek ar fin",
+ "LISTS_GET_INDEX_FIRST": "kentañ",
+ "LISTS_GET_INDEX_LAST": "diwezhañ",
+ "LISTS_GET_INDEX_RANDOM": "dre zegouezh",
+ "LISTS_INDEX_FROM_START_TOOLTIP": "%1 eo an elfenn gentañ.",
+ "LISTS_INDEX_FROM_END_TOOLTIP": "%1 eo an elfenn gentañ.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_FROM": "Distreiñ an elfenn el lec'h meneget en ul listenn.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_FIRST": "Distreiñ an elfenn gentañ en ul listenn.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_LAST": "Distreiñ un elfenn diwezhañ en ul listenn.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_RANDOM": "Distreiñ un elfenn dre zegouezh en ul listenn.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM": "Lemel ha distreiñ a ra an elfenn el lec'h meneget en ul listenn.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST": "Lemel ha distreiñ a ra an elfenn gentañ en ul listenn.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST": "Lemel ha distreiñ a ra an elfenn diwezhañ en ul listenn.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM": "Lemel ha distreiñ a ra an elfenn dre zegouezh en ul listenn.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM": "Lemel a ra an elfenn el lec'h meneget en ul listenn.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST": "Lemel a ra an elfenn gentañ en ul listenn.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST": "Distreiñ a ra an elfenn diwezhañ en ul listenn.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM": "Lemel a ra un elfenn dre zegouezh en ul listenn.",
+ "LISTS_SET_INDEX_SET": "termenañ",
+ "LISTS_SET_INDEX_INSERT": "ensoc'hañ evel",
+ "LISTS_SET_INDEX_INPUT_TO": "evel",
+ "LISTS_SET_INDEX_TOOLTIP_SET_FROM": "Termenañ a ra an elfenn el lec'h meneget en ul listenn.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_FIRST": "Termenañ a ra an elfenn gentañ en ul listenn.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_LAST": "Termenañ a ra an elfenn diwezhañ en ul listenn.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_RANDOM": "Termenañ a ra un elfenn dre zegouezh en ul listenn.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_FROM": "Ensoc'hañ a ra an elfenn el lec'h meneget en ul listenn.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST": "Ensoc'hañ a ra an elfenn e deroù ul listenn.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_LAST": "Ouzhpennañ a ra an elfenn e fin al listenn.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM": "Ensoc'hañ a ra an elfenn dre zegouezh en ul listenn.",
+ "LISTS_GET_SUBLIST_START_FROM_START": "Kaout an islistenn adalek #",
+ "LISTS_GET_SUBLIST_START_FROM_END": "Kaout an islistenn adalek # adalek an dibenn",
+ "LISTS_GET_SUBLIST_START_FIRST": "Kaout an islistenn adalek an deroù",
+ "LISTS_GET_SUBLIST_END_FROM_START": "da #",
+ "LISTS_GET_SUBLIST_END_FROM_END": "betek # adalek an dibenn",
+ "LISTS_GET_SUBLIST_END_LAST": "betek ar fin",
+ "LISTS_GET_SUBLIST_TOOLTIP": "Krouiñ un eilad eus lodenn spisaet ul listenn.",
+ "LISTS_SORT_HELPURL": "https://github.com/google/blockly/wiki/Lists#create-list-with",
+ "LISTS_SORT_TITLE": "Rummañ%1,%2,%3",
+ "LISTS_SORT_TOOLTIP": "Rummañ un eilenn eus ar roll",
+ "LISTS_SORT_ORDER_ASCENDING": "war gresk",
+ "LISTS_SORT_ORDER_DESCENDING": "war zigresk",
+ "LISTS_SORT_TYPE_NUMERIC": "niverel",
+ "LISTS_SORT_TYPE_TEXT": "Dre urzh al lizherenneg",
+ "LISTS_SORT_TYPE_IGNORECASE": "Dre urzh al lizherenneg, hep derc'hel kont eus an direnneg",
+ "LISTS_SPLIT_HELPURL": "https://github.com/google/blockly/wiki/Lists#splitting-strings-and-joining-lists",
+ "LISTS_SPLIT_LIST_FROM_TEXT": "Krouiñ ul listenn diwar an destenn",
+ "LISTS_SPLIT_TEXT_FROM_LIST": "Krouiñ un destenn diwar al listenn",
+ "LISTS_SPLIT_WITH_DELIMITER": "gant an dispartier",
+ "LISTS_SPLIT_TOOLTIP_SPLIT": "Troc'hañ un destenn en ul listennad testennoù, o troc'hañ e pep dispartier.",
+ "LISTS_SPLIT_TOOLTIP_JOIN": "Bodañ ul listennad testennoù en ul listenn hepken, o tispartiañ anezho gant un dispartier.",
+ "VARIABLES_GET_TOOLTIP": "Distreiñ talvoud an argemm-mañ.",
+ "VARIABLES_GET_CREATE_SET": "Krouiñ 'termenañ %1'",
+ "VARIABLES_SET": "termenañ %1 da %2",
+ "VARIABLES_SET_TOOLTIP": "Termenañ a ra argemm-mañ evit ma vo par da dalvoudenn ar moned.",
+ "VARIABLES_SET_CREATE_GET": "Krouiñ 'kaout %1'",
+ "PROCEDURES_DEFNORETURN_TITLE": "da",
+ "PROCEDURES_DEFNORETURN_PROCEDURE": "ober un dra bennak",
+ "PROCEDURES_BEFORE_PARAMS": "gant :",
+ "PROCEDURES_CALL_BEFORE_PARAMS": "gant :",
+ "PROCEDURES_DEFNORETURN_TOOLTIP": "Krouiñ un arc'hwel hep mont er-maez.",
+ "PROCEDURES_DEFNORETURN_COMMENT": "Deskrivañ an arc'hwel-mañ...",
+ "PROCEDURES_DEFRETURN_RETURN": "distreiñ",
+ "PROCEDURES_DEFRETURN_TOOLTIP": "Kouiñ un arc'hwel gant ur mont er-maez",
+ "PROCEDURES_ALLOW_STATEMENTS": "aotren an disklêriadurioù",
+ "PROCEDURES_DEF_DUPLICATE_WARNING": "Diwallit : an arc'hwel-mañ en deus arventennoù eiladet.",
+ "PROCEDURES_CALLNORETURN_HELPURL": "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29",
+ "PROCEDURES_CALLNORETURN_TOOLTIP": "Seveniñ an arc'hwel '%1' termenet gant an implijer.",
+ "PROCEDURES_CALLRETURN_HELPURL": "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29",
+ "PROCEDURES_CALLRETURN_TOOLTIP": "Seveniñ an arc'hwel '%1' termenet gant an implijer hag implijout e zisoc'h.",
+ "PROCEDURES_MUTATORCONTAINER_TITLE": "Monedoù",
+ "PROCEDURES_MUTATORCONTAINER_TOOLTIP": "Ouzhpennañ, lemel, pe adkempenn monedoù an arc'hwel-mañ.",
+ "PROCEDURES_MUTATORARG_TITLE": "Anv ar moned",
+ "PROCEDURES_MUTATORARG_TOOLTIP": "Ouzhpennañ ur moned d'an arc'hwel.",
+ "PROCEDURES_HIGHLIGHT_DEF": "Dreislinennañ termenadur an arc'hwel",
+ "PROCEDURES_CREATE_DO": "Krouiñ '%1'",
+ "PROCEDURES_IFRETURN_TOOLTIP": "Ma'z eo gwir un dalvoudenn, distreiñ un eil talvoudenn neuze.",
+ "PROCEDURES_IFRETURN_WARNING": "Diwallit : Gallout a rafe ar bloc'h bezañ implijet e termenadur un arc'hwel hepken."
+}
diff --git a/blockly/msg/json/ca.json b/blockly/msg/json/ca.json
new file mode 100644
index 0000000..fc13a69
--- /dev/null
+++ b/blockly/msg/json/ca.json
@@ -0,0 +1,293 @@
+{
+ "@metadata": {
+ "authors": [
+ "Alvaro Vidal-Abarca",
+ "Espertus",
+ "Hiperpobla",
+ "Jaumeortola"
+ ]
+ },
+ "VARIABLES_DEFAULT_NAME": "element",
+ "DUPLICATE_BLOCK": "Duplica",
+ "ADD_COMMENT": "Afegeix un comentari",
+ "REMOVE_COMMENT": "Elimina el comentari",
+ "EXTERNAL_INPUTS": "Entrades externes",
+ "INLINE_INPUTS": "Entrades en línia",
+ "DELETE_BLOCK": "Esborra bloc",
+ "DELETE_X_BLOCKS": "Esborra %1 blocs",
+ "DELETE_ALL_BLOCKS": "Esborrar els %1 blocs?",
+ "COLLAPSE_BLOCK": "Contraure bloc",
+ "COLLAPSE_ALL": "Contraure blocs",
+ "EXPAND_BLOCK": "Expandir bloc",
+ "EXPAND_ALL": "Expandir blocs",
+ "DISABLE_BLOCK": "Desactiva bloc",
+ "ENABLE_BLOCK": "Activa bloc",
+ "HELP": "Ajuda",
+ "CHANGE_VALUE_TITLE": "Canvia valor:",
+ "RENAME_VARIABLE": "Reanomena variable...",
+ "RENAME_VARIABLE_TITLE": "Reanomena totes les variables '%1' a:",
+ "NEW_VARIABLE": "Nova variable...",
+ "NEW_VARIABLE_TITLE": "Nou nom de variable:",
+ "COLOUR_PICKER_HELPURL": "https://ca.wikipedia.org/wiki/Color",
+ "COLOUR_PICKER_TOOLTIP": "Escolliu un color de la paleta.",
+ "COLOUR_RANDOM_TITLE": "color aleatori",
+ "COLOUR_RANDOM_TOOLTIP": "Escolliu un color a l'atzar.",
+ "COLOUR_RGB_TITLE": "color amb",
+ "COLOUR_RGB_RED": "vermell",
+ "COLOUR_RGB_GREEN": "verd",
+ "COLOUR_RGB_BLUE": "blau",
+ "COLOUR_RGB_TOOLTIP": "Crear un color amb les quantitats especificades de vermell, verd i blau. Tots els valors han de ser entre 0 i 100.",
+ "COLOUR_BLEND_TITLE": "barreja",
+ "COLOUR_BLEND_COLOUR1": "color 1",
+ "COLOUR_BLEND_COLOUR2": "color 2",
+ "COLOUR_BLEND_RATIO": "proporció",
+ "COLOUR_BLEND_TOOLTIP": "Barreja dos colors amb una proporció donada (0,0 - 1,0).",
+ "CONTROLS_REPEAT_HELPURL": "https://ca.wikipedia.org/wiki/Bucle_For",
+ "CONTROLS_REPEAT_TITLE": "repetir %1 vegades",
+ "CONTROLS_REPEAT_INPUT_DO": "fer",
+ "CONTROLS_REPEAT_TOOLTIP": "Executar unes sentències diverses vegades.",
+ "CONTROLS_WHILEUNTIL_OPERATOR_WHILE": "repetir mentre",
+ "CONTROLS_WHILEUNTIL_OPERATOR_UNTIL": "repetir fins que",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_WHILE": "Mentre un valor sigui cert, llavors executar unes sentències.",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL": "Mentre un valor sigui fals, llavors executar unes sentències.",
+ "CONTROLS_FOR_TOOLTIP": "Fer que la variable \"%1\" prengui els valors des del nombre inicial fins al nombre final, incrementant a cada pas l'interval indicat, i executar els blocs especificats.",
+ "CONTROLS_FOR_TITLE": "comptar amb %1 des de %2 fins a %3 en increments de %4",
+ "CONTROLS_FOREACH_TITLE": "per a cada element %1 en la llista %2",
+ "CONTROLS_FOREACH_TOOLTIP": "Per a cada element en la llista, desar l'element dins la variable '%1', i llavors executar unes sentències.",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK": "sortir del bucle",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE": "continuar amb la següent iteració del bucle",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK": "Sortir del bucle interior.",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE": "Ometre la resta d'aquest bucle, i continuar amb la següent iteració.",
+ "CONTROLS_FLOW_STATEMENTS_WARNING": "Advertència: Aquest bloc només es pot utilitzar dins d'un bucle.",
+ "CONTROLS_IF_TOOLTIP_1": "Si un valor és cert, llavors executar unes sentències.",
+ "CONTROLS_IF_TOOLTIP_2": "Si un valor és cert, llavors executar el primer bloc de sentències. En cas contrari, executar el segon bloc de sentències.",
+ "CONTROLS_IF_TOOLTIP_3": "Si el primer valor és cert, llavors executar el primer bloc de sentències. En cas contrari, si el segon valor és cert, executar el segon bloc de sentències.",
+ "CONTROLS_IF_TOOLTIP_4": "Si el primer valor és cert, llavors executar el primer bloc de sentències. En cas contrari, si el segon valor és cert, executar el segon bloc de sentències. Si cap dels valors és cert, executar l'últim bloc de sentències.",
+ "CONTROLS_IF_MSG_IF": "si",
+ "CONTROLS_IF_MSG_ELSEIF": "si no, si",
+ "CONTROLS_IF_MSG_ELSE": "si no",
+ "CONTROLS_IF_IF_TOOLTIP": "Afegeix, esborra o reordena seccions per reconfigurar aquest bloc 'si'.",
+ "CONTROLS_IF_ELSEIF_TOOLTIP": "Afegeix una condició al bloc 'si'.",
+ "CONTROLS_IF_ELSE_TOOLTIP": "Afegeix una condició final, que recull qualsevol altra possibilitat, al bloc 'si'.",
+ "LOGIC_COMPARE_HELPURL": "https://ca.wikipedia.org/wiki/Inequaci%C3%B3",
+ "LOGIC_COMPARE_TOOLTIP_EQ": "Retorna cert si totes dues entrades són iguals.",
+ "LOGIC_COMPARE_TOOLTIP_NEQ": "Retorna cert si totes dues entrades són diferents.",
+ "LOGIC_COMPARE_TOOLTIP_LT": "Retorna cert si la primera entrada és més petita que la segona entrada.",
+ "LOGIC_COMPARE_TOOLTIP_LTE": "Retorna cert si la primera entra és més petita o igual a la segona entrada.",
+ "LOGIC_COMPARE_TOOLTIP_GT": "Retorna cert si la primera entrada és més gran que la segona entrada.",
+ "LOGIC_COMPARE_TOOLTIP_GTE": "Retorna cert si la primera entrada és més gran o igual a la segona entrada.",
+ "LOGIC_OPERATION_TOOLTIP_AND": "Retorna cer si totes dues entrades són certes.",
+ "LOGIC_OPERATION_AND": "i",
+ "LOGIC_OPERATION_TOOLTIP_OR": "Retorna cert si almenys una de les entrades és certa.",
+ "LOGIC_OPERATION_OR": "o",
+ "LOGIC_NEGATE_TITLE": "no %1",
+ "LOGIC_NEGATE_TOOLTIP": "Retorna cert si l'entrada és falsa. Retorna fals si l'entrada és certa.",
+ "LOGIC_BOOLEAN_TRUE": "cert",
+ "LOGIC_BOOLEAN_FALSE": "fals",
+ "LOGIC_BOOLEAN_TOOLTIP": "Retorna o bé cert o bé fals.",
+ "LOGIC_NULL": "nul",
+ "LOGIC_NULL_TOOLTIP": "Retorna nul.",
+ "LOGIC_TERNARY_CONDITION": "condició",
+ "LOGIC_TERNARY_IF_TRUE": "si és cert",
+ "LOGIC_TERNARY_IF_FALSE": "si és fals",
+ "LOGIC_TERNARY_TOOLTIP": "Comprova la condició de 'condició'. Si la condició és certa, retorna el valor 'si és cert'; en cas contrari, retorna el valor 'si és fals'.",
+ "MATH_NUMBER_HELPURL": "https://ca.wikipedia.org/wiki/Nombre",
+ "MATH_NUMBER_TOOLTIP": "Un nombre.",
+ "MATH_ARITHMETIC_HELPURL": "https://ca.wikipedia.org/wiki/Aritm%C3%A8tica",
+ "MATH_ARITHMETIC_TOOLTIP_ADD": "Retorna la suma dels dos nombres.",
+ "MATH_ARITHMETIC_TOOLTIP_MINUS": "Retorna la diferència entre els dos nombres.",
+ "MATH_ARITHMETIC_TOOLTIP_MULTIPLY": "Retorna el producte del dos nombres.",
+ "MATH_ARITHMETIC_TOOLTIP_DIVIDE": "Retorna el quocient dels dos nombres.",
+ "MATH_ARITHMETIC_TOOLTIP_POWER": "Retorna el primer nombre elevat a la potència indicada pel segon nombre.",
+ "MATH_SINGLE_HELPURL": "https://ca.wikipedia.org/wiki/Arrel_quadrada",
+ "MATH_SINGLE_OP_ROOT": "arrel quadrada",
+ "MATH_SINGLE_TOOLTIP_ROOT": "Retorna l'arrel quadrada d'un nombre.",
+ "MATH_SINGLE_OP_ABSOLUTE": "absolut",
+ "MATH_SINGLE_TOOLTIP_ABS": "Retorna el valor absolut d'un nombre.",
+ "MATH_SINGLE_TOOLTIP_NEG": "Retorna l'oposat d'un nombre.",
+ "MATH_SINGLE_TOOLTIP_LN": "Retorna el logaritme natural d'un nombre.",
+ "MATH_SINGLE_TOOLTIP_LOG10": "Retorna el logaritme en base 10 d'un nombre.",
+ "MATH_SINGLE_TOOLTIP_EXP": "Retorna ''e'' elevat a la potència del nombre indicat.",
+ "MATH_SINGLE_TOOLTIP_POW10": "Retorna 10 elevat a la potència del nombre indicat.",
+ "MATH_TRIG_HELPURL": "https://ca.wikipedia.org/wiki/Funci%C3%B3_trigonom%C3%A8trica",
+ "MATH_TRIG_TOOLTIP_SIN": "Retorna el sinus d'un grau (no radiant).",
+ "MATH_TRIG_TOOLTIP_COS": "Retorna el cosinus d'un grau (no radiant).",
+ "MATH_TRIG_TOOLTIP_TAN": "Retorna la tangent d'un grau (no radiant).",
+ "MATH_TRIG_TOOLTIP_ASIN": "Retorna l'arcsinus d'un nombre.",
+ "MATH_TRIG_TOOLTIP_ACOS": "Retorna l'arccosinus d'un nombre.",
+ "MATH_TRIG_TOOLTIP_ATAN": "Retorna l'arctangent d'un nombre.",
+ "MATH_CONSTANT_HELPURL": "https://ca.wikipedia.org/wiki/Constant_matem%C3%A0tica",
+ "MATH_CONSTANT_TOOLTIP": "Retorna una de les constants més habituals: π (3,141…), e (2,718…), φ (1,618…), sqrt(2) (1,414…), sqrt(½) (0,707…), o ∞ (infinit).",
+ "MATH_IS_EVEN": "és parell",
+ "MATH_IS_ODD": "és senar",
+ "MATH_IS_PRIME": "és primer",
+ "MATH_IS_WHOLE": "és enter",
+ "MATH_IS_POSITIVE": "és positiu",
+ "MATH_IS_NEGATIVE": "és negatiu",
+ "MATH_IS_DIVISIBLE_BY": "és divisible per",
+ "MATH_IS_TOOLTIP": "Comprova si un nombre és parell, senar, enter, positium negatiu, o si és divisible per un cert nombre. Retorna cert o fals.",
+ "MATH_CHANGE_HELPURL": "https://ca.wikipedia.org/wiki/Suma",
+ "MATH_CHANGE_TITLE": "canvia %1 per %2",
+ "MATH_CHANGE_TOOLTIP": "Afegeix un nombre a la variable '%1'.",
+ "MATH_ROUND_HELPURL": "https://ca.wikipedia.org/wiki/Arrodoniment",
+ "MATH_ROUND_TOOLTIP": "Arrodonir un nombre cap amunt o cap avall.",
+ "MATH_ROUND_OPERATOR_ROUND": "arrodonir",
+ "MATH_ROUND_OPERATOR_ROUNDUP": "arrodonir cap amunt",
+ "MATH_ROUND_OPERATOR_ROUNDDOWN": "arrodonir cap avall",
+ "MATH_ONLIST_OPERATOR_SUM": "suma de llista",
+ "MATH_ONLIST_TOOLTIP_SUM": "Retorna la suma de tots els nombres de la llista.",
+ "MATH_ONLIST_OPERATOR_MIN": "mínim de llista",
+ "MATH_ONLIST_TOOLTIP_MIN": "Retorna el nombre més petit de la llista.",
+ "MATH_ONLIST_OPERATOR_MAX": "màxim de llista",
+ "MATH_ONLIST_TOOLTIP_MAX": "Retorna el nombre més gran de la llista.",
+ "MATH_ONLIST_OPERATOR_AVERAGE": "mitjana de llista",
+ "MATH_ONLIST_TOOLTIP_AVERAGE": "Retorna la mitjana (mitjana aritmètica) dels valors numèrics de la llista.",
+ "MATH_ONLIST_OPERATOR_MEDIAN": "mediana de llista",
+ "MATH_ONLIST_TOOLTIP_MEDIAN": "Retorna la mediana de la llista.",
+ "MATH_ONLIST_OPERATOR_MODE": "moda de llista",
+ "MATH_ONLIST_TOOLTIP_MODE": "Retorna una llista dels elements que apareixen més vegades a la llista.",
+ "MATH_ONLIST_OPERATOR_STD_DEV": "desviació estàndard de llista",
+ "MATH_ONLIST_TOOLTIP_STD_DEV": "Retorna la desviació estàndard de la llista.",
+ "MATH_ONLIST_OPERATOR_RANDOM": "element aleatori de llista",
+ "MATH_ONLIST_TOOLTIP_RANDOM": "Retorna un element aleatori de la lllista.",
+ "MATH_MODULO_HELPURL": "https://ca.wikipedia.org/wiki/Residu_%28aritm%C3%A8tica%29",
+ "MATH_MODULO_TITLE": "residu de %1 ÷ %2",
+ "MATH_MODULO_TOOLTIP": "Retorna el residu de dividir els dos nombres.",
+ "MATH_CONSTRAIN_TITLE": "limitar %1 entre %2 i %3",
+ "MATH_CONSTRAIN_TOOLTIP": "Limita un nombre perquè estigui entre els límits especificats (inclosos).",
+ "MATH_RANDOM_INT_HELPURL": "https://ca.wikipedia.org/wiki/Generaci%C3%B3_de_nombres_aleatoris",
+ "MATH_RANDOM_INT_TITLE": "nombre aleatori entre %1 i %2",
+ "MATH_RANDOM_INT_TOOLTIP": "Retorna un nombre aleatori entre els dos límits especificats, inclosos.",
+ "MATH_RANDOM_FLOAT_HELPURL": "https://ca.wikipedia.org/wiki/Generaci%C3%B3_de_nombres_aleatoris",
+ "MATH_RANDOM_FLOAT_TITLE_RANDOM": "fracció aleatòria",
+ "MATH_RANDOM_FLOAT_TOOLTIP": "Retorna una fracció aleatòria entre 0,0 (inclòs) i 1,0 (exclòs).",
+ "TEXT_TEXT_HELPURL": "https://ca.wikipedia.org/wiki/Cadena_%28inform%C3%A0tica%29",
+ "TEXT_TEXT_TOOLTIP": "Una lletra, paraula o línia de text.",
+ "TEXT_JOIN_TITLE_CREATEWITH": "crear text amb",
+ "TEXT_JOIN_TOOLTIP": "Crea un tros de text per unió de qualsevol nombre d'elements.",
+ "TEXT_CREATE_JOIN_TITLE_JOIN": "unir",
+ "TEXT_CREATE_JOIN_TOOLTIP": "Afegeix, esborrar o reordenar seccions per reconfigurar aquest bloc de text.",
+ "TEXT_CREATE_JOIN_ITEM_TOOLTIP": "Afegeix un element al text.",
+ "TEXT_APPEND_TO": "a",
+ "TEXT_APPEND_APPENDTEXT": "afegir text",
+ "TEXT_APPEND_TOOLTIP": "Afegir un text a la variable '%1'.",
+ "TEXT_LENGTH_TITLE": "llargària de %1",
+ "TEXT_LENGTH_TOOLTIP": "Retorna el nombre de lletres (espais inclosos) en el text proporcionat.",
+ "TEXT_ISEMPTY_TITLE": "%1 està buit",
+ "TEXT_ISEMPTY_TOOLTIP": "Retorna cert si el text proporcionat està buit.",
+ "TEXT_INDEXOF_TOOLTIP": "Retorna l'índex de la primera/última aparició del primer text dins el segon. Retorna %1 si no es troba el text.",
+ "TEXT_INDEXOF_INPUT_INTEXT": "en el text",
+ "TEXT_INDEXOF_OPERATOR_FIRST": "trobar la primera aparició del text",
+ "TEXT_INDEXOF_OPERATOR_LAST": "trobar l'última aparició del text",
+ "TEXT_CHARAT_INPUT_INTEXT": "en el text",
+ "TEXT_CHARAT_FROM_START": "recupera la lletra núm.#",
+ "TEXT_CHARAT_FROM_END": "recupera la lletra núm.# des del final",
+ "TEXT_CHARAT_FIRST": "recupera la primera lletra",
+ "TEXT_CHARAT_LAST": "recupera l'última lletra",
+ "TEXT_CHARAT_RANDOM": "recupera una lletra a l'atzar",
+ "TEXT_CHARAT_TOOLTIP": "Recupera la lletra de la posició especificada.",
+ "TEXT_GET_SUBSTRING_TOOLTIP": "Recupera una part especificada del text.",
+ "TEXT_GET_SUBSTRING_INPUT_IN_TEXT": "en el text",
+ "TEXT_GET_SUBSTRING_START_FROM_START": "recupera subcadena des de la lletra núm.#",
+ "TEXT_GET_SUBSTRING_START_FROM_END": "recupera subcadena des de la lletra núm.# des del final",
+ "TEXT_GET_SUBSTRING_START_FIRST": "recupera subcadena des de la primera lletra",
+ "TEXT_GET_SUBSTRING_END_FROM_START": "fins a la lletra núm.#",
+ "TEXT_GET_SUBSTRING_END_FROM_END": "fins a la lletra núm.# des del final",
+ "TEXT_GET_SUBSTRING_END_LAST": "fins a l'última lletra",
+ "TEXT_CHANGECASE_TOOLTIP": "Retorna una còpia del text amb diferents majúscules/minúscules.",
+ "TEXT_CHANGECASE_OPERATOR_UPPERCASE": "a MAJÚSCULES",
+ "TEXT_CHANGECASE_OPERATOR_LOWERCASE": "a minúscules",
+ "TEXT_CHANGECASE_OPERATOR_TITLECASE": "a Text De Títol",
+ "TEXT_TRIM_TOOLTIP": "Retorna una còpia del text on s'han esborrat els espais d'un o dels dos extrems.",
+ "TEXT_TRIM_OPERATOR_BOTH": "retalla espais de tots dos extrems de",
+ "TEXT_TRIM_OPERATOR_LEFT": "retalla espais de l'esquerra de",
+ "TEXT_TRIM_OPERATOR_RIGHT": "retalla espais de la dreta de",
+ "TEXT_PRINT_TITLE": "imprimir %1",
+ "TEXT_PRINT_TOOLTIP": "Imprimir el text, el nombre o altre valor especificat.",
+ "TEXT_PROMPT_TYPE_TEXT": "demanar text amb el missatge",
+ "TEXT_PROMPT_TYPE_NUMBER": "demanar un nombre amb el missatge",
+ "TEXT_PROMPT_TOOLTIP_NUMBER": "Demana que l'usuari introdueixi un nombre.",
+ "TEXT_PROMPT_TOOLTIP_TEXT": "Demana que l'usuari introdueixi un text.",
+ "LISTS_CREATE_EMPTY_TITLE": "crear llista buida",
+ "LISTS_CREATE_EMPTY_TOOLTIP": "Retorna una llista, de longitud 0, que no conté cap dada.",
+ "LISTS_CREATE_WITH_TOOLTIP": "Crea una llista amb qualsevol nombre d'elements.",
+ "LISTS_CREATE_WITH_INPUT_WITH": "crear llista amb",
+ "LISTS_CREATE_WITH_CONTAINER_TITLE_ADD": "llista",
+ "LISTS_CREATE_WITH_CONTAINER_TOOLTIP": "Afegeix, esborra o reordena seccions per reconfigurar aquest bloc de llista.",
+ "LISTS_CREATE_WITH_ITEM_TOOLTIP": "Afegeix un element a la llista.",
+ "LISTS_REPEAT_TOOLTIP": "Crea una llista formada pel valor donat, repetit tantes vegades com s'indiqui.",
+ "LISTS_REPEAT_TITLE": "crea llista amb element %1 repetit %2 vegades",
+ "LISTS_LENGTH_TITLE": "longitud de %1",
+ "LISTS_LENGTH_TOOLTIP": "Retorna la longitud d'una llista.",
+ "LISTS_ISEMPTY_TITLE": "%1 és buida",
+ "LISTS_ISEMPTY_TOOLTIP": "Retorna cert si la llista és buida.",
+ "LISTS_INLIST": "en la llista",
+ "LISTS_INDEX_OF_FIRST": "buscar primera aparició d'un element",
+ "LISTS_INDEX_OF_LAST": "buscar última aparició d'un element",
+ "LISTS_INDEX_OF_TOOLTIP": "Retorna l'índex de la primera/última aparició d'un element a la llista. Retorna %1 si no s'hi troba el text.",
+ "LISTS_GET_INDEX_GET": "recupera",
+ "LISTS_GET_INDEX_GET_REMOVE": "recupera i esborra",
+ "LISTS_GET_INDEX_REMOVE": "esborra",
+ "LISTS_GET_INDEX_FROM_END": "núm.# des del final",
+ "LISTS_GET_INDEX_FIRST": "primer",
+ "LISTS_GET_INDEX_LAST": "últim",
+ "LISTS_GET_INDEX_RANDOM": "a l'atzar",
+ "LISTS_INDEX_FROM_START_TOOLTIP": "%1 és el primer element.",
+ "LISTS_INDEX_FROM_END_TOOLTIP": "%1 és l'últim element.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_FROM": "Retorna l'element de la posició especificada a la llista.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_FIRST": "Retorna el primer element d'una llista.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_LAST": "Retorna l'últim element d'una llista.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_RANDOM": "Retorna un element a l'atzar d'una llista.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM": "Esborra i retorna l'element de la posició especificada de la llista.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST": "Esborra i retorna el primer element d'una llista.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST": "Esborra i retorna l'últim element d'una llista.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM": "Esborra i retorna un element a l'atzar d'una llista.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM": "Esborra l'element de la posició especificada de la llista.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST": "Esborra el primer element d'una llista.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST": "Esborra l'últim element d'una llista.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM": "Esborra un element a l'atzar d'una llista.",
+ "LISTS_SET_INDEX_SET": "modifica",
+ "LISTS_SET_INDEX_INSERT": "insereix a",
+ "LISTS_SET_INDEX_INPUT_TO": "com",
+ "LISTS_SET_INDEX_TOOLTIP_SET_FROM": "Modifica l'element de la posició especificada d'una llista.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_FIRST": "Modifica el primer element d'una llista.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_LAST": "Modifica l'últim element d'una llista.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_RANDOM": "Modifica un element a l'atzar d'una llista.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_FROM": "Insereix l'element a la posició especificada d'una llista.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST": "Insereix l'element al principi d'una llista.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_LAST": "Afegeix l'element al final d'una llista.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM": "Insereix l'element en una posició a l'atzar d'una llista.",
+ "LISTS_GET_SUBLIST_START_FROM_START": "recupera sub-llista des de #",
+ "LISTS_GET_SUBLIST_START_FROM_END": "recupera sub-llista des de # des del final",
+ "LISTS_GET_SUBLIST_START_FIRST": "recupera sub-llista des del principi",
+ "LISTS_GET_SUBLIST_END_FROM_START": "fins #",
+ "LISTS_GET_SUBLIST_END_FROM_END": "fins # des del final",
+ "LISTS_GET_SUBLIST_END_LAST": "fins l'últim",
+ "LISTS_GET_SUBLIST_TOOLTIP": "Crea una còpia de la part especificada d'una llista.",
+ "VARIABLES_GET_TOOLTIP": "Retorna el valor d'aquesta variable.",
+ "VARIABLES_GET_CREATE_SET": "Crea 'modifica %1'",
+ "VARIABLES_SET": "modifica %1 a %2",
+ "VARIABLES_SET_TOOLTIP": "Modifica aquesta variable al valor introduït.",
+ "VARIABLES_SET_CREATE_GET": "Crear 'recupera %1'",
+ "PROCEDURES_DEFNORETURN_TITLE": "a",
+ "PROCEDURES_DEFNORETURN_PROCEDURE": "fes alguna cosa",
+ "PROCEDURES_BEFORE_PARAMS": "amb:",
+ "PROCEDURES_CALL_BEFORE_PARAMS": "amb:",
+ "PROCEDURES_DEFNORETURN_TOOLTIP": "Crea una funció sense sortida.",
+ "PROCEDURES_DEFRETURN_RETURN": "retorna",
+ "PROCEDURES_DEFRETURN_TOOLTIP": "Crea una funció amb una sortida.",
+ "PROCEDURES_ALLOW_STATEMENTS": "permetre declaracions",
+ "PROCEDURES_DEF_DUPLICATE_WARNING": "Advertència: Aquesta funció té paràmetres duplicats.",
+ "PROCEDURES_CALLNORETURN_HELPURL": "https://ca.wikipedia.org/wiki/Procediment_%28Programació%29",
+ "PROCEDURES_CALLNORETURN_TOOLTIP": "Executa la funció definida per usuari '%1'.",
+ "PROCEDURES_CALLRETURN_HELPURL": "https://ca.wikipedia.org/wiki/Procediment_%28Programació%29",
+ "PROCEDURES_CALLRETURN_TOOLTIP": "Executa la funció definida per l'usuari '%1' i utilitza la seva sortida.",
+ "PROCEDURES_MUTATORCONTAINER_TITLE": "entrades",
+ "PROCEDURES_MUTATORCONTAINER_TOOLTIP": "Afegir, eliminar o canviar l'ordre de les entrades per aquesta funció.",
+ "PROCEDURES_MUTATORARG_TITLE": "nom d'entrada:",
+ "PROCEDURES_MUTATORARG_TOOLTIP": "Afegir una entrada per la funció.",
+ "PROCEDURES_HIGHLIGHT_DEF": "Iluminar la definició de la funció",
+ "PROCEDURES_CREATE_DO": "Crear '%1'",
+ "PROCEDURES_IFRETURN_TOOLTIP": "Si el valor és cert, llavors retorna un segon valor.",
+ "PROCEDURES_IFRETURN_WARNING": "Advertència: Aquest bloc només es pot utilitzar dins de la definició d'una funció."
+}
diff --git a/blockly/msg/json/cs.json b/blockly/msg/json/cs.json
new file mode 100644
index 0000000..cff838b
--- /dev/null
+++ b/blockly/msg/json/cs.json
@@ -0,0 +1,331 @@
+{
+ "@metadata": {
+ "authors": [
+ "Chmee2",
+ "Rosnicka.kacka",
+ "Matěj Grabovský",
+ "Espertus",
+ "Utar",
+ "Clon",
+ "Koo6",
+ "Vtmarvin",
+ "Dvorapa"
+ ]
+ },
+ "VARIABLES_DEFAULT_NAME": "položka",
+ "TODAY": "Dnes",
+ "DUPLICATE_BLOCK": "Duplikovat",
+ "ADD_COMMENT": "Přidat komentář",
+ "REMOVE_COMMENT": "Odstranit komentář",
+ "EXTERNAL_INPUTS": "vnější vstupy",
+ "INLINE_INPUTS": "Vložené vstupy",
+ "DELETE_BLOCK": "Smazat blok",
+ "DELETE_X_BLOCKS": "Smazat %1 bloků",
+ "DELETE_ALL_BLOCKS": "Smazat všech %1 bloků?",
+ "CLEAN_UP": "Uspořádat bloky",
+ "COLLAPSE_BLOCK": "Sbalit blok",
+ "COLLAPSE_ALL": "Sbalit bloky",
+ "EXPAND_BLOCK": "Rozbalit blok",
+ "EXPAND_ALL": "Rozbalit bloky",
+ "DISABLE_BLOCK": "Deaktivovat blok",
+ "ENABLE_BLOCK": "Povolit blok",
+ "HELP": "Nápověda",
+ "UNDO": "Zpět",
+ "REDO": "Znovu",
+ "CHANGE_VALUE_TITLE": "Změnit hodnotu:",
+ "RENAME_VARIABLE": "Přejmenovat proměnnou...",
+ "RENAME_VARIABLE_TITLE": "Přejmenuj všech '%1' proměnných na:",
+ "NEW_VARIABLE": "Nová proměnná...",
+ "NEW_VARIABLE_TITLE": "Nový název proměnné:",
+ "COLOUR_PICKER_HELPURL": "https://cs.wikipedia.org/wiki/Barva",
+ "COLOUR_PICKER_TOOLTIP": "Vyberte barvu z palety.",
+ "COLOUR_RANDOM_TITLE": "náhodná barva",
+ "COLOUR_RANDOM_TOOLTIP": "Zvolte barvu náhodně.",
+ "COLOUR_RGB_TITLE": "obarvěte barvou",
+ "COLOUR_RGB_RED": "červená",
+ "COLOUR_RGB_GREEN": "zelená",
+ "COLOUR_RGB_BLUE": "modrá",
+ "COLOUR_RGB_TOOLTIP": "Vytvoř barvu se zadaným množstvím červené, zelené a modré. Všechny hodnoty musí být mezi 0 a 100.",
+ "COLOUR_BLEND_TITLE": "smíchat",
+ "COLOUR_BLEND_COLOUR1": "barva 1",
+ "COLOUR_BLEND_COLOUR2": "barva 2",
+ "COLOUR_BLEND_RATIO": "poměr",
+ "COLOUR_BLEND_TOOLTIP": "Smíchá dvě barvy v daném poměru (0.0–1.0).",
+ "CONTROLS_REPEAT_HELPURL": "https://cs.wikipedia.org/wiki/Cyklus_pro",
+ "CONTROLS_REPEAT_TITLE": "opakuj %1 krát",
+ "CONTROLS_REPEAT_INPUT_DO": "dělej",
+ "CONTROLS_REPEAT_TOOLTIP": "Proveď určité příkazy několikrát.",
+ "CONTROLS_WHILEUNTIL_OPERATOR_WHILE": "opakovat když",
+ "CONTROLS_WHILEUNTIL_OPERATOR_UNTIL": "opakovat dokud",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_WHILE": "Dokud je hodnota pravdivá, prováděj určité příkazy.",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL": "Dokud je hodnota nepravdivá, prováděj určité příkazy.",
+ "CONTROLS_FOR_TOOLTIP": "Nechá proměnnou '%1' nabývat hodnot od počátečního do koncového čísla po daném přírůstku a provádí s ní příslušné bloky.",
+ "CONTROLS_FOR_TITLE": "počítat s %1 od %2 do %3 po %4",
+ "CONTROLS_FOREACH_TITLE": "pro každou položku %1 v seznamu %2",
+ "CONTROLS_FOREACH_TOOLTIP": "Pro každou položku v seznamu nastavte do proměnné '%1' danou položku a proveďte nějaké operace.",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK": "vyskočit ze smyčky",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE": "pokračuj dalším opakováním smyčky",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK": "Vyskoč z vnitřní smyčky.",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE": "Přeskoč zbytek této smyčky a pokračuj dalším opakováním.",
+ "CONTROLS_FLOW_STATEMENTS_WARNING": "Upozornění: Tento blok může být použit pouze uvnitř smyčky.",
+ "CONTROLS_IF_TOOLTIP_1": "Je-li hodnota pravda, proveď určité příkazy.",
+ "CONTROLS_IF_TOOLTIP_2": "Je-li hodnota pravda, proveď první blok příkazů. V opačném případě proveď druhý blok příkazů.",
+ "CONTROLS_IF_TOOLTIP_3": "Je-li první hodnota pravdivá, proveď první blok příkazů. V opačném případě, je-li pravdivá druhá hodnota, proveď druhý blok příkazů.",
+ "CONTROLS_IF_TOOLTIP_4": "Je-li první hodnota pravda, proveď první blok příkazů. Je-li druhá hodnota pravda, proveď druhý blok příkazů. Pokud žádná hodnota není pravda, proveď poslední blok příkazů.",
+ "CONTROLS_IF_MSG_IF": "pokud",
+ "CONTROLS_IF_MSG_ELSEIF": "nebo pokud",
+ "CONTROLS_IF_MSG_ELSE": "jinak",
+ "CONTROLS_IF_IF_TOOLTIP": "Přidej, odstraň či uspořádej sekce k přenastavení tohoto bloku \"pokud\".",
+ "CONTROLS_IF_ELSEIF_TOOLTIP": "Přidat podmínku do \"pokud\" bloku.",
+ "CONTROLS_IF_ELSE_TOOLTIP": "Přidej konečnou podmínku zahrnující ostatní případy do bloku \"pokud\".",
+ "LOGIC_COMPARE_HELPURL": "https://cs.wikipedia.org/wiki/Nerovnost_(matematika)",
+ "LOGIC_COMPARE_TOOLTIP_EQ": "Vrátí hodnotu pravda, pokud se oba vstupy rovnají jeden druhému.",
+ "LOGIC_COMPARE_TOOLTIP_NEQ": "Vrátí hodnotu pravda, pokud se oba vstupy nerovnají sobě navzájem.",
+ "LOGIC_COMPARE_TOOLTIP_LT": "Navrátí hodnotu pravda, pokud je první vstup menší než druhý vstup.",
+ "LOGIC_COMPARE_TOOLTIP_LTE": "Navrátí hodnotu pravda, pokud je první vstup menší a nebo rovný druhému vstupu.",
+ "LOGIC_COMPARE_TOOLTIP_GT": "Navrátí hodnotu pravda, pokud první vstup je větší než druhý vstup.",
+ "LOGIC_COMPARE_TOOLTIP_GTE": "Navrátí hodnotu pravda, pokud je první vstup větší a nebo rovný druhému vstupu.",
+ "LOGIC_OPERATION_TOOLTIP_AND": "Vrátí hodnotu pravda, pokud oba dva vstupy jsou pravdivé.",
+ "LOGIC_OPERATION_AND": "a",
+ "LOGIC_OPERATION_TOOLTIP_OR": "Vrátí hodnotu pravda, pokud alespoň jeden ze vstupů má hodnotu pravda.",
+ "LOGIC_OPERATION_OR": "nebo",
+ "LOGIC_NEGATE_TITLE": "ne %1",
+ "LOGIC_NEGATE_TOOLTIP": "Navrátí hodnotu pravda, pokud je vstup nepravda. Navrátí hodnotu nepravda, pokud je vstup pravda.",
+ "LOGIC_BOOLEAN_TRUE": "pravda",
+ "LOGIC_BOOLEAN_FALSE": "nepravda",
+ "LOGIC_BOOLEAN_TOOLTIP": "Vrací pravda nebo nepravda.",
+ "LOGIC_NULL": "prázdný",
+ "LOGIC_NULL_TOOLTIP": "Vrátí prázdnou hodnotu",
+ "LOGIC_TERNARY_HELPURL": "https://cs.wikipedia.org/wiki/Ternární operátor (programování)",
+ "LOGIC_TERNARY_CONDITION": "test",
+ "LOGIC_TERNARY_IF_TRUE": "pokud pravda",
+ "LOGIC_TERNARY_IF_FALSE": "pokud nepravda",
+ "LOGIC_TERNARY_TOOLTIP": "Zkontroluje podmínku v \"testu\". Když je podmínka pravda, vrátí hodnotu \"pokud pravda\"; v opačném případě vrátí hodnotu \"pokud nepravda\".",
+ "MATH_NUMBER_HELPURL": "https://cs.wikipedia.org/wiki/Číslo",
+ "MATH_NUMBER_TOOLTIP": "Číslo.",
+ "MATH_SUBTRACTION_SYMBOL": "-",
+ "MATH_DIVISION_SYMBOL": "÷",
+ "MATH_MULTIPLICATION_SYMBOL": "×",
+ "MATH_POWER_SYMBOL": "^",
+ "MATH_TRIG_SIN": "sin",
+ "MATH_TRIG_COS": "cos",
+ "MATH_TRIG_TAN": "tan",
+ "MATH_TRIG_ASIN": "arcsin",
+ "MATH_TRIG_ACOS": "acos",
+ "MATH_TRIG_ATAN": "arctan",
+ "MATH_ARITHMETIC_HELPURL": "https://cs.wikipedia.org/wiki/Aritmetika",
+ "MATH_ARITHMETIC_TOOLTIP_ADD": "Vrátí součet dvou čísel.",
+ "MATH_ARITHMETIC_TOOLTIP_MINUS": "Vrátí rozdíl dvou čísel.",
+ "MATH_ARITHMETIC_TOOLTIP_MULTIPLY": "Vrátí součin dvou čísel.",
+ "MATH_ARITHMETIC_TOOLTIP_DIVIDE": "Vrátí podíl dvou čísel.",
+ "MATH_ARITHMETIC_TOOLTIP_POWER": "Vrátí první číslo umocněné na druhé číslo.",
+ "MATH_SINGLE_HELPURL": "https://cs.wikipedia.org/wiki/Druhá_odmocnina",
+ "MATH_SINGLE_OP_ROOT": "druhá odmocnina",
+ "MATH_SINGLE_TOOLTIP_ROOT": "Vrátí druhou odmocninu čísla.",
+ "MATH_SINGLE_OP_ABSOLUTE": "absolutní hodnota",
+ "MATH_SINGLE_TOOLTIP_ABS": "Vrátí absolutní hodnotu čísla.",
+ "MATH_SINGLE_TOOLTIP_NEG": "Vrátí zápornou hodnotu čísla.",
+ "MATH_SINGLE_TOOLTIP_LN": "Vrátí přirozený logaritmus čísla.",
+ "MATH_SINGLE_TOOLTIP_LOG10": "Vrátí desítkový logaritmus čísla.",
+ "MATH_SINGLE_TOOLTIP_EXP": "Vrátí mocninu čísla e.",
+ "MATH_SINGLE_TOOLTIP_POW10": "Vrátí mocninu čísla 10.",
+ "MATH_TRIG_HELPURL": "https://en.wikipedia.org/wiki/Trigonometric_functions",
+ "MATH_TRIG_TOOLTIP_SIN": "Vrátí sinus úhlu ve stupních.",
+ "MATH_TRIG_TOOLTIP_COS": "Vrátí kosinus úhlu ve stupních.",
+ "MATH_TRIG_TOOLTIP_TAN": "Vrátí tangens úhlu ve stupních.",
+ "MATH_TRIG_TOOLTIP_ASIN": "Vrátí arkus sinus čísla.",
+ "MATH_TRIG_TOOLTIP_ACOS": "Vrátí arkus kosinus čísla.",
+ "MATH_TRIG_TOOLTIP_ATAN": "Vrátí arkus tangens čísla.",
+ "MATH_CONSTANT_HELPURL": "https://en.wikipedia.org/wiki/Mathematical_constant",
+ "MATH_CONSTANT_TOOLTIP": "Vraťte jednu z následujících konstant: π (3.141…), e (2.718…), φ (1.618…), sqrt(2) (1.414…), sqrt(½) (0.707…), or ∞ (nekonečno).",
+ "MATH_IS_EVEN": "je sudé",
+ "MATH_IS_ODD": "je liché",
+ "MATH_IS_PRIME": "je prvočíslo",
+ "MATH_IS_WHOLE": "je celé",
+ "MATH_IS_POSITIVE": "je kladné",
+ "MATH_IS_NEGATIVE": "je záporné",
+ "MATH_IS_DIVISIBLE_BY": "je dělitelné číslem",
+ "MATH_IS_TOOLTIP": "Kontrola, zda je číslo sudé, liché, prvočíslo, celé, kladné, záporné nebo zda je dělitelné daným číslem. Vrací pravdu nebo nepravdu.",
+ "MATH_CHANGE_HELPURL": "https://en.wikipedia.org/wiki/Programming_idiom#Incrementing_a_counter",
+ "MATH_CHANGE_TITLE": "zaměň %1 za %2",
+ "MATH_CHANGE_TOOLTIP": "Přičti číslo k proměnné '%1'.",
+ "MATH_ROUND_HELPURL": "https://en.wikipedia.org/wiki/Rounding",
+ "MATH_ROUND_TOOLTIP": "Zaokrouhlit číslo nahoru nebo dolů.",
+ "MATH_ROUND_OPERATOR_ROUND": "zaokrouhlit",
+ "MATH_ROUND_OPERATOR_ROUNDUP": "zaokrouhlit nahoru",
+ "MATH_ROUND_OPERATOR_ROUNDDOWN": "zaokrouhlit dolů",
+ "MATH_ONLIST_OPERATOR_SUM": "suma seznamu",
+ "MATH_ONLIST_TOOLTIP_SUM": "Vrátí součet všech čísel v seznamu.",
+ "MATH_ONLIST_OPERATOR_MIN": "nejmenší v seznamu",
+ "MATH_ONLIST_TOOLTIP_MIN": "Vrátí nejmenší číslo v seznamu.",
+ "MATH_ONLIST_OPERATOR_MAX": "největší v seznamu",
+ "MATH_ONLIST_TOOLTIP_MAX": "Vrátí největší číslo v seznamu.",
+ "MATH_ONLIST_OPERATOR_AVERAGE": "průměr v seznamu",
+ "MATH_ONLIST_TOOLTIP_AVERAGE": "Vrátí průměr (aritmetický průměr) číselných hodnot v seznamu.",
+ "MATH_ONLIST_OPERATOR_MEDIAN": "medián v seznamu",
+ "MATH_ONLIST_TOOLTIP_MEDIAN": "Vrátí medián seznamu.",
+ "MATH_ONLIST_OPERATOR_MODE": "nejčastější ze seznamu",
+ "MATH_ONLIST_TOOLTIP_MODE": "Vrátí seznam nejčastějších položek seznamu.",
+ "MATH_ONLIST_OPERATOR_STD_DEV": "směrodatná odchylka ze seznamu",
+ "MATH_ONLIST_TOOLTIP_STD_DEV": "Vrátí směrodatnou odchylku seznamu.",
+ "MATH_ONLIST_OPERATOR_RANDOM": "náhodná položka seznamu",
+ "MATH_ONLIST_TOOLTIP_RANDOM": "Vrátí náhodnou položku ze seznamu.",
+ "MATH_MODULO_HELPURL": "https://cs.wikipedia.org/wiki/Modul%C3%A1rn%C3%AD_aritmetika",
+ "MATH_MODULO_TITLE": "zbytek po dělení %1 ÷ %2",
+ "MATH_MODULO_TOOLTIP": "Vrátí zbytek po dělení dvou čísel.",
+ "MATH_CONSTRAIN_TITLE": "omez %1 na rozmezí od %2 do %3",
+ "MATH_CONSTRAIN_TOOLTIP": "Omezí číslo tak, aby bylo ve stanovených mezích (včetně).",
+ "MATH_RANDOM_INT_HELPURL": "https://cs.wikipedia.org/wiki/Gener%C3%A1tor_n%C3%A1hodn%C3%BDch_%C4%8D%C3%ADsel",
+ "MATH_RANDOM_INT_TITLE": "náhodné celé číslo od %1 do %2",
+ "MATH_RANDOM_INT_TOOLTIP": "Vrací náhodné celé číslo mezi dvěma určenými mezemi, včetně mezních hodnot.",
+ "MATH_RANDOM_FLOAT_HELPURL": "https://cs.wikipedia.org/wiki/Gener%C3%A1tor_n%C3%A1hodn%C3%BDch_%C4%8D%C3%ADsel",
+ "MATH_RANDOM_FLOAT_TITLE_RANDOM": "náhodné číslo mezi 0 (včetně) do 1",
+ "MATH_RANDOM_FLOAT_TOOLTIP": "Vrátí náhodné číslo mezi 0,0 (včetně) až 1,0",
+ "TEXT_TEXT_HELPURL": "https://cs.wikipedia.org/wiki/Textov%C3%BD_%C5%99et%C4%9Bzec",
+ "TEXT_TEXT_TOOLTIP": "Písmeno, slovo nebo řádek textu.",
+ "TEXT_JOIN_TITLE_CREATEWITH": "vytvořit text s",
+ "TEXT_JOIN_TOOLTIP": "Vytvoří kousek textu spojením libovolného počtu položek.",
+ "TEXT_CREATE_JOIN_TITLE_JOIN": "spojit",
+ "TEXT_CREATE_JOIN_TOOLTIP": "Přidat, odebrat nebo změnit pořadí oddílů tohoto textového bloku.",
+ "TEXT_CREATE_JOIN_ITEM_TOOLTIP": "Přidat položku do textu.",
+ "TEXT_APPEND_TO": "do",
+ "TEXT_APPEND_APPENDTEXT": "přidat text",
+ "TEXT_APPEND_TOOLTIP": "Přidá určitý text k proměnné '%1'.",
+ "TEXT_LENGTH_TITLE": "délka %1",
+ "TEXT_LENGTH_TOOLTIP": "Vrátí počet písmen (včetně mezer) v zadaném textu.",
+ "TEXT_ISEMPTY_TITLE": "%1 je prázdný",
+ "TEXT_ISEMPTY_TOOLTIP": "Vrátí pravda pokud je zadaný text prázdný.",
+ "TEXT_INDEXOF_TOOLTIP": "Vrátí index prvního/posledního výskytu prvního textu v druhém textu. Pokud text není nalezen, vypíše %1.",
+ "TEXT_INDEXOF_INPUT_INTEXT": "v textu",
+ "TEXT_INDEXOF_OPERATOR_FIRST": "najít první výskyt textu",
+ "TEXT_INDEXOF_OPERATOR_LAST": "najít poslední výskyt textu",
+ "TEXT_CHARAT_INPUT_INTEXT": "v textu",
+ "TEXT_CHARAT_FROM_START": "získat písmeno #",
+ "TEXT_CHARAT_FROM_END": "získat # písmeno od konce",
+ "TEXT_CHARAT_FIRST": "získat první písmeno",
+ "TEXT_CHARAT_LAST": "získat poslední písmeno",
+ "TEXT_CHARAT_RANDOM": "získat náhodné písmeno",
+ "TEXT_CHARAT_TOOLTIP": "Získat písmeno na konkrétní pozici.",
+ "TEXT_GET_SUBSTRING_TOOLTIP": "Získat zadanou část textu.",
+ "TEXT_GET_SUBSTRING_INPUT_IN_TEXT": "v textu",
+ "TEXT_GET_SUBSTRING_START_FROM_START": "získat podřetězec od písmene #",
+ "TEXT_GET_SUBSTRING_START_FROM_END": "získat podřetězec od písmene # od konce",
+ "TEXT_GET_SUBSTRING_START_FIRST": "získat podřetězec od prvního písmene",
+ "TEXT_GET_SUBSTRING_END_FROM_START": "do písmene #",
+ "TEXT_GET_SUBSTRING_END_FROM_END": "do # písmene od konce",
+ "TEXT_GET_SUBSTRING_END_LAST": "do posledního písmene",
+ "TEXT_CHANGECASE_TOOLTIP": "Vrátí kopii textu s jinou velikostí písmen.",
+ "TEXT_CHANGECASE_OPERATOR_UPPERCASE": "na VELKÁ PÍSMENA",
+ "TEXT_CHANGECASE_OPERATOR_LOWERCASE": "na malá písmena",
+ "TEXT_CHANGECASE_OPERATOR_TITLECASE": "na Počáteční Velká Písmena",
+ "TEXT_TRIM_TOOLTIP": "Vrátí kopii textu s odstraněnými mezerami z jednoho nebo obou konců.",
+ "TEXT_TRIM_OPERATOR_BOTH": "odstranit mezery z obou stran",
+ "TEXT_TRIM_OPERATOR_LEFT": "odstranit mezery z levé strany",
+ "TEXT_TRIM_OPERATOR_RIGHT": "odstranit mezery z pravé strany",
+ "TEXT_PRINT_TITLE": "tisk %1",
+ "TEXT_PRINT_TOOLTIP": "Tisk zadaného textu, čísla nebo jiné hodnoty.",
+ "TEXT_PROMPT_TYPE_TEXT": "výzva k zadání textu se zprávou",
+ "TEXT_PROMPT_TYPE_NUMBER": "výzva k zadání čísla se zprávou",
+ "TEXT_PROMPT_TOOLTIP_NUMBER": "Výzva pro uživatele k zadání čísla.",
+ "TEXT_PROMPT_TOOLTIP_TEXT": "Výzva pro uživatele k zadání nějakého textu.",
+ "LISTS_CREATE_EMPTY_TITLE": "vytvořit prázdný seznam",
+ "LISTS_CREATE_EMPTY_TOOLTIP": "Vrátí seznam nulové délky, který neobsahuje žádné datové záznamy",
+ "LISTS_CREATE_WITH_TOOLTIP": "Vytvoř seznam s libovolným počtem položek.",
+ "LISTS_CREATE_WITH_INPUT_WITH": "vytvořit seznam s",
+ "LISTS_CREATE_WITH_CONTAINER_TITLE_ADD": "seznam",
+ "LISTS_CREATE_WITH_CONTAINER_TOOLTIP": "Přidat, odebrat nebo změnit pořadí oddílů tohoto seznamu bloku.",
+ "LISTS_CREATE_WITH_ITEM_TOOLTIP": "Přidat položku do seznamu.",
+ "LISTS_REPEAT_TOOLTIP": "Vytváří seznam obsahující danou hodnotu n-krát.",
+ "LISTS_REPEAT_TITLE": "vytvoř seznam s položkou %1 opakovanou %1 krát",
+ "LISTS_LENGTH_TITLE": "délka %1",
+ "LISTS_LENGTH_TOOLTIP": "Vrací počet položek v seznamu.",
+ "LISTS_ISEMPTY_TITLE": "%1 je prázdné",
+ "LISTS_ISEMPTY_TOOLTIP": "Vrátí hodnotu pravda, pokud je seznam prázdný.",
+ "LISTS_INLIST": "v seznamu",
+ "LISTS_INDEX_OF_FIRST": "najít první výskyt položky",
+ "LISTS_INDEX_OF_LAST": "najít poslední výskyt položky",
+ "LISTS_INDEX_OF_TOOLTIP": "Vrací index prvního/posledního výskytu položky v seznamu. Vrací %1, pokud položka nebyla nalezena.",
+ "LISTS_GET_INDEX_GET": "získat",
+ "LISTS_GET_INDEX_GET_REMOVE": "získat a odstranit",
+ "LISTS_GET_INDEX_REMOVE": "odstranit",
+ "LISTS_GET_INDEX_FROM_START": "#",
+ "LISTS_GET_INDEX_FROM_END": "# od konce",
+ "LISTS_GET_INDEX_FIRST": "první",
+ "LISTS_GET_INDEX_LAST": "poslední",
+ "LISTS_GET_INDEX_RANDOM": "náhodné",
+ "LISTS_INDEX_FROM_START_TOOLTIP": "%1 je první položka.",
+ "LISTS_INDEX_FROM_END_TOOLTIP": "%1 je poslední položka.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_FROM": "Získá položku z určené pozice v seznamu.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_FIRST": "Vrátí první položku v seznamu.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_LAST": "Vrátí poslední položku v seznamu.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_RANDOM": "Vrátí náhodnou položku ze seznamu.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM": "Odstraní a získá položku z určené pozice v seznamu.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST": "Odstraní a vrátí první položku v seznamu.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST": "Odstraní a vrátí poslední položku v seznamu.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM": "Odstraní a vrátí náhodnou položku v seznamu.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM": "Odebere položku na konkrétním místě v seznamu.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST": "Odstraní první položku v seznamu.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST": "Odstraní poslední položku v seznamu.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM": "Odstraní náhodou položku v seznamu.",
+ "LISTS_SET_INDEX_SET": "nastavit",
+ "LISTS_SET_INDEX_INSERT": "vložit na",
+ "LISTS_SET_INDEX_INPUT_TO": "jako",
+ "LISTS_SET_INDEX_TOOLTIP_SET_FROM": "Nastaví položku na konkrétní místo v seznamu.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_FIRST": "Nastaví první položku v seznamu.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_LAST": "Nastaví poslední položku v seznamu.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_RANDOM": "Nastaví náhodnou položku v seznamu.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_FROM": "Vloží položku na určenou pozici v seznamu.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST": "Vložit položku na začátek seznamu.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_LAST": "Připojí položku na konec seznamu.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM": "Připojí položku náhodně do seznamu.",
+ "LISTS_GET_SUBLIST_START_FROM_START": "získat podseznam od #",
+ "LISTS_GET_SUBLIST_START_FROM_END": "získat podseznam od # od konce",
+ "LISTS_GET_SUBLIST_START_FIRST": "získat podseznam od první položky",
+ "LISTS_GET_SUBLIST_END_FROM_START": "do #",
+ "LISTS_GET_SUBLIST_END_FROM_END": "do # od konce",
+ "LISTS_GET_SUBLIST_END_LAST": "jako poslední",
+ "LISTS_GET_SUBLIST_TOOLTIP": "Vytvoří kopii určené části seznamu.",
+ "LISTS_SORT_HELPURL": "https://github.com/google/blockly/wiki/Lists#sorting-a-list",
+ "LISTS_SORT_TITLE": "seřadit %1 %2 %3",
+ "LISTS_SORT_TOOLTIP": "Seřadit kopii seznamu.",
+ "LISTS_SORT_ORDER_ASCENDING": "vzestupně",
+ "LISTS_SORT_ORDER_DESCENDING": "sestupně",
+ "LISTS_SORT_TYPE_NUMERIC": "číselné",
+ "LISTS_SORT_TYPE_TEXT": "abecedně",
+ "LISTS_SORT_TYPE_IGNORECASE": "abecedně, na velikosti písmen nezáleží",
+ "LISTS_SPLIT_LIST_FROM_TEXT": "udělat z textu seznam",
+ "LISTS_SPLIT_TEXT_FROM_LIST": "udělat ze seznamu text",
+ "LISTS_SPLIT_WITH_DELIMITER": "s oddělovačem",
+ "LISTS_SPLIT_TOOLTIP_SPLIT": "Rozdělit text do seznamu textů, lámání na oddělovačích.",
+ "LISTS_SPLIT_TOOLTIP_JOIN": "Spojit seznam textů do jednoho textu, rozdělaného oddělovači.",
+ "VARIABLES_GET_TOOLTIP": "Vrátí hodnotu této proměnné.",
+ "VARIABLES_GET_CREATE_SET": "Vytvořit \"nastavit %1\"",
+ "VARIABLES_SET": "nastavit %1 na %2",
+ "VARIABLES_SET_TOOLTIP": "Nastaví tuto proměnnou, aby se rovnala vstupu.",
+ "VARIABLES_SET_CREATE_GET": "Vytvořit \"získat %1\"",
+ "PROCEDURES_DEFNORETURN_HELPURL": "https://cs.wikipedia.org/w/index.php?title=Funkce_(programování)",
+ "PROCEDURES_DEFNORETURN_TITLE": "k provedení",
+ "PROCEDURES_DEFNORETURN_PROCEDURE": "proveď něco",
+ "PROCEDURES_BEFORE_PARAMS": "s:",
+ "PROCEDURES_CALL_BEFORE_PARAMS": "s:",
+ "PROCEDURES_DEFNORETURN_TOOLTIP": "Vytvořit funkci bez výstupu.",
+ "PROCEDURES_DEFNORETURN_COMMENT": "Popište tuto funkci...",
+ "PROCEDURES_DEFRETURN_HELPURL": "https://cs.wikipedia.org/w/index.php?title=Funkce_(programování)",
+ "PROCEDURES_DEFRETURN_RETURN": "navrátit",
+ "PROCEDURES_DEFRETURN_TOOLTIP": "Vytvořit funkci s výstupem.",
+ "PROCEDURES_ALLOW_STATEMENTS": "povolit příkazy",
+ "PROCEDURES_DEF_DUPLICATE_WARNING": "Upozornění: Tato funkce má duplicitní parametry.",
+ "PROCEDURES_CALLNORETURN_HELPURL": "https://cs.wikipedia.org/wiki/Funkce_(programov%C3%A1n%C3%AD)",
+ "PROCEDURES_CALLNORETURN_TOOLTIP": "Spustí uživatelem definovanou funkci '%1'.",
+ "PROCEDURES_CALLRETURN_HELPURL": "https://cs.wikipedia.org/wiki/Funkce_(programov%C3%A1n%C3%AD)",
+ "PROCEDURES_CALLRETURN_TOOLTIP": "Spustí uživatelem definovanou funkci '%1' a použije její výstup.",
+ "PROCEDURES_MUTATORCONTAINER_TITLE": "vstupy",
+ "PROCEDURES_MUTATORCONTAINER_TOOLTIP": "Přidat, odebrat nebo změnit pořadí vstupů této funkce.",
+ "PROCEDURES_MUTATORARG_TITLE": "vstupní jméno:",
+ "PROCEDURES_MUTATORARG_TOOLTIP": "Přidat vstupy do funkce.",
+ "PROCEDURES_HIGHLIGHT_DEF": "Zvýraznit definici funkce",
+ "PROCEDURES_CREATE_DO": "Vytvořit '%1'",
+ "PROCEDURES_IFRETURN_TOOLTIP": "Je-li hodnota pravda, pak vrátí druhou hodnotu.",
+ "PROCEDURES_IFRETURN_HELPURL": "http://c2.com/cgi/wiki?GuardClause",
+ "PROCEDURES_IFRETURN_WARNING": "Varování: Tento blok může být použit pouze uvnitř definici funkce."
+}
diff --git a/blockly/msg/json/da.json b/blockly/msg/json/da.json
new file mode 100644
index 0000000..636bd7c
--- /dev/null
+++ b/blockly/msg/json/da.json
@@ -0,0 +1,303 @@
+{
+ "@metadata": {
+ "authors": [
+ "Christian List",
+ "RickiRunge",
+ "MGA73",
+ "Mads Haupt"
+ ]
+ },
+ "VARIABLES_DEFAULT_NAME": "element",
+ "TODAY": "I dag",
+ "DUPLICATE_BLOCK": "Duplikér",
+ "ADD_COMMENT": "Tilføj kommentar",
+ "REMOVE_COMMENT": "Fjern kommentar",
+ "EXTERNAL_INPUTS": "Udvendige inputs",
+ "INLINE_INPUTS": "Indlejrede inputs",
+ "DELETE_BLOCK": "Slet blok",
+ "DELETE_X_BLOCKS": "Slet %1 blokke",
+ "DELETE_ALL_BLOCKS": "Slet alle %1 blokke?",
+ "CLEAN_UP": "Ryd op i blokke",
+ "COLLAPSE_BLOCK": "Fold blokken sammen",
+ "COLLAPSE_ALL": "Fold blokkene sammen",
+ "EXPAND_BLOCK": "Fold blokken ud",
+ "EXPAND_ALL": "Fold blokkene ud",
+ "DISABLE_BLOCK": "Deaktivér blok",
+ "ENABLE_BLOCK": "Aktivér blok",
+ "HELP": "Hjælp",
+ "CHANGE_VALUE_TITLE": "Skift værdi:",
+ "RENAME_VARIABLE": "Omdøb variabel...",
+ "RENAME_VARIABLE_TITLE": "Omdøb alle '%1' variabler til:",
+ "NEW_VARIABLE": "Ny variabel...",
+ "NEW_VARIABLE_TITLE": "Navn til den nye variabel:",
+ "COLOUR_PICKER_HELPURL": "https://da.wikipedia.org/wiki/Farve",
+ "COLOUR_PICKER_TOOLTIP": "Vælg en farve fra paletten.",
+ "COLOUR_RANDOM_TITLE": "tilfældig farve",
+ "COLOUR_RANDOM_TOOLTIP": "Vælg en tilfældig farve.",
+ "COLOUR_RGB_TITLE": "farve med",
+ "COLOUR_RGB_RED": "rød",
+ "COLOUR_RGB_GREEN": "grøn",
+ "COLOUR_RGB_BLUE": "blå",
+ "COLOUR_RGB_TOOLTIP": "Lav en farve med den angivne mængde af rød, grøn og blå. Alle værdier skal være mellem 0 og 100.",
+ "COLOUR_BLEND_TITLE": "bland",
+ "COLOUR_BLEND_COLOUR1": "farve 1",
+ "COLOUR_BLEND_COLOUR2": "farve 2",
+ "COLOUR_BLEND_RATIO": "i forholdet",
+ "COLOUR_BLEND_TOOLTIP": "Blander to farver sammen i et bestemt forhold (0.0 - 1.0).",
+ "CONTROLS_REPEAT_HELPURL": "https://da.wikipedia.org/wiki/For-l%C3%B8kke",
+ "CONTROLS_REPEAT_TITLE": "gentag %1 gange",
+ "CONTROLS_REPEAT_INPUT_DO": "udfør",
+ "CONTROLS_REPEAT_TOOLTIP": "Udfør nogle kommandoer flere gange.",
+ "CONTROLS_WHILEUNTIL_OPERATOR_WHILE": "gentag sålænge",
+ "CONTROLS_WHILEUNTIL_OPERATOR_UNTIL": "gentag indtil",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_WHILE": "Udfør nogle kommandoer, sålænge en værdi er sand.",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL": "Udfør nogle kommandoer, sålænge en værdi er falsk.",
+ "CONTROLS_FOR_TOOLTIP": "Få variablen \"%1\" til at have værdierne fra startværdien til slutværdien, mens der tælles med det angivne interval, og udfør de angivne blokke.",
+ "CONTROLS_FOR_TITLE": "tæl med %1 fra %2 til %3 med %4",
+ "CONTROLS_FOREACH_TITLE": "for hvert element %1 i listen %2",
+ "CONTROLS_FOREACH_TOOLTIP": "For hvert element i en liste, sæt variablen '%1' til elementet, og udfør derefter nogle kommandoer.",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK": "bryd ud af løkken",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE": "fortsæt med den næste gentagelse i løkken",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK": "Bryd ud af den omgivende løkke.",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE": "Spring resten af denne løkke over, og fortsæt med den næste gentagelse.",
+ "CONTROLS_FLOW_STATEMENTS_WARNING": "Advarsel: Denne blok kan kun bruges i en løkke.",
+ "CONTROLS_IF_TOOLTIP_1": "Hvis en værdi er sand, så udfør nogle kommandoer.",
+ "CONTROLS_IF_TOOLTIP_2": "Hvis en værdi er sand, så udfør den første blok af kommandoer. Ellers udfør den anden blok af kommandoer.",
+ "CONTROLS_IF_TOOLTIP_3": "Hvis den første værdi er sand, så udfør den første blok af kommandoer. Ellers, hvis den anden værdi er sand, så udfør den anden blok af kommandoer.",
+ "CONTROLS_IF_TOOLTIP_4": "Hvis den første værdi er sand, så udfør den første blok af kommandoer. Ellers, hvis den anden værdi er sand, så udfør den anden blok af kommandoer. Hvis ingen af værdierne er sande, så udfør den sidste blok af kommandoer.",
+ "CONTROLS_IF_MSG_IF": "hvis",
+ "CONTROLS_IF_MSG_ELSEIF": "ellers hvis",
+ "CONTROLS_IF_MSG_ELSE": "ellers",
+ "CONTROLS_IF_IF_TOOLTIP": "Tilføj, fjern eller byt om på rækkefølgen af delene for at konfigurere denne \"hvis\" blok.",
+ "CONTROLS_IF_ELSEIF_TOOLTIP": "Tilføj en betingelse til denne \"hvis\" blok.",
+ "CONTROLS_IF_ELSE_TOOLTIP": "Tilføj en sidste fang-alt betingelse, til denne \"hvis\" blok.",
+ "LOGIC_COMPARE_HELPURL": "https://da.wikipedia.org/wiki/Ulighed_(matematik)",
+ "LOGIC_COMPARE_TOOLTIP_EQ": "Returnere sand, hvis begge inputs er lig med hinanden.",
+ "LOGIC_COMPARE_TOOLTIP_NEQ": "Returnere sand, hvis begge inputs ikke er lig med hinanden.",
+ "LOGIC_COMPARE_TOOLTIP_LT": "Returnere sand, hvis det første input er mindre end det andet input.",
+ "LOGIC_COMPARE_TOOLTIP_LTE": "Returnere sand, hvis det første input er mindre end eller lig med det andet input.",
+ "LOGIC_COMPARE_TOOLTIP_GT": "Returnere sand, hvis det første input er større end det andet input.",
+ "LOGIC_COMPARE_TOOLTIP_GTE": "Returnere sand, hvis det første input er større end eller lig med det andet input.",
+ "LOGIC_OPERATION_TOOLTIP_AND": "Returnere sand, hvis begge inputs er sande.",
+ "LOGIC_OPERATION_AND": "og",
+ "LOGIC_OPERATION_TOOLTIP_OR": "Returnere sand, hvis mindst et af inputtene er sande.",
+ "LOGIC_OPERATION_OR": "eller",
+ "LOGIC_NEGATE_TITLE": "ikke %1",
+ "LOGIC_NEGATE_TOOLTIP": "Returnerer sand, hvis input er falsk. Returnerer falsk, hvis input er sandt.",
+ "LOGIC_BOOLEAN_TRUE": "sand",
+ "LOGIC_BOOLEAN_FALSE": "falsk",
+ "LOGIC_BOOLEAN_TOOLTIP": "Returnerer enten sand eller falsk.",
+ "LOGIC_NULL": "null",
+ "LOGIC_NULL_TOOLTIP": "Returnerer null.",
+ "LOGIC_TERNARY_CONDITION": "test",
+ "LOGIC_TERNARY_IF_TRUE": "hvis sand",
+ "LOGIC_TERNARY_IF_FALSE": "hvis falsk",
+ "LOGIC_TERNARY_TOOLTIP": "Kontrollér betingelsen i 'test'. Hvis betingelsen er sand, returnér \"hvis sand\" værdien; ellers returnér \"hvis falsk\" værdien.",
+ "MATH_NUMBER_HELPURL": "https://da.wikipedia.org/wiki/Tal",
+ "MATH_NUMBER_TOOLTIP": "Et tal.",
+ "MATH_DIVISION_SYMBOL": ":",
+ "MATH_ARITHMETIC_HELPURL": "https://da.wikipedia.org/wiki/Aritmetik",
+ "MATH_ARITHMETIC_TOOLTIP_ADD": "Returnere summen af de to tal.",
+ "MATH_ARITHMETIC_TOOLTIP_MINUS": "Returnere forskellen mellem de to tal.",
+ "MATH_ARITHMETIC_TOOLTIP_MULTIPLY": "Returnere produktet af de to tal.",
+ "MATH_ARITHMETIC_TOOLTIP_DIVIDE": "Returnere kvotienten af de to tal.",
+ "MATH_ARITHMETIC_TOOLTIP_POWER": "Returnere det første tal opløftet til potensen af det andet tal.",
+ "MATH_SINGLE_HELPURL": "https://da.wikipedia.org/wiki/Kvadratrod",
+ "MATH_SINGLE_OP_ROOT": "kvadratrod",
+ "MATH_SINGLE_TOOLTIP_ROOT": "Returnere kvadratroden af et tal.",
+ "MATH_SINGLE_OP_ABSOLUTE": "absolut",
+ "MATH_SINGLE_TOOLTIP_ABS": "Returnere den absolutte værdi af et tal.",
+ "MATH_SINGLE_TOOLTIP_NEG": "Returnere negationen af et tal.",
+ "MATH_SINGLE_TOOLTIP_LN": "Returnere den naturlige logaritme af et tal.",
+ "MATH_SINGLE_TOOLTIP_LOG10": "Returnere 10-talslogaritmen af et tal.",
+ "MATH_SINGLE_TOOLTIP_EXP": "Returnere e til potensen af et tal.",
+ "MATH_SINGLE_TOOLTIP_POW10": "Returnere 10 til potensen af et tal.",
+ "MATH_TRIG_HELPURL": "https://da.wikipedia.org/wiki/Trigonometrisk_funktion",
+ "MATH_TRIG_TOOLTIP_SIN": "Returnere sinus af en vinkel (i grader).",
+ "MATH_TRIG_TOOLTIP_COS": "Returnere cosinus af en vinkel (i grader).",
+ "MATH_TRIG_TOOLTIP_TAN": "Returnere tangens af en vinkel (i grader).",
+ "MATH_TRIG_TOOLTIP_ASIN": "Returnere arcus sinus af et tal.",
+ "MATH_TRIG_TOOLTIP_ACOS": "Returnere arcus cosinus af et tal.",
+ "MATH_TRIG_TOOLTIP_ATAN": "Returnere arcus tangens af et tal.",
+ "MATH_CONSTANT_HELPURL": "https://da.wikipedia.org/wiki/Matematisk_konstant",
+ "MATH_CONSTANT_TOOLTIP": "Returnere en af de ofte brugte konstanter: π (3.141…), e (2.718…), φ (1.618…), sqrt(2) (1.414…), sqrt(2) (1.414…), sqrt(½) (0.707…) eller ∞ (uendeligt).",
+ "MATH_IS_EVEN": "er lige",
+ "MATH_IS_ODD": "er ulige",
+ "MATH_IS_PRIME": "er et primtal",
+ "MATH_IS_WHOLE": "er helt",
+ "MATH_IS_POSITIVE": "er positivt",
+ "MATH_IS_NEGATIVE": "er negativt",
+ "MATH_IS_DIVISIBLE_BY": "er deleligt med",
+ "MATH_IS_TOOLTIP": "Kontrollere, om et tal er lige, ulige, primtal, helt, positivt, negativt, eller om det er deleligt med bestemt tal. Returnere sandt eller falskt.",
+ "MATH_CHANGE_HELPURL": "https://en.wikipedia.org/wiki/Programming_idiom#Incrementing_a_counter",
+ "MATH_CHANGE_TITLE": "skift %1 med %2",
+ "MATH_CHANGE_TOOLTIP": "Læg et tal til variablen '%1'.",
+ "MATH_ROUND_HELPURL": "https://da.wikipedia.org/wiki/Afrunding",
+ "MATH_ROUND_TOOLTIP": "Runde et tal op eller ned.",
+ "MATH_ROUND_OPERATOR_ROUND": "afrund",
+ "MATH_ROUND_OPERATOR_ROUNDUP": "rund op",
+ "MATH_ROUND_OPERATOR_ROUNDDOWN": "rund ned",
+ "MATH_ONLIST_OPERATOR_SUM": "summen af listen",
+ "MATH_ONLIST_TOOLTIP_SUM": "Returner summen af alle tal i listen.",
+ "MATH_ONLIST_OPERATOR_MIN": "mindste tal i listen",
+ "MATH_ONLIST_TOOLTIP_MIN": "Returner det mindste tal i listen.",
+ "MATH_ONLIST_OPERATOR_MAX": "største tal i listen",
+ "MATH_ONLIST_TOOLTIP_MAX": "Returner det største tal i listen.",
+ "MATH_ONLIST_OPERATOR_AVERAGE": "gennemsnit af listen",
+ "MATH_ONLIST_TOOLTIP_AVERAGE": "Returner gennemsnittet (middelværdien) af de numeriske værdier i listen.",
+ "MATH_ONLIST_OPERATOR_MEDIAN": "listens median",
+ "MATH_ONLIST_TOOLTIP_MEDIAN": "Returner listens median.",
+ "MATH_ONLIST_OPERATOR_MODE": "listens typetal",
+ "MATH_ONLIST_TOOLTIP_MODE": "Returner en liste over de mest almindelige elementer på listen.",
+ "MATH_ONLIST_OPERATOR_STD_DEV": "standardafvigelsen for listen",
+ "MATH_ONLIST_TOOLTIP_STD_DEV": "Returner standardafvigelsen for listen.",
+ "MATH_ONLIST_OPERATOR_RANDOM": "tilfældigt element fra listen",
+ "MATH_ONLIST_TOOLTIP_RANDOM": "Returner et tilfældigt element fra listen.",
+ "MATH_MODULO_HELPURL": "https://da.wikipedia.org/wiki/Modulo",
+ "MATH_MODULO_TITLE": "resten af %1 ÷ %2",
+ "MATH_MODULO_TOOLTIP": "Returner resten fra at dividere de to tal.",
+ "MATH_CONSTRAIN_TITLE": "begræns %1 til mellem %2 og %3",
+ "MATH_CONSTRAIN_TOOLTIP": "Begræns et tal til at være mellem de angivne grænser (inklusiv).",
+ "MATH_RANDOM_INT_HELPURL": "https://da.wikipedia.org/wiki/Tilfældighedsgenerator",
+ "MATH_RANDOM_INT_TITLE": "tilfældigt heltal mellem %1 og %2",
+ "MATH_RANDOM_INT_TOOLTIP": "Returner et tilfældigt heltal mellem de to angivne grænser (inklusiv).",
+ "MATH_RANDOM_FLOAT_HELPURL": "https://da.wikipedia.org/wiki/Tilfældighedsgenerator",
+ "MATH_RANDOM_FLOAT_TITLE_RANDOM": "tilfældigt decimaltal (mellem 0 og 1)",
+ "MATH_RANDOM_FLOAT_TOOLTIP": "Returner et tilfældigt decimaltal mellem 0,0 (inklusiv) og 1,0 (eksklusiv).",
+ "TEXT_TEXT_HELPURL": "https://da.wikipedia.org/wiki/Tekststreng",
+ "TEXT_TEXT_TOOLTIP": "En bogstav, et ord eller en linje med tekst.",
+ "TEXT_JOIN_TITLE_CREATEWITH": "lav en tekst med",
+ "TEXT_JOIN_TOOLTIP": "Lav et stykke tekst ved at sætte et antal elementer sammen.",
+ "TEXT_CREATE_JOIN_TITLE_JOIN": "sammenføj",
+ "TEXT_CREATE_JOIN_TOOLTIP": "Tilføj, fjern eller byt om på rækkefølgen af delene for at konfigurere denne tekstblok.",
+ "TEXT_CREATE_JOIN_ITEM_TOOLTIP": "Føj et element til teksten.",
+ "TEXT_APPEND_TO": "til",
+ "TEXT_APPEND_APPENDTEXT": "tilføj tekst",
+ "TEXT_APPEND_TOOLTIP": "Tilføj noget tekst til variablen '%1'.",
+ "TEXT_LENGTH_TITLE": "længden af %1",
+ "TEXT_LENGTH_TOOLTIP": "Returnerer antallet af bogstaver (herunder mellemrum) i den angivne tekst.",
+ "TEXT_ISEMPTY_TITLE": "%1 er tom",
+ "TEXT_ISEMPTY_TOOLTIP": "Returnerer sand, hvis den angivne tekst er tom.",
+ "TEXT_INDEXOF_TOOLTIP": "Returnerer indeks for første/sidste forekomst af første tekst i den anden tekst. Returnerer %1, hvis teksten ikke kan findes.",
+ "TEXT_INDEXOF_INPUT_INTEXT": "i teksten",
+ "TEXT_INDEXOF_OPERATOR_FIRST": "find første forekomst af teksten",
+ "TEXT_INDEXOF_OPERATOR_LAST": "find sidste forekomst af teksten",
+ "TEXT_CHARAT_INPUT_INTEXT": "i teksten",
+ "TEXT_CHARAT_FROM_START": "hent bogstav #",
+ "TEXT_CHARAT_FROM_END": "hent bogstav # fra slutningen",
+ "TEXT_CHARAT_FIRST": "hent første bogstav",
+ "TEXT_CHARAT_LAST": "hent sidste bogstav",
+ "TEXT_CHARAT_RANDOM": "hent tilfældigt bogstav",
+ "TEXT_CHARAT_TOOLTIP": "Returnerer bogstavet på den angivne placering.",
+ "TEXT_GET_SUBSTRING_TOOLTIP": "Returnerer den angivne del af teksten.",
+ "TEXT_GET_SUBSTRING_INPUT_IN_TEXT": "i teksten",
+ "TEXT_GET_SUBSTRING_START_FROM_START": "hent delstreng fra bogstav #",
+ "TEXT_GET_SUBSTRING_START_FROM_END": "hent delstreng fra bogstav # fra slutningen",
+ "TEXT_GET_SUBSTRING_START_FIRST": "hent delstreng fra første bogstav",
+ "TEXT_GET_SUBSTRING_END_FROM_START": "til bogstav #",
+ "TEXT_GET_SUBSTRING_END_FROM_END": "til bogstav # fra slutningen",
+ "TEXT_GET_SUBSTRING_END_LAST": "til sidste bogstav",
+ "TEXT_CHANGECASE_TOOLTIP": "Returner en kopi af teksten hvor bogstaverne enten er udelukkende store eller små, eller hvor første bogstav i hvert ord er stort.",
+ "TEXT_CHANGECASE_OPERATOR_UPPERCASE": "til STORE BOGSTAVER",
+ "TEXT_CHANGECASE_OPERATOR_LOWERCASE": "til små bogstaver",
+ "TEXT_CHANGECASE_OPERATOR_TITLECASE": "til Stort Begyndelsesbogstav",
+ "TEXT_TRIM_TOOLTIP": "Returner en kopi af teksten med mellemrum fjernet fra den ene eller begge sider.",
+ "TEXT_TRIM_OPERATOR_BOTH": "fjern mellemrum fra begge sider af",
+ "TEXT_TRIM_OPERATOR_LEFT": "fjern mellemrum fra venstre side af",
+ "TEXT_TRIM_OPERATOR_RIGHT": "fjern mellemrum fra højre side af",
+ "TEXT_PRINT_TITLE": "skriv %1",
+ "TEXT_PRINT_TOOLTIP": "Skriv den angivne tekst, tal eller anden værdi.",
+ "TEXT_PROMPT_TYPE_TEXT": "spørg efter tekst med meddelelsen",
+ "TEXT_PROMPT_TYPE_NUMBER": "spørg efter et tal med meddelelsen",
+ "TEXT_PROMPT_TOOLTIP_NUMBER": "Spørg brugeren efter et tal",
+ "TEXT_PROMPT_TOOLTIP_TEXT": "Spørg brugeren efter en tekst",
+ "LISTS_CREATE_EMPTY_TITLE": "opret en tom liste",
+ "LISTS_CREATE_EMPTY_TOOLTIP": "Returnerer en liste af længde 0, som ikke indeholder nogen data",
+ "LISTS_CREATE_WITH_TOOLTIP": "Opret en liste med et vilkårligt antal elementer.",
+ "LISTS_CREATE_WITH_INPUT_WITH": "opret liste med",
+ "LISTS_CREATE_WITH_CONTAINER_TITLE_ADD": "liste",
+ "LISTS_CREATE_WITH_CONTAINER_TOOLTIP": "Tilføj, fjern eller byt om på rækkefølgen af delene for at konfigurere denne blok.",
+ "LISTS_CREATE_WITH_ITEM_TOOLTIP": "Føj et element til listen.",
+ "LISTS_REPEAT_TOOLTIP": "Opretter en liste bestående af den givne værdi gentaget et bestemt antal gange.",
+ "LISTS_REPEAT_TITLE": "opret liste med elementet %1 gentaget %2 gange",
+ "LISTS_LENGTH_TITLE": "længden af %1",
+ "LISTS_LENGTH_TOOLTIP": "Returnerer længden af en liste.",
+ "LISTS_ISEMPTY_TITLE": "%1 er tom",
+ "LISTS_ISEMPTY_TOOLTIP": "Returnerer sand, hvis listen er tom.",
+ "LISTS_INLIST": "i listen",
+ "LISTS_INDEX_OF_FIRST": "find første forekomst af elementet",
+ "LISTS_INDEX_OF_LAST": "find sidste forekomst af elementet",
+ "LISTS_INDEX_OF_TOOLTIP": "Returnerer indeks for første/sidste forekomst af elementet i listen. Returnerer %1, hvis elementet ikke kan findes.",
+ "LISTS_GET_INDEX_GET": "hent",
+ "LISTS_GET_INDEX_GET_REMOVE": "hent og fjern",
+ "LISTS_GET_INDEX_REMOVE": "fjern",
+ "LISTS_GET_INDEX_FROM_END": "# fra slutningen",
+ "LISTS_GET_INDEX_FIRST": "første",
+ "LISTS_GET_INDEX_LAST": "sidste",
+ "LISTS_GET_INDEX_RANDOM": "tilfældig",
+ "LISTS_INDEX_FROM_START_TOOLTIP": "%1 er det første element.",
+ "LISTS_INDEX_FROM_END_TOOLTIP": "%1 er det sidste element.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_FROM": "Returnerer elementet på den angivne position på en liste.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_FIRST": "Returnerer det første element i en liste.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_LAST": "Returnerer den sidste element i en liste.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_RANDOM": "Returnerer et tilfældigt element i en liste.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM": "Fjerner og returnerer elementet på den angivne position på en liste.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST": "Fjerner og returnerer det første element i en liste.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST": "Fjerner og returnerer det sidste element i en liste.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM": "Fjerner og returnerer et tilfældigt element i en liste.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM": "Fjerner elementet på den angivne position på en liste.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST": "Fjerner det første element i en liste.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST": "Fjerner sidste element i en liste.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM": "Fjerner et tilfældigt element i en liste.",
+ "LISTS_SET_INDEX_SET": "sæt",
+ "LISTS_SET_INDEX_INSERT": "indsæt ved",
+ "LISTS_SET_INDEX_INPUT_TO": "som",
+ "LISTS_SET_INDEX_TOOLTIP_SET_FROM": "Sætter elementet på den angivne position i en liste.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_FIRST": "Sætter det første element i en liste.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_LAST": "Sætter det sidste element i en liste.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_RANDOM": "Sætter et tilfældigt element i en liste.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_FROM": "Indsætter elementet på den angivne position i en liste.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST": "Indsætter elementet i starten af en liste.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_LAST": "Føj elementet til slutningen af en liste.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM": "Indsætter elementet tilfældigt i en liste.",
+ "LISTS_GET_SUBLIST_START_FROM_START": "hent underliste fra #",
+ "LISTS_GET_SUBLIST_START_FROM_END": "hent underliste fra # fra slutningen",
+ "LISTS_GET_SUBLIST_START_FIRST": "hent underliste fra første",
+ "LISTS_GET_SUBLIST_END_FROM_START": "til #",
+ "LISTS_GET_SUBLIST_END_FROM_END": "til # fra slutningen",
+ "LISTS_GET_SUBLIST_END_LAST": "til sidste",
+ "LISTS_GET_SUBLIST_TOOLTIP": "Opretter en kopi af den angivne del af en liste.",
+ "LISTS_SPLIT_LIST_FROM_TEXT": "lav tekst til liste",
+ "LISTS_SPLIT_TEXT_FROM_LIST": "lav liste til tekst",
+ "LISTS_SPLIT_WITH_DELIMITER": "med skilletegn",
+ "LISTS_SPLIT_TOOLTIP_SPLIT": "Bryd tekst op i en liste af tekster med brud ved hvert skilletegn.",
+ "LISTS_SPLIT_TOOLTIP_JOIN": "Saml en liste af tekster til én tekst, der er adskilt af et skilletegn.",
+ "VARIABLES_GET_TOOLTIP": "Returnerer værdien af denne variabel.",
+ "VARIABLES_GET_CREATE_SET": "Opret 'sæt %1'",
+ "VARIABLES_SET": "sæt %1 til %2",
+ "VARIABLES_SET_TOOLTIP": "Sætter denne variabel til at være lig med input.",
+ "VARIABLES_SET_CREATE_GET": "Opret 'hent %1'",
+ "PROCEDURES_DEFNORETURN_TITLE": "for at",
+ "PROCEDURES_DEFNORETURN_PROCEDURE": "gøre noget",
+ "PROCEDURES_BEFORE_PARAMS": "med:",
+ "PROCEDURES_CALL_BEFORE_PARAMS": "med:",
+ "PROCEDURES_DEFNORETURN_TOOLTIP": "Opretter en funktion der ikke har nogen returværdi.",
+ "PROCEDURES_DEFNORETURN_COMMENT": "Beskriv denne funktion...",
+ "PROCEDURES_DEFRETURN_RETURN": "returnér",
+ "PROCEDURES_DEFRETURN_TOOLTIP": "Opretter en funktion der har en returværdi.",
+ "PROCEDURES_ALLOW_STATEMENTS": "tillad erklæringer",
+ "PROCEDURES_DEF_DUPLICATE_WARNING": "Advarsel: Denne funktion har dublerede parametre.",
+ "PROCEDURES_CALLNORETURN_HELPURL": "https://da.wikipedia.org/wiki/Funktion_%28programmering%29",
+ "PROCEDURES_CALLNORETURN_TOOLTIP": "Kør den brugerdefinerede funktion '%1'.",
+ "PROCEDURES_CALLRETURN_HELPURL": "https://da.wikipedia.org/wiki/Funktion_%28programmering%29",
+ "PROCEDURES_CALLRETURN_TOOLTIP": "Kør den brugerdefinerede funktion '%1' og brug dens returværdi.",
+ "PROCEDURES_MUTATORCONTAINER_TITLE": "parametre",
+ "PROCEDURES_MUTATORCONTAINER_TOOLTIP": "Tilføje, fjerne eller ændre rækkefølgen af parametre til denne funktion.",
+ "PROCEDURES_MUTATORARG_TITLE": "parameternavn:",
+ "PROCEDURES_MUTATORARG_TOOLTIP": "Tilføj en parameter til funktionen.",
+ "PROCEDURES_HIGHLIGHT_DEF": "Markér funktionsdefinitionen",
+ "PROCEDURES_CREATE_DO": "Opret '%1'",
+ "PROCEDURES_IFRETURN_TOOLTIP": "Hvis en værdi er sand, så returnér en anden værdi.",
+ "PROCEDURES_IFRETURN_HELPURL": "http://c2.com/cgi/wiki?GuardClause",
+ "PROCEDURES_IFRETURN_WARNING": "Advarsel: Denne blok kan kun anvendes inden for en funktionsdefinition."
+}
diff --git a/blockly/msg/json/de.json b/blockly/msg/json/de.json
new file mode 100644
index 0000000..b227813
--- /dev/null
+++ b/blockly/msg/json/de.json
@@ -0,0 +1,350 @@
+{
+ "@metadata": {
+ "authors": [
+ "Metalhead64",
+ "M165437",
+ "Dan-yell",
+ "아라",
+ "Octycs",
+ "Cvanca",
+ "THINK"
+ ]
+ },
+ "VARIABLES_DEFAULT_NAME": "etwas",
+ "TODAY": "Heute",
+ "DUPLICATE_BLOCK": "Kopieren",
+ "ADD_COMMENT": "Kommentar hinzufügen",
+ "REMOVE_COMMENT": "Kommentar entfernen",
+ "EXTERNAL_INPUTS": "externe Eingänge",
+ "INLINE_INPUTS": "interne Eingänge",
+ "DELETE_BLOCK": "Baustein löschen",
+ "DELETE_X_BLOCKS": "Baustein %1 löschen",
+ "DELETE_ALL_BLOCKS": "Alle %1 Bausteine löschen?",
+ "CLEAN_UP": "Bausteine aufräumen",
+ "COLLAPSE_BLOCK": "Baustein zusammenfalten",
+ "COLLAPSE_ALL": "Alle Bausteine zusammenfalten",
+ "EXPAND_BLOCK": "Baustein entfalten",
+ "EXPAND_ALL": "Alle Bausteine entfalten",
+ "DISABLE_BLOCK": "Baustein deaktivieren",
+ "ENABLE_BLOCK": "Baustein aktivieren",
+ "HELP": "Hilfe",
+ "UNDO": "Rückgängig",
+ "REDO": "Wiederholen",
+ "CHANGE_VALUE_TITLE": "Wert ändern:",
+ "RENAME_VARIABLE": "Variable umbenennen …",
+ "RENAME_VARIABLE_TITLE": "Alle \"%1\" Variablen umbenennen in:",
+ "NEW_VARIABLE": "Variable erstellen …",
+ "NEW_VARIABLE_TITLE": "Name der neuen Variable:",
+ "VARIABLE_ALREADY_EXISTS": "Eine Variable namens „%1“ ist bereits vorhanden.",
+ "DELETE_VARIABLE_CONFIRMATION": "%1 Verwendungen der Variable „%2“ löschen?",
+ "DELETE_VARIABLE": "Die Variable „%1“ löschen",
+ "COLOUR_PICKER_HELPURL": "https://de.wikipedia.org/wiki/Farbe",
+ "COLOUR_PICKER_TOOLTIP": "Erzeugt eine Farbe aus der Palette.",
+ "COLOUR_RANDOM_TITLE": "zufällige Farbe",
+ "COLOUR_RANDOM_TOOLTIP": "Erzeugt eine Farbe nach dem Zufallsprinzip.",
+ "COLOUR_RGB_HELPURL": "https://de.wikipedia.org/wiki/RGB-Farbraum",
+ "COLOUR_RGB_TITLE": "Farbe aus",
+ "COLOUR_RGB_RED": "rot",
+ "COLOUR_RGB_GREEN": "grün",
+ "COLOUR_RGB_BLUE": "blau",
+ "COLOUR_RGB_TOOLTIP": "Erzeugt eine Farbe mit selbst definierten Rot-, Grün- und Blauwerten. Alle Werte müssen zwischen 0 und 100 liegen.",
+ "COLOUR_BLEND_HELPURL": "http://meyerweb.com/eric/tools/color-blend/",
+ "COLOUR_BLEND_TITLE": "mische",
+ "COLOUR_BLEND_COLOUR1": "Farbe 1",
+ "COLOUR_BLEND_COLOUR2": "und Farbe 2",
+ "COLOUR_BLEND_RATIO": "im Verhältnis",
+ "COLOUR_BLEND_TOOLTIP": "Vermischt 2 Farben mit konfigurierbarem Farbverhältnis (0.0 - 1.0).",
+ "CONTROLS_REPEAT_HELPURL": "https://de.wikipedia.org/wiki/For-Schleife",
+ "CONTROLS_REPEAT_TITLE": "wiederhole %1 mal:",
+ "CONTROLS_REPEAT_INPUT_DO": "mache",
+ "CONTROLS_REPEAT_TOOLTIP": "Eine Anweisung mehrfach ausführen.",
+ "CONTROLS_WHILEUNTIL_HELPURL": "https://de.wikipedia.org/wiki/Schleife_%28Programmierung%29",
+ "CONTROLS_WHILEUNTIL_OPERATOR_WHILE": "wiederhole solange",
+ "CONTROLS_WHILEUNTIL_OPERATOR_UNTIL": "wiederhole bis",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_WHILE": "Führt Anweisungen aus solange die Bedingung wahr ist.",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL": "Führt Anweisungen aus solange die Bedingung unwahr ist.",
+ "CONTROLS_FOR_HELPURL": "https://de.wikipedia.org/wiki/For-Schleife",
+ "CONTROLS_FOR_TOOLTIP": "Zählt die Variable \"%1\" von einem Startwert bis zu einem Endwert und führt für jeden Wert eine Anweisung aus.",
+ "CONTROLS_FOR_TITLE": "zähle %1 von %2 bis %3 in Schritten von %4:",
+ "CONTROLS_FOREACH_HELPURL": "https://de.wikipedia.org/wiki/For-Schleife",
+ "CONTROLS_FOREACH_TITLE": "für jeden Wert %1 aus der Liste %2",
+ "CONTROLS_FOREACH_TOOLTIP": "Führt eine Anweisung für jeden Wert in der Liste aus und setzt dabei die Variable \"%1\" auf den aktuellen Listenwert.",
+ "CONTROLS_FLOW_STATEMENTS_HELPURL": "https://de.wikipedia.org/wiki/Kontrollstruktur",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK": "die Schleife abbrechen",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE": "sofort mit nächstem Schleifendurchlauf fortfahren",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK": "Die umgebende Schleife beenden.",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE": "Diese Anweisung abbrechen und mit dem nächsten Schleifendurchlauf fortfahren.",
+ "CONTROLS_FLOW_STATEMENTS_WARNING": "Warnung: Dieser Baustein kann nur in einer Schleife verwendet werden.",
+ "CONTROLS_IF_TOOLTIP_1": "Führt eine Anweisung aus, falls eine Bedingung wahr ist.",
+ "CONTROLS_IF_TOOLTIP_2": "Führt die erste Anweisung aus, falls eine Bedingung wahr ist. Führt ansonsten die zweite Anweisung aus.",
+ "CONTROLS_IF_TOOLTIP_3": "Führt die erste Anweisung aus, falls die erste Bedingung wahr ist. Führt ansonsten die zweite Anweisung aus, falls die zweite Bedingung wahr ist.",
+ "CONTROLS_IF_TOOLTIP_4": "Führe die erste Anweisung aus, falls die erste Bedingung wahr ist. Führt ansonsten die zweite Anweisung aus, falls die zweite Bedingung wahr ist. Führt die dritte Anweisung aus, falls keine der beiden Bedingungen wahr ist",
+ "CONTROLS_IF_MSG_IF": "falls",
+ "CONTROLS_IF_MSG_ELSEIF": "sonst falls",
+ "CONTROLS_IF_MSG_ELSE": "sonst",
+ "CONTROLS_IF_IF_TOOLTIP": "Hinzufügen, entfernen oder sortieren von Sektionen",
+ "CONTROLS_IF_ELSEIF_TOOLTIP": "Eine weitere Bedingung hinzufügen.",
+ "CONTROLS_IF_ELSE_TOOLTIP": "Eine sonst-Bedingung hinzufügen. Führt eine Anweisung aus, falls keine Bedingung zutrifft.",
+ "LOGIC_COMPARE_HELPURL": "https://de.wikipedia.org/wiki/Vergleich_%28Zahlen%29",
+ "LOGIC_COMPARE_TOOLTIP_EQ": "Ist wahr, falls beide Werte gleich sind.",
+ "LOGIC_COMPARE_TOOLTIP_NEQ": "Ist wahr, falls beide Werte unterschiedlich sind.",
+ "LOGIC_COMPARE_TOOLTIP_LT": "Ist wahr, falls der erste Wert kleiner als der zweite Wert ist.",
+ "LOGIC_COMPARE_TOOLTIP_LTE": "Ist wahr, falls der erste Wert kleiner als oder gleich groß wie der zweite Wert ist.",
+ "LOGIC_COMPARE_TOOLTIP_GT": "Ist wahr, falls der erste Wert größer als der zweite Wert ist.",
+ "LOGIC_COMPARE_TOOLTIP_GTE": "Ist wahr, falls der erste Wert größer als oder gleich groß wie der zweite Wert ist.",
+ "LOGIC_OPERATION_TOOLTIP_AND": "Ist wahr, falls beide Werte wahr sind.",
+ "LOGIC_OPERATION_AND": "und",
+ "LOGIC_OPERATION_TOOLTIP_OR": "Ist wahr, falls einer der beiden Werte wahr ist.",
+ "LOGIC_OPERATION_OR": "oder",
+ "LOGIC_NEGATE_TITLE": "nicht %1",
+ "LOGIC_NEGATE_TOOLTIP": "Ist wahr, falls der Eingabewert unwahr ist. Ist unwahr, falls der Eingabewert wahr ist.",
+ "LOGIC_BOOLEAN_TRUE": "wahr",
+ "LOGIC_BOOLEAN_FALSE": "unwahr",
+ "LOGIC_BOOLEAN_TOOLTIP": "Ist entweder wahr oder unwahr",
+ "LOGIC_NULL_HELPURL": "https://de.wikipedia.org/wiki/Nullwert",
+ "LOGIC_NULL": "null",
+ "LOGIC_NULL_TOOLTIP": "Ist \"null\".",
+ "LOGIC_TERNARY_HELPURL": "https://de.wikipedia.org/wiki/%3F:#Auswahloperator",
+ "LOGIC_TERNARY_CONDITION": "prüfe",
+ "LOGIC_TERNARY_IF_TRUE": "falls wahr",
+ "LOGIC_TERNARY_IF_FALSE": "falls unwahr",
+ "LOGIC_TERNARY_TOOLTIP": "Überprüft eine Bedingung \"prüfe\". Falls die Bedingung wahr ist, wird der \"falls wahr\" Wert zurückgegeben, andernfalls der \"falls unwahr\" Wert",
+ "MATH_NUMBER_HELPURL": "https://de.wikipedia.org/wiki/Zahl",
+ "MATH_NUMBER_TOOLTIP": "Eine Zahl.",
+ "MATH_ARITHMETIC_HELPURL": "https://de.wikipedia.org/wiki/Grundrechenart",
+ "MATH_ARITHMETIC_TOOLTIP_ADD": "Ist die Summe zweier Zahlen.",
+ "MATH_ARITHMETIC_TOOLTIP_MINUS": "Ist die Differenz zweier Zahlen.",
+ "MATH_ARITHMETIC_TOOLTIP_MULTIPLY": "Ist das Produkt zweier Zahlen.",
+ "MATH_ARITHMETIC_TOOLTIP_DIVIDE": "Ist der Quotient zweier Zahlen.",
+ "MATH_ARITHMETIC_TOOLTIP_POWER": "Ist die erste Zahl potenziert mit der zweiten Zahl.",
+ "MATH_SINGLE_HELPURL": "https://de.wikipedia.org/wiki/Quadratwurzel",
+ "MATH_SINGLE_OP_ROOT": "Quadratwurzel",
+ "MATH_SINGLE_TOOLTIP_ROOT": "Ist die Quadratwurzel einer Zahl.",
+ "MATH_SINGLE_OP_ABSOLUTE": "Betrag",
+ "MATH_SINGLE_TOOLTIP_ABS": "Ist der Betrag einer Zahl.",
+ "MATH_SINGLE_TOOLTIP_NEG": "Negiert eine Zahl.",
+ "MATH_SINGLE_TOOLTIP_LN": "Ist der natürliche Logarithmus einer Zahl.",
+ "MATH_SINGLE_TOOLTIP_LOG10": "Ist der dekadische Logarithmus einer Zahl.",
+ "MATH_SINGLE_TOOLTIP_EXP": "Ist Wert der Exponentialfunktion einer Zahl.",
+ "MATH_SINGLE_TOOLTIP_POW10": "Rechnet 10 hoch eine Zahl.",
+ "MATH_TRIG_HELPURL": "https://de.wikipedia.org/wiki/Trigonometrie",
+ "MATH_TRIG_TOOLTIP_SIN": "Ist der Sinus des Winkels.",
+ "MATH_TRIG_TOOLTIP_COS": "Ist der Kosinus des Winkels.",
+ "MATH_TRIG_TOOLTIP_TAN": "Ist der Tangens des Winkels.",
+ "MATH_TRIG_TOOLTIP_ASIN": "Ist der Arkussinus des Eingabewertes.",
+ "MATH_TRIG_TOOLTIP_ACOS": "Ist der Arkuskosinus des Eingabewertes.",
+ "MATH_TRIG_TOOLTIP_ATAN": "Ist der Arkustangens des Eingabewertes.",
+ "MATH_CONSTANT_HELPURL": "https://de.wikipedia.org/wiki/Mathematische_Konstante",
+ "MATH_CONSTANT_TOOLTIP": "Mathematische Konstanten wie: π (3.141…), e (2.718…), φ (1.618…), sqrt(2) (1.414…), sqrt(½) (0.707…) oder ∞ (unendlich).",
+ "MATH_IS_EVEN": "ist gerade",
+ "MATH_IS_ODD": "ist ungerade",
+ "MATH_IS_PRIME": "ist eine Primzahl",
+ "MATH_IS_WHOLE": "ist eine ganze Zahl",
+ "MATH_IS_POSITIVE": "ist positiv",
+ "MATH_IS_NEGATIVE": "ist negativ",
+ "MATH_IS_DIVISIBLE_BY": "ist teilbar durch",
+ "MATH_IS_TOOLTIP": "Überprüft ob eine Zahl gerade, ungerade, eine Primzahl, ganzzahlig, positiv, negativ oder durch eine zweite Zahl teilbar ist. Gibt wahr oder unwahr zurück.",
+ "MATH_CHANGE_HELPURL": "https://de.wikipedia.org/wiki/Inkrement_und_Dekrement",
+ "MATH_CHANGE_TITLE": "erhöhe %1 um %2",
+ "MATH_CHANGE_TOOLTIP": "Addiert eine Zahl zu \"%1\".",
+ "MATH_ROUND_HELPURL": "https://de.wikipedia.org/wiki/Runden",
+ "MATH_ROUND_TOOLTIP": "Eine Zahl auf- oder abrunden.",
+ "MATH_ROUND_OPERATOR_ROUND": "runde",
+ "MATH_ROUND_OPERATOR_ROUNDUP": "runde auf",
+ "MATH_ROUND_OPERATOR_ROUNDDOWN": "runde ab",
+ "MATH_ONLIST_HELPURL": "http://www.sysplus.ch/einstieg.php?links=menu&seite=4125&grad=Crash&prog=Excel",
+ "MATH_ONLIST_OPERATOR_SUM": "Summe über die Liste",
+ "MATH_ONLIST_TOOLTIP_SUM": "Ist die Summe aller Zahlen in einer Liste.",
+ "MATH_ONLIST_OPERATOR_MIN": "Minimalwert der Liste",
+ "MATH_ONLIST_TOOLTIP_MIN": "Ist die kleinste Zahl in einer Liste.",
+ "MATH_ONLIST_OPERATOR_MAX": "Maximalwert der Liste",
+ "MATH_ONLIST_TOOLTIP_MAX": "Ist die größte Zahl in einer Liste.",
+ "MATH_ONLIST_OPERATOR_AVERAGE": "Mittelwert der Liste",
+ "MATH_ONLIST_TOOLTIP_AVERAGE": "Ist der Durchschnittswert aller Zahlen in einer Liste.",
+ "MATH_ONLIST_OPERATOR_MEDIAN": "Median der Liste",
+ "MATH_ONLIST_TOOLTIP_MEDIAN": "Ist der Median aller Zahlen in einer Liste.",
+ "MATH_ONLIST_OPERATOR_MODE": "am häufigsten in der Liste",
+ "MATH_ONLIST_TOOLTIP_MODE": "Findet die Werte mit dem häufigstem Vorkommen in der Liste.",
+ "MATH_ONLIST_OPERATOR_STD_DEV": "Standardabweichung der Liste",
+ "MATH_ONLIST_TOOLTIP_STD_DEV": "Ist die Standardabweichung aller Werte in der Liste.",
+ "MATH_ONLIST_OPERATOR_RANDOM": "Zufallswert aus der Liste",
+ "MATH_ONLIST_TOOLTIP_RANDOM": "Gibt einen zufälligen Wert aus der Liste zurück.",
+ "MATH_MODULO_HELPURL": "https://de.wikipedia.org/wiki/Modulo",
+ "MATH_MODULO_TITLE": "Rest von %1 ÷ %2",
+ "MATH_MODULO_TOOLTIP": "Der Rest nach einer Division.",
+ "MATH_CONSTRAIN_TITLE": "begrenze %1 zwischen %2 und %3",
+ "MATH_CONSTRAIN_TOOLTIP": "Begrenzt eine Zahl auf den Wertebereich zwischen zwei anderen Zahlen (inklusiv).",
+ "MATH_RANDOM_INT_HELPURL": "https://de.wikipedia.org/wiki/Zufallszahlen",
+ "MATH_RANDOM_INT_TITLE": "ganzzahlige Zufallszahl zwischen %1 und %2",
+ "MATH_RANDOM_INT_TOOLTIP": "Erzeugt eine ganzzahlige Zufallszahl zwischen zwei Zahlen (inklusiv).",
+ "MATH_RANDOM_FLOAT_HELPURL": "https://de.wikipedia.org/wiki/Zufallszahlen",
+ "MATH_RANDOM_FLOAT_TITLE_RANDOM": "Zufallszahl (0.0 - 1.0)",
+ "MATH_RANDOM_FLOAT_TOOLTIP": "Erzeugt eine Zufallszahl zwischen 0.0 (inklusiv) und 1.0 (exklusiv).",
+ "TEXT_TEXT_HELPURL": "https://de.wikipedia.org/wiki/Zeichenkette",
+ "TEXT_TEXT_TOOLTIP": "Ein Buchstabe, Text oder Satz.",
+ "TEXT_JOIN_HELPURL": "",
+ "TEXT_JOIN_TITLE_CREATEWITH": "erstelle Text aus",
+ "TEXT_JOIN_TOOLTIP": "Erstellt einen Text durch das Verbinden von mehreren Textelementen.",
+ "TEXT_CREATE_JOIN_TITLE_JOIN": "verbinden",
+ "TEXT_CREATE_JOIN_TOOLTIP": "Hinzufügen, entfernen und sortieren von Elementen.",
+ "TEXT_CREATE_JOIN_ITEM_TOOLTIP": "Ein Element zum Text hinzufügen.",
+ "TEXT_APPEND_TO": "an",
+ "TEXT_APPEND_APPENDTEXT": "Text anhängen",
+ "TEXT_APPEND_TOOLTIP": "Text an die Variable \"%1\" anhängen.",
+ "TEXT_LENGTH_TITLE": "Länge von %1",
+ "TEXT_LENGTH_TOOLTIP": "Die Anzahl von Zeichen in einem Text (inkl. Leerzeichen).",
+ "TEXT_ISEMPTY_TITLE": "%1 ist leer",
+ "TEXT_ISEMPTY_TOOLTIP": "Ist wahr, falls der Text keine Zeichen enthält ist.",
+ "TEXT_INDEXOF_HELPURL": "http://publib.boulder.ibm.com/infocenter/lnxpcomp/v8v101/index.jsp?topic=%2Fcom.ibm.xlcpp8l.doc%2Flanguage%2Fref%2Farsubex.htm",
+ "TEXT_INDEXOF_TOOLTIP": "Findet das erste / letzte Auftreten eines Suchbegriffs in einem Text. Gibt die Position des Begriffs zurück oder %1 falls der Suchbegriff nicht gefunden wurde.",
+ "TEXT_INDEXOF_INPUT_INTEXT": "im Text",
+ "TEXT_INDEXOF_OPERATOR_FIRST": "suche erstes Auftreten des Begriffs",
+ "TEXT_INDEXOF_OPERATOR_LAST": "suche letztes Auftreten des Begriffs",
+ "TEXT_INDEXOF_TAIL": "",
+ "TEXT_CHARAT_HELPURL": "http://publib.boulder.ibm.com/infocenter/lnxpcomp/v8v101/index.jsp?topic=%2Fcom.ibm.xlcpp8l.doc%2Flanguage%2Fref%2Farsubex.htm",
+ "TEXT_CHARAT_INPUT_INTEXT": "vom Text",
+ "TEXT_CHARAT_FROM_START": "nehme #ten Buchstaben",
+ "TEXT_CHARAT_FROM_END": "nehme #ten Buchstaben von hinten",
+ "TEXT_CHARAT_FIRST": "nehme ersten Buchstaben",
+ "TEXT_CHARAT_LAST": "nehme letzten Buchstaben",
+ "TEXT_CHARAT_RANDOM": "nehme zufälligen Buchstaben",
+ "TEXT_CHARAT_TAIL": "",
+ "TEXT_CHARAT_TOOLTIP": "Extrahiert einen Buchstaben von einer bestimmten Position.",
+ "TEXT_GET_SUBSTRING_TOOLTIP": "Gibt den angegebenen Textabschnitt zurück.",
+ "TEXT_GET_SUBSTRING_HELPURL": "http://publib.boulder.ibm.com/infocenter/lnxpcomp/v8v101/index.jsp?topic=%2Fcom.ibm.xlcpp8l.doc%2Flanguage%2Fref%2Farsubex.htm",
+ "TEXT_GET_SUBSTRING_INPUT_IN_TEXT": "im Text",
+ "TEXT_GET_SUBSTRING_START_FROM_START": "nehme Teil ab #tem Buchstaben",
+ "TEXT_GET_SUBSTRING_START_FROM_END": "nehme Teil ab #tem Buchstaben von hinten",
+ "TEXT_GET_SUBSTRING_START_FIRST": "nehme Teil ab erstem Buchstaben",
+ "TEXT_GET_SUBSTRING_END_FROM_START": "bis zum #ten Buchstaben",
+ "TEXT_GET_SUBSTRING_END_FROM_END": "bis zum #ten Buchstaben von hinten",
+ "TEXT_GET_SUBSTRING_END_LAST": "bis zum letzten Buchstaben",
+ "TEXT_GET_SUBSTRING_TAIL": "",
+ "TEXT_CHANGECASE_TOOLTIP": "Wandelt Schreibweise von Texten um, in Großbuchstaben, Kleinbuchstaben oder den ersten Buchstaben jedes Wortes groß und die anderen klein.",
+ "TEXT_CHANGECASE_OPERATOR_UPPERCASE": "wandel um in GROSSBUCHSTABEN",
+ "TEXT_CHANGECASE_OPERATOR_LOWERCASE": "wandel um in kleinbuchstaben",
+ "TEXT_CHANGECASE_OPERATOR_TITLECASE": "wandel um in Substantive",
+ "TEXT_TRIM_TOOLTIP": "Entfernt Leerzeichen vom Anfang und / oder Ende eines Textes.",
+ "TEXT_TRIM_OPERATOR_BOTH": "entferne Leerzeichen vom Anfang und vom Ende (links und rechts)",
+ "TEXT_TRIM_OPERATOR_LEFT": "entferne Leerzeichen vom Anfang (links)",
+ "TEXT_TRIM_OPERATOR_RIGHT": "entferne Leerzeichen vom Ende (rechts)",
+ "TEXT_PRINT_TITLE": "gib aus %1",
+ "TEXT_PRINT_TOOLTIP": "Gibt den Text aus.",
+ "TEXT_PROMPT_TYPE_TEXT": "frage nach Text mit Hinweis",
+ "TEXT_PROMPT_TYPE_NUMBER": "frage nach Zahl mit Hinweis",
+ "TEXT_PROMPT_TOOLTIP_NUMBER": "Fragt den Benutzer nach einer Zahl.",
+ "TEXT_PROMPT_TOOLTIP_TEXT": "Fragt den Benutzer nach einem Text.",
+ "LISTS_CREATE_EMPTY_HELPURL": "https://github.com/google/blockly/wiki/Lists#create-empty-list",
+ "LISTS_CREATE_EMPTY_TITLE": "erzeuge eine leere Liste",
+ "LISTS_CREATE_EMPTY_TOOLTIP": "Erzeugt eine leere Liste ohne Inhalt.",
+ "LISTS_CREATE_WITH_HELPURL": "https://github.com/google/blockly/wiki/Lists#create-list-with",
+ "LISTS_CREATE_WITH_TOOLTIP": "Erzeugt eine Liste aus den angegebenen Elementen.",
+ "LISTS_CREATE_WITH_INPUT_WITH": "erzeuge Liste mit",
+ "LISTS_CREATE_WITH_CONTAINER_TITLE_ADD": "Liste",
+ "LISTS_CREATE_WITH_CONTAINER_TOOLTIP": "Hinzufügen, entfernen und sortieren von Elementen.",
+ "LISTS_CREATE_WITH_ITEM_TOOLTIP": "Ein Element zur Liste hinzufügen.",
+ "LISTS_REPEAT_HELPURL": "http://publib.boulder.ibm.com/infocenter/lnxpcomp/v8v101/index.jsp?topic=%2Fcom.ibm.xlcpp8l.doc%2Flanguage%2Fref%2Farsubex.htm",
+ "LISTS_REPEAT_TOOLTIP": "Erzeugt eine Liste mit einer variablen Anzahl von Elementen",
+ "LISTS_REPEAT_TITLE": "erzeuge Liste mit %2 mal dem Element %1​",
+ "LISTS_LENGTH_TITLE": "Länge von %1",
+ "LISTS_LENGTH_TOOLTIP": "Die Anzahl von Elementen in der Liste.",
+ "LISTS_ISEMPTY_TITLE": "%1 ist leer",
+ "LISTS_ISEMPTY_TOOLTIP": "Ist wahr, falls die Liste leer ist.",
+ "LISTS_INLIST": "in der Liste",
+ "LISTS_INDEX_OF_HELPURL": "http://publib.boulder.ibm.com/infocenter/lnxpcomp/v8v101/index.jsp?topic=%2Fcom.ibm.xlcpp8l.doc%2Flanguage%2Fref%2Farsubex.htm",
+ "LISTS_INDEX_OF_FIRST": "suche erstes Auftreten von",
+ "LISTS_INDEX_OF_LAST": "suche letztes Auftreten von",
+ "LISTS_INDEX_OF_TOOLTIP": "Sucht die Position (Index) eines Elementes in der Liste. Gibt %1 zurück, falls kein Element gefunden wurde.",
+ "LISTS_GET_INDEX_GET": "nimm",
+ "LISTS_GET_INDEX_GET_REMOVE": "nimm und entferne",
+ "LISTS_GET_INDEX_REMOVE": "entferne",
+ "LISTS_GET_INDEX_FROM_START": "#tes",
+ "LISTS_GET_INDEX_FROM_END": "#tes von hinten",
+ "LISTS_GET_INDEX_FIRST": "erstes",
+ "LISTS_GET_INDEX_LAST": "letztes",
+ "LISTS_GET_INDEX_RANDOM": "zufälliges",
+ "LISTS_GET_INDEX_TAIL": "",
+ "LISTS_INDEX_FROM_START_TOOLTIP": "%1 ist das erste Element.",
+ "LISTS_INDEX_FROM_END_TOOLTIP": "%1 ist das letzte Element.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_FROM": "Extrahiert das Element an der angegebenen Position in der Liste.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_FIRST": "Extrahiert das erste Element aus der Liste.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_LAST": "Extrahiert das letzte Element aus der Liste.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_RANDOM": "Extrahiert ein zufälliges Element aus der Liste.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM": "Extrahiert und entfernt das Element an der angegebenen Position aus der Liste.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST": "Extrahiert und entfernt das erste Element aus der Liste.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST": "Extrahiert und entfernt das letzte Element aus der Liste.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM": "Extrahiert und entfernt ein zufälliges Element aus der Liste.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM": "Entfernt das Element an der angegebenen Position aus der Liste.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST": "Entfernt das erste Element aus der Liste.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST": "Entfernt das letzte Element aus der Liste.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM": "Entfernt ein zufälliges Element aus der Liste.",
+ "LISTS_SET_INDEX_HELPURL": "http://publib.boulder.ibm.com/infocenter/lnxpcomp/v8v101/index.jsp?topic=%2Fcom.ibm.xlcpp8l.doc%2Flanguage%2Fref%2Farsubex.htm",
+ "LISTS_SET_INDEX_SET": "setze für",
+ "LISTS_SET_INDEX_INSERT": "füge als",
+ "LISTS_SET_INDEX_INPUT_TO": "ein",
+ "LISTS_SET_INDEX_TOOLTIP_SET_FROM": "Setzt das Element an der angegebenen Position in der Liste.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_FIRST": "Setzt das erste Element in der Liste.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_LAST": "Setzt das letzte Element in die Liste.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_RANDOM": "Setzt ein zufälliges Element in der Liste.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_FROM": "Fügt das Element an der angegebenen Position in die Liste ein.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST": "Fügt das Element an den Anfang der Liste an.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_LAST": "Fügt das Element ans Ende der Liste an.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM": "Fügt das Element zufällig in die Liste ein.",
+ "LISTS_GET_SUBLIST_HELPURL": "http://publib.boulder.ibm.com/infocenter/lnxpcomp/v8v101/index.jsp?topic=%2Fcom.ibm.xlcpp8l.doc%2Flanguage%2Fref%2Farsubex.htm",
+ "LISTS_GET_SUBLIST_START_FROM_START": "erhalte Unterliste von #",
+ "LISTS_GET_SUBLIST_START_FROM_END": "erhalte Unterliste von # von hinten",
+ "LISTS_GET_SUBLIST_START_FIRST": "erhalte Unterliste vom Anfang",
+ "LISTS_GET_SUBLIST_END_FROM_START": "bis zu #",
+ "LISTS_GET_SUBLIST_END_FROM_END": "bis zu # von hinten",
+ "LISTS_GET_SUBLIST_END_LAST": "bis zum Ende",
+ "LISTS_GET_SUBLIST_TAIL": "",
+ "LISTS_GET_SUBLIST_TOOLTIP": "Erstellt eine Kopie mit dem angegebenen Abschnitt der Liste.",
+ "LISTS_SORT_HELPURL": "https://github.com/google/blockly/wiki/Lists#sorting-a-list",
+ "LISTS_SORT_TITLE": "%1 %2 %3 sortieren",
+ "LISTS_SORT_TOOLTIP": "Eine Kopie einer Liste sortieren.",
+ "LISTS_SORT_ORDER_ASCENDING": "aufsteigend",
+ "LISTS_SORT_ORDER_DESCENDING": "absteigend",
+ "LISTS_SORT_TYPE_NUMERIC": "numerisch",
+ "LISTS_SORT_TYPE_TEXT": "alphabetisch",
+ "LISTS_SORT_TYPE_IGNORECASE": "alphabetisch, Großschreibung ignorieren",
+ "LISTS_SPLIT_HELPURL": "https://github.com/google/blockly/wiki/Lists#splitting-strings-and-joining-lists",
+ "LISTS_SPLIT_LIST_FROM_TEXT": "Liste aus Text erstellen",
+ "LISTS_SPLIT_TEXT_FROM_LIST": "Text aus Liste erstellen",
+ "LISTS_SPLIT_WITH_DELIMITER": "mit Trennzeichen",
+ "LISTS_SPLIT_TOOLTIP_SPLIT": "Text in eine Liste mit Texten aufteilen, unterbrochen bei jedem Trennzeichen.",
+ "LISTS_SPLIT_TOOLTIP_JOIN": "Liste mit Texten in einen Text vereinen, getrennt durch ein Trennzeichen.",
+ "ORDINAL_NUMBER_SUFFIX": "",
+ "VARIABLES_GET_HELPURL": "https://de.wikipedia.org/wiki/Variable_%28Programmierung%29",
+ "VARIABLES_GET_TOOLTIP": "Gibt den Wert der Variable zurück.",
+ "VARIABLES_GET_CREATE_SET": "Erzeuge \"Schreibe %1\"",
+ "VARIABLES_SET_HELPURL": "https://de.wikipedia.org/wiki/Variable_%28Programmierung%29",
+ "VARIABLES_SET": "setze %1 auf %2",
+ "VARIABLES_SET_TOOLTIP": "Setzt den Wert einer Variable.",
+ "VARIABLES_SET_CREATE_GET": "Erzeuge \"Lese %1\"",
+ "PROCEDURES_DEFNORETURN_HELPURL": "https://de.wikipedia.org/wiki/Prozedur_%28Programmierung%29",
+ "PROCEDURES_DEFNORETURN_TITLE": "",
+ "PROCEDURES_DEFNORETURN_PROCEDURE": "etwas tun",
+ "PROCEDURES_BEFORE_PARAMS": "mit:",
+ "PROCEDURES_CALL_BEFORE_PARAMS": "mit:",
+ "PROCEDURES_DEFNORETURN_DO": "",
+ "PROCEDURES_DEFNORETURN_TOOLTIP": "Ein Funktionsblock ohne Rückgabewert.",
+ "PROCEDURES_DEFNORETURN_COMMENT": "Beschreibe diese Funktion …",
+ "PROCEDURES_DEFRETURN_HELPURL": "https://de.wikipedia.org/wiki/Prozedur_%28Programmierung%29",
+ "PROCEDURES_DEFRETURN_RETURN": "gebe zurück",
+ "PROCEDURES_DEFRETURN_TOOLTIP": "Ein Funktionsblock mit Rückgabewert.",
+ "PROCEDURES_ALLOW_STATEMENTS": "Aussagen erlauben",
+ "PROCEDURES_DEF_DUPLICATE_WARNING": "Warnung: dieser Funktionsblock hat zwei gleich benannte Parameter.",
+ "PROCEDURES_CALLNORETURN_HELPURL": "https://de.wikipedia.org/wiki/Prozedur_%28Programmierung%29",
+ "PROCEDURES_CALLNORETURN_TOOLTIP": "Rufe einen Funktionsblock ohne Rückgabewert auf.",
+ "PROCEDURES_CALLRETURN_HELPURL": "https://de.wikipedia.org/wiki/Prozedur_%28Programmierung%29",
+ "PROCEDURES_CALLRETURN_TOOLTIP": "Rufe einen Funktionsblock mit Rückgabewert auf.",
+ "PROCEDURES_MUTATORCONTAINER_TITLE": "Parameter",
+ "PROCEDURES_MUTATORCONTAINER_TOOLTIP": "Die Eingaben zu dieser Funktion hinzufügen, entfernen oder neu anordnen.",
+ "PROCEDURES_MUTATORARG_TITLE": "Variable:",
+ "PROCEDURES_MUTATORARG_TOOLTIP": "Eine Eingabe zur Funktion hinzufügen.",
+ "PROCEDURES_HIGHLIGHT_DEF": "Markiere Funktionsblock",
+ "PROCEDURES_CREATE_DO": "Erzeuge \"Aufruf %1\"",
+ "PROCEDURES_IFRETURN_TOOLTIP": "Gibt den zweiten Wert zurück und verlässt die Funktion, falls der erste Wert wahr ist.",
+ "PROCEDURES_IFRETURN_HELPURL": "http://c2.com/cgi/wiki?GuardClause",
+ "PROCEDURES_IFRETURN_WARNING": "Warnung: Dieser Block darf nur innerhalb eines Funktionsblocks genutzt werden."
+}
diff --git a/blockly/msg/json/diq.json b/blockly/msg/json/diq.json
new file mode 100644
index 0000000..23f250d
--- /dev/null
+++ b/blockly/msg/json/diq.json
@@ -0,0 +1,171 @@
+{
+ "@metadata": {
+ "authors": [
+ "Kumkumuk",
+ "Marmase",
+ "Mirzali"
+ ]
+ },
+ "VARIABLES_DEFAULT_NAME": "unsur",
+ "TODAY": "Ewro",
+ "DUPLICATE_BLOCK": "Zewnc",
+ "ADD_COMMENT": "Tefsir cı ke",
+ "REMOVE_COMMENT": "Tefsiri Wedare",
+ "EXTERNAL_INPUTS": "Cıkewtışê xarıciy",
+ "INLINE_INPUTS": "Cıkerdışê xomiyani",
+ "DELETE_BLOCK": "Bloki bestere",
+ "DELETE_X_BLOCKS": "%1 blokan bestere",
+ "DELETE_ALL_BLOCKS": "Pêro %1 bloki besteriyê?",
+ "CLEAN_UP": "Blokan pak ke",
+ "COLLAPSE_BLOCK": "Bloki teng ke",
+ "COLLAPSE_ALL": "Blokan teng ke",
+ "EXPAND_BLOCK": "Bloki hera ke",
+ "EXPAND_ALL": "Blokan hera ke",
+ "DISABLE_BLOCK": "Çengi devre ra vec",
+ "ENABLE_BLOCK": "Bloki feal ke",
+ "HELP": "Peşti",
+ "UNDO": "Peyser biya",
+ "REDO": "Newe ke",
+ "CHANGE_VALUE_TITLE": "Erci bıvurne:",
+ "RENAME_VARIABLE": "Vuriyayey fına name ke...",
+ "NEW_VARIABLE": "Vuriyayeyo bıvıraz...",
+ "NEW_VARIABLE_TITLE": "Namey vuriyayeyê newi:",
+ "COLOUR_PICKER_HELPURL": "https://diq.wikipedia.org/wiki/Reng",
+ "COLOUR_RANDOM_TITLE": "rengo rastameye",
+ "COLOUR_RANDOM_TOOLTIP": "Tesadufi yu ren bıweçin",
+ "COLOUR_RGB_TITLE": "komponentên rengan",
+ "COLOUR_RGB_RED": "sur",
+ "COLOUR_RGB_GREEN": "kıho",
+ "COLOUR_RGB_BLUE": "kewe",
+ "COLOUR_BLEND_TITLE": "tewde",
+ "COLOUR_BLEND_COLOUR1": "reng 1",
+ "COLOUR_BLEND_COLOUR2": "reng 2",
+ "COLOUR_BLEND_RATIO": "nısbet",
+ "CONTROLS_REPEAT_HELPURL": "https://en.wikipedia.org/wiki/For_loop",
+ "CONTROLS_REPEAT_TITLE": "%1 fıni tekrar ke",
+ "CONTROLS_REPEAT_INPUT_DO": "bıke",
+ "CONTROLS_WHILEUNTIL_OPERATOR_WHILE": "Tekrar kerdış de",
+ "CONTROLS_WHILEUNTIL_OPERATOR_UNTIL": "hend tekrar ke",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_WHILE": "Yew erc raşto se yu beyanat bıd.",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL": "Yew erc xırabo se tay beyanati bıd",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK": "Çerxen ra vec",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE": "Gama bin da çerxeni ra dewam ke",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK": "Öujtewada çerxeni ra bıvıci",
+ "CONTROLS_IF_MSG_IF": "se",
+ "CONTROLS_IF_MSG_ELSEIF": "niyose",
+ "CONTROLS_IF_MSG_ELSE": "çıniyose",
+ "CONTROLS_IF_ELSEIF_TOOLTIP": "Bloq da if'i rê yu şert dekerê de.",
+ "LOGIC_OPERATION_AND": "û",
+ "LOGIC_OPERATION_OR": "ya zi",
+ "LOGIC_NEGATE_TITLE": "%1 niyo",
+ "LOGIC_BOOLEAN_TRUE": "raşt",
+ "LOGIC_BOOLEAN_FALSE": "ğelet",
+ "LOGIC_BOOLEAN_TOOLTIP": "Raşt yana çep erc dano",
+ "LOGIC_NULL": "veng",
+ "LOGIC_NULL_TOOLTIP": "Veng çarneno ra.",
+ "LOGIC_TERNARY_CONDITION": "test",
+ "LOGIC_TERNARY_IF_TRUE": "eke raşto",
+ "LOGIC_TERNARY_IF_FALSE": "eke ğeleto",
+ "LOGIC_TERNARY_TOOLTIP": "Şerta'test'i test keno. Eger ke şert raşta se erca 'raşt'i çarneno, çepo se erca 'çep' çarneno.",
+ "MATH_NUMBER_HELPURL": "https://diq.wikipedia.org/wiki/Numre",
+ "MATH_NUMBER_TOOLTIP": "Yew numre.",
+ "MATH_ARITHMETIC_HELPURL": "https://en.wikipedia.org/wiki/Aritmetik",
+ "MATH_SINGLE_HELPURL": "https://en.wikipedia.org/wiki/Square_root",
+ "MATH_SINGLE_OP_ROOT": "karekok",
+ "MATH_SINGLE_OP_ABSOLUTE": "mutlaq",
+ "MATH_SINGLE_TOOLTIP_NEG": "Ena amorer nêravêrde deyne çerx ke.",
+ "MATH_CONSTANT_HELPURL": "https://en.wikipedia.org/wiki/Mathematical_constant",
+ "MATH_CONSTANT_TOOLTIP": "Heryen sabitan ra yewi çerx ke:π (3.141…), e (2.718…), φ (1.618…), sqrt(2) (1.414…), sqrt(½) (0.707…), or ∞ (bêsonp).",
+ "MATH_IS_EVEN": "zewnco",
+ "MATH_IS_ODD": "kıto",
+ "MATH_IS_PRIME": "bıngehên",
+ "MATH_IS_WHOLE": "tamo",
+ "MATH_IS_POSITIVE": "pozitifo",
+ "MATH_IS_NEGATIVE": "negatifo",
+ "MATH_IS_DIVISIBLE_BY": "Leteyêno",
+ "MATH_CHANGE_HELPURL": "https://en.wikipedia.org/wiki/Programming_idiom#Incrementing_a_counter",
+ "MATH_CHANGE_TITLE": "%2, keno %1 vurneno",
+ "MATH_ROUND_HELPURL": "https://en.wikipedia.org/wiki/Rounding",
+ "MATH_ROUND_TOOLTIP": "Yu amorer loğê cêri yana cori ke",
+ "MATH_ROUND_OPERATOR_ROUND": "gılor ke",
+ "MATH_ROUND_OPERATOR_ROUNDUP": "Loğê cori ke",
+ "MATH_ROUND_OPERATOR_ROUNDDOWN": "Loğê cêri ke",
+ "MATH_ONLIST_OPERATOR_SUM": "koma liste",
+ "MATH_ONLIST_OPERATOR_MIN": "Tewr qıcê lista",
+ "MATH_ONLIST_OPERATOR_MAX": "Tewr gırdê lista",
+ "MATH_ONLIST_OPERATOR_AVERAGE": "Averacê lista",
+ "MATH_ONLIST_OPERATOR_MEDIAN": "Wertey lista",
+ "MATH_ONLIST_OPERATOR_MODE": "listey modi",
+ "MATH_ONLIST_OPERATOR_RANDOM": "Raştamaye objeya lista",
+ "MATH_ONLIST_TOOLTIP_RANDOM": "Liste ra raştamaye yew elementi çerx ke",
+ "MATH_MODULO_HELPURL": "https://en.wikipedia.org/wiki/Modulo_operation",
+ "MATH_MODULO_TITLE": "%1 ÷ %2 ra menden",
+ "MATH_MODULO_TOOLTIP": "Dı amoran ra amora menden çerx ke",
+ "MATH_RANDOM_INT_HELPURL": "https://en.wikipedia.org/wiki/Random_number_generation",
+ "MATH_RANDOM_FLOAT_HELPURL": "https://en.wikipedia.org/wiki/Random_number_generation",
+ "MATH_RANDOM_FLOAT_TITLE_RANDOM": "Raştamaye nimande amor",
+ "TEXT_TEXT_HELPURL": "https://en.wikipedia.org/wiki/String_(computer_science)",
+ "TEXT_TEXT_TOOLTIP": "Yu herfa, satır yana çekuya metini",
+ "TEXT_JOIN_TITLE_CREATEWITH": "ya metin vıraz",
+ "TEXT_CREATE_JOIN_TITLE_JOIN": "gıre de",
+ "TEXT_APPEND_TO": "rê",
+ "TEXT_APPEND_APPENDTEXT": "Metin dek",
+ "TEXT_ISEMPTY_TITLE": "%1 vengo",
+ "TEXT_INDEXOF_INPUT_INTEXT": "metın de",
+ "TEXT_CHARAT_INPUT_INTEXT": "metın de",
+ "TEXT_CHARAT_FROM_START": "Herfa # bıgi",
+ "TEXT_CHARAT_FROM_END": "# ra tepya herfan bıgi",
+ "TEXT_CHARAT_FIRST": "Herfa sıfti bıgi",
+ "TEXT_CHARAT_LAST": "Herfa peyên bıgi",
+ "TEXT_CHARAT_RANDOM": "Raştamaye yu herf bıgi",
+ "TEXT_CHARAT_TOOLTIP": "Şınasnaye pozisyon de yu herfer çerğ keno",
+ "TEXT_GET_SUBSTRING_TOOLTIP": "Tay letey metini çerğ keno",
+ "TEXT_GET_SUBSTRING_INPUT_IN_TEXT": "metın de",
+ "TEXT_GET_SUBSTRING_START_FROM_START": "# ra substring gêno",
+ "TEXT_CHANGECASE_OPERATOR_UPPERCASE": "HERFANÊ GIRDANA",
+ "TEXT_CHANGECASE_OPERATOR_LOWERCASE": "Herfanê werdiyana",
+ "TEXT_CHANGECASE_OPERATOR_TITLECASE": "Ser herf gırd",
+ "LISTS_CREATE_EMPTY_TITLE": "lista venge vıraze",
+ "LISTS_CREATE_WITH_CONTAINER_TITLE_ADD": "liste",
+ "LISTS_CREATE_WITH_ITEM_TOOLTIP": "Yew nesne dekerê lista miyan",
+ "LISTS_LENGTH_TOOLTIP": "Derganiya yu lister dano.",
+ "LISTS_ISEMPTY_TITLE": "%1 vengo",
+ "LISTS_ISEMPTY_TOOLTIP": "Eger kı lista venga se raşt keno çerğ",
+ "LISTS_INLIST": "lista de",
+ "LISTS_INDEX_OF_FIRST": "Sıfte bıyayena cay obcey bıvin",
+ "LISTS_GET_INDEX_GET": "bıgê",
+ "LISTS_GET_INDEX_GET_REMOVE": "Bıgi u wedarne",
+ "LISTS_GET_INDEX_REMOVE": "wedare",
+ "LISTS_GET_INDEX_FROM_END": "# peyniye ra",
+ "LISTS_GET_INDEX_FIRST": "verên",
+ "LISTS_GET_INDEX_LAST": "peyên",
+ "LISTS_GET_INDEX_RANDOM": "raştameye",
+ "LISTS_INDEX_FROM_START_TOOLTIP": "%1 objeyo sıfteyên o",
+ "LISTS_INDEX_FROM_END_TOOLTIP": "%1 objeyo peyên o",
+ "LISTS_SET_INDEX_SET": "ca ke",
+ "LISTS_SET_INDEX_INSERT": "De fi",
+ "LISTS_SET_INDEX_INPUT_TO": "zey",
+ "LISTS_GET_SUBLIST_END_FROM_START": "#'ya",
+ "LISTS_GET_SUBLIST_END_FROM_END": "Peyni # ra hetana",
+ "LISTS_GET_SUBLIST_END_LAST": "Hetana pey",
+ "LISTS_SORT_HELPURL": "https://github.com/google/blockly/wiki/Lists#sorting-a-list",
+ "LISTS_SORT_TITLE": "Kılm %1 %2 %3",
+ "LISTS_SORT_ORDER_ASCENDING": "zeydıyen",
+ "LISTS_SORT_ORDER_DESCENDING": "Kemeyen",
+ "LISTS_SORT_TYPE_NUMERIC": "Amoriyal",
+ "LISTS_SORT_TYPE_TEXT": "Alfabetik",
+ "LISTS_SPLIT_WITH_DELIMITER": "Hududoxi ya",
+ "VARIABLES_SET_CREATE_GET": "'get %1' vıraz",
+ "PROCEDURES_DEFNORETURN_TITLE": "rê",
+ "PROCEDURES_DEFNORETURN_PROCEDURE": "Çıyê bık",
+ "PROCEDURES_BEFORE_PARAMS": "ebe:",
+ "PROCEDURES_CALL_BEFORE_PARAMS": "ebe:",
+ "PROCEDURES_DEFNORETURN_TOOLTIP": "Yew fonksiyono çap nêdate vırazeno",
+ "PROCEDURES_DEFNORETURN_COMMENT": "Nê fonksiyoni beyan ke...",
+ "PROCEDURES_DEFRETURN_RETURN": "peyser biya",
+ "PROCEDURES_DEFRETURN_TOOLTIP": "Yew fonksiyono çap daye vırazeno",
+ "PROCEDURES_ALLOW_STATEMENTS": "Çıyan rê mısafe bıd",
+ "PROCEDURES_MUTATORCONTAINER_TITLE": "cıkewtışi",
+ "PROCEDURES_MUTATORARG_TITLE": "nameyê cıkewtışi:",
+ "PROCEDURES_CREATE_DO": "'%1' vıraze"
+}
diff --git a/blockly/msg/json/el.json b/blockly/msg/json/el.json
new file mode 100644
index 0000000..5e6f1a0
--- /dev/null
+++ b/blockly/msg/json/el.json
@@ -0,0 +1,336 @@
+{
+ "@metadata": {
+ "authors": [
+ "Azountas",
+ "Espertus",
+ "Evropi",
+ "Namatreasure",
+ "Sfyrakis",
+ "Glavkos",
+ "Gchr",
+ "아라",
+ "Geraki",
+ "Ανώνυμος Βικιπαιδιστής"
+ ]
+ },
+ "VARIABLES_DEFAULT_NAME": "αντικείμενο",
+ "TODAY": "Σήμερα",
+ "DUPLICATE_BLOCK": "Διπλότυπο",
+ "ADD_COMMENT": "Πρόσθεσε Το Σχόλιο",
+ "REMOVE_COMMENT": "Αφαίρεσε Το Σχόλιο",
+ "EXTERNAL_INPUTS": "Εξωτερικές Είσοδοι",
+ "INLINE_INPUTS": "Εσωτερικές Είσοδοι",
+ "DELETE_BLOCK": "Διέγραψε Το Μπλοκ",
+ "DELETE_X_BLOCKS": "Διέγραψε %1 Μπλοκ",
+ "DELETE_ALL_BLOCKS": "Να διαγραφούν και τα %1 μπλοκ?",
+ "COLLAPSE_BLOCK": "Σύμπτυξε Το Μπλοκ",
+ "COLLAPSE_ALL": "Σύμπτυξτε Όλα Τα Μπλοκ",
+ "EXPAND_BLOCK": "Επέκτεινε Το Μπλοκ",
+ "EXPAND_ALL": "Επέκτεινε Όλα Τα Μπλοκ",
+ "DISABLE_BLOCK": "Απενεργοποίησε Το Μπλοκ",
+ "ENABLE_BLOCK": "Ενεργοποίησε Το Μπλοκ",
+ "HELP": "Βοήθεια",
+ "UNDO": "Αναίρεση",
+ "REDO": "Ακύρωση αναίρεσης",
+ "CHANGE_VALUE_TITLE": "Άλλαξε την τιμή:",
+ "RENAME_VARIABLE": "Μετονόμασε τη μεταβλητή...",
+ "RENAME_VARIABLE_TITLE": "Μετονόμασε όλες τις μεταβλητές «%1» σε:",
+ "NEW_VARIABLE": "Νέα μεταβλητή...",
+ "NEW_VARIABLE_TITLE": "Νέο όνομα μεταβλητής:",
+ "COLOUR_PICKER_HELPURL": "https://el.wikipedia.org/wiki/%CE%A7%CF%81%CF%8E%CE%BC%CE%B1",
+ "COLOUR_PICKER_TOOLTIP": "Επιτρέπει επιλογή χρώματος από την παλέτα.",
+ "COLOUR_RANDOM_TITLE": "τυχαίο χρώμα",
+ "COLOUR_RANDOM_TOOLTIP": "Επιλέγει χρώμα τυχαία.",
+ "COLOUR_RGB_HELPURL": "http://www.december.com/html/spec/colorper.html",
+ "COLOUR_RGB_TITLE": "χρώμα με",
+ "COLOUR_RGB_RED": "κόκκινο",
+ "COLOUR_RGB_GREEN": "πράσινο",
+ "COLOUR_RGB_BLUE": "μπλε",
+ "COLOUR_RGB_TOOLTIP": "Δημιουργεί χρώμα με το συγκεκριμένο ποσό του κόκκινου, πράσινου και μπλε που ορίζεις. Όλες οι τιμές πρέπει να είναι μεταξύ 0 και 100.",
+ "COLOUR_BLEND_HELPURL": "http://meyerweb.com/eric/tools/color-blend/",
+ "COLOUR_BLEND_TITLE": "μείγμα",
+ "COLOUR_BLEND_COLOUR1": "χρώμα 1",
+ "COLOUR_BLEND_COLOUR2": "χρώμα 2",
+ "COLOUR_BLEND_RATIO": "αναλογία",
+ "COLOUR_BLEND_TOOLTIP": "Συνδυάζει δύο χρώματα μαζί με μια δεδομένη αναλογία (0.0 - 1,0).",
+ "CONTROLS_REPEAT_HELPURL": "https://en.wikipedia.org/wiki/For_loop",
+ "CONTROLS_REPEAT_TITLE": "επανάλαβε %1 φορές",
+ "CONTROLS_REPEAT_INPUT_DO": "κάνε",
+ "CONTROLS_REPEAT_TOOLTIP": "Εκτελεί κάποιες εντολές αρκετές φορές.",
+ "CONTROLS_WHILEUNTIL_OPERATOR_WHILE": "επανάλαβε ενώ",
+ "CONTROLS_WHILEUNTIL_OPERATOR_UNTIL": "επανάλαβε μέχρι",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_WHILE": "Ενόσω μια τιμή είναι αληθής, τότε εκτελεί κάποιες εντολές.",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL": "Ενόσω μια τιμή είναι ψευδής, τότε εκτελεί κάποιες εντολές.",
+ "CONTROLS_FOR_HELPURL": "Blockly",
+ "CONTROLS_FOR_TOOLTIP": "Η μεταβλητή «%1» παίρνει τιμές ξεκινώντας από τον αριθμό έναρξης μέχρι τον αριθμό τέλους αυξάνοντας κάθε φορά με το καθορισμένο βήμα και εκτελώντας το καθορισμένο μπλοκ.",
+ "CONTROLS_FOR_TITLE": "μέτρησε με %1 από το %2 έως το %3 ανά %4",
+ "CONTROLS_FOREACH_TITLE": "για κάθε στοιχείο %1 στη λίστα %2",
+ "CONTROLS_FOREACH_TOOLTIP": "Για κάθε στοιχείο σε μια λίστα, ορίζει τη μεταβλητή «%1» στο στοιχείο και, στη συνέχεια, εκτελεί κάποιες εντολές.",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK": "φεύγει από το μπλοκ επαναλήψεως",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE": "συνέχισε με την επόμενη επανάληψη του μπλοκ επαναλήψεως",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK": "Ξεφεύγει (βγαίνει έξω) από την επανάληψη.",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE": "Παραλείπει το υπόλοιπο τμήμα αυτού του μπλοκ επαναλήψεως, και συνεχίζει με την επόμενη επανάληψη.",
+ "CONTROLS_FLOW_STATEMENTS_WARNING": "Προειδοποίηση: Αυτό το μπλοκ μπορεί να χρησιμοποιηθεί μόνο μέσα σε μια επανάληψη.",
+ "CONTROLS_IF_TOOLTIP_1": "Αν μια τιμή είναι αληθής, τότε εκτελεί κάποιες εντολές.",
+ "CONTROLS_IF_TOOLTIP_2": "Αν μια τιμή είναι αληθής, τότε εκτελεί το πρώτο τμήμα εντολών. Διαφορετικά, εκτελεί το δεύτερο τμήμα εντολών.",
+ "CONTROLS_IF_TOOLTIP_3": "Αν η πρώτη τιμή είναι αληθής, τότε εκτελεί το πρώτο τμήμα εντολών. Διαφορετικά, αν η δεύτερη τιμή είναι αληθής, εκτελεί το δεύτερο μπλοκ εντολών.",
+ "CONTROLS_IF_TOOLTIP_4": "Αν η πρώτη τιμή είναι αληθής, τότε εκτελεί το πρώτο τμήμα εντολών. Διαφορετικά, αν η δεύτερη τιμή είναι αληθής, εκτελεί το δεύτερο τμήμα εντολών. Αν καμία από τις τιμές δεν είναι αληθής, εκτελεί το τελευταίο τμήμα εντολών.",
+ "CONTROLS_IF_MSG_IF": "εάν",
+ "CONTROLS_IF_MSG_ELSEIF": "εναλλακτικά εάν",
+ "CONTROLS_IF_MSG_ELSE": "αλλιώς",
+ "CONTROLS_IF_IF_TOOLTIP": "Προσθέτει, αφαιρεί ή αναδιατάσσει τα τμήματα για να αναδιαμορφώσει αυτό το μπλοκ «εάν».",
+ "CONTROLS_IF_ELSEIF_TOOLTIP": "Πρόσθετει μια κατάσταση/συνθήκη στο μπλοκ «εάν».",
+ "CONTROLS_IF_ELSE_TOOLTIP": "Προσθέτει μια τελική κατάσταση/συνθήκη, που πιάνει όλες τις άλλες περιπτώσεις, στο μπλοκ «εάν».",
+ "LOGIC_COMPARE_HELPURL": "https://en.wikipedia.org/wiki/Inequality_(mathematics)",
+ "LOGIC_COMPARE_TOOLTIP_EQ": "Επιστρέφει αληθής αν και οι δύο είσοδοι είναι ίσες μεταξύ τους.",
+ "LOGIC_COMPARE_TOOLTIP_NEQ": "Επιστρέφει αληθής αν και οι δύο είσοδοι δεν είναι ίσες μεταξύ τους.",
+ "LOGIC_COMPARE_TOOLTIP_LT": "Επιστρέφει αληθής αν η πρώτη είσοδος είναι μικρότερη από τη δεύτερη είσοδο.",
+ "LOGIC_COMPARE_TOOLTIP_LTE": "Επιστρέφει αληθής αν η πρώτη είσοδος είναι μικρότερη από ή ίση με τη δεύτερη είσοδο.",
+ "LOGIC_COMPARE_TOOLTIP_GT": "Επιστρέφει αληθής αν η πρώτη είσοδος είναι μεγαλύτερη από τη δεύτερη είσοδο.",
+ "LOGIC_COMPARE_TOOLTIP_GTE": "Επιστρέφει αληθής αν η πρώτη είσοδος είναι μικρότερη ή ίση με τη δεύτερη είσοδο.",
+ "LOGIC_OPERATION_TOOLTIP_AND": "Επιστρέφει αληθής αν και οι δύο είσοδοι είναι αληθής.",
+ "LOGIC_OPERATION_AND": "και",
+ "LOGIC_OPERATION_TOOLTIP_OR": "Επιστρέφει αληθής αν τουλάχιστον μια από τις εισόδους είναι αληθής.",
+ "LOGIC_OPERATION_OR": "ή",
+ "LOGIC_NEGATE_TITLE": "όχι %1",
+ "LOGIC_NEGATE_TOOLTIP": "Επιστρέφει αληθής αν η είσοδος είναι ψευδής. Επιστρέφει ψευδής αν η είσοδος είναι αληθής.",
+ "LOGIC_BOOLEAN_TRUE": "αληθής",
+ "LOGIC_BOOLEAN_FALSE": "ψευδής",
+ "LOGIC_BOOLEAN_TOOLTIP": "Επιστρέφει είτε αληθής είτε ψευδής.",
+ "LOGIC_NULL_HELPURL": "https://en.wikipedia.org/wiki/Nullable_type",
+ "LOGIC_NULL": "κενό",
+ "LOGIC_NULL_TOOLTIP": "Επιστρέφει κενό.",
+ "LOGIC_TERNARY_HELPURL": "https://en.wikipedia.org/wiki/%3F:",
+ "LOGIC_TERNARY_CONDITION": "έλεγχος",
+ "LOGIC_TERNARY_IF_TRUE": "εάν είναι αληθής",
+ "LOGIC_TERNARY_IF_FALSE": "εάν είναι ψευδής",
+ "LOGIC_TERNARY_TOOLTIP": "Ελέγχει την κατάσταση/συνθήκη στον «έλεγχο». Αν η κατάσταση/συνθήκη είναι αληθής, επιστρέφει την τιμή «εάν αληθής», διαφορετικά επιστρέφει την τιμή «εάν ψευδής».",
+ "MATH_NUMBER_HELPURL": "https://el.wikipedia.org/wiki/%CE%91%CF%81%CE%B9%CE%B8%CE%BC%CF%8C%CF%82",
+ "MATH_NUMBER_TOOLTIP": "Ένας αριθμός.",
+ "MATH_ADDITION_SYMBOL": "+",
+ "MATH_SUBTRACTION_SYMBOL": "-",
+ "MATH_DIVISION_SYMBOL": "÷",
+ "MATH_MULTIPLICATION_SYMBOL": "×",
+ "MATH_POWER_SYMBOL": "^ ύψωση σε δύναμη",
+ "MATH_TRIG_SIN": "ημ",
+ "MATH_TRIG_COS": "συν",
+ "MATH_TRIG_TAN": "εφ",
+ "MATH_TRIG_ASIN": "asin",
+ "MATH_TRIG_ACOS": "acos",
+ "MATH_TRIG_ATAN": "atan",
+ "MATH_ARITHMETIC_HELPURL": "https://el.wikipedia.org/wiki/%CE%91%CF%81%CE%B9%CE%B8%CE%BC%CE%B7%CF%84%CE%B9%CE%BA%CE%AE",
+ "MATH_ARITHMETIC_TOOLTIP_ADD": "Επιστρέφει το άθροισμα των δύο αριθμών.",
+ "MATH_ARITHMETIC_TOOLTIP_MINUS": "Επιστρέφει τη διαφορά των δύο αριθμών.",
+ "MATH_ARITHMETIC_TOOLTIP_MULTIPLY": "Επιστρέφει το γινόμενο των δύο αριθμών.",
+ "MATH_ARITHMETIC_TOOLTIP_DIVIDE": "Επιστρέφει το πηλίκο των δύο αριθμών.",
+ "MATH_ARITHMETIC_TOOLTIP_POWER": "Επιστρέφει τον πρώτο αριθμό υψωμένο στη δύναμη του δεύτερου αριθμού.",
+ "MATH_SINGLE_HELPURL": "https://el.wikipedia.org/wiki/%CE%A4%CE%B5%CF%84%CF%81%CE%B1%CE%B3%CF%89%CE%BD%CE%B9%CE%BA%CE%AE_%CF%81%CE%AF%CE%B6%CE%B1",
+ "MATH_SINGLE_OP_ROOT": "τετραγωνική ρίζα",
+ "MATH_SINGLE_TOOLTIP_ROOT": "Επιστρέφει την τετραγωνική ρίζα ενός αριθμού.",
+ "MATH_SINGLE_OP_ABSOLUTE": "απόλυτη",
+ "MATH_SINGLE_TOOLTIP_ABS": "Επιστρέφει την απόλυτη τιμή ενός αριθμού.",
+ "MATH_SINGLE_TOOLTIP_NEG": "Επιστρέφει την αρνητική ενός αριθμού.",
+ "MATH_SINGLE_TOOLTIP_LN": "Επιστρέφει τον νεπέρειο λογάριθμο ενός αριθμού.",
+ "MATH_SINGLE_TOOLTIP_LOG10": "Επιστρέφει τον λογάριθμο με βάση το 10 ενός αριθμού.",
+ "MATH_SINGLE_TOOLTIP_EXP": "Επιστρέφει το e υψωμένο στη δύναμη ενός αριθμού.",
+ "MATH_SINGLE_TOOLTIP_POW10": "Επιστρέφει το 10 υψωμένο στη δύναμη ενός αριθμού.",
+ "MATH_TRIG_HELPURL": "https://el.wikipedia.org/wiki/%CE%A4%CF%81%CE%B9%CE%B3%CF%89%CE%BD%CE%BF%CE%BC%CE%B5%CF%84%CF%81%CE%B9%CE%BA%CE%AE_%CF%83%CF%85%CE%BD%CE%AC%CF%81%CF%84%CE%B7%CF%83%CE%B7",
+ "MATH_TRIG_TOOLTIP_SIN": "Επιστρέφει το ημίτονο ενός βαθμού (όχι ακτινίου).",
+ "MATH_TRIG_TOOLTIP_COS": "Επιστρέφει το συνημίτονο ενός βαθμού (όχι ακτινίου).",
+ "MATH_TRIG_TOOLTIP_TAN": "Επιστρέφει την εφαπτομένη ενός βαθμού (όχι ακτινίου).",
+ "MATH_TRIG_TOOLTIP_ASIN": "Επιστρέφει το τόξο ημίτονου ενός αριθμού.",
+ "MATH_TRIG_TOOLTIP_ACOS": "Επιστρέφει το τόξο συνημίτονου ενός αριθμού.",
+ "MATH_TRIG_TOOLTIP_ATAN": "Επιστρέφει το τόξο εφαπτομένης ενός αριθμού.",
+ "MATH_CONSTANT_HELPURL": "https://en.wikipedia.org/wiki/Mathematical_constant",
+ "MATH_CONSTANT_TOOLTIP": "Επιστρέφει μία από τις κοινές σταθερές: π (3.141...), e (2.718...), φ (1.618...), sqrt(2) (1.414...), sqrt(½) (0.707...), ή ∞ (άπειρο).",
+ "MATH_IS_EVEN": "είναι άρτιος",
+ "MATH_IS_ODD": "είναι περιττός",
+ "MATH_IS_PRIME": "είναι πρώτος",
+ "MATH_IS_WHOLE": "είναι ακέραιος",
+ "MATH_IS_POSITIVE": "είναι θετικός",
+ "MATH_IS_NEGATIVE": "είναι αρνητικός",
+ "MATH_IS_DIVISIBLE_BY": "είναι διαιρετός από το",
+ "MATH_IS_TOOLTIP": "Ελέγχει αν ένας αριθμός είναι άρτιος, περιττός, πρώτος, ακέραιος, θετικός, αρνητικός, ή αν είναι διαιρετός από έναν ορισμένο αριθμό. Επιστρέφει αληθής ή ψευδής.",
+ "MATH_CHANGE_HELPURL": "https://el.wikipedia.org/wiki/%CE%A0%CF%81%CF%8C%CF%83%CE%B8%CE%B5%CF%83%CE%B7",
+ "MATH_CHANGE_TITLE": "άλλαξε %1 από %2",
+ "MATH_CHANGE_TOOLTIP": "Προσθέτει έναν αριθμό στη μεταβλητή «%1».",
+ "MATH_ROUND_HELPURL": "https://en.wikipedia.org/wiki/Rounding",
+ "MATH_ROUND_TOOLTIP": "Στρογγυλοποιεί έναν αριθμό προς τα πάνω ή προς τα κάτω.",
+ "MATH_ROUND_OPERATOR_ROUND": "στρογγυλοποίησε",
+ "MATH_ROUND_OPERATOR_ROUNDUP": "στρογγυλοποίησε προς τα πάνω",
+ "MATH_ROUND_OPERATOR_ROUNDDOWN": "στρογγυλοποίησε προς τα κάτω",
+ "MATH_ONLIST_OPERATOR_SUM": "άθροισμα λίστας",
+ "MATH_ONLIST_TOOLTIP_SUM": "Επιστρέφει το άθροισμα όλων των αριθμών στη λίστα.",
+ "MATH_ONLIST_OPERATOR_MIN": "μικρότερος λίστας",
+ "MATH_ONLIST_TOOLTIP_MIN": "Επιστρέφει τον μικρότερο αριθμό στη λίστα.",
+ "MATH_ONLIST_OPERATOR_MAX": "μεγαλύτερος λίστας",
+ "MATH_ONLIST_TOOLTIP_MAX": "Επιστρέφει τον μεγαλύτερο αριθμό στη λίστα.",
+ "MATH_ONLIST_OPERATOR_AVERAGE": "μέσος όρος λίστας",
+ "MATH_ONLIST_TOOLTIP_AVERAGE": "Επιστρέφει τον αριθμητικό μέσο όρο από τις αριθμητικές τιμές στη λίστα.",
+ "MATH_ONLIST_OPERATOR_MEDIAN": "διάμεσος λίστας",
+ "MATH_ONLIST_TOOLTIP_MEDIAN": "Επιστρέφει τον διάμεσο της λίστας.",
+ "MATH_ONLIST_OPERATOR_MODE": "μορφές λίστας",
+ "MATH_ONLIST_TOOLTIP_MODE": "Επιστρέφει μια λίστα με τα πιο κοινά στοιχεία στη λίστα.",
+ "MATH_ONLIST_OPERATOR_STD_DEV": "τυπική απόκλιση λίστας",
+ "MATH_ONLIST_TOOLTIP_STD_DEV": "Επιστρέφει την τυπική απόκλιση της λίστας.",
+ "MATH_ONLIST_OPERATOR_RANDOM": "τυχαίο στοιχείο λίστας",
+ "MATH_ONLIST_TOOLTIP_RANDOM": "Επιστρέφει ένα τυχαίο στοιχείο από τη λίστα.",
+ "MATH_MODULO_HELPURL": "https://en.wikipedia.org/wiki/Modulo_operation",
+ "MATH_MODULO_TITLE": "υπόλοιπο της %1 ÷ %2",
+ "MATH_MODULO_TOOLTIP": "Επιστρέφει το υπόλοιπο της διαίρεσης των δύο αριθμών.",
+ "MATH_CONSTRAIN_TITLE": "περιόρισε %1 χαμηλή %2 υψηλή %3",
+ "MATH_CONSTRAIN_TOOLTIP": "Περιορίζει έναν αριθμό μεταξύ των προβλεπόμενων ορίων (χωρίς αποκλεισμούς).",
+ "MATH_RANDOM_INT_HELPURL": "https://en.wikipedia.org/wiki/Random_number_generation",
+ "MATH_RANDOM_INT_TITLE": "τυχαίος ακέραιος από το %1 έως το %2",
+ "MATH_RANDOM_INT_TOOLTIP": "Επιστρέφει έναν τυχαίο ακέραιο αριθμό μεταξύ δύο συγκεκριμένων ορίων (εντός - συμπεριλαμβανομένων και των ακραίων τιμών).",
+ "MATH_RANDOM_FLOAT_HELPURL": "https://el.wikipedia.org/wiki/%CE%93%CE%B5%CE%BD%CE%BD%CE%AE%CF%84%CF%81%CE%B9%CE%B1_%CE%A4%CF%85%CF%87%CE%B1%CE%AF%CF%89%CE%BD_%CE%91%CF%81%CE%B9%CE%B8%CE%BC%CF%8E%CE%BD",
+ "MATH_RANDOM_FLOAT_TITLE_RANDOM": "τυχαίο κλάσμα",
+ "MATH_RANDOM_FLOAT_TOOLTIP": "Επιστρέψει ένα τυχαία κλάσμα μεταξύ 0,0 (κλειστό) και 1,0 (ανοικτό).",
+ "TEXT_TEXT_HELPURL": "https://el.wikipedia.org/wiki/%CE%A3%CF%85%CE%BC%CE%B2%CE%BF%CE%BB%CE%BF%CF%83%CE%B5%CE%B9%CF%81%CE%AC",
+ "TEXT_TEXT_TOOLTIP": "Ένα γράμμα, μια λέξη ή μια γραμμή κειμένου.",
+ "TEXT_JOIN_TITLE_CREATEWITH": "δημιούργησε κείμενο με",
+ "TEXT_JOIN_TOOLTIP": "Δημιουργεί ένα κομμάτι κειμένου ενώνοντας έναν απεριόριστο αριθμό αντικειμένων.",
+ "TEXT_CREATE_JOIN_TITLE_JOIN": "ένωσε",
+ "TEXT_CREATE_JOIN_TOOLTIP": "Προσθέτει, αφαιρεί ή αναδιατάσσει τους τομείς για να αναδιαμορφώσει αυτό το μπλοκ κειμένου.",
+ "TEXT_CREATE_JOIN_ITEM_TOOLTIP": "Προσθέτει ένα στοιχείο στο κείμενο.",
+ "TEXT_APPEND_TO": "έως",
+ "TEXT_APPEND_APPENDTEXT": "ανάθεσε κείμενο",
+ "TEXT_APPEND_TOOLTIP": "Αναθέτει κείμενο στη μεταβλητή «%1».",
+ "TEXT_LENGTH_TITLE": "το μήκος του %1",
+ "TEXT_LENGTH_TOOLTIP": "Επιστρέφει το πλήθος των γραμμάτων (συμπεριλαμβανομένων και των κενών διαστημάτων) στο παρεχόμενο κείμενο.",
+ "TEXT_ISEMPTY_TITLE": "το %1 είναι κενό",
+ "TEXT_ISEMPTY_TOOLTIP": "Επιστρέφει αληθής αν το παρεχόμενο κείμενο είναι κενό.",
+ "TEXT_INDEXOF_TOOLTIP": "Επιστρέφει τον δείκτη της πρώτης/τελευταίας εμφάνισης του πρώτου κειμένου στο δεύτερο κείμενο. Επιστρέφει τιμή %1, αν δε βρει το κείμενο.",
+ "TEXT_INDEXOF_INPUT_INTEXT": "στο κείμενο",
+ "TEXT_INDEXOF_OPERATOR_FIRST": "βρες την πρώτη εμφάνιση του κειμένου",
+ "TEXT_INDEXOF_OPERATOR_LAST": "βρες την τελευταία εμφάνιση του κειμένου",
+ "TEXT_CHARAT_INPUT_INTEXT": "στο κείμενο",
+ "TEXT_CHARAT_FROM_START": "πάρε το γράμμα #",
+ "TEXT_CHARAT_FROM_END": "πάρε το γράμμα # από το τέλος",
+ "TEXT_CHARAT_FIRST": "πάρε το πρώτο γράμμα",
+ "TEXT_CHARAT_LAST": "πάρε το τελευταίο γράμμα",
+ "TEXT_CHARAT_RANDOM": "πάρε τυχαίο γράμμα",
+ "TEXT_CHARAT_TOOLTIP": "Επιστρέφει το γράμμα στην καθορισμένη θέση.",
+ "TEXT_GET_SUBSTRING_TOOLTIP": "Επιστρέφει ένα συγκεκριμένο τμήμα του κειμένου.",
+ "TEXT_GET_SUBSTRING_INPUT_IN_TEXT": "στο κείμενο",
+ "TEXT_GET_SUBSTRING_START_FROM_START": "πάρε τη δευτερεύουσα συμβολοσειρά από το # γράμμα",
+ "TEXT_GET_SUBSTRING_START_FROM_END": "πάρε τη δευτερεύουσα συμβολοσειρά από το # γράμμα από το τέλος",
+ "TEXT_GET_SUBSTRING_START_FIRST": "πάρε τη δευτερεύουσα συμβολοσειρά από το πρώτο γράμμα",
+ "TEXT_GET_SUBSTRING_END_FROM_START": "μέχρι το # γράμμα",
+ "TEXT_GET_SUBSTRING_END_FROM_END": "μέχρι το # γράμμα από το τέλος",
+ "TEXT_GET_SUBSTRING_END_LAST": "μέχρι το τελευταίο γράμμα",
+ "TEXT_CHANGECASE_TOOLTIP": "Επιστρέφει ένα αντίγραφο του κειμένου σε διαφορετική μορφή γραμμάτων.",
+ "TEXT_CHANGECASE_OPERATOR_UPPERCASE": "σε ΚΕΦΑΛΑΙΑ",
+ "TEXT_CHANGECASE_OPERATOR_LOWERCASE": "σε πεζά",
+ "TEXT_CHANGECASE_OPERATOR_TITLECASE": "σε Λέξεις Με Πρώτα Κεφαλαία",
+ "TEXT_TRIM_TOOLTIP": "Επιστρέφει ένα αντίγραφο του κειμένου με αφαιρεμένα τα κενά από το ένα ή και τα δύο άκρα.",
+ "TEXT_TRIM_OPERATOR_BOTH": "περίκοψε τα κενά και από τις δυο πλευρές του",
+ "TEXT_TRIM_OPERATOR_LEFT": "περίκοψε τα κενά από την αριστερή πλευρά του",
+ "TEXT_TRIM_OPERATOR_RIGHT": "περίκοψε τα κενά από την δεξιά πλευρά του",
+ "TEXT_PRINT_TITLE": "εκτύπωσε %1",
+ "TEXT_PRINT_TOOLTIP": "Εκτυπώνει το καθορισμένο κείμενο, αριθμό ή άλλη τιμή.",
+ "TEXT_PROMPT_TYPE_TEXT": "πρότρεψε με μήνυμα για να δοθεί κείμενο",
+ "TEXT_PROMPT_TYPE_NUMBER": "πρότρεψε με μήνυμα για να δοθεί αριθμός",
+ "TEXT_PROMPT_TOOLTIP_NUMBER": "Δημιουργεί προτροπή για τον χρήστη για να δώσει ένα αριθμό.",
+ "TEXT_PROMPT_TOOLTIP_TEXT": "Δημιουργεί προτροπή για το χρήστη για να δώσει κάποιο κείμενο.",
+ "LISTS_CREATE_EMPTY_HELPURL": "https://github.com/google/blockly/wiki/Lists#create-empty-list",
+ "LISTS_CREATE_EMPTY_TITLE": "δημιούργησε κενή λίστα",
+ "LISTS_CREATE_EMPTY_TOOLTIP": "Επιστρέφει μια λίστα, με μήκος 0, η οποία δεν περιέχει εγγραφές δεδομένων",
+ "LISTS_CREATE_WITH_TOOLTIP": "Δημιουργεί λίστα με οποιονδήποτε αριθμό αντικειμένων.",
+ "LISTS_CREATE_WITH_INPUT_WITH": "δημιούργησε λίστα με",
+ "LISTS_CREATE_WITH_CONTAINER_TITLE_ADD": "λίστα",
+ "LISTS_CREATE_WITH_CONTAINER_TOOLTIP": "Προσθέτει, αφαιρεί ή αναδιατάσσει τα τμήματα για να αναδιαμορφώσει αυτό το μπλοκ λίστας.",
+ "LISTS_CREATE_WITH_ITEM_TOOLTIP": "Προσθέτει αντικείμενο στη λίστα.",
+ "LISTS_REPEAT_HELPURL": "Blockly",
+ "LISTS_REPEAT_TOOLTIP": "Δημιουργεί μια λίστα που αποτελείται από την δεδομένη τιμή που επαναλαμβάνεται για συγκεκριμένο αριθμό επαναλήψεων.",
+ "LISTS_REPEAT_TITLE": "δημιούργησε λίστα με το στοιχείο %1 να επαναλαμβάνεται %2 φορές",
+ "LISTS_LENGTH_HELPURL": "Blockly",
+ "LISTS_LENGTH_TITLE": "το μήκος του %1",
+ "LISTS_LENGTH_TOOLTIP": "Επιστρέφει το μήκος μιας λίστας.",
+ "LISTS_ISEMPTY_TITLE": "το %1 είναι κενό",
+ "LISTS_ISEMPTY_TOOLTIP": "Επιστρέφει αληθής αν η λίστα είναι κενή.",
+ "LISTS_INLIST": "στη λίστα",
+ "LISTS_INDEX_OF_HELPURL": "Blockly",
+ "LISTS_INDEX_OF_FIRST": "βρες την πρώτη εμφάνιση του στοιχείου",
+ "LISTS_INDEX_OF_LAST": "βρες την τελευταία εμφάνιση του στοιχείου",
+ "LISTS_INDEX_OF_TOOLTIP": "Επιστρέφει τον δείκτη της πρώτης/τελευταίας εμφάνισης του στοιχείου στη λίστα. Επιστρέφει τιμή %1, αν το στοιχείο δεν βρεθεί.",
+ "LISTS_GET_INDEX_GET": "πάρε",
+ "LISTS_GET_INDEX_GET_REMOVE": "πάρε και αφαίρεσε",
+ "LISTS_GET_INDEX_REMOVE": "αφαίρεσε",
+ "LISTS_GET_INDEX_FROM_START": "#",
+ "LISTS_GET_INDEX_FROM_END": "# από το τέλος",
+ "LISTS_GET_INDEX_FIRST": "πρώτο",
+ "LISTS_GET_INDEX_LAST": "τελευταίο",
+ "LISTS_GET_INDEX_RANDOM": "τυχαίο",
+ "LISTS_INDEX_FROM_START_TOOLTIP": "Το %1 είναι το πρώτο στοιχείο.",
+ "LISTS_INDEX_FROM_END_TOOLTIP": "Το %1 είναι το τελευταίο στοιχείο.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_FROM": "Επιστρέφει το στοιχείο στην καθορισμένη θέση σε μια λίστα.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_FIRST": "Επιστρέφει το πρώτο στοιχείο σε μια λίστα.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_LAST": "Επιστρέφει το τελευταίο στοιχείο σε μια λίστα.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_RANDOM": "Επιστρέφει ένα τυχαίο στοιχείο σε μια λίστα.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM": "Καταργεί και επιστρέφει το στοιχείο στην καθορισμένη θέση σε μια λίστα.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST": "Καταργεί και επιστρέφει το πρώτο στοιχείο σε μια λίστα.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST": "Καταργεί και επιστρέφει το τελευταίο στοιχείο σε μια λίστα.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM": "Καταργεί και επιστρέφει ένα τυχαίο στοιχείο σε μια λίστα.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM": "Καταργεί το στοιχείο στην καθορισμένη θέση σε μια λίστα.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST": "Καταργεί το πρώτο στοιχείο σε μια λίστα.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST": "Καταργεί το τελευταίο στοιχείο σε μια λίστα.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM": "Καταργεί ένα τυχαίο στοιχείο σε μια λίστα.",
+ "LISTS_SET_INDEX_SET": "όρισε",
+ "LISTS_SET_INDEX_INSERT": "είσαγε στο",
+ "LISTS_SET_INDEX_INPUT_TO": "σε",
+ "LISTS_SET_INDEX_TOOLTIP_SET_FROM": "Ορίζει το στοιχείο στην καθορισμένη θέση σε μια λίστα.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_FIRST": "Ορίζει το πρώτο στοιχείο σε μια λίστα.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_LAST": "Ορίζει το τελευταίο στοιχείο σε μια λίστα.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_RANDOM": "Ορίζει ένα τυχαίο στοιχείο σε μια λίστα.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_FROM": "Εισάγει το στοιχείο στην καθορισμένη θέση σε μια λίστα.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST": "Εισάγει το στοιχείο στην αρχή μιας λίστας.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_LAST": "Αναθέτει το στοιχείο στο τέλος μιας λίστας.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM": "Εισάγει το στοιχείο τυχαία σε μια λίστα.",
+ "LISTS_GET_SUBLIST_HELPURL": "Blockly",
+ "LISTS_GET_SUBLIST_START_FROM_START": "πάρε υπολίστα από #",
+ "LISTS_GET_SUBLIST_START_FROM_END": "πάρε υπολίστα από # από το τέλος",
+ "LISTS_GET_SUBLIST_START_FIRST": "πάρε υπολίστα από την αρχή",
+ "LISTS_GET_SUBLIST_END_FROM_START": "έως #",
+ "LISTS_GET_SUBLIST_END_FROM_END": "έως # από το τέλος",
+ "LISTS_GET_SUBLIST_END_LAST": "έως το τελευταίο",
+ "LISTS_GET_SUBLIST_TOOLTIP": "Δημιουργεί ένα αντίγραφο του καθορισμένου τμήματος μιας λίστας.",
+ "LISTS_SORT_HELPURL": "https://github.com/google/blockly/wiki/Lists#sorting-a-list",
+ "LISTS_SORT_ORDER_ASCENDING": "Αύξουσα",
+ "LISTS_SORT_ORDER_DESCENDING": "Φθίνουσα",
+ "LISTS_SORT_TYPE_NUMERIC": "αριθμητικό",
+ "LISTS_SORT_TYPE_TEXT": "Αλφαβητικά",
+ "LISTS_SPLIT_LIST_FROM_TEXT": "κάνετε λίστα από το κείμενο",
+ "LISTS_SPLIT_TEXT_FROM_LIST": "κάνετε κείμενο από τη λίστα",
+ "LISTS_SPLIT_WITH_DELIMITER": "με διαχωριστικό",
+ "LISTS_SPLIT_TOOLTIP_SPLIT": "Διαίρεση του κειμένου σε μια λίστα κειμένων, με σπάσιμο σε κάθε διαχωριστικό.",
+ "LISTS_SPLIT_TOOLTIP_JOIN": "Ενώστε μια λίστα κειμένων σε ένα κείμενο, που χωρίζονται από ένα διαχωριστικό.",
+ "VARIABLES_GET_TOOLTIP": "Επιστρέφει την τιμή αυτής της μεταβλητής.",
+ "VARIABLES_GET_CREATE_SET": "Δημιούργησε «όρισε %1»",
+ "VARIABLES_SET": "όρισε %1 μέχρι το %2",
+ "VARIABLES_SET_TOOLTIP": "Ορίζει αυτή τη μεταβλητή να είναι ίση με την είσοδο.",
+ "VARIABLES_SET_CREATE_GET": "Δημιούργησε «πάρε %1»",
+ "PROCEDURES_DEFNORETURN_HELPURL": "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29",
+ "PROCEDURES_DEFNORETURN_TITLE": "στο",
+ "PROCEDURES_DEFNORETURN_PROCEDURE": "κάνε κάτι",
+ "PROCEDURES_BEFORE_PARAMS": "με:",
+ "PROCEDURES_CALL_BEFORE_PARAMS": "με:",
+ "PROCEDURES_DEFNORETURN_TOOLTIP": "Δημιουργεί μια συνάρτηση χωρίς έξοδο.",
+ "PROCEDURES_DEFRETURN_HELPURL": "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29",
+ "PROCEDURES_DEFRETURN_RETURN": "επέστρεψε",
+ "PROCEDURES_DEFRETURN_TOOLTIP": "Δημιουργεί μια συνάρτηση με μια έξοδο.",
+ "PROCEDURES_ALLOW_STATEMENTS": "να επιτρέπονται οι δηλώσεις",
+ "PROCEDURES_DEF_DUPLICATE_WARNING": "Προειδοποίηση: Αυτή η συνάρτηση έχει διπλότυπες παραμέτρους.",
+ "PROCEDURES_CALLNORETURN_HELPURL": "https://el.wikipedia.org/wiki/%CE%94%CE%B9%CE%B1%CE%B4%CE%B9%CE%BA%CE%B1%CF%83%CE%AF%CE%B1_%28%CF%85%CF%80%CE%BF%CE%BB%CE%BF%CE%B3%CE%B9%CF%83%CF%84%CE%AD%CF%82%29",
+ "PROCEDURES_CALLNORETURN_TOOLTIP": "Εκτελεί την ορισμένη από τον χρήστη συνάρτηση «%1».",
+ "PROCEDURES_CALLRETURN_HELPURL": "https://el.wikipedia.org/wiki/%CE%94%CE%B9%CE%B1%CE%B4%CE%B9%CE%BA%CE%B1%CF%83%CE%AF%CE%B1_%28%CF%85%CF%80%CE%BF%CE%BB%CE%BF%CE%B3%CE%B9%CF%83%CF%84%CE%AD%CF%82%29",
+ "PROCEDURES_CALLRETURN_TOOLTIP": "Εκτελεί την ορισμένη από τον χρήστη συνάρτηση «%1» και χρησιμοποίησε την έξοδό της.",
+ "PROCEDURES_MUTATORCONTAINER_TITLE": "είσοδοι",
+ "PROCEDURES_MUTATORCONTAINER_TOOLTIP": "Προσθέτει, αφαιρεί ή αναδιατάσσει εισόδους σε αυτήν τη λειτουργία",
+ "PROCEDURES_MUTATORARG_TITLE": "όνομα εισόδου:",
+ "PROCEDURES_MUTATORARG_TOOLTIP": "Πρόσθεσε μια είσοδος στη συνάρτηση",
+ "PROCEDURES_HIGHLIGHT_DEF": "Επισημάνετε τον ορισμό συνάρτησης",
+ "PROCEDURES_CREATE_DO": "Δημιούργησε «%1»",
+ "PROCEDURES_IFRETURN_TOOLTIP": "Αν μια τιμή είναι αληθής, τότε επιστρέφει τη δεύτερη τιμή.",
+ "PROCEDURES_IFRETURN_WARNING": "Προειδοποίηση: Αυτό το μπλοκ μπορεί να χρησιμοποιηθεί μόνο στον ορισμό μιας συνάρτησης."
+}
diff --git a/blockly/msg/json/en-gb.json b/blockly/msg/json/en-gb.json
new file mode 100644
index 0000000..a6a6621
--- /dev/null
+++ b/blockly/msg/json/en-gb.json
@@ -0,0 +1,139 @@
+{
+ "@metadata": {
+ "authors": [
+ "Andibing",
+ "Codynguyen1116",
+ "Shirayuki"
+ ]
+ },
+ "VARIABLES_DEFAULT_NAME": "item",
+ "TODAY": "Today",
+ "DUPLICATE_BLOCK": "Duplicate",
+ "ADD_COMMENT": "Add Comment",
+ "REMOVE_COMMENT": "Remove Comment",
+ "EXTERNAL_INPUTS": "External Inputs",
+ "INLINE_INPUTS": "Inline Inputs",
+ "DELETE_BLOCK": "Delete Block",
+ "DELETE_X_BLOCKS": "Delete %1 Blocks",
+ "DELETE_ALL_BLOCKS": "Delete all %1 blocks?",
+ "CLEAN_UP": "Clean up Blocks",
+ "COLLAPSE_BLOCK": "Collapse Block",
+ "COLLAPSE_ALL": "Collapse Blocks",
+ "EXPAND_BLOCK": "Expand Block",
+ "EXPAND_ALL": "Expand Blocks",
+ "DISABLE_BLOCK": "Disable Block",
+ "ENABLE_BLOCK": "Enable Block",
+ "HELP": "Help",
+ "UNDO": "Undo",
+ "REDO": "Redo",
+ "CHANGE_VALUE_TITLE": "Change value:",
+ "RENAME_VARIABLE": "Rename variable...",
+ "RENAME_VARIABLE_TITLE": "Rename all '%1' variables to:",
+ "NEW_VARIABLE": "New variable...",
+ "NEW_VARIABLE_TITLE": "New variable name:",
+ "COLOUR_PICKER_HELPURL": "https://en.wikipedia.org/wiki/Colour",
+ "COLOUR_PICKER_TOOLTIP": "Choose a colour from the palette.",
+ "COLOUR_RANDOM_TITLE": "random colour",
+ "COLOUR_RANDOM_TOOLTIP": "Choose a colour at random.",
+ "COLOUR_RGB_TITLE": "colour with",
+ "COLOUR_RGB_RED": "red",
+ "COLOUR_RGB_GREEN": "green",
+ "COLOUR_RGB_BLUE": "blue",
+ "COLOUR_RGB_TOOLTIP": "Create a colour with the specified amount of red, green, and blue. All values must be between 0 and 100.",
+ "COLOUR_BLEND_TITLE": "blend",
+ "COLOUR_BLEND_COLOUR1": "colour 1",
+ "COLOUR_BLEND_COLOUR2": "colour 2",
+ "COLOUR_BLEND_RATIO": "ratio",
+ "COLOUR_BLEND_TOOLTIP": "Blends two colours together with a given ratio (0.0 - 1.0).",
+ "CONTROLS_REPEAT_HELPURL": "https://en.wikipedia.org/wiki/For_loop",
+ "CONTROLS_REPEAT_TITLE": "repeat %1 times",
+ "CONTROLS_REPEAT_INPUT_DO": "do",
+ "CONTROLS_REPEAT_TOOLTIP": "Do some statements several times.",
+ "CONTROLS_WHILEUNTIL_OPERATOR_WHILE": "repeat while",
+ "CONTROLS_WHILEUNTIL_OPERATOR_UNTIL": "repeat until",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_WHILE": "While a value is true, then do some statements.",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL": "While a value is false, then do some statements.",
+ "CONTROLS_FOR_TOOLTIP": "Have the variable '%1' take on the values from the start number to the end number, counting by the specified interval, and do the specified blocks.",
+ "CONTROLS_FOR_TITLE": "count with %1 from %2 to %3 by %4",
+ "CONTROLS_FOREACH_TITLE": "for each item %1 in list %2",
+ "CONTROLS_FOREACH_TOOLTIP": "For each item in a list, set the variable '%1' to the item, and then do some statements.",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK": "break out of loop",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE": "continue with next iteration of loop",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK": "Break out of the containing loop.",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE": "Skip the rest of this loop, and continue with the next iteration.",
+ "CONTROLS_FLOW_STATEMENTS_WARNING": "Warning: This block may only be used within a loop.",
+ "CONTROLS_IF_TOOLTIP_1": "If a value is true, then do some statements.",
+ "CONTROLS_IF_TOOLTIP_2": "If a value is true, then do the first block of statements. Otherwise, do the second block of statements.",
+ "CONTROLS_IF_TOOLTIP_3": "If the first value is true, then do the first block of statements. Otherwise, if the second value is true, do the second block of statements.",
+ "CONTROLS_IF_TOOLTIP_4": "If the first value is true, then do the first block of statements. Otherwise, if the second value is true, do the second block of statements. If none of the values are true, do the last block of statements.",
+ "CONTROLS_IF_MSG_IF": "if",
+ "CONTROLS_IF_MSG_ELSEIF": "else if",
+ "CONTROLS_IF_MSG_ELSE": "else",
+ "CONTROLS_IF_IF_TOOLTIP": "Add, remove, or reorder sections to reconfigure this if block.",
+ "CONTROLS_IF_ELSEIF_TOOLTIP": "Add a condition to the if block.",
+ "CONTROLS_IF_ELSE_TOOLTIP": "Add a final, catch-all condition to the if block.",
+ "LOGIC_COMPARE_HELPURL": "https://en.wikipedia.org/wiki/Inequality_(mathematics)",
+ "LOGIC_COMPARE_TOOLTIP_EQ": "Return true if both inputs equal each other.",
+ "LOGIC_COMPARE_TOOLTIP_NEQ": "Return true if both inputs are not equal to each other.",
+ "LOGIC_COMPARE_TOOLTIP_LT": "Return true if the first input is smaller than the second input.",
+ "LOGIC_COMPARE_TOOLTIP_LTE": "Return true if the first input is smaller than or equal to the second input.",
+ "LOGIC_COMPARE_TOOLTIP_GT": "Return true if the first input is greater than the second input.",
+ "LOGIC_COMPARE_TOOLTIP_GTE": "Return true if the first input is greater than or equal to the second input.",
+ "LOGIC_OPERATION_TOOLTIP_AND": "Return true if both inputs are true.",
+ "LOGIC_OPERATION_AND": "and",
+ "LOGIC_OPERATION_TOOLTIP_OR": "Return true if at least one of the inputs is true.",
+ "LOGIC_OPERATION_OR": "or",
+ "LOGIC_NEGATE_TITLE": "not %1",
+ "LOGIC_NEGATE_TOOLTIP": "Returns true if the input is false. Returns false if the input is true.",
+ "LOGIC_BOOLEAN_TRUE": "true",
+ "LOGIC_BOOLEAN_FALSE": "false",
+ "LOGIC_BOOLEAN_TOOLTIP": "Returns either true or false.",
+ "LOGIC_NULL": "null",
+ "LOGIC_NULL_TOOLTIP": "Returns null.",
+ "LOGIC_TERNARY_CONDITION": "test",
+ "LOGIC_TERNARY_IF_TRUE": "if true",
+ "LOGIC_TERNARY_IF_FALSE": "if false",
+ "LOGIC_TERNARY_TOOLTIP": "Check the condition in 'test'. If the condition is true, returns the 'if true' value; otherwise returns the 'if false' value.",
+ "MATH_NUMBER_HELPURL": "https://en.wikipedia.org/wiki/Number",
+ "MATH_NUMBER_TOOLTIP": "A number.",
+ "MATH_ARITHMETIC_HELPURL": "https://en.wikipedia.org/wiki/Arithmetic",
+ "MATH_ARITHMETIC_TOOLTIP_ADD": "Return the sum of the two numbers.",
+ "MATH_ARITHMETIC_TOOLTIP_MINUS": "Return the difference of the two numbers.",
+ "MATH_ARITHMETIC_TOOLTIP_MULTIPLY": "Return the product of the two numbers.",
+ "MATH_ARITHMETIC_TOOLTIP_DIVIDE": "Return the quotient of the two numbers.",
+ "MATH_ARITHMETIC_TOOLTIP_POWER": "Return the first number raised to the power of the second number.",
+ "MATH_SINGLE_HELPURL": "https://en.wikipedia.org/wiki/Square_root",
+ "MATH_SINGLE_OP_ROOT": "square root",
+ "MATH_SINGLE_TOOLTIP_ROOT": "Return the square root of a number.",
+ "MATH_SINGLE_OP_ABSOLUTE": "absolute",
+ "MATH_SINGLE_TOOLTIP_ABS": "Return the absolute value of a number.",
+ "MATH_SINGLE_TOOLTIP_NEG": "Return the negation of a number.",
+ "MATH_SINGLE_TOOLTIP_LN": "Return the natural logarithm of a number.",
+ "MATH_SINGLE_TOOLTIP_LOG10": "Return the base 10 logarithm of a number.",
+ "MATH_SINGLE_TOOLTIP_EXP": "Return e to the power of a number.",
+ "MATH_SINGLE_TOOLTIP_POW10": "Return 10 to the power of a number.",
+ "MATH_TRIG_HELPURL": "https://en.wikipedia.org/wiki/Trigonometric_functions",
+ "MATH_TRIG_TOOLTIP_SIN": "Return the sine of a degree (not radian).",
+ "MATH_TRIG_TOOLTIP_COS": "Return the cosine of a degree (not radian).",
+ "MATH_TRIG_TOOLTIP_TAN": "Return the tangent of a degree (not radian).",
+ "MATH_TRIG_TOOLTIP_ASIN": "Return the arcsine of a number.",
+ "MATH_TRIG_TOOLTIP_ACOS": "Return the arccosine of a number.",
+ "MATH_TRIG_TOOLTIP_ATAN": "Return the arctangent of a number.",
+ "MATH_CONSTANT_HELPURL": "https://en.wikipedia.org/wiki/Mathematical_constant",
+ "MATH_CONSTANT_TOOLTIP": "Return one of the common constants: π (3.141…), e (2.718…), φ (1.618…), sqrt(2) (1.414…), sqrt(½) (0.707…), or ∞ (infinity).",
+ "MATH_IS_EVEN": "is even",
+ "MATH_IS_ODD": "is odd",
+ "MATH_IS_PRIME": "is prime",
+ "MATH_IS_WHOLE": "is whole",
+ "MATH_IS_POSITIVE": "is positive",
+ "MATH_IS_NEGATIVE": "is negative",
+ "MATH_IS_DIVISIBLE_BY": "is divisible by",
+ "MATH_IS_TOOLTIP": "Check if a number is an even, odd, prime, whole, positive, negative, or if it is divisible by certain number. Returns true or false.",
+ "MATH_CHANGE_HELPURL": "https://en.wikipedia.org/wiki/Programming_idiom#Incrementing_a_counter",
+ "MATH_CHANGE_TITLE": "change %1 by %2",
+ "MATH_CHANGE_TOOLTIP": "Add a number to variable '%1'.",
+ "MATH_ROUND_HELPURL": "https://en.wikipedia.org/wiki/Rounding",
+ "MATH_ROUND_TOOLTIP": "Round a number up or down.",
+ "MATH_ROUND_OPERATOR_ROUND": "round",
+ "LISTS_SORT_ORDER_DESCENDING": "descendente"
+}
diff --git a/blockly/msg/json/en.json b/blockly/msg/json/en.json
new file mode 100644
index 0000000..d2c052a
--- /dev/null
+++ b/blockly/msg/json/en.json
@@ -0,0 +1,371 @@
+{
+ "@metadata": {
+ "author": "Ellen Spertus <ellen.spertus@gmail.com>",
+ "lastupdated": "2016-08-17 16:08:04.888607",
+ "locale": "en",
+ "messagedocumentation" : "qqq"
+ },
+ "VARIABLES_DEFAULT_NAME": "item",
+ "TODAY": "Today",
+ "DUPLICATE_BLOCK": "Duplicate",
+ "ADD_COMMENT": "Add Comment",
+ "REMOVE_COMMENT": "Remove Comment",
+ "EXTERNAL_INPUTS": "External Inputs",
+ "INLINE_INPUTS": "Inline Inputs",
+ "DELETE_BLOCK": "Delete Block",
+ "DELETE_X_BLOCKS": "Delete %1 Blocks",
+ "DELETE_ALL_BLOCKS": "Delete all %1 blocks?",
+ "CLEAN_UP": "Clean up Blocks",
+ "COLLAPSE_BLOCK": "Collapse Block",
+ "COLLAPSE_ALL": "Collapse Blocks",
+ "EXPAND_BLOCK": "Expand Block",
+ "EXPAND_ALL": "Expand Blocks",
+ "DISABLE_BLOCK": "Disable Block",
+ "ENABLE_BLOCK": "Enable Block",
+ "HELP": "Help",
+ "UNDO": "Undo",
+ "REDO": "Redo",
+ "CHANGE_VALUE_TITLE": "Change value:",
+ "RENAME_VARIABLE": "Rename variable...",
+ "RENAME_VARIABLE_TITLE": "Rename all '%1' variables to:",
+ "NEW_VARIABLE": "Create variable...",
+ "NEW_VARIABLE_TITLE": "New variable name:",
+ "VARIABLE_ALREADY_EXISTS": "A variable named '%1' already exists.",
+ "DELETE_VARIABLE_CONFIRMATION": "Delete %1 uses of the '%2' variable?",
+ "DELETE_VARIABLE": "Delete the '%1' variable",
+ "COLOUR_PICKER_HELPURL": "https://en.wikipedia.org/wiki/Color",
+ "COLOUR_PICKER_TOOLTIP": "Choose a colour from the palette.",
+ "COLOUR_RANDOM_HELPURL": "http://randomcolour.com",
+ "COLOUR_RANDOM_TITLE": "random colour",
+ "COLOUR_RANDOM_TOOLTIP": "Choose a colour at random.",
+ "COLOUR_RGB_HELPURL": "http://www.december.com/html/spec/colorper.html",
+ "COLOUR_RGB_TITLE": "colour with",
+ "COLOUR_RGB_RED": "red",
+ "COLOUR_RGB_GREEN": "green",
+ "COLOUR_RGB_BLUE": "blue",
+ "COLOUR_RGB_TOOLTIP": "Create a colour with the specified amount of red, green, and blue. All values must be between 0 and 100.",
+ "COLOUR_BLEND_HELPURL": "http://meyerweb.com/eric/tools/color-blend/",
+ "COLOUR_BLEND_TITLE": "blend",
+ "COLOUR_BLEND_COLOUR1": "colour 1",
+ "COLOUR_BLEND_COLOUR2": "colour 2",
+ "COLOUR_BLEND_RATIO": "ratio",
+ "COLOUR_BLEND_TOOLTIP": "Blends two colours together with a given ratio (0.0 - 1.0).",
+ "CONTROLS_REPEAT_HELPURL": "https://en.wikipedia.org/wiki/For_loop",
+ "CONTROLS_REPEAT_TITLE": "repeat %1 times",
+ "CONTROLS_REPEAT_INPUT_DO": "do",
+ "CONTROLS_REPEAT_TOOLTIP": "Do some statements several times.",
+ "CONTROLS_WHILEUNTIL_HELPURL": "https://github.com/google/blockly/wiki/Loops#repeat",
+ "CONTROLS_WHILEUNTIL_OPERATOR_WHILE": "repeat while",
+ "CONTROLS_WHILEUNTIL_OPERATOR_UNTIL": "repeat until",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_WHILE": "While a value is true, then do some statements.",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL": "While a value is false, then do some statements.",
+ "CONTROLS_FOR_HELPURL": "https://github.com/google/blockly/wiki/Loops#count-with",
+ "CONTROLS_FOR_TOOLTIP": "Have the variable '%1' take on the values from the start number to the end number, counting by the specified interval, and do the specified blocks.",
+ "CONTROLS_FOR_TITLE": "count with %1 from %2 to %3 by %4",
+ "CONTROLS_FOREACH_HELPURL": "https://github.com/google/blockly/wiki/Loops#for-each",
+ "CONTROLS_FOREACH_TITLE": "for each item %1 in list %2",
+ "CONTROLS_FOREACH_TOOLTIP": "For each item in a list, set the variable '%1' to the item, and then do some statements.",
+ "CONTROLS_FLOW_STATEMENTS_HELPURL": "https://github.com/google/blockly/wiki/Loops#loop-termination-blocks",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK": "break out of loop",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE": "continue with next iteration of loop",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK": "Break out of the containing loop.",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE": "Skip the rest of this loop, and continue with the next iteration.",
+ "CONTROLS_FLOW_STATEMENTS_WARNING": "Warning: This block may only be used within a loop.",
+ "CONTROLS_IF_HELPURL": "https://github.com/google/blockly/wiki/IfElse",
+ "CONTROLS_IF_TOOLTIP_1": "If a value is true, then do some statements.",
+ "CONTROLS_IF_TOOLTIP_2": "If a value is true, then do the first block of statements. Otherwise, do the second block of statements.",
+ "CONTROLS_IF_TOOLTIP_3": "If the first value is true, then do the first block of statements. Otherwise, if the second value is true, do the second block of statements.",
+ "CONTROLS_IF_TOOLTIP_4": "If the first value is true, then do the first block of statements. Otherwise, if the second value is true, do the second block of statements. If none of the values are true, do the last block of statements.",
+ "CONTROLS_IF_MSG_IF": "if",
+ "CONTROLS_IF_MSG_ELSEIF": "else if",
+ "CONTROLS_IF_MSG_ELSE": "else",
+ "CONTROLS_IF_IF_TOOLTIP": "Add, remove, or reorder sections to reconfigure this if block.",
+ "CONTROLS_IF_ELSEIF_TOOLTIP": "Add a condition to the if block.",
+ "CONTROLS_IF_ELSE_TOOLTIP": "Add a final, catch-all condition to the if block.",
+ "LOGIC_COMPARE_HELPURL": "https://en.wikipedia.org/wiki/Inequality_(mathematics)",
+ "LOGIC_COMPARE_TOOLTIP_EQ": "Return true if both inputs equal each other.",
+ "LOGIC_COMPARE_TOOLTIP_NEQ": "Return true if both inputs are not equal to each other.",
+ "LOGIC_COMPARE_TOOLTIP_LT": "Return true if the first input is smaller than the second input.",
+ "LOGIC_COMPARE_TOOLTIP_LTE": "Return true if the first input is smaller than or equal to the second input.",
+ "LOGIC_COMPARE_TOOLTIP_GT": "Return true if the first input is greater than the second input.",
+ "LOGIC_COMPARE_TOOLTIP_GTE": "Return true if the first input is greater than or equal to the second input.",
+ "LOGIC_OPERATION_HELPURL": "https://github.com/google/blockly/wiki/Logic#logical-operations",
+ "LOGIC_OPERATION_TOOLTIP_AND": "Return true if both inputs are true.",
+ "LOGIC_OPERATION_AND": "and",
+ "LOGIC_OPERATION_TOOLTIP_OR": "Return true if at least one of the inputs is true.",
+ "LOGIC_OPERATION_OR": "or",
+ "LOGIC_NEGATE_HELPURL": "https://github.com/google/blockly/wiki/Logic#not",
+ "LOGIC_NEGATE_TITLE": "not %1",
+ "LOGIC_NEGATE_TOOLTIP": "Returns true if the input is false. Returns false if the input is true.",
+ "LOGIC_BOOLEAN_HELPURL": "https://github.com/google/blockly/wiki/Logic#values",
+ "LOGIC_BOOLEAN_TRUE": "true",
+ "LOGIC_BOOLEAN_FALSE": "false",
+ "LOGIC_BOOLEAN_TOOLTIP": "Returns either true or false.",
+ "LOGIC_NULL_HELPURL": "https://en.wikipedia.org/wiki/Nullable_type",
+ "LOGIC_NULL": "null",
+ "LOGIC_NULL_TOOLTIP": "Returns null.",
+ "LOGIC_TERNARY_HELPURL": "https://en.wikipedia.org/wiki/%3F:",
+ "LOGIC_TERNARY_CONDITION": "test",
+ "LOGIC_TERNARY_IF_TRUE": "if true",
+ "LOGIC_TERNARY_IF_FALSE": "if false",
+ "LOGIC_TERNARY_TOOLTIP": "Check the condition in 'test'. If the condition is true, returns the 'if true' value; otherwise returns the 'if false' value.",
+ "MATH_NUMBER_HELPURL": "https://en.wikipedia.org/wiki/Number",
+ "MATH_NUMBER_TOOLTIP": "A number.",
+ "MATH_ADDITION_SYMBOL": "+",
+ "MATH_SUBTRACTION_SYMBOL": "-",
+ "MATH_DIVISION_SYMBOL": "÷",
+ "MATH_MULTIPLICATION_SYMBOL": "×",
+ "MATH_POWER_SYMBOL": "^",
+ "MATH_TRIG_SIN": "sin",
+ "MATH_TRIG_COS": "cos",
+ "MATH_TRIG_TAN": "tan",
+ "MATH_TRIG_ASIN": "asin",
+ "MATH_TRIG_ACOS": "acos",
+ "MATH_TRIG_ATAN": "atan",
+ "MATH_ARITHMETIC_HELPURL": "https://en.wikipedia.org/wiki/Arithmetic",
+ "MATH_ARITHMETIC_TOOLTIP_ADD": "Return the sum of the two numbers.",
+ "MATH_ARITHMETIC_TOOLTIP_MINUS": "Return the difference of the two numbers.",
+ "MATH_ARITHMETIC_TOOLTIP_MULTIPLY": "Return the product of the two numbers.",
+ "MATH_ARITHMETIC_TOOLTIP_DIVIDE": "Return the quotient of the two numbers.",
+ "MATH_ARITHMETIC_TOOLTIP_POWER": "Return the first number raised to the power of the second number.",
+ "MATH_SINGLE_HELPURL": "https://en.wikipedia.org/wiki/Square_root",
+ "MATH_SINGLE_OP_ROOT": "square root",
+ "MATH_SINGLE_TOOLTIP_ROOT": "Return the square root of a number.",
+ "MATH_SINGLE_OP_ABSOLUTE": "absolute",
+ "MATH_SINGLE_TOOLTIP_ABS": "Return the absolute value of a number.",
+ "MATH_SINGLE_TOOLTIP_NEG": "Return the negation of a number.",
+ "MATH_SINGLE_TOOLTIP_LN": "Return the natural logarithm of a number.",
+ "MATH_SINGLE_TOOLTIP_LOG10": "Return the base 10 logarithm of a number.",
+ "MATH_SINGLE_TOOLTIP_EXP": "Return e to the power of a number.",
+ "MATH_SINGLE_TOOLTIP_POW10": "Return 10 to the power of a number.",
+ "MATH_TRIG_HELPURL": "https://en.wikipedia.org/wiki/Trigonometric_functions",
+ "MATH_TRIG_TOOLTIP_SIN": "Return the sine of a degree (not radian).",
+ "MATH_TRIG_TOOLTIP_COS": "Return the cosine of a degree (not radian).",
+ "MATH_TRIG_TOOLTIP_TAN": "Return the tangent of a degree (not radian).",
+ "MATH_TRIG_TOOLTIP_ASIN": "Return the arcsine of a number.",
+ "MATH_TRIG_TOOLTIP_ACOS": "Return the arccosine of a number.",
+ "MATH_TRIG_TOOLTIP_ATAN": "Return the arctangent of a number.",
+ "MATH_CONSTANT_HELPURL": "https://en.wikipedia.org/wiki/Mathematical_constant",
+ "MATH_CONSTANT_TOOLTIP": "Return one of the common constants: π (3.141…), e (2.718…), φ (1.618…), sqrt(2) (1.414…), sqrt(½) (0.707…), or ∞ (infinity).",
+ "MATH_IS_EVEN": "is even",
+ "MATH_IS_ODD": "is odd",
+ "MATH_IS_PRIME": "is prime",
+ "MATH_IS_WHOLE": "is whole",
+ "MATH_IS_POSITIVE": "is positive",
+ "MATH_IS_NEGATIVE": "is negative",
+ "MATH_IS_DIVISIBLE_BY": "is divisible by",
+ "MATH_IS_TOOLTIP": "Check if a number is an even, odd, prime, whole, positive, negative, or if it is divisible by certain number. Returns true or false.",
+ "MATH_CHANGE_HELPURL": "https://en.wikipedia.org/wiki/Programming_idiom#Incrementing_a_counter",
+ "MATH_CHANGE_TITLE": "change %1 by %2",
+ "MATH_CHANGE_TOOLTIP": "Add a number to variable '%1'.",
+ "MATH_ROUND_HELPURL": "https://en.wikipedia.org/wiki/Rounding",
+ "MATH_ROUND_TOOLTIP": "Round a number up or down.",
+ "MATH_ROUND_OPERATOR_ROUND": "round",
+ "MATH_ROUND_OPERATOR_ROUNDUP": "round up",
+ "MATH_ROUND_OPERATOR_ROUNDDOWN": "round down",
+ "MATH_ONLIST_HELPURL": "",
+ "MATH_ONLIST_OPERATOR_SUM": "sum of list",
+ "MATH_ONLIST_TOOLTIP_SUM": "Return the sum of all the numbers in the list.",
+ "MATH_ONLIST_OPERATOR_MIN": "min of list",
+ "MATH_ONLIST_TOOLTIP_MIN": "Return the smallest number in the list.",
+ "MATH_ONLIST_OPERATOR_MAX": "max of list",
+ "MATH_ONLIST_TOOLTIP_MAX": "Return the largest number in the list.",
+ "MATH_ONLIST_OPERATOR_AVERAGE": "average of list",
+ "MATH_ONLIST_TOOLTIP_AVERAGE": "Return the average (arithmetic mean) of the numeric values in the list.",
+ "MATH_ONLIST_OPERATOR_MEDIAN": "median of list",
+ "MATH_ONLIST_TOOLTIP_MEDIAN": "Return the median number in the list.",
+ "MATH_ONLIST_OPERATOR_MODE": "modes of list",
+ "MATH_ONLIST_TOOLTIP_MODE": "Return a list of the most common item(s) in the list.",
+ "MATH_ONLIST_OPERATOR_STD_DEV": "standard deviation of list",
+ "MATH_ONLIST_TOOLTIP_STD_DEV": "Return the standard deviation of the list.",
+ "MATH_ONLIST_OPERATOR_RANDOM": "random item of list",
+ "MATH_ONLIST_TOOLTIP_RANDOM": "Return a random element from the list.",
+ "MATH_MODULO_HELPURL": "https://en.wikipedia.org/wiki/Modulo_operation",
+ "MATH_MODULO_TITLE": "remainder of %1 ÷ %2",
+ "MATH_MODULO_TOOLTIP": "Return the remainder from dividing the two numbers.",
+ "MATH_CONSTRAIN_HELPURL": "https://en.wikipedia.org/wiki/Clamping_%28graphics%29",
+ "MATH_CONSTRAIN_TITLE": "constrain %1 low %2 high %3",
+ "MATH_CONSTRAIN_TOOLTIP": "Constrain a number to be between the specified limits (inclusive).",
+ "MATH_RANDOM_INT_HELPURL": "https://en.wikipedia.org/wiki/Random_number_generation",
+ "MATH_RANDOM_INT_TITLE": "random integer from %1 to %2",
+ "MATH_RANDOM_INT_TOOLTIP": "Return a random integer between the two specified limits, inclusive.",
+ "MATH_RANDOM_FLOAT_HELPURL": "https://en.wikipedia.org/wiki/Random_number_generation",
+ "MATH_RANDOM_FLOAT_TITLE_RANDOM": "random fraction",
+ "MATH_RANDOM_FLOAT_TOOLTIP": "Return a random fraction between 0.0 (inclusive) and 1.0 (exclusive).",
+ "TEXT_TEXT_HELPURL": "https://en.wikipedia.org/wiki/String_(computer_science)",
+ "TEXT_TEXT_TOOLTIP": "A letter, word, or line of text.",
+ "TEXT_JOIN_HELPURL": "https://github.com/google/blockly/wiki/Text#text-creation",
+ "TEXT_JOIN_TITLE_CREATEWITH": "create text with",
+ "TEXT_JOIN_TOOLTIP": "Create a piece of text by joining together any number of items.",
+ "TEXT_CREATE_JOIN_TITLE_JOIN": "join",
+ "TEXT_CREATE_JOIN_TOOLTIP": "Add, remove, or reorder sections to reconfigure this text block.",
+ "TEXT_CREATE_JOIN_ITEM_TOOLTIP": "Add an item to the text.",
+ "TEXT_APPEND_HELPURL": "https://github.com/google/blockly/wiki/Text#text-modification",
+ "TEXT_APPEND_TO": "to",
+ "TEXT_APPEND_APPENDTEXT": "append text",
+ "TEXT_APPEND_TOOLTIP": "Append some text to variable '%1'.",
+ "TEXT_LENGTH_HELPURL": "https://github.com/google/blockly/wiki/Text#text-modification",
+ "TEXT_LENGTH_TITLE": "length of %1",
+ "TEXT_LENGTH_TOOLTIP": "Returns the number of letters (including spaces) in the provided text.",
+ "TEXT_ISEMPTY_HELPURL": "https://github.com/google/blockly/wiki/Text#checking-for-empty-text",
+ "TEXT_ISEMPTY_TITLE": "%1 is empty",
+ "TEXT_ISEMPTY_TOOLTIP": "Returns true if the provided text is empty.",
+ "TEXT_INDEXOF_HELPURL": "https://github.com/google/blockly/wiki/Text#finding-text",
+ "TEXT_INDEXOF_TOOLTIP": "Returns the index of the first/last occurrence of the first text in the second text. Returns %1 if text is not found.",
+ "TEXT_INDEXOF_INPUT_INTEXT": "in text",
+ "TEXT_INDEXOF_OPERATOR_FIRST": "find first occurrence of text",
+ "TEXT_INDEXOF_OPERATOR_LAST": "find last occurrence of text",
+ "TEXT_INDEXOF_TAIL": "",
+ "TEXT_CHARAT_HELPURL": "https://github.com/google/blockly/wiki/Text#extracting-text",
+ "TEXT_CHARAT_INPUT_INTEXT": "in text",
+ "TEXT_CHARAT_FROM_START": "get letter #",
+ "TEXT_CHARAT_FROM_END": "get letter # from end",
+ "TEXT_CHARAT_FIRST": "get first letter",
+ "TEXT_CHARAT_LAST": "get last letter",
+ "TEXT_CHARAT_RANDOM": "get random letter",
+ "TEXT_CHARAT_TAIL": "",
+ "TEXT_CHARAT_TOOLTIP": "Returns the letter at the specified position.",
+ "TEXT_GET_SUBSTRING_TOOLTIP": "Returns a specified portion of the text.",
+ "TEXT_GET_SUBSTRING_HELPURL": "https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text",
+ "TEXT_GET_SUBSTRING_INPUT_IN_TEXT": "in text",
+ "TEXT_GET_SUBSTRING_START_FROM_START": "get substring from letter #",
+ "TEXT_GET_SUBSTRING_START_FROM_END": "get substring from letter # from end",
+ "TEXT_GET_SUBSTRING_START_FIRST": "get substring from first letter",
+ "TEXT_GET_SUBSTRING_END_FROM_START": "to letter #",
+ "TEXT_GET_SUBSTRING_END_FROM_END": "to letter # from end",
+ "TEXT_GET_SUBSTRING_END_LAST": "to last letter",
+ "TEXT_GET_SUBSTRING_TAIL": "",
+ "TEXT_CHANGECASE_HELPURL": "https://github.com/google/blockly/wiki/Text#adjusting-text-case",
+ "TEXT_CHANGECASE_TOOLTIP": "Return a copy of the text in a different case.",
+ "TEXT_CHANGECASE_OPERATOR_UPPERCASE": "to UPPER CASE",
+ "TEXT_CHANGECASE_OPERATOR_LOWERCASE": "to lower case",
+ "TEXT_CHANGECASE_OPERATOR_TITLECASE": "to Title Case",
+ "TEXT_TRIM_HELPURL": "https://github.com/google/blockly/wiki/Text#trimming-removing-spaces",
+ "TEXT_TRIM_TOOLTIP": "Return a copy of the text with spaces removed from one or both ends.",
+ "TEXT_TRIM_OPERATOR_BOTH": "trim spaces from both sides of",
+ "TEXT_TRIM_OPERATOR_LEFT": "trim spaces from left side of",
+ "TEXT_TRIM_OPERATOR_RIGHT": "trim spaces from right side of",
+ "TEXT_PRINT_HELPURL": "https://github.com/google/blockly/wiki/Text#printing-text",
+ "TEXT_PRINT_TITLE": "print %1",
+ "TEXT_PRINT_TOOLTIP": "Print the specified text, number or other value.",
+ "TEXT_PROMPT_HELPURL": "https://github.com/google/blockly/wiki/Text#getting-input-from-the-user",
+ "TEXT_PROMPT_TYPE_TEXT": "prompt for text with message",
+ "TEXT_PROMPT_TYPE_NUMBER": "prompt for number with message",
+ "TEXT_PROMPT_TOOLTIP_NUMBER": "Prompt for user for a number.",
+ "TEXT_PROMPT_TOOLTIP_TEXT": "Prompt for user for some text.",
+ "LISTS_CREATE_EMPTY_HELPURL": "https://github.com/google/blockly/wiki/Lists#create-empty-list",
+ "LISTS_CREATE_EMPTY_TITLE": "create empty list",
+ "LISTS_CREATE_EMPTY_TOOLTIP": "Returns a list, of length 0, containing no data records",
+ "LISTS_CREATE_WITH_HELPURL": "https://github.com/google/blockly/wiki/Lists#create-list-with",
+ "LISTS_CREATE_WITH_TOOLTIP": "Create a list with any number of items.",
+ "LISTS_CREATE_WITH_INPUT_WITH": "create list with",
+ "LISTS_CREATE_WITH_CONTAINER_TITLE_ADD": "list",
+ "LISTS_CREATE_WITH_CONTAINER_TOOLTIP": "Add, remove, or reorder sections to reconfigure this list block.",
+ "LISTS_CREATE_WITH_ITEM_TOOLTIP": "Add an item to the list.",
+ "LISTS_REPEAT_HELPURL": "https://github.com/google/blockly/wiki/Lists#create-list-with",
+ "LISTS_REPEAT_TOOLTIP": "Creates a list consisting of the given value repeated the specified number of times.",
+ "LISTS_REPEAT_TITLE": "create list with item %1 repeated %2 times",
+ "LISTS_LENGTH_HELPURL": "https://github.com/google/blockly/wiki/Lists#length-of",
+ "LISTS_LENGTH_TITLE": "length of %1",
+ "LISTS_LENGTH_TOOLTIP": "Returns the length of a list.",
+ "LISTS_ISEMPTY_HELPURL": "https://github.com/google/blockly/wiki/Lists#is-empty",
+ "LISTS_ISEMPTY_TITLE": "%1 is empty",
+ "LISTS_ISEMPTY_TOOLTIP": "Returns true if the list is empty.",
+ "LISTS_INLIST": "in list",
+ "LISTS_INDEX_OF_HELPURL": "https://github.com/google/blockly/wiki/Lists#getting-items-from-a-list",
+ "LISTS_INDEX_OF_FIRST": "find first occurrence of item",
+ "LISTS_INDEX_OF_LAST": "find last occurrence of item",
+ "LISTS_INDEX_OF_TOOLTIP": "Returns the index of the first/last occurrence of the item in the list. Returns %1 if item is not found.",
+ "LISTS_GET_INDEX_GET": "get",
+ "LISTS_GET_INDEX_GET_REMOVE": "get and remove",
+ "LISTS_GET_INDEX_REMOVE": "remove",
+ "LISTS_GET_INDEX_FROM_START": "#",
+ "LISTS_GET_INDEX_FROM_END": "# from end",
+ "LISTS_GET_INDEX_FIRST": "first",
+ "LISTS_GET_INDEX_LAST": "last",
+ "LISTS_GET_INDEX_RANDOM": "random",
+ "LISTS_GET_INDEX_TAIL": "",
+ "LISTS_INDEX_FROM_START_TOOLTIP": "%1 is the first item.",
+ "LISTS_INDEX_FROM_END_TOOLTIP": "%1 is the last item.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_FROM": "Returns the item at the specified position in a list.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_FIRST": "Returns the first item in a list.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_LAST": "Returns the last item in a list.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_RANDOM": "Returns a random item in a list.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM": "Removes and returns the item at the specified position in a list.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST": "Removes and returns the first item in a list.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST": "Removes and returns the last item in a list.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM": "Removes and returns a random item in a list.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM": "Removes the item at the specified position in a list.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST": "Removes the first item in a list.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST": "Removes the last item in a list.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM": "Removes a random item in a list.",
+ "LISTS_SET_INDEX_HELPURL": "https://github.com/google/blockly/wiki/Lists#in-list--set",
+ "LISTS_SET_INDEX_SET": "set",
+ "LISTS_SET_INDEX_INSERT": "insert at",
+ "LISTS_SET_INDEX_INPUT_TO": "as",
+ "LISTS_SET_INDEX_TOOLTIP_SET_FROM": "Sets the item at the specified position in a list.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_FIRST": "Sets the first item in a list.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_LAST": "Sets the last item in a list.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_RANDOM": "Sets a random item in a list.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_FROM": "Inserts the item at the specified position in a list.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST": "Inserts the item at the start of a list.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_LAST": "Append the item to the end of a list.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM": "Inserts the item randomly in a list.",
+ "LISTS_GET_SUBLIST_HELPURL": "https://github.com/google/blockly/wiki/Lists#getting-a-sublist",
+ "LISTS_GET_SUBLIST_START_FROM_START": "get sub-list from #",
+ "LISTS_GET_SUBLIST_START_FROM_END": "get sub-list from # from end",
+ "LISTS_GET_SUBLIST_START_FIRST": "get sub-list from first",
+ "LISTS_GET_SUBLIST_END_FROM_START": "to #",
+ "LISTS_GET_SUBLIST_END_FROM_END": "to # from end",
+ "LISTS_GET_SUBLIST_END_LAST": "to last",
+ "LISTS_GET_SUBLIST_TAIL": "",
+ "LISTS_GET_SUBLIST_TOOLTIP": "Creates a copy of the specified portion of a list.",
+ "LISTS_SORT_HELPURL": "https://github.com/google/blockly/wiki/Lists#sorting-a-list",
+ "LISTS_SORT_TITLE": "sort %1 %2 %3",
+ "LISTS_SORT_TOOLTIP": "Sort a copy of a list.",
+ "LISTS_SORT_ORDER_ASCENDING": "ascending",
+ "LISTS_SORT_ORDER_DESCENDING": "descending",
+ "LISTS_SORT_TYPE_NUMERIC": "numeric",
+ "LISTS_SORT_TYPE_TEXT": "alphabetic",
+ "LISTS_SORT_TYPE_IGNORECASE": "alphabetic, ignore case",
+ "LISTS_SPLIT_HELPURL": "https://github.com/google/blockly/wiki/Lists#splitting-strings-and-joining-lists",
+ "LISTS_SPLIT_LIST_FROM_TEXT": "make list from text",
+ "LISTS_SPLIT_TEXT_FROM_LIST": "make text from list",
+ "LISTS_SPLIT_WITH_DELIMITER": "with delimiter",
+ "LISTS_SPLIT_TOOLTIP_SPLIT": "Split text into a list of texts, breaking at each delimiter.",
+ "LISTS_SPLIT_TOOLTIP_JOIN": "Join a list of texts into one text, separated by a delimiter.",
+ "ORDINAL_NUMBER_SUFFIX": "",
+ "VARIABLES_GET_HELPURL": "https://github.com/google/blockly/wiki/Variables#get",
+ "VARIABLES_GET_TOOLTIP": "Returns the value of this variable.",
+ "VARIABLES_GET_CREATE_SET": "Create 'set %1'",
+ "VARIABLES_SET_HELPURL": "https://github.com/google/blockly/wiki/Variables#set",
+ "VARIABLES_SET": "set %1 to %2",
+ "VARIABLES_SET_TOOLTIP": "Sets this variable to be equal to the input.",
+ "VARIABLES_SET_CREATE_GET": "Create 'get %1'",
+ "PROCEDURES_DEFNORETURN_HELPURL": "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29",
+ "PROCEDURES_DEFNORETURN_TITLE": "to",
+ "PROCEDURES_DEFNORETURN_PROCEDURE": "do something",
+ "PROCEDURES_BEFORE_PARAMS": "with:",
+ "PROCEDURES_CALL_BEFORE_PARAMS": "with:",
+ "PROCEDURES_DEFNORETURN_DO": "",
+ "PROCEDURES_DEFNORETURN_TOOLTIP": "Creates a function with no output.",
+ "PROCEDURES_DEFNORETURN_COMMENT": "Describe this function...",
+ "PROCEDURES_DEFRETURN_HELPURL": "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29",
+ "PROCEDURES_DEFRETURN_RETURN": "return",
+ "PROCEDURES_DEFRETURN_TOOLTIP": "Creates a function with an output.",
+ "PROCEDURES_ALLOW_STATEMENTS": "allow statements",
+ "PROCEDURES_DEF_DUPLICATE_WARNING": "Warning: This function has duplicate parameters.",
+ "PROCEDURES_CALLNORETURN_HELPURL": "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29",
+ "PROCEDURES_CALLNORETURN_TOOLTIP": "Run the user-defined function '%1'.",
+ "PROCEDURES_CALLRETURN_HELPURL": "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29",
+ "PROCEDURES_CALLRETURN_TOOLTIP": "Run the user-defined function '%1' and use its output.",
+ "PROCEDURES_MUTATORCONTAINER_TITLE": "inputs",
+ "PROCEDURES_MUTATORCONTAINER_TOOLTIP": "Add, remove, or reorder inputs to this function.",
+ "PROCEDURES_MUTATORARG_TITLE": "input name:",
+ "PROCEDURES_MUTATORARG_TOOLTIP": "Add an input to the function.",
+ "PROCEDURES_HIGHLIGHT_DEF": "Highlight function definition",
+ "PROCEDURES_CREATE_DO": "Create '%1'",
+ "PROCEDURES_IFRETURN_TOOLTIP": "If a value is true, then return a second value.",
+ "PROCEDURES_IFRETURN_HELPURL": "http://c2.com/cgi/wiki?GuardClause",
+ "PROCEDURES_IFRETURN_WARNING": "Warning: This block may be used only within a function definition."
+}
diff --git a/blockly/msg/json/es.json b/blockly/msg/json/es.json
new file mode 100644
index 0000000..d5879b6
--- /dev/null
+++ b/blockly/msg/json/es.json
@@ -0,0 +1,321 @@
+{
+ "@metadata": {
+ "authors": [
+ "Fitoschido",
+ "VegaDark",
+ "WeSiToS",
+ "Macofe",
+ "Codynguyen1116",
+ "Indiralena",
+ "Rubentl134",
+ "Martineduardo"
+ ]
+ },
+ "VARIABLES_DEFAULT_NAME": "elemento",
+ "TODAY": "Hoy",
+ "DUPLICATE_BLOCK": "Duplicar",
+ "ADD_COMMENT": "Añadir comentario",
+ "REMOVE_COMMENT": "Eliminar comentario",
+ "EXTERNAL_INPUTS": "Entradas externas",
+ "INLINE_INPUTS": "Entradas en línea",
+ "DELETE_BLOCK": "Eliminar bloque",
+ "DELETE_X_BLOCKS": "Eliminar %1 bloques",
+ "DELETE_ALL_BLOCKS": "¿Eliminar todos los %1 bloques?",
+ "CLEAN_UP": "Limpiar los bloques",
+ "COLLAPSE_BLOCK": "Contraer bloque",
+ "COLLAPSE_ALL": "Contraer bloques",
+ "EXPAND_BLOCK": "Expandir bloque",
+ "EXPAND_ALL": "Expandir bloques",
+ "DISABLE_BLOCK": "Desactivar bloque",
+ "ENABLE_BLOCK": "Activar bloque",
+ "HELP": "Ayuda",
+ "UNDO": "Deshacer",
+ "REDO": "Rehacer",
+ "CHANGE_VALUE_TITLE": "Cambiar el valor:",
+ "RENAME_VARIABLE": "Renombrar la variable…",
+ "RENAME_VARIABLE_TITLE": "Renombrar todas las variables «%1» a:",
+ "NEW_VARIABLE": "Crear variable…",
+ "NEW_VARIABLE_TITLE": "Nombre de variable nueva:",
+ "VARIABLE_ALREADY_EXISTS": "Ya existe una variable llamada \"%1\".",
+ "DELETE_VARIABLE_CONFIRMATION": "¿Borrar %1 usos de la variable \"%2\"?",
+ "DELETE_VARIABLE": "Borrar la variable \"%1\"",
+ "COLOUR_PICKER_HELPURL": "https://es.wikipedia.org/wiki/Color",
+ "COLOUR_PICKER_TOOLTIP": "Elige un color de la paleta.",
+ "COLOUR_RANDOM_TITLE": "color aleatorio",
+ "COLOUR_RANDOM_TOOLTIP": "Elige un color al azar.",
+ "COLOUR_RGB_TITLE": "colorear con",
+ "COLOUR_RGB_RED": "rojo",
+ "COLOUR_RGB_GREEN": "verde",
+ "COLOUR_RGB_BLUE": "azul",
+ "COLOUR_RGB_TOOLTIP": "Crea un color con cantidades específicas de rojo, verde y azul. Todos los valores deben encontrarse entre 0 y 100.",
+ "COLOUR_BLEND_TITLE": "combinar",
+ "COLOUR_BLEND_COLOUR1": "color 1",
+ "COLOUR_BLEND_COLOUR2": "color 2",
+ "COLOUR_BLEND_RATIO": "proporción",
+ "COLOUR_BLEND_TOOLTIP": "Combina dos colores con una proporción determinada (0,0–1,0).",
+ "CONTROLS_REPEAT_HELPURL": "https://es.wikipedia.org/wiki/Bucle_for",
+ "CONTROLS_REPEAT_TITLE": "repetir %1 veces",
+ "CONTROLS_REPEAT_INPUT_DO": "hacer",
+ "CONTROLS_REPEAT_TOOLTIP": "Hacer algunas declaraciones varias veces.",
+ "CONTROLS_WHILEUNTIL_OPERATOR_WHILE": "repetir mientras",
+ "CONTROLS_WHILEUNTIL_OPERATOR_UNTIL": "repetir hasta",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_WHILE": "Mientras un valor sea verdadero, entonces hacer algunas declaraciones.",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL": "Mientras un valor sea falso, entonces hacer algunas declaraciones.",
+ "CONTROLS_FOR_TOOLTIP": "Hacer que la variable \"%1\" tome los valores desde el número de inicio hasta el número final, contando con el intervalo especificado, y hacer los bloques especificados.",
+ "CONTROLS_FOR_TITLE": "contar con %1 desde %2 hasta %3 de a %4",
+ "CONTROLS_FOREACH_HELPURL": "https://es.wikipedia.org/wiki/Foreach",
+ "CONTROLS_FOREACH_TITLE": "para cada elemento %1 en la lista %2",
+ "CONTROLS_FOREACH_TOOLTIP": "Para cada elemento en una lista, establecer la variable '%1' al elemento y luego hacer algunas declaraciones.",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK": "romper el bucle",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE": "continuar con la siguiente iteración del bucle",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK": "Romper el bucle que lo contiene.",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE": "Saltar el resto de este bucle, y continuar con la siguiente iteración.",
+ "CONTROLS_FLOW_STATEMENTS_WARNING": "ADVERTENCIA: Este bloque puede usarse sólo dentro de un bucle.",
+ "CONTROLS_IF_TOOLTIP_1": "Si un valor es verdadero, entonces hacer algunas declaraciones.",
+ "CONTROLS_IF_TOOLTIP_2": "Si un valor es verdadero, entonces hacer el primer bloque de declaraciones. De lo contrario, hacer el segundo bloque de declaraciones.",
+ "CONTROLS_IF_TOOLTIP_3": "Si el primer valor es verdadero, entonces hacer el primer bloque de declaraciones. De lo contrario, si el segundo valor es verdadero, hacer el segundo bloque de declaraciones.",
+ "CONTROLS_IF_TOOLTIP_4": "Si el primer valor es verdadero, entonces hacer el primer bloque de declaraciones. De lo contrario, si el segundo valor es verdadero, hacer el segundo bloque de declaraciones. Si ninguno de los valores son verdaderos, hacer el último bloque de declaraciones.",
+ "CONTROLS_IF_MSG_IF": "si",
+ "CONTROLS_IF_MSG_ELSEIF": "sino si",
+ "CONTROLS_IF_MSG_ELSE": "sino",
+ "CONTROLS_IF_IF_TOOLTIP": "Agregar, eliminar o reordenar las secciones para reconfigurar este bloque.",
+ "CONTROLS_IF_ELSEIF_TOOLTIP": "Agregar una condición a este bloque.",
+ "CONTROLS_IF_ELSE_TOOLTIP": "Agregar una condición general final a este bloque.",
+ "LOGIC_COMPARE_HELPURL": "https://es.wikipedia.org/wiki/Desigualdad_matemática",
+ "LOGIC_COMPARE_TOOLTIP_EQ": "Devuelve verdadero si ambas entradas son iguales.",
+ "LOGIC_COMPARE_TOOLTIP_NEQ": "Devuelve verdadero si ambas entradas son distintas.",
+ "LOGIC_COMPARE_TOOLTIP_LT": "Devuelve verdadero si la primera entrada es menor que la segunda entrada.",
+ "LOGIC_COMPARE_TOOLTIP_LTE": "Devuelve verdadero si la primera entrada es menor que o igual a la segunda entrada.",
+ "LOGIC_COMPARE_TOOLTIP_GT": "Devuelve verdadero si la primera entrada es mayor que la segunda entrada.",
+ "LOGIC_COMPARE_TOOLTIP_GTE": "Devuelve verdadero si la primera entrada es mayor o igual a la segunda entrada.",
+ "LOGIC_OPERATION_TOOLTIP_AND": "Devuelve verdadero si ambas entradas son verdaderas.",
+ "LOGIC_OPERATION_AND": "y",
+ "LOGIC_OPERATION_TOOLTIP_OR": "Devuelve verdadero si al menos una de las entradas es verdadera.",
+ "LOGIC_OPERATION_OR": "o",
+ "LOGIC_NEGATE_TITLE": "no %1",
+ "LOGIC_NEGATE_TOOLTIP": "Devuelve verdadero si la entrada es falsa. Devuelve falso si la entrada es verdadera.",
+ "LOGIC_BOOLEAN_TRUE": "verdadero",
+ "LOGIC_BOOLEAN_FALSE": "falso",
+ "LOGIC_BOOLEAN_TOOLTIP": "Devuelve verdadero o falso.",
+ "LOGIC_NULL": "nulo",
+ "LOGIC_NULL_TOOLTIP": "Devuelve nulo.",
+ "LOGIC_TERNARY_CONDITION": "prueba",
+ "LOGIC_TERNARY_IF_TRUE": "si es verdadero",
+ "LOGIC_TERNARY_IF_FALSE": "si es falso",
+ "LOGIC_TERNARY_TOOLTIP": "Comprueba la condición en \"prueba\". Si la condición es verdadera, devuelve el valor \"si es verdadero\"; de lo contrario, devuelve el valor \"si es falso\".",
+ "MATH_NUMBER_HELPURL": "https://es.wikipedia.org/wiki/Número",
+ "MATH_NUMBER_TOOLTIP": "Un número.",
+ "MATH_ARITHMETIC_HELPURL": "https://es.wikipedia.org/wiki/Aritmética",
+ "MATH_ARITHMETIC_TOOLTIP_ADD": "Devuelve la suma de ambos números.",
+ "MATH_ARITHMETIC_TOOLTIP_MINUS": "Devuelve la diferencia de ambos números.",
+ "MATH_ARITHMETIC_TOOLTIP_MULTIPLY": "Devuelve el producto de ambos números.",
+ "MATH_ARITHMETIC_TOOLTIP_DIVIDE": "Devuelve el cociente de ambos números.",
+ "MATH_ARITHMETIC_TOOLTIP_POWER": "Devuelve el primer número elevado a la potencia del segundo.",
+ "MATH_SINGLE_HELPURL": "https://es.wikipedia.org/wiki/Ra%C3%ADz_cuadrada",
+ "MATH_SINGLE_OP_ROOT": "raíz cuadrada",
+ "MATH_SINGLE_TOOLTIP_ROOT": "Devuelve la raíz cuadrada de un número.",
+ "MATH_SINGLE_OP_ABSOLUTE": "absoluto",
+ "MATH_SINGLE_TOOLTIP_ABS": "Devuelve el valor absoluto de un número.",
+ "MATH_SINGLE_TOOLTIP_NEG": "Devuelve la negación de un número.",
+ "MATH_SINGLE_TOOLTIP_LN": "Devuelve el logaritmo natural de un número.",
+ "MATH_SINGLE_TOOLTIP_LOG10": "Devuelve el logaritmo base 10 de un número.",
+ "MATH_SINGLE_TOOLTIP_EXP": "Devuelve e a la potencia de un número.",
+ "MATH_SINGLE_TOOLTIP_POW10": "Devuelve 10 a la potencia de un número.",
+ "MATH_TRIG_HELPURL": "https://es.wikipedia.org/wiki/Función_trigonométrica",
+ "MATH_TRIG_TOOLTIP_SIN": "Devuelve el seno de un grado (no radián).",
+ "MATH_TRIG_TOOLTIP_COS": "Devuelve el coseno de un grado (no radián).",
+ "MATH_TRIG_TOOLTIP_TAN": "Devuelve la tangente de un grado (no radián).",
+ "MATH_TRIG_TOOLTIP_ASIN": "Devuelve el arcoseno de un número.",
+ "MATH_TRIG_TOOLTIP_ACOS": "Devuelve el arcocoseno de un número.",
+ "MATH_TRIG_TOOLTIP_ATAN": "Devuelve el arcotangente de un número.",
+ "MATH_CONSTANT_HELPURL": "https://es.wikipedia.org/wiki/Anexo:Constantes_matemáticas",
+ "MATH_CONSTANT_TOOLTIP": "Devuelve una de las constantes comunes: π (3.141…), e (2.718…), φ (1.618…), sqrt(2) (1.414…), sqrt(½) (0.707…) o ∞ (infinito).",
+ "MATH_IS_EVEN": "es par",
+ "MATH_IS_ODD": "es impar",
+ "MATH_IS_PRIME": "es primo",
+ "MATH_IS_WHOLE": "es entero",
+ "MATH_IS_POSITIVE": "es positivo",
+ "MATH_IS_NEGATIVE": "es negativo",
+ "MATH_IS_DIVISIBLE_BY": "es divisible por",
+ "MATH_IS_TOOLTIP": "Comprueba si un número es par, impar, primo, entero, positivo, negativo, o si es divisible por un número determinado. Devuelve verdadero o falso.",
+ "MATH_CHANGE_HELPURL": "https://en.wikipedia.org/wiki/Programming_idiom#Incrementing_a_counter",
+ "MATH_CHANGE_TITLE": "añadir %2 a %1",
+ "MATH_CHANGE_TOOLTIP": "Añadir un número a la variable «%1».",
+ "MATH_ROUND_HELPURL": "https://es.wikipedia.org/wiki/Redondeo",
+ "MATH_ROUND_TOOLTIP": "Redondear un número hacia arriba o hacia abajo.",
+ "MATH_ROUND_OPERATOR_ROUND": "redondear",
+ "MATH_ROUND_OPERATOR_ROUNDUP": "redondear hacia arriba",
+ "MATH_ROUND_OPERATOR_ROUNDDOWN": "redondear hacia abajo",
+ "MATH_ONLIST_OPERATOR_SUM": "suma de la lista",
+ "MATH_ONLIST_TOOLTIP_SUM": "Devuelve la suma de todos los números en la lista.",
+ "MATH_ONLIST_OPERATOR_MIN": "mínimo de la lista",
+ "MATH_ONLIST_TOOLTIP_MIN": "Devuelve el número más pequeño en la lista.",
+ "MATH_ONLIST_OPERATOR_MAX": "máximo de la lista",
+ "MATH_ONLIST_TOOLTIP_MAX": "Devuelve el número más grande en la lista.",
+ "MATH_ONLIST_OPERATOR_AVERAGE": "promedio de la lista",
+ "MATH_ONLIST_TOOLTIP_AVERAGE": "Devuelve el promedio (media aritmética) de los valores numéricos en la lista.",
+ "MATH_ONLIST_OPERATOR_MEDIAN": "mediana de la lista",
+ "MATH_ONLIST_TOOLTIP_MEDIAN": "Devuelve la mediana en la lista.",
+ "MATH_ONLIST_OPERATOR_MODE": "modas de la lista",
+ "MATH_ONLIST_TOOLTIP_MODE": "Devuelve una lista de los elementos más comunes en la lista.",
+ "MATH_ONLIST_OPERATOR_STD_DEV": "desviación estándar de la lista",
+ "MATH_ONLIST_TOOLTIP_STD_DEV": "Devuelve la desviación estándar de la lista.",
+ "MATH_ONLIST_OPERATOR_RANDOM": "elemento aleatorio de la lista",
+ "MATH_ONLIST_TOOLTIP_RANDOM": "Devuelve un elemento aleatorio de la lista.",
+ "MATH_MODULO_HELPURL": "https://en.wikipedia.org/wiki/Modulo_operation",
+ "MATH_MODULO_TITLE": "resto de %1 ÷ %2",
+ "MATH_MODULO_TOOLTIP": "Devuelve el resto al dividir los dos números.",
+ "MATH_CONSTRAIN_TITLE": "limitar %1 entre %2 y %3",
+ "MATH_CONSTRAIN_TOOLTIP": "Limitar un número entre los límites especificados (inclusive).",
+ "MATH_RANDOM_INT_HELPURL": "https://es.wikipedia.org/wiki/Generador_de_números_aleatorios",
+ "MATH_RANDOM_INT_TITLE": "entero aleatorio de %1 a %2",
+ "MATH_RANDOM_INT_TOOLTIP": "Devuelve un entero aleatorio entre los dos límites especificados, inclusive.",
+ "MATH_RANDOM_FLOAT_HELPURL": "https://es.wikipedia.org/wiki/Generador_de_números_aleatorios",
+ "MATH_RANDOM_FLOAT_TITLE_RANDOM": "fracción aleatoria",
+ "MATH_RANDOM_FLOAT_TOOLTIP": "Devuelve una fracción aleatoria entre 0,0 (ambos inclusive) y 1.0 (exclusivo).",
+ "TEXT_TEXT_HELPURL": "https://es.wikipedia.org/wiki/Cadena_de_caracteres",
+ "TEXT_TEXT_TOOLTIP": "Una letra, palabra o línea de texto.",
+ "TEXT_JOIN_TITLE_CREATEWITH": "crear texto con",
+ "TEXT_JOIN_TOOLTIP": "Crear un fragmento de texto al unir cualquier número de elementos.",
+ "TEXT_CREATE_JOIN_TITLE_JOIN": "unir",
+ "TEXT_CREATE_JOIN_TOOLTIP": "Agregar, eliminar o reordenar las secciones para reconfigurar este bloque de texto.",
+ "TEXT_CREATE_JOIN_ITEM_TOOLTIP": "Agregar un elemento al texto.",
+ "TEXT_APPEND_TO": "a",
+ "TEXT_APPEND_APPENDTEXT": "añadir texto",
+ "TEXT_APPEND_TOOLTIP": "Añadir texto a la variable '%1'.",
+ "TEXT_LENGTH_TITLE": "longitud de %1",
+ "TEXT_LENGTH_TOOLTIP": "Devuelve el número de letras (incluyendo espacios) en el texto proporcionado.",
+ "TEXT_ISEMPTY_TITLE": "%1 está vacío",
+ "TEXT_ISEMPTY_TOOLTIP": "Devuelve verdadero si el texto proporcionado está vacío.",
+ "TEXT_INDEXOF_TOOLTIP": "Devuelve el índice de la primera/última aparición del primer texto en el segundo texto. Devuelve %1 si el texto no se encuentra.",
+ "TEXT_INDEXOF_INPUT_INTEXT": "en el texto",
+ "TEXT_INDEXOF_OPERATOR_FIRST": "encontrar la primera aparición del texto",
+ "TEXT_INDEXOF_OPERATOR_LAST": "encontrar la última aparición del texto",
+ "TEXT_CHARAT_INPUT_INTEXT": "en el texto",
+ "TEXT_CHARAT_FROM_START": "obtener la letra #",
+ "TEXT_CHARAT_FROM_END": "obtener la letra # del final",
+ "TEXT_CHARAT_FIRST": "obtener la primera letra",
+ "TEXT_CHARAT_LAST": "obtener la última letra",
+ "TEXT_CHARAT_RANDOM": "obtener letra aleatoria",
+ "TEXT_CHARAT_TOOLTIP": "Devuelve la letra en la posición especificada.",
+ "TEXT_GET_SUBSTRING_TOOLTIP": "Devuelve una porción determinada del texto.",
+ "TEXT_GET_SUBSTRING_INPUT_IN_TEXT": "en el texto",
+ "TEXT_GET_SUBSTRING_START_FROM_START": "obtener subcadena desde la letra #",
+ "TEXT_GET_SUBSTRING_START_FROM_END": "obtener subcadena desde la letra # del final",
+ "TEXT_GET_SUBSTRING_START_FIRST": "obtener subcadena desde la primera letra",
+ "TEXT_GET_SUBSTRING_END_FROM_START": "hasta la letra #",
+ "TEXT_GET_SUBSTRING_END_FROM_END": "hasta la letra # del final",
+ "TEXT_GET_SUBSTRING_END_LAST": "hasta la última letra",
+ "TEXT_CHANGECASE_TOOLTIP": "Devuelve una copia del texto en un caso diferente.",
+ "TEXT_CHANGECASE_OPERATOR_UPPERCASE": "a MAYÚSCULAS",
+ "TEXT_CHANGECASE_OPERATOR_LOWERCASE": "a minúsculas",
+ "TEXT_CHANGECASE_OPERATOR_TITLECASE": "a Mayúsculas Cada Palabra",
+ "TEXT_TRIM_TOOLTIP": "Devuelve una copia del texto sin los espacios de uno o ambos extremos.",
+ "TEXT_TRIM_OPERATOR_BOTH": "quitar espacios de ambos lados de",
+ "TEXT_TRIM_OPERATOR_LEFT": "quitar espacios iniciales de",
+ "TEXT_TRIM_OPERATOR_RIGHT": "quitar espacios finales de",
+ "TEXT_PRINT_TITLE": "imprimir %1",
+ "TEXT_PRINT_TOOLTIP": "Imprimir el texto, número u otro valor especificado.",
+ "TEXT_PROMPT_TYPE_TEXT": "solicitar texto con el mensaje",
+ "TEXT_PROMPT_TYPE_NUMBER": "solicitar número con el mensaje",
+ "TEXT_PROMPT_TOOLTIP_NUMBER": "Solicitar al usuario un número.",
+ "TEXT_PROMPT_TOOLTIP_TEXT": "Solicitar al usuario un texto.",
+ "LISTS_CREATE_EMPTY_TITLE": "crear lista vacía",
+ "LISTS_CREATE_EMPTY_TOOLTIP": "Devuelve una lista, de longitud 0, sin ningún dato",
+ "LISTS_CREATE_WITH_HELPURL": "https://github.com/google/blockly/wiki/Lists#create-list-with",
+ "LISTS_CREATE_WITH_TOOLTIP": "Crear una lista con cualquier número de elementos.",
+ "LISTS_CREATE_WITH_INPUT_WITH": "crear lista con",
+ "LISTS_CREATE_WITH_CONTAINER_TITLE_ADD": "lista",
+ "LISTS_CREATE_WITH_CONTAINER_TOOLTIP": "Agregar, eliminar o reorganizar las secciones para reconfigurar este bloque de lista.",
+ "LISTS_CREATE_WITH_ITEM_TOOLTIP": "Agregar un elemento a la lista.",
+ "LISTS_REPEAT_TOOLTIP": "Crea una lista que consta de un valor dado repetido el número de veces especificado.",
+ "LISTS_REPEAT_TITLE": "crear lista con el elemento %1 repetido %2 veces",
+ "LISTS_LENGTH_TITLE": "longitud de %1",
+ "LISTS_LENGTH_TOOLTIP": "Devuelve la longitud de una lista.",
+ "LISTS_ISEMPTY_TITLE": "%1 está vacía",
+ "LISTS_ISEMPTY_TOOLTIP": "Devuelve verdadero si la lista está vacía.",
+ "LISTS_INLIST": "en la lista",
+ "LISTS_INDEX_OF_FIRST": "encontrar la primera aparición del elemento",
+ "LISTS_INDEX_OF_LAST": "encontrar la última aparición del elemento",
+ "LISTS_INDEX_OF_TOOLTIP": "Devuelve el índice de la primera/última aparición del elemento en la lista. Devuelve %1 si el elemento no se encuentra.",
+ "LISTS_GET_INDEX_GET": "obtener",
+ "LISTS_GET_INDEX_GET_REMOVE": "obtener y eliminar",
+ "LISTS_GET_INDEX_REMOVE": "eliminar",
+ "LISTS_GET_INDEX_FROM_END": "# del final",
+ "LISTS_GET_INDEX_FIRST": "primero",
+ "LISTS_GET_INDEX_LAST": "último",
+ "LISTS_GET_INDEX_RANDOM": "aleatorio",
+ "LISTS_INDEX_FROM_START_TOOLTIP": "%1 es el primer elemento.",
+ "LISTS_INDEX_FROM_END_TOOLTIP": "%1 es el último elemento.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_FROM": "Devuelve el elemento en la posición especificada en una lista.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_FIRST": "Devuelve el primer elemento de una lista.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_LAST": "Devuelve el último elemento de una lista.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_RANDOM": "Devuelve un elemento aleatorio en una lista.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM": "Elimina y devuelve el elemento en la posición especificada en una lista.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST": "Elimina y devuelve el primer elemento de una lista.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST": "Elimina y devuelve el último elemento de una lista.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM": "Elimina y devuelve un elemento aleatorio en una lista.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM": "Elimina el elemento en la posición especificada en una lista.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST": "Elimina el primer elemento de una lista.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST": "Elimina el último elemento de una lista.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM": "Elimina un elemento aleatorio en una lista.",
+ "LISTS_SET_INDEX_SET": "establecer",
+ "LISTS_SET_INDEX_INSERT": "insertar en",
+ "LISTS_SET_INDEX_INPUT_TO": "como",
+ "LISTS_SET_INDEX_TOOLTIP_SET_FROM": "Establece el elemento en la posición especificada en una lista.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_FIRST": "Establece el primer elemento de una lista.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_LAST": "Establece el último elemento de una lista.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_RANDOM": "Establece un elemento aleatorio en una lista.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_FROM": "Inserta el elemento en la posición especificada en una lista.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST": "Inserta el elemento al inicio de una lista.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_LAST": "Añade el elemento al final de una lista.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM": "Inserta el elemento aleatoriamente en una lista.",
+ "LISTS_GET_SUBLIST_START_FROM_START": "obtener sublista desde #",
+ "LISTS_GET_SUBLIST_START_FROM_END": "obtener sublista desde # del final",
+ "LISTS_GET_SUBLIST_START_FIRST": "obtener sublista desde el primero",
+ "LISTS_GET_SUBLIST_END_FROM_START": "hasta #",
+ "LISTS_GET_SUBLIST_END_FROM_END": "hasta # del final",
+ "LISTS_GET_SUBLIST_END_LAST": "hasta el último",
+ "LISTS_GET_SUBLIST_TOOLTIP": "Crea una copia de la parte especificada de una lista.",
+ "LISTS_SORT_HELPURL": "https://github.com/google/blockly/wiki/Lists#sorting-a-list",
+ "LISTS_SORT_TITLE": "orden %1 %2 %3",
+ "LISTS_SORT_TOOLTIP": "Ordenar una copia de una lista.",
+ "LISTS_SORT_ORDER_ASCENDING": "ascendente",
+ "LISTS_SORT_ORDER_DESCENDING": "descendente",
+ "LISTS_SORT_TYPE_NUMERIC": "numérico",
+ "LISTS_SORT_TYPE_TEXT": "alfabético",
+ "LISTS_SORT_TYPE_IGNORECASE": "alfabético, ignorar mayúscula/minúscula",
+ "LISTS_SPLIT_HELPURL": "https://github.com/google/blockly/wiki/Lists#splitting-strings-and-joining-lists",
+ "LISTS_SPLIT_LIST_FROM_TEXT": "hacer lista a partir de texto",
+ "LISTS_SPLIT_TEXT_FROM_LIST": "hacer texto a partir de lista",
+ "LISTS_SPLIT_WITH_DELIMITER": "con delimitador",
+ "LISTS_SPLIT_TOOLTIP_SPLIT": "Dividir el texto en una lista de textos, separando en cada delimitador.",
+ "LISTS_SPLIT_TOOLTIP_JOIN": "Unir una lista de textos en un solo texto, separado por un delimitador.",
+ "VARIABLES_GET_TOOLTIP": "Devuelve el valor de esta variable.",
+ "VARIABLES_GET_CREATE_SET": "Crear 'establecer %1'",
+ "VARIABLES_SET": "establecer %1 a %2",
+ "VARIABLES_SET_TOOLTIP": "Establece esta variable para que sea igual a la entrada.",
+ "VARIABLES_SET_CREATE_GET": "Crear 'obtener %1'",
+ "PROCEDURES_DEFNORETURN_TITLE": "para",
+ "PROCEDURES_DEFNORETURN_PROCEDURE": "hacer algo",
+ "PROCEDURES_BEFORE_PARAMS": "con:",
+ "PROCEDURES_CALL_BEFORE_PARAMS": "con:",
+ "PROCEDURES_DEFNORETURN_TOOLTIP": "Crea una función sin salida.",
+ "PROCEDURES_DEFNORETURN_COMMENT": "Describe esta función...",
+ "PROCEDURES_DEFRETURN_RETURN": "devuelve",
+ "PROCEDURES_DEFRETURN_TOOLTIP": "Crea una función con una salida.",
+ "PROCEDURES_ALLOW_STATEMENTS": "permitir declaraciones",
+ "PROCEDURES_DEF_DUPLICATE_WARNING": "Advertencia: Esta función tiene parámetros duplicados.",
+ "PROCEDURES_CALLNORETURN_HELPURL": "https://es.wikipedia.org/wiki/Subrutina",
+ "PROCEDURES_CALLNORETURN_TOOLTIP": "Ejecuta la función definida por el usuario '%1'.",
+ "PROCEDURES_CALLRETURN_HELPURL": "https://es.wikipedia.org/wiki/Subrutina",
+ "PROCEDURES_CALLRETURN_TOOLTIP": "Ejecuta la función definida por el usuario '%1' y usa su salida.",
+ "PROCEDURES_MUTATORCONTAINER_TITLE": "entradas",
+ "PROCEDURES_MUTATORCONTAINER_TOOLTIP": "Añadir, eliminar o reordenar entradas para esta función.",
+ "PROCEDURES_MUTATORARG_TITLE": "nombre de entrada:",
+ "PROCEDURES_MUTATORARG_TOOLTIP": "Añadir una entrada a la función.",
+ "PROCEDURES_HIGHLIGHT_DEF": "Destacar definición de la función",
+ "PROCEDURES_CREATE_DO": "Crear '%1'",
+ "PROCEDURES_IFRETURN_TOOLTIP": "Si un valor es verdadero, entonces devuelve un segundo valor.",
+ "PROCEDURES_IFRETURN_WARNING": "Advertencia: Este bloque solo puede ser utilizado dentro de la definición de una función."
+}
diff --git a/blockly/msg/json/et.json b/blockly/msg/json/et.json
new file mode 100644
index 0000000..95663b9
--- /dev/null
+++ b/blockly/msg/json/et.json
@@ -0,0 +1,310 @@
+{
+ "@metadata": {
+ "authors": [
+ "Aivarannamaa",
+ "Hasso"
+ ]
+ },
+ "VARIABLES_DEFAULT_NAME": "objekt",
+ "TODAY": "Täna",
+ "DUPLICATE_BLOCK": "Tekita duplikaat",
+ "ADD_COMMENT": "Lisa kommentaar",
+ "REMOVE_COMMENT": "Eemalda kommentaar",
+ "EXTERNAL_INPUTS": "Sisendid ploki taga",
+ "INLINE_INPUTS": "Sisendid ploki sees",
+ "DELETE_BLOCK": "Kustuta plokk",
+ "DELETE_X_BLOCKS": "Kustuta %1 plokki",
+ "DELETE_ALL_BLOCKS": "Kas kustutada kõik %1 plokki?",
+ "CLEAN_UP": "Korista plokid kokku",
+ "COLLAPSE_BLOCK": "Tõmba plokk kokku",
+ "COLLAPSE_ALL": "Tõmba plokid kokku",
+ "EXPAND_BLOCK": "Laota plokk laiali",
+ "EXPAND_ALL": "Laota plokid laiali",
+ "DISABLE_BLOCK": "Keela ploki kasutamine",
+ "ENABLE_BLOCK": "Luba ploki kasutamine",
+ "HELP": "Abi",
+ "UNDO": "Võta tagasi",
+ "REDO": "Tee uuesti",
+ "CHANGE_VALUE_TITLE": "Muuda väärtust:",
+ "RENAME_VARIABLE": "Nimeta muutuja ümber ...",
+ "RENAME_VARIABLE_TITLE": "Muutuja „%1“ uus nimi:",
+ "NEW_VARIABLE": "Uus muutuja ...",
+ "NEW_VARIABLE_TITLE": "Uue muutuja nimi:",
+ "COLOUR_PICKER_HELPURL": "https://en.wikipedia.org/wiki/Color",
+ "COLOUR_PICKER_TOOLTIP": "Valitud värv paletist.",
+ "COLOUR_RANDOM_TITLE": "juhuslik värv",
+ "COLOUR_RANDOM_TOOLTIP": "Juhuslikult valitud värv.",
+ "COLOUR_RGB_TITLE": "segu",
+ "COLOUR_RGB_RED": "punasest",
+ "COLOUR_RGB_GREEN": "rohelisest",
+ "COLOUR_RGB_BLUE": "sinisest",
+ "COLOUR_RGB_TOOLTIP": "Tekitab värvi määratud hulgast punasest, rohelisest ja sinisest. Kõik väärtused peavad olema 0 ja 100 vahel.",
+ "COLOUR_BLEND_TITLE": "segu",
+ "COLOUR_BLEND_COLOUR1": "1. värvist",
+ "COLOUR_BLEND_COLOUR2": "2. värvist",
+ "COLOUR_BLEND_RATIO": "suhtega",
+ "COLOUR_BLEND_TOOLTIP": "Segab kaks värvi määratud suhtega (0.0 - 1.0) kokku.",
+ "CONTROLS_REPEAT_HELPURL": "https://en.wikipedia.org/wiki/For_loop",
+ "CONTROLS_REPEAT_TITLE": "kordus %1 korda",
+ "CONTROLS_REPEAT_INPUT_DO": "käivita",
+ "CONTROLS_REPEAT_TOOLTIP": "Plokis olevate käskude käivitamine mitu korda.",
+ "CONTROLS_WHILEUNTIL_OPERATOR_WHILE": "kordus kuni on",
+ "CONTROLS_WHILEUNTIL_OPERATOR_UNTIL": "kordus kuni pole",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_WHILE": "Kuni avaldis on tõene, korda plokis olevaid käske.",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL": "Kuni avaldis pole tõene, korda plokis olevaid käske.",
+ "CONTROLS_FOR_TOOLTIP": "Annab muutujale '%1' väärtused ühest numbrist teiseni, muutes seda intervalli kaupa ja käivitab igal muudatusel ploki sees oleva koodi.",
+ "CONTROLS_FOR_TITLE": "loenda muutujaga %1 alates %2 kuni %3 %4 kaupa",
+ "CONTROLS_FOREACH_TITLE": "iga elemendiga %1 loendis %2",
+ "CONTROLS_FOREACH_TOOLTIP": "Iga elemendiga loendis anna muutujale '%1' elemendi väärtus ja kõivita plokis olevad käsud.",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK": "katkesta kordus",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE": "liigu järgmisele kordusele",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK": "Katkestab korduse ja liigub edasi korduse järel oleva koodi käivitamisele.",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE": "Katkestab korduse sees oleva koodi käivitamise ja käivitab järgmise korduse.",
+ "CONTROLS_FLOW_STATEMENTS_WARNING": "Hoiatus: Seda plokki saab kasutada ainult korduse sees.",
+ "CONTROLS_IF_TOOLTIP_1": "Kui avaldis on tõene, käivita ploki sees olevad käsud.",
+ "CONTROLS_IF_TOOLTIP_2": "Kui avaldis on tõene, käivita käsud esimesest plokist. Vastasel juhul käivita käsud teisest plokist.",
+ "CONTROLS_IF_TOOLTIP_3": "Kui esimene avaldis on tõene, käivita käsud esimesest plokist. Vastasel juhul, kui teine avaldis on tõene, käivita käsud teisest plokist.",
+ "CONTROLS_IF_TOOLTIP_4": "Kui esimene avaldis on tõene, käivita käsud esimesest plokist. Vastasel juhul, kui teine avaldis on tõene, käivita käsud teisest plokist. Kui ükski avaldistest pole tõene, käivita käsud viimasest plokist.",
+ "CONTROLS_IF_MSG_IF": "kui",
+ "CONTROLS_IF_MSG_ELSEIF": "vastasel juhul, kui",
+ "CONTROLS_IF_MSG_ELSE": "vastasel juhul",
+ "CONTROLS_IF_IF_TOOLTIP": "Selle „kui“ ploki muutmine sektsioonide lisamise, eemaldamise ja järjestamisega.",
+ "CONTROLS_IF_ELSEIF_TOOLTIP": "Lisab „kui“ plokile tingimuse.",
+ "CONTROLS_IF_ELSE_TOOLTIP": "Lisab „kui“ plokile lõpliku tingimuseta koodiploki.",
+ "LOGIC_COMPARE_HELPURL": "https://en.wikipedia.org/wiki/Inequality_(mathematics)",
+ "LOGIC_COMPARE_TOOLTIP_EQ": "Tagastab „tõene“, kui avaldiste väärtused on võrdsed.",
+ "LOGIC_COMPARE_TOOLTIP_NEQ": "Tagastab „tõene“, kui avaldiste väärtused pole võrdsed.",
+ "LOGIC_COMPARE_TOOLTIP_LT": "Tagastab „tõene“, kui esimese avaldise väärtus on väiksem kui teise väärtus.",
+ "LOGIC_COMPARE_TOOLTIP_LTE": "Tagastab „tõene“, kui esimese avaldise väärtus on väiksem või võrdne teise väärtusega.",
+ "LOGIC_COMPARE_TOOLTIP_GT": "Tagastab „tõene“, kui esimese avaldise väärtus on suurem kui teise väärtus.",
+ "LOGIC_COMPARE_TOOLTIP_GTE": "Tagastab „tõene“, kui esimese avaldise väärtus on suurem või võrdne teise väärtusega.",
+ "LOGIC_OPERATION_TOOLTIP_AND": "Tagastab „tõene“, kui mõlemad avaldised on tõesed.",
+ "LOGIC_OPERATION_AND": "ja",
+ "LOGIC_OPERATION_TOOLTIP_OR": "Tagastab „tõene“, kui vähemalt üks avaldistest on tõene.",
+ "LOGIC_OPERATION_OR": "või",
+ "LOGIC_NEGATE_TITLE": "pole %1",
+ "LOGIC_NEGATE_TOOLTIP": "Tagastab „tõene“, kui avaldis on väär. Tagastab „väär“, kui avaldis on tõene.",
+ "LOGIC_BOOLEAN_TRUE": "tõene",
+ "LOGIC_BOOLEAN_FALSE": "väär",
+ "LOGIC_BOOLEAN_TOOLTIP": "Tagastab tõeväärtuse – kas „tõene“ või „väär“.",
+ "LOGIC_NULL": "null",
+ "LOGIC_NULL_TOOLTIP": "Tagastab nulli.",
+ "LOGIC_TERNARY_CONDITION": "tingimus",
+ "LOGIC_TERNARY_IF_TRUE": "kui tõene",
+ "LOGIC_TERNARY_IF_FALSE": "kui väär",
+ "LOGIC_TERNARY_TOOLTIP": "Kui tingimuse väärtus on tõene, tagastab „kui tõene“ väärtuse, vastasel juhul „kui väär“ väärtuse.",
+ "MATH_NUMBER_HELPURL": "https://et.wikipedia.org/wiki/Arv",
+ "MATH_NUMBER_TOOLTIP": "Arv.",
+ "MATH_ARITHMETIC_HELPURL": "https://et.wikipedia.org/wiki/Aritmeetika",
+ "MATH_ARITHMETIC_TOOLTIP_ADD": "Tagastab kahe arvu summa.",
+ "MATH_ARITHMETIC_TOOLTIP_MINUS": "Tagastab kahe arvu vahe.",
+ "MATH_ARITHMETIC_TOOLTIP_MULTIPLY": "Tagastab kahe arvu korrutise.",
+ "MATH_ARITHMETIC_TOOLTIP_DIVIDE": "Tagastab kahe arvu jagatise.",
+ "MATH_ARITHMETIC_TOOLTIP_POWER": "Tagastab esimese arvu teise arvu astmes.",
+ "MATH_SINGLE_HELPURL": "https://et.wikipedia.org/wiki/Ruutjuur",
+ "MATH_SINGLE_OP_ROOT": "ruutjuur",
+ "MATH_SINGLE_TOOLTIP_ROOT": "Tagastab arvu ruutjuure.",
+ "MATH_SINGLE_OP_ABSOLUTE": "absoluutväärtus",
+ "MATH_SINGLE_TOOLTIP_ABS": "Tagastab arvu absoluutväärtuse.",
+ "MATH_SINGLE_TOOLTIP_NEG": "Tagastab arvu vastandväärtuse.",
+ "MATH_SINGLE_TOOLTIP_LN": "Tagastab arvu naturaallogaritmi.",
+ "MATH_SINGLE_TOOLTIP_LOG10": "Tagastab arvu kümnendlogaritm.",
+ "MATH_SINGLE_TOOLTIP_EXP": "Tagasta e arvu astmes.",
+ "MATH_SINGLE_TOOLTIP_POW10": "Tagastab 10 arvu astmes.",
+ "MATH_TRIG_HELPURL": "https://et.wikipedia.org/wiki/Trigonomeetrilised_funktsioonid",
+ "MATH_TRIG_TOOLTIP_SIN": "Tagastab arvu (kraadid) siinuse.",
+ "MATH_TRIG_TOOLTIP_COS": "Tagastab arvu (kraadid) kosiinuse.",
+ "MATH_TRIG_TOOLTIP_TAN": "Tagastab arvu (kraadid) tangensi.",
+ "MATH_TRIG_TOOLTIP_ASIN": "Tagastab arvu arkussiinuse.",
+ "MATH_TRIG_TOOLTIP_ACOS": "Tagastab arvu arkuskoosiinuse.",
+ "MATH_TRIG_TOOLTIP_ATAN": "Tagastab arvu arkustangensi.",
+ "MATH_CONSTANT_HELPURL": "https://en.wikipedia.org/wiki/Mathematical_constant",
+ "MATH_CONSTANT_TOOLTIP": "Tagastab ühe konstantidest: π (3,141…), e (2,718…), φ (1.618…), √2) (1,414…), √½ (0,707…), või ∞ (infinity).",
+ "MATH_IS_EVEN": "on paarisarv",
+ "MATH_IS_ODD": "on paaritu arv",
+ "MATH_IS_PRIME": "on algarv",
+ "MATH_IS_WHOLE": "on täisarv",
+ "MATH_IS_POSITIVE": "on positiivne arv",
+ "MATH_IS_NEGATIVE": "on negatiivne arv",
+ "MATH_IS_DIVISIBLE_BY": "jagub arvuga",
+ "MATH_IS_TOOLTIP": "Kontrollib kas arv on paarisarv, paaritu arv, algarv, täisarv, positiivne, negatiivne või jagub kindla arvuga. Tagastab „tõene“ või „väär“.",
+ "MATH_CHANGE_HELPURL": "https://en.wikipedia.org/wiki/Programming_idiom#Incrementing_a_counter",
+ "MATH_CHANGE_TITLE": "muuda %1 %2 võrra",
+ "MATH_CHANGE_TOOLTIP": "Lisab arvu muutujale '%1'.",
+ "MATH_ROUND_HELPURL": "https://en.wikipedia.org/wiki/Rounding",
+ "MATH_ROUND_TOOLTIP": "Ümardab arvu üles või alla.",
+ "MATH_ROUND_OPERATOR_ROUND": "ümarda",
+ "MATH_ROUND_OPERATOR_ROUNDUP": "ümarda üles",
+ "MATH_ROUND_OPERATOR_ROUNDDOWN": "ümarda alla",
+ "MATH_ONLIST_OPERATOR_SUM": "loendi summa",
+ "MATH_ONLIST_TOOLTIP_SUM": "Tagastab kõigi loendis olevate arvude summa.",
+ "MATH_ONLIST_OPERATOR_MIN": "loendi miinimum",
+ "MATH_ONLIST_TOOLTIP_MIN": "Tagastab väikseima loendis oleva arvu.",
+ "MATH_ONLIST_OPERATOR_MAX": "loendi maksimum",
+ "MATH_ONLIST_TOOLTIP_MAX": "Tagastab suurima loendis oleva arvu.",
+ "MATH_ONLIST_OPERATOR_AVERAGE": "loendi keskmine",
+ "MATH_ONLIST_TOOLTIP_AVERAGE": "Tagastab loendis olevate arvväärtuste aritmeetilise keskmise.",
+ "MATH_ONLIST_OPERATOR_MEDIAN": "loendi mediaan",
+ "MATH_ONLIST_TOOLTIP_MEDIAN": "Return the median number in the list.",
+ "MATH_ONLIST_OPERATOR_MODE": "loendi moodid",
+ "MATH_ONLIST_TOOLTIP_MODE": "Tagastab loendi kõige sagedamini esinevate loendi liikmetega.",
+ "MATH_ONLIST_OPERATOR_STD_DEV": "loendi standardhälve",
+ "MATH_ONLIST_TOOLTIP_STD_DEV": "Tagastab loendi standardhälbe.",
+ "MATH_ONLIST_OPERATOR_RANDOM": "juhuslik element loendist",
+ "MATH_ONLIST_TOOLTIP_RANDOM": "Tagastab juhusliku elemendi loendist.",
+ "MATH_MODULO_HELPURL": "https://en.wikipedia.org/wiki/Modulo_operation",
+ "MATH_MODULO_TITLE": "%1 ÷ %2 jääk",
+ "MATH_MODULO_TOOLTIP": "Tagastab esimese numbri teisega jagamisel tekkiva jäägi.",
+ "MATH_CONSTRAIN_TITLE": "%1 piirang %2 ja %3 vahele",
+ "MATH_CONSTRAIN_TOOLTIP": "Piirab arvu väärtuse toodud piiridesse (piirarvud kaasa arvatud).",
+ "MATH_RANDOM_INT_HELPURL": "https://en.wikipedia.org/wiki/Random_number_generation",
+ "MATH_RANDOM_INT_TITLE": "juhuslik täisarv %1 ja %2 vahel",
+ "MATH_RANDOM_INT_TOOLTIP": "Tagastab juhusliku täisarvu toodud piiride vahel (piirarvud kaasa arvatud).",
+ "MATH_RANDOM_FLOAT_HELPURL": "https://en.wikipedia.org/wiki/Random_number_generation",
+ "MATH_RANDOM_FLOAT_TITLE_RANDOM": "juhuslik murdosa",
+ "MATH_RANDOM_FLOAT_TOOLTIP": "Tagastab juhusliku murdosa 0.0 (kaasa arvatud) and 1.0 (välja arvatud) vahel.",
+ "TEXT_TEXT_HELPURL": "https://en.wikipedia.org/wiki/String_(computer_science)",
+ "TEXT_TEXT_TOOLTIP": "Täht, sõna või rida teksti.",
+ "TEXT_JOIN_TITLE_CREATEWITH": "tekita tekst",
+ "TEXT_JOIN_TOOLTIP": "Tekitab teksti ühendades mistahes arvu elemente.",
+ "TEXT_CREATE_JOIN_TITLE_JOIN": "ühenda",
+ "TEXT_CREATE_JOIN_TOOLTIP": "Tekstiploki muutmine sektsioonide lisamise, eemaldamise või järjestuse muutmisega.",
+ "TEXT_CREATE_JOIN_ITEM_TOOLTIP": "Objekti lisamine tekstile.",
+ "TEXT_APPEND_TO": "lisa muutuja",
+ "TEXT_APPEND_APPENDTEXT": "lõppu tekst",
+ "TEXT_APPEND_TOOLTIP": "Lisab teksti muutuja „%1“ väärtuse lõppu.",
+ "TEXT_LENGTH_TITLE": "%1 pikkus",
+ "TEXT_LENGTH_TOOLTIP": "Tagastab sümbolite aru (ka tühikud) toodud tekstis.",
+ "TEXT_ISEMPTY_TITLE": "%1 on tühi",
+ "TEXT_ISEMPTY_TOOLTIP": "Tagastab „tõene“, kui tekstis pole ühtegi sümbolit.",
+ "TEXT_INDEXOF_TOOLTIP": "Tagastab esimesest tekstist esimese/viimase leitud teise teksti asukoha (indeksi). Kui teksti ei leita, tagastab %1.",
+ "TEXT_INDEXOF_INPUT_INTEXT": "tekstist",
+ "TEXT_INDEXOF_OPERATOR_FIRST": "esimese leitud tekstitüki",
+ "TEXT_INDEXOF_OPERATOR_LAST": "viimase leitud tekstitüki",
+ "TEXT_INDEXOF_TAIL": "asukoht",
+ "TEXT_CHARAT_INPUT_INTEXT": "tekstist",
+ "TEXT_CHARAT_FROM_START": "sümbol #",
+ "TEXT_CHARAT_FROM_END": "lõpust sümbol #",
+ "TEXT_CHARAT_FIRST": "esimene sümbol",
+ "TEXT_CHARAT_LAST": "viimane sümbol",
+ "TEXT_CHARAT_RANDOM": "juhuslik sümbol",
+ "TEXT_CHARAT_TOOLTIP": "Tagastab tekstis määratud asukohal oleva sümboli.",
+ "TEXT_GET_SUBSTRING_TOOLTIP": "Tagastab määratud tüki tekstist.",
+ "TEXT_GET_SUBSTRING_INPUT_IN_TEXT": "tekstist",
+ "TEXT_GET_SUBSTRING_START_FROM_START": "alates sümbolist #",
+ "TEXT_GET_SUBSTRING_START_FROM_END": "alates (lõpust) sümbolist #",
+ "TEXT_GET_SUBSTRING_START_FIRST": "alates esimesest sümbolist",
+ "TEXT_GET_SUBSTRING_END_FROM_START": "kuni sümbolini #",
+ "TEXT_GET_SUBSTRING_END_FROM_END": "kuni (lõpust) sümbolini #",
+ "TEXT_GET_SUBSTRING_END_LAST": "kuni viimase sümbolini",
+ "TEXT_CHANGECASE_TOOLTIP": "Tagastab muudetud tähesuurusega teksti koopia.",
+ "TEXT_CHANGECASE_OPERATOR_UPPERCASE": "SUURTE TÄHTEDEGA",
+ "TEXT_CHANGECASE_OPERATOR_LOWERCASE": "väikeste tähtedega",
+ "TEXT_CHANGECASE_OPERATOR_TITLECASE": "Suurte Esitähtedega",
+ "TEXT_TRIM_TOOLTIP": "Tagastab koopia tekstist, millel on tühikud ühelt või mõlemalt poolt eemaldatud.",
+ "TEXT_TRIM_OPERATOR_BOTH": "mõlemalt poolt eemaldatud tühikutega",
+ "TEXT_TRIM_OPERATOR_LEFT": "algusest eemaldatud tühikutega",
+ "TEXT_TRIM_OPERATOR_RIGHT": "lõpust eemaldatud tühikutega",
+ "TEXT_PRINT_TITLE": "trüki %1",
+ "TEXT_PRINT_TOOLTIP": "Trükib määratud teksti, numbri või mõne muu objekti väärtuse.",
+ "TEXT_PROMPT_TYPE_TEXT": "kasutajalt küsitud tekst teatega",
+ "TEXT_PROMPT_TYPE_NUMBER": "kasutajalt küsitud arv teatega",
+ "TEXT_PROMPT_TOOLTIP_NUMBER": "Küsib kasutajalt teadet näidates mingit arvu.",
+ "TEXT_PROMPT_TOOLTIP_TEXT": "Küsib kasutajalt teadet näidates mingit teksti.",
+ "LISTS_CREATE_EMPTY_TITLE": "tühi loend",
+ "LISTS_CREATE_EMPTY_TOOLTIP": "Tagastab loendi, mille pikkus on 0 ja milles pole ühtegi elementi.",
+ "LISTS_CREATE_WITH_TOOLTIP": "Tekitab mistahes arvust elementidest loendi.",
+ "LISTS_CREATE_WITH_INPUT_WITH": "loend elementidest",
+ "LISTS_CREATE_WITH_CONTAINER_TITLE_ADD": "loend",
+ "LISTS_CREATE_WITH_CONTAINER_TOOLTIP": "Loendiploki elementide lisamine, eemaldamine või järjestuse muutmine.",
+ "LISTS_CREATE_WITH_ITEM_TOOLTIP": "Elemendi lisamine loendisse.",
+ "LISTS_REPEAT_TOOLTIP": "Tekitab uue loendi, millesse lisatakse ühte elementi pikkusega määratud arv kordi.",
+ "LISTS_REPEAT_TITLE": "loend pikkusega %2 elemendist %1",
+ "LISTS_LENGTH_TITLE": "%1 pikkus",
+ "LISTS_LENGTH_TOOLTIP": "Tagastab loendi pikkuse.",
+ "LISTS_ISEMPTY_TITLE": "%1 on tühi",
+ "LISTS_ISEMPTY_TOOLTIP": "Tagastab „tõene“ kui loend on tühi.",
+ "LISTS_INLIST": "loendis",
+ "LISTS_INDEX_OF_FIRST": "esimene leitud element",
+ "LISTS_INDEX_OF_LAST": "viimane leitud element",
+ "LISTS_INDEX_OF_TOOLTIP": "Tagastab esimese/viimase loendist leitud elemendi asukoha (järjekorranumbri). Kui elementi ei leita, tagastab %1.",
+ "LISTS_GET_INDEX_GET": "võta",
+ "LISTS_GET_INDEX_GET_REMOVE": "võta ja eemalda",
+ "LISTS_GET_INDEX_REMOVE": "eemalda",
+ "LISTS_GET_INDEX_FROM_END": "# lõpust",
+ "LISTS_GET_INDEX_FIRST": "esimene element",
+ "LISTS_GET_INDEX_LAST": "viimane element",
+ "LISTS_GET_INDEX_RANDOM": "juhuslik element",
+ "LISTS_INDEX_FROM_START_TOOLTIP": "Esimene element on %1.",
+ "LISTS_INDEX_FROM_END_TOOLTIP": "Viimane element on %1.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_FROM": "Tagastab loendis määratud asukohal oleva elemendi.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_FIRST": "Tagastab loendi esimese elemendi.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_LAST": "Tagastab loendi viimase elemendi.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_RANDOM": "Tagastab loendi juhusliku elemendi.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM": "Tagastab ja eemaldab loendist määratud asukohal oleva elemendi.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST": "Tagastab ja eemaldab loendist esimese elemendi.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST": "Tagastab ja eemaldab loendist viimase elemendi.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM": "Tagastab ja eemaldab loendist juhusliku elemendi.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM": "Eemaldab loendist määratud asukohal oleva elemendi.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST": "Eemaldab loendist esimese elemendi.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST": "Eemaldab loendist viimase elemendi.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM": "Eemaldab loendist juhusliku elemendi.",
+ "LISTS_SET_INDEX_SET": "asenda",
+ "LISTS_SET_INDEX_INSERT": "lisa asukohale",
+ "LISTS_SET_INDEX_INPUT_TO": "väärtus:",
+ "LISTS_SET_INDEX_TOOLTIP_SET_FROM": "Asendab loendis määratud kohal oleva elemendi.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_FIRST": "Asendab loendis esimese elemendi.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_LAST": "Asendab loendis viimase elemendi.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_RANDOM": "Asendab loendis juhusliku elemendi.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_FROM": "Lisab määratud asukohale loendis uue elemendi.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST": "Lisab loendi algusesse uue elemendi.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_LAST": "Lisab loendi lõppu uue elemendi.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM": "Lisab juhuslikule kohale loendis uue elemendi.",
+ "LISTS_GET_SUBLIST_START_FROM_START": "alamloend elemendist #",
+ "LISTS_GET_SUBLIST_START_FROM_END": "alamloend elemendist # (lõpust)",
+ "LISTS_GET_SUBLIST_START_FIRST": "alamloend algusest",
+ "LISTS_GET_SUBLIST_END_FROM_START": "elemendini #",
+ "LISTS_GET_SUBLIST_END_FROM_END": "elemendini # (lõpust)",
+ "LISTS_GET_SUBLIST_END_LAST": "lõpuni",
+ "LISTS_GET_SUBLIST_TOOLTIP": "Tekitab loendi määratud osast koopia.",
+ "LISTS_SORT_HELPURL": "https://github.com/google/blockly/wiki/Lists#sorting-a-list",
+ "LISTS_SORT_TITLE": "%1 %2 sorteeritud %3",
+ "LISTS_SORT_TOOLTIP": "Loendi koopia sorteerimine.",
+ "LISTS_SORT_ORDER_ASCENDING": "kasvavalt",
+ "LISTS_SORT_ORDER_DESCENDING": "kahanevalt",
+ "LISTS_SORT_TYPE_NUMERIC": "arvväärtuste järgi",
+ "LISTS_SORT_TYPE_TEXT": "tähestiku järgi",
+ "LISTS_SORT_TYPE_IGNORECASE": "tähestiku järgi (tähesuurust eirates)",
+ "LISTS_SPLIT_LIST_FROM_TEXT": "loend, tekitatud tekstist",
+ "LISTS_SPLIT_TEXT_FROM_LIST": "tekst, tekitatud loendist",
+ "LISTS_SPLIT_WITH_DELIMITER": "eraldajaga",
+ "LISTS_SPLIT_TOOLTIP_SPLIT": "Tükeldab teksti eraldajade kohalt ja asetab tükid tekstide loendisse.",
+ "LISTS_SPLIT_TOOLTIP_JOIN": "Ühendab tekstide loendis olevad tükid üheks tekstiks, asetades tükkide vahele eraldaja.",
+ "VARIABLES_GET_TOOLTIP": "Tagastab selle muutuja väärtuse.",
+ "VARIABLES_GET_CREATE_SET": "Tekita 'määra „%1“ väärtuseks' plokk",
+ "VARIABLES_SET": "\"määra %1 väärtuseks %2",
+ "VARIABLES_SET_TOOLTIP": "Määrab selle muutuja väärtuse võrdseks sisendi väärtusega.",
+ "VARIABLES_SET_CREATE_GET": "Tekita '„%1“ väärtus' plokk",
+ "PROCEDURES_DEFNORETURN_TITLE": "funktsioon",
+ "PROCEDURES_DEFNORETURN_PROCEDURE": "teeme midagi",
+ "PROCEDURES_BEFORE_PARAMS": "sisenditega:",
+ "PROCEDURES_CALL_BEFORE_PARAMS": "sisenditega:",
+ "PROCEDURES_DEFNORETURN_TOOLTIP": "Tekitab funktsiooni, mis ei tagasta midagi.",
+ "PROCEDURES_DEFNORETURN_COMMENT": "Funktsiooni kirjeldus ...",
+ "PROCEDURES_DEFRETURN_RETURN": "tagasta",
+ "PROCEDURES_DEFRETURN_TOOLTIP": "Tekitab funktsiooni, mis tagastab midagi.",
+ "PROCEDURES_ALLOW_STATEMENTS": "kood plokis",
+ "PROCEDURES_DEF_DUPLICATE_WARNING": "Hoiatus: Sel funktsioonil on mitu sama nimega sisendit.",
+ "PROCEDURES_CALLNORETURN_HELPURL": "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29",
+ "PROCEDURES_CALLNORETURN_TOOLTIP": "Käivitab kasutaja defineeritud funktsiooni '%1'.",
+ "PROCEDURES_CALLRETURN_HELPURL": "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29",
+ "PROCEDURES_CALLRETURN_TOOLTIP": "Run the user-defined function '%1' and use its output.",
+ "PROCEDURES_MUTATORCONTAINER_TITLE": "sisendid",
+ "PROCEDURES_MUTATORCONTAINER_TOOLTIP": "Funktsiooni sisendite lisamine, eemaldamine või järjestuse muutmine.",
+ "PROCEDURES_MUTATORARG_TITLE": "sisend nimega:",
+ "PROCEDURES_MUTATORARG_TOOLTIP": "Lisab funktsioonile sisendi.",
+ "PROCEDURES_HIGHLIGHT_DEF": "Tõsta funktsiooni definitsioon esile",
+ "PROCEDURES_CREATE_DO": "Tekita '%1' plokk",
+ "PROCEDURES_IFRETURN_TOOLTIP": "Kui väärtus on tõene, tagastatakse teine väärtus.",
+ "PROCEDURES_IFRETURN_WARNING": "Hoiatus: Seda plokki saab kasutada ainult funktsiooni definitsioonis."
+}
diff --git a/blockly/msg/json/fa.json b/blockly/msg/json/fa.json
new file mode 100644
index 0000000..80c55a8
--- /dev/null
+++ b/blockly/msg/json/fa.json
@@ -0,0 +1,309 @@
+{
+ "@metadata": {
+ "authors": [
+ "Ebraminio",
+ "Reza1615",
+ "Alirezaaa",
+ "Mehran",
+ "MohandesWiki",
+ "Dalba",
+ "Hamisun"
+ ]
+ },
+ "VARIABLES_DEFAULT_NAME": "مورد",
+ "TODAY": "امروز",
+ "DUPLICATE_BLOCK": "تکراری",
+ "ADD_COMMENT": "افزودن نظر",
+ "REMOVE_COMMENT": "حذف نظر",
+ "EXTERNAL_INPUTS": "ورودی‌های خارجی",
+ "INLINE_INPUTS": "ورودی‌های درون خطی",
+ "DELETE_BLOCK": "حذف بلوک",
+ "DELETE_X_BLOCKS": "حذف بلوک‌های %1",
+ "DELETE_ALL_BLOCKS": "حذف همهٔ بلاک‌های %1؟",
+ "CLEAN_UP": "تمیز کردن بلوک‌ها",
+ "COLLAPSE_BLOCK": "فروپاشی بلوک",
+ "COLLAPSE_ALL": "فروپاشی بلوک‌ها",
+ "EXPAND_BLOCK": "گسترش بلوک",
+ "EXPAND_ALL": "گسترش بلوک‌ها",
+ "DISABLE_BLOCK": "غیرفعال‌سازی بلوک",
+ "ENABLE_BLOCK": "فعال‌سازی بلوک",
+ "HELP": "راهنما",
+ "UNDO": "واگردانی",
+ "REDO": "واگردانی",
+ "CHANGE_VALUE_TITLE": "تغییر مقدار:",
+ "RENAME_VARIABLE": "تغییر نام متغیر...",
+ "RENAME_VARIABLE_TITLE": "تغییر نام همهٔ متغیرهای «%1» به:",
+ "NEW_VARIABLE": "متغیر تازه...",
+ "NEW_VARIABLE_TITLE": "نام متغیر تازه:",
+ "COLOUR_PICKER_HELPURL": "https://fa.wikipedia.org/wiki/%D8%B1%D9%86%DA%AF",
+ "COLOUR_PICKER_TOOLTIP": "انتخاب یک رنگ از تخته‌رنگ.",
+ "COLOUR_RANDOM_TITLE": "رنگ تصادفی",
+ "COLOUR_RANDOM_TOOLTIP": "انتخاب یک رنگ به شکل تصادفی.",
+ "COLOUR_RGB_TITLE": "رنگ با",
+ "COLOUR_RGB_RED": "قرمز",
+ "COLOUR_RGB_GREEN": "سبز",
+ "COLOUR_RGB_BLUE": "آبی",
+ "COLOUR_RGB_TOOLTIP": "ساخت یک رنگ با مقدار مشخص‌شده‌ای از قرمز، سبز و آبی. همهٔ مقادیر باید بین ۰ تا ۱۰۰ باشند.",
+ "COLOUR_BLEND_TITLE": "مخلوط",
+ "COLOUR_BLEND_COLOUR1": "رنگ ۱",
+ "COLOUR_BLEND_COLOUR2": "رنگ ۲",
+ "COLOUR_BLEND_RATIO": "نسبت",
+ "COLOUR_BLEND_TOOLTIP": "دو رنگ را با نسبت مشخص‌شده مخلوط می‌کند (۰٫۰ - ۱٫۰)",
+ "CONTROLS_REPEAT_HELPURL": "https://fa.wikipedia.org/wiki/%D8%AD%D9%84%D9%82%D9%87_%D9%81%D9%88%D8%B1",
+ "CONTROLS_REPEAT_TITLE": "%1 بار تکرار",
+ "CONTROLS_REPEAT_INPUT_DO": "انحام",
+ "CONTROLS_REPEAT_TOOLTIP": "انجام چند عبارت چندین بار.",
+ "CONTROLS_WHILEUNTIL_OPERATOR_WHILE": "تکرار در حالی که",
+ "CONTROLS_WHILEUNTIL_OPERATOR_UNTIL": "تکرار تا زمانی که",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_WHILE": "تا زمانی که یک مقدار صحیح است، چند عبارت را انجام بده.",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL": "تا زمانی که یک مقدار ناصحیح است، چند عبارت را انجام بده.",
+ "CONTROLS_FOR_TOOLTIP": "متغیر %1 را در مقادیر شروع‌شده از عدد انتهای به عدد انتهایی را دارد، با فواصل مشخص‌شده می‌شمارد و این بلوک مشخص‌شده را انجام می‌دهد.",
+ "CONTROLS_FOR_TITLE": "با تعداد %1 از %2 به %3 با گام‌های %4",
+ "CONTROLS_FOREACH_TITLE": "برای هر مورد %1 در فهرست %2",
+ "CONTROLS_FOREACH_TOOLTIP": "برای هر مورد در این فهرست، تنظیم متغیر «%1» به مورد و انجام تعدادی عبارت.",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK": "شکستن حلقه",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE": "ادامه با تکرار بعدی حلقه",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK": "شکستن حلقهٔ شامل.",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE": "پریدن از بقیهٔ حلقه و ادامه با تکرار بعدی.",
+ "CONTROLS_FLOW_STATEMENTS_WARNING": "اخطار: این بلوک ممکن است فقط داخل یک حلقه استفاده شود.",
+ "CONTROLS_IF_TOOLTIP_1": "اگر یک مقدار صحیح است، سپس چند عبارت را انجام بده.",
+ "CONTROLS_IF_TOOLTIP_2": "اگر یک مقدار صحیح است، اول بلوک اول عبارات را انجام بده. در غیر این صورت بلوک دوم عبارات انجام بده.",
+ "CONTROLS_IF_TOOLTIP_3": "اگر مقدار اول صحیح بود، از آن بلوک اول عبارات را انجام بده. در غیر این صورت، اگر مقدار دوم صحیح است، بلوک دوم عبارات را انجام بده.",
+ "CONTROLS_IF_TOOLTIP_4": "اگر مقدار اول درست است، بلوک اول عبارات را انجام بده. در غیر این صورت، اگر مقدار دوم درست باشد بلوک دوم عبارات را انجام بده. اگر هیچ از مقادیر درست نبود، آخرین بلوک عبارات را انجام بده.",
+ "CONTROLS_IF_MSG_IF": "اگر",
+ "CONTROLS_IF_MSG_ELSEIF": "اگر آنگاه",
+ "CONTROLS_IF_MSG_ELSE": "آنگاه",
+ "CONTROLS_IF_IF_TOOLTIP": "افزودن، حذف یا بازمرتب‌سازی قسمت‌ها برای پیکربندی دوبارهٔ این بلوک اگر.",
+ "CONTROLS_IF_ELSEIF_TOOLTIP": "افزودن یک شرط به بلوک اگر.",
+ "CONTROLS_IF_ELSE_TOOLTIP": "اضافه کردن نهایی، گرفتن همهٔ شرایط به بلوک اگر.",
+ "LOGIC_COMPARE_HELPURL": "https://fa.wikipedia.org/wiki/%D9%86%D8%A7%D8%A8%D8%B1%D8%A7%D8%A8%D8%B1%DB%8C",
+ "LOGIC_COMPARE_TOOLTIP_EQ": "بازگشت صحیح اگر هر دو ورودی با یکدیگر برابر باشد.",
+ "LOGIC_COMPARE_TOOLTIP_NEQ": "برگرداندن صحیح اگر هر دو ورودی با یکدیگر برابر نباشند.",
+ "LOGIC_COMPARE_TOOLTIP_LT": "بازگرداندن صحیح اگر ورودی اول کوچکتر از ورودی دوم باشد.",
+ "LOGIC_COMPARE_TOOLTIP_LTE": "بازگرداندن صحیح اگر ورودی اول کوچکتر یا مساوی با ورودی دوم باشد.",
+ "LOGIC_COMPARE_TOOLTIP_GT": "بازگرداندن صحیح اگر ورودی اول بزرگتر از ورودی دوم باشد.",
+ "LOGIC_COMPARE_TOOLTIP_GTE": "بازگرداندن صحیح اگر ورودی اول بزرگتر یا مساوی یا ورودی دوم باشد.",
+ "LOGIC_OPERATION_TOOLTIP_AND": "بازگرداندن صحیح اگر هر دو ورودی صحیح باشد.",
+ "LOGIC_OPERATION_AND": "و",
+ "LOGIC_OPERATION_TOOLTIP_OR": "بازگرداندن صحیح اگر یکی از دو ورودی صحیح باشد.",
+ "LOGIC_OPERATION_OR": "یا",
+ "LOGIC_NEGATE_TITLE": "نه %1",
+ "LOGIC_NEGATE_TOOLTIP": "صجیج باز می‌گرداند اگر ورودی نا صحیح باشند. ناصحیح بازمی‌گرداند اگر ورودی صحیح باشد.",
+ "LOGIC_BOOLEAN_TRUE": "صحیح",
+ "LOGIC_BOOLEAN_FALSE": "ناصحیح",
+ "LOGIC_BOOLEAN_TOOLTIP": "بازگرداندن یکی از صحیح یا ناصحیح.",
+ "LOGIC_NULL": "تهی",
+ "LOGIC_NULL_TOOLTIP": "تهی بازمی‌گرداند.",
+ "LOGIC_TERNARY_CONDITION": "آزمایش",
+ "LOGIC_TERNARY_IF_TRUE": "اگر صحیح",
+ "LOGIC_TERNARY_IF_FALSE": "اگر ناصحیح",
+ "LOGIC_TERNARY_TOOLTIP": "بررسی وضعیت در «آزمایش». اگر وضعیت صحیح باشد، مقدار «اگر صحیح» را بر می‌گرداند در غیر اینصورت مقدار «اگر ناصحیح» را.",
+ "MATH_NUMBER_HELPURL": "https://fa.wikipedia.org/wiki/%D8%B9%D8%AF%D8%AF",
+ "MATH_NUMBER_TOOLTIP": "یک عدد.",
+ "MATH_ARITHMETIC_HELPURL": "https://fa.wikipedia.org/wiki/%D8%AD%D8%B3%D8%A7%D8%A8",
+ "MATH_ARITHMETIC_TOOLTIP_ADD": "بازگرداندن مقدار جمع دو عدد.",
+ "MATH_ARITHMETIC_TOOLTIP_MINUS": "بازگرداندن تفاوت دو عدد.",
+ "MATH_ARITHMETIC_TOOLTIP_MULTIPLY": "بازگرداندن حاصلضرب دو عدد.",
+ "MATH_ARITHMETIC_TOOLTIP_DIVIDE": "بازگرداندن باقی‌ماندهٔ دو عدد.",
+ "MATH_ARITHMETIC_TOOLTIP_POWER": "بازگرداندن اولین عددی که از توان عدد دوم حاصل شده باشد.",
+ "MATH_SINGLE_HELPURL": "https://fa.wikipedia.org/wiki/%D8%B1%DB%8C%D8%B4%D9%87_%D8%AF%D9%88%D9%85",
+ "MATH_SINGLE_OP_ROOT": "ریشهٔ دوم",
+ "MATH_SINGLE_TOOLTIP_ROOT": "ریشهٔ دوم یک عدد را باز می‌گرداند.",
+ "MATH_SINGLE_OP_ABSOLUTE": "مطلق",
+ "MATH_SINGLE_TOOLTIP_ABS": "قدر مطلق یک عدد را بازمی‌گرداند.",
+ "MATH_SINGLE_TOOLTIP_NEG": "منفی‌شدهٔ یک عدد را باز می‌گرداند.",
+ "MATH_SINGLE_TOOLTIP_LN": "لوگاریتم طبیعی یک عدد را باز می‌گرداند.",
+ "MATH_SINGLE_TOOLTIP_LOG10": "بازگرداندن لگاریتم بر پایهٔ ۱۰ یک عدد.",
+ "MATH_SINGLE_TOOLTIP_EXP": "بازگرداندن توان e یک عدد.",
+ "MATH_SINGLE_TOOLTIP_POW10": "بازگرداندن توان ۱۰ یک عدد.",
+ "MATH_TRIG_HELPURL": "https://fa.wikipedia.org/wiki/%D8%AA%D8%A7%D8%A8%D8%B9%E2%80%8C%D9%87%D8%A7%DB%8C_%D9%85%D8%AB%D9%84%D8%AB%D8%A7%D8%AA%DB%8C",
+ "MATH_TRIG_TOOLTIP_SIN": "بازگرداندن سینوس درجه (نه رادیان).",
+ "MATH_TRIG_TOOLTIP_COS": "بازگرداندن کسینوس درجه (نه رادیان).",
+ "MATH_TRIG_TOOLTIP_TAN": "بازگرداندن تانژانت یک درجه (نه رادیان).",
+ "MATH_TRIG_TOOLTIP_ASIN": "بازگرداندن آرک‌سینوس درجه (نه رادیان).",
+ "MATH_TRIG_TOOLTIP_ACOS": "بازگرداندن آرک‌کسینوس درجه (نه رادیان).",
+ "MATH_TRIG_TOOLTIP_ATAN": "بازگرداندن آرک‌تانژانت درجه (نه رادیان).",
+ "MATH_CONSTANT_HELPURL": "https://fa.wikipedia.org/wiki/%D8%AB%D8%A7%D8%A8%D8%AA_%D8%B1%DB%8C%D8%A7%D8%B6%DB%8C",
+ "MATH_CONSTANT_TOOLTIP": "یکی از مقادیر مشترک را برمی‌گرداند: π (۳٫۱۴۱…)، e (۲٫۷۱۸...)، φ (۱٫۶۱۸)، sqrt(۲) (۱٫۴۱۴)، sqrt(۱/۲) (۰٫۷۰۷...) و یا ∞ (بی‌نهایت).",
+ "MATH_IS_EVEN": "زوج است",
+ "MATH_IS_ODD": "فرد است",
+ "MATH_IS_PRIME": "عدد اول است",
+ "MATH_IS_WHOLE": "کامل است",
+ "MATH_IS_POSITIVE": "مثبت است",
+ "MATH_IS_NEGATIVE": "منفی است",
+ "MATH_IS_DIVISIBLE_BY": "تقسیم شده بر",
+ "MATH_IS_TOOLTIP": "بررسی می‌کند که آیا یک عدد زوج، فرد، اول، کامل، مثبت، منفی یا بخش‌پذیر عدد خاصی باشد را بررسی می‌کند. درست یا نادرست باز می‌گرداند.",
+ "MATH_CHANGE_HELPURL": "https://fa.wikipedia.org/wiki/%D8%A7%D8%B5%D8%B7%D9%84%D8%A7%D8%AD_%D8%A8%D8%B1%D9%86%D8%A7%D9%85%D9%87%E2%80%8C%D9%86%D9%88%DB%8C%D8%B3%DB%8C#.D8.A7.D9.81.D8.B2.D8.A7.DB.8C.D8.B4_.D8.B4.D9.85.D8.A7.D8.B1.D9.86.D8.AF.D9.87",
+ "MATH_CHANGE_TITLE": "تغییر %1 با %2",
+ "MATH_CHANGE_TOOLTIP": "افزودن یک عدد به متغیر '%1'.",
+ "MATH_ROUND_HELPURL": "https://fa.wikipedia.org/wiki/%D8%B1%D9%88%DB%8C%D9%87_%28%D8%B9%D9%84%D9%88%D9%85_%D8%B1%D8%A7%DB%8C%D8%A7%D9%86%D9%87%29",
+ "MATH_ROUND_TOOLTIP": "گردکردن یک عدد به بالا یا پایین.",
+ "MATH_ROUND_OPERATOR_ROUND": "گردکردن",
+ "MATH_ROUND_OPERATOR_ROUNDUP": "گرد به بالا",
+ "MATH_ROUND_OPERATOR_ROUNDDOWN": "گرد به پایین",
+ "MATH_ONLIST_OPERATOR_SUM": "جمع فهرست",
+ "MATH_ONLIST_TOOLTIP_SUM": "جمع همهٔ عددهای فهرست را باز می‌گرداند.",
+ "MATH_ONLIST_OPERATOR_MIN": "کوچکترین فهرست",
+ "MATH_ONLIST_TOOLTIP_MIN": "کوچک‌ترین عدد در فهرست را باز می‌گرداند.",
+ "MATH_ONLIST_OPERATOR_MAX": "بزرگ‌ترین فهرست",
+ "MATH_ONLIST_TOOLTIP_MAX": "بزرگ‌ترین عدد در فهرست را باز می‌گرداند.",
+ "MATH_ONLIST_OPERATOR_AVERAGE": "میانگین فهرست",
+ "MATH_ONLIST_TOOLTIP_AVERAGE": "میانگین (میانگین ریاضی) مقادیر عددی فهرست را بر می‌گرداند.",
+ "MATH_ONLIST_OPERATOR_MEDIAN": "میانهٔ فهرست",
+ "MATH_ONLIST_TOOLTIP_MEDIAN": "میانهٔ عدد در فهرست را بر می‌گرداند.",
+ "MATH_ONLIST_OPERATOR_MODE": "مد فهرست",
+ "MATH_ONLIST_TOOLTIP_MODE": "شایع‌ترین قلم(های) در فهرست را بر می‌گرداند.",
+ "MATH_ONLIST_OPERATOR_STD_DEV": "انحراف معیار فهرست",
+ "MATH_ONLIST_TOOLTIP_STD_DEV": "انحراف معیار فهرست را بر می‌گرداند.",
+ "MATH_ONLIST_OPERATOR_RANDOM": "مورد تصادفی از فهرست",
+ "MATH_ONLIST_TOOLTIP_RANDOM": "موردی تصادفی از فهرست را بر می‌گرداند.",
+ "MATH_MODULO_HELPURL": "https://fa.wikipedia.org/wiki/%D8%B9%D9%85%D9%84%DB%8C%D8%A7%D8%AA_%D9%BE%DB%8C%D9%85%D8%A7%D9%86%D9%87",
+ "MATH_MODULO_TITLE": "باقی‌ماندهٔ %1 + %2",
+ "MATH_MODULO_TOOLTIP": "باقی‌ماندهٔ تقسیم دو عدد را بر می‌گرداند.",
+ "MATH_CONSTRAIN_TITLE": "محدودکردن %1 پایین %2 بالا %3",
+ "MATH_CONSTRAIN_TOOLTIP": "محدودکردن یک عدد بین محدودیت‌های مشخص‌شده (بسته).",
+ "MATH_RANDOM_INT_HELPURL": "https://fa.wikipedia.org/wiki/%D8%AA%D9%88%D9%84%DB%8C%D8%AF_%D8%A7%D8%B9%D8%AF%D8%A7%D8%AF_%D8%AA%D8%B5%D8%A7%D8%AF%D9%81%DB%8C",
+ "MATH_RANDOM_INT_TITLE": "عدد صحیح تصادفی بین %1 تا %2",
+ "MATH_RANDOM_INT_TOOLTIP": "یک عدد تصادفی بین دو مقدار مشخص‌شده به صورت بسته باز می‌گرداند.",
+ "MATH_RANDOM_FLOAT_HELPURL": "https://fa.wikipedia.org/wiki/%D8%AA%D9%88%D9%84%DB%8C%D8%AF_%D8%A7%D8%B9%D8%AF%D8%A7%D8%AF_%D8%AA%D8%B5%D8%A7%D8%AF%D9%81%DB%8C",
+ "MATH_RANDOM_FLOAT_TITLE_RANDOM": "کسر تصادفی",
+ "MATH_RANDOM_FLOAT_TOOLTIP": "بازگرداندن کسری تصادفی بین ۰٫۰ (بسته) تا ۱٫۰ (باز).",
+ "TEXT_TEXT_HELPURL": "https://fa.wikipedia.org/wiki/%D8%B1%D8%B4%D8%AA%D9%87_%28%D8%B9%D9%84%D9%88%D9%85_%D8%B1%D8%A7%DB%8C%D8%A7%D9%86%D9%87%29",
+ "TEXT_TEXT_TOOLTIP": "یک حرف، کلمه یا خطی از متن.",
+ "TEXT_JOIN_TITLE_CREATEWITH": "ایجاد متن با",
+ "TEXT_JOIN_TOOLTIP": "یک تکه‌ای از متن را با چسپاندن همهٔ تعداد از موارد ایجاد می‌کند.",
+ "TEXT_CREATE_JOIN_TITLE_JOIN": "عضویت",
+ "TEXT_CREATE_JOIN_TOOLTIP": "اضافه کردن، حذف یا مرتب‌سازی بحش‌ها برای تنظیم مجدد این بلوک متنی.",
+ "TEXT_CREATE_JOIN_ITEM_TOOLTIP": "افزودن یک مورد به متن.",
+ "TEXT_APPEND_TO": "به",
+ "TEXT_APPEND_APPENDTEXT": "الحاق متن",
+ "TEXT_APPEND_TOOLTIP": "الحاق متنی به متغیر «%1».",
+ "TEXT_LENGTH_TITLE": "طول %1",
+ "TEXT_LENGTH_TOOLTIP": "بازگرداندن عددی از حروف (شامل فاصله‌ها) در متن فراهم‌شده.",
+ "TEXT_ISEMPTY_TITLE": "%1 خالی است",
+ "TEXT_ISEMPTY_TOOLTIP": "اضافه کردن صحیح اگر متن فراهم‌شده خالی است.",
+ "TEXT_INDEXOF_TOOLTIP": "شاخصی از اولین آخرین رخ‌داد متن اول در متن دوم بر می‌گرداند. اگر متن یافت نشد %1 باز می‌گرداند.",
+ "TEXT_INDEXOF_INPUT_INTEXT": "در متن",
+ "TEXT_INDEXOF_OPERATOR_FIRST": "اولین رخداد متن را بیاب",
+ "TEXT_INDEXOF_OPERATOR_LAST": "آخرین رخداد متن را بیاب",
+ "TEXT_CHARAT_INPUT_INTEXT": "در متن",
+ "TEXT_CHARAT_FROM_START": "گرفتن حرف #",
+ "TEXT_CHARAT_FROM_END": "گرفتن حرف # از آخر",
+ "TEXT_CHARAT_FIRST": "گرفتن اولین حرف",
+ "TEXT_CHARAT_LAST": "گرفتن آخرین حرف",
+ "TEXT_CHARAT_RANDOM": "گرفتن حرف تصادفی",
+ "TEXT_CHARAT_TOOLTIP": "حرفی در موقعیت مشخص‌شده بر می‌گرداند.",
+ "TEXT_GET_SUBSTRING_TOOLTIP": "قسمت مشخصی‌شده‌ای از متن را بر می‌گرداند.",
+ "TEXT_GET_SUBSTRING_INPUT_IN_TEXT": "در متن",
+ "TEXT_GET_SUBSTRING_START_FROM_START": "گرفتن زیرمتن از حرف #",
+ "TEXT_GET_SUBSTRING_START_FROM_END": "گرفتن زیرمتن از حرف # به انتها",
+ "TEXT_GET_SUBSTRING_START_FIRST": "گرفتن زیرمتن از اولین حرف",
+ "TEXT_GET_SUBSTRING_END_FROM_START": "به حرف #",
+ "TEXT_GET_SUBSTRING_END_FROM_END": "به حرف # از انتها",
+ "TEXT_GET_SUBSTRING_END_LAST": "به آخرین حرف",
+ "TEXT_CHANGECASE_TOOLTIP": "بازگرداندن کپی متن در حالتی متفاوت.",
+ "TEXT_CHANGECASE_OPERATOR_UPPERCASE": "به حروف بزرگ",
+ "TEXT_CHANGECASE_OPERATOR_LOWERCASE": "به حروف کوچک",
+ "TEXT_CHANGECASE_OPERATOR_TITLECASE": "به حروف بزرگ عنوان",
+ "TEXT_TRIM_TOOLTIP": "کپی از متن با فاصله‌های حذف‌شده از یک یا هر دو پایان باز می‌گرداند.",
+ "TEXT_TRIM_OPERATOR_BOTH": "تراشیدن فاصله‌ها از هر دو طرف",
+ "TEXT_TRIM_OPERATOR_LEFT": "تراشیدن فاصله‌ها از طرف چپ",
+ "TEXT_TRIM_OPERATOR_RIGHT": "تراشیدن فاصله‌ها از طرف چپ",
+ "TEXT_PRINT_TITLE": "چاپ %1",
+ "TEXT_PRINT_TOOLTIP": "چاپ متن، عدد یا هر مقدار دیگر مشخص‌شده.",
+ "TEXT_PROMPT_TYPE_TEXT": "اعلان برای متن با پیام",
+ "TEXT_PROMPT_TYPE_NUMBER": "اعلان برای عدد با پیام",
+ "TEXT_PROMPT_TOOLTIP_NUMBER": "اعلان برای کاربر با یک عدد.",
+ "TEXT_PROMPT_TOOLTIP_TEXT": "اعلان برای کاربر برای یک متن.",
+ "LISTS_CREATE_EMPTY_TITLE": "ایجاد فهرست خالی",
+ "LISTS_CREATE_EMPTY_TOOLTIP": "فهرستی با طول صفر شامل هیچ رکورد داده‌ای بر می‌گرداند.",
+ "LISTS_CREATE_WITH_TOOLTIP": "فهرستی از هر عددی از موارد می‌سازد.",
+ "LISTS_CREATE_WITH_INPUT_WITH": "ایجاد فهرست با",
+ "LISTS_CREATE_WITH_CONTAINER_TITLE_ADD": "فهرست",
+ "LISTS_CREATE_WITH_CONTAINER_TOOLTIP": "اضافه کردن، حذف کردن یا ترتیب‌سازی مجدد بخش‌ها این بلوک فهرستی.",
+ "LISTS_CREATE_WITH_ITEM_TOOLTIP": "اضافه کردن یک مورد به فهرست.",
+ "LISTS_REPEAT_TOOLTIP": "فهرستی شامل مقادیر داده‌شدهٔ تکرار شده عدد مشخص‌شده می‌سازد.",
+ "LISTS_REPEAT_TITLE": "فهرستی با %1 تکرارشده به اندازهٔ %2 می‌سازد",
+ "LISTS_LENGTH_TITLE": "طول %1",
+ "LISTS_LENGTH_TOOLTIP": "طول یک فهرست را برمی‌گرداند.",
+ "LISTS_ISEMPTY_TITLE": "%1 خالی است",
+ "LISTS_ISEMPTY_TOOLTIP": "اگر فهرست خالی است مقدار صجیج بر می‌گرداند.",
+ "LISTS_INLIST": "در فهرست",
+ "LISTS_INDEX_OF_FIRST": "یافتن اولین رخ‌داد مورد",
+ "LISTS_INDEX_OF_LAST": "یافتن آخرین رخ‌داد مورد",
+ "LISTS_INDEX_OF_TOOLTIP": "شاخصی از اولین/آخرین رخ‌داد مورد در فهرست را بر می‌گرداند. %1 بر می‌گرداند اگر آیتم موجود نبود.",
+ "LISTS_GET_INDEX_GET": "گرفتن",
+ "LISTS_GET_INDEX_GET_REMOVE": "گرفتن و حذف‌کردن",
+ "LISTS_GET_INDEX_REMOVE": "حذف‌کردن",
+ "LISTS_GET_INDEX_FROM_END": "# از انتها",
+ "LISTS_GET_INDEX_FIRST": "اولین",
+ "LISTS_GET_INDEX_LAST": "آخرین",
+ "LISTS_GET_INDEX_RANDOM": "تصادفی",
+ "LISTS_INDEX_FROM_START_TOOLTIP": "%1 اولین مورد است.",
+ "LISTS_INDEX_FROM_END_TOOLTIP": "%1 آخرین مورد است.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_FROM": "موردی در محل مشخص‌شده بر می‌گرداند.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_FIRST": "اولین مورد یک فهرست را بر می‌گرداند.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_LAST": "آخرین مورد در یک فهرست را بر می‌گرداند.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_RANDOM": "یک مورد تصادفی در یک فهرست بر می‌گرداند.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM": "مورد در محل مشخص‌شده در فهرست را حذف و بر می‌گرداند.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST": "اولین مورد مشخص‌شده در فهرست را حذف و بر می‌گرداند.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST": "آخرین مورد مشخص‌شده در فهرست را حذف و بر می‌گرداند.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM": "مورد تصادفی‌ای را در فهرست حذف و بر می‌گرداند.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM": "مورد مشخص‌شده در موقعیت مشخص در یک فهرست را حذف و بر می‌گرداند.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST": "اولین مورد را در یک فهرست حذف می‌کند.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST": "آخرین مورد را در یک فهرست حذف می‌کند.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM": "یک مورد تصادفی را یک فهرست حذف می‌کند.",
+ "LISTS_SET_INDEX_SET": "مجموعه",
+ "LISTS_SET_INDEX_INSERT": "درج در",
+ "LISTS_SET_INDEX_INPUT_TO": "به عنوان",
+ "LISTS_SET_INDEX_TOOLTIP_SET_FROM": "مورد مشخص‌شده در یک فهرست را قرار می‌دهد.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_FIRST": "اولین مورد در یک فهرست را تعیین می‌کند.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_LAST": "آخرین مورد در یک فهرست را تعیین می‌کند.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_RANDOM": "یک مورد تصادفی در یک فهرست را تعیین می‌کند.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_FROM": "موردی در موقعیت مشخص‌شده در یک فهرست اضافه می‌کند.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST": "موردی به ته فهرست اضافه می‌کند.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_LAST": "موردی به ته فهرست الحاق می‌کند.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM": "مورد را به صورت تصادفی در یک فهرست می‌افزاید.",
+ "LISTS_GET_SUBLIST_START_FROM_START": "گرفتن زیرمجموعه‌ای از #",
+ "LISTS_GET_SUBLIST_START_FROM_END": "گرفتن زیرمجموعه‌ای از # از انتها",
+ "LISTS_GET_SUBLIST_START_FIRST": "گرفتن زیرمجموعه‌ای از ابتدا",
+ "LISTS_GET_SUBLIST_END_FROM_START": "به #",
+ "LISTS_GET_SUBLIST_END_FROM_END": "به # از انتها",
+ "LISTS_GET_SUBLIST_END_LAST": "به آخرین",
+ "LISTS_GET_SUBLIST_TOOLTIP": "کپی از قسمت مشخص‌شدهٔ لیست درست می‌کند.",
+ "LISTS_SORT_ORDER_ASCENDING": "صعودی",
+ "LISTS_SORT_ORDER_DESCENDING": "نزولی",
+ "LISTS_SORT_TYPE_NUMERIC": "عددی",
+ "LISTS_SORT_TYPE_TEXT": "حروفی ، الفبایی",
+ "LISTS_SORT_TYPE_IGNORECASE": "حروفی ، رد کردن مورد",
+ "LISTS_SPLIT_LIST_FROM_TEXT": "ایجاد فهرست از متن",
+ "LISTS_SPLIT_TEXT_FROM_LIST": "ایجاد متن از فهرست",
+ "LISTS_SPLIT_WITH_DELIMITER": "همراه جداساز",
+ "VARIABLES_GET_TOOLTIP": "مقدار این متغیر را بر می‌گرداند.",
+ "VARIABLES_GET_CREATE_SET": "درست‌کردن «تنظیم %1»",
+ "VARIABLES_SET": "مجموعه %1 به %2",
+ "VARIABLES_SET_TOOLTIP": "متغیر برابر با خروجی را مشخص می‌کند.",
+ "VARIABLES_SET_CREATE_GET": "درست‌کردن «گرفتن %1»",
+ "PROCEDURES_DEFNORETURN_TITLE": "به",
+ "PROCEDURES_DEFNORETURN_PROCEDURE": "انجام چیزی",
+ "PROCEDURES_BEFORE_PARAMS": "با:",
+ "PROCEDURES_CALL_BEFORE_PARAMS": "با:",
+ "PROCEDURES_DEFNORETURN_TOOLTIP": "تابعی می‌سازد بدون هیچ خروجی.",
+ "PROCEDURES_DEFNORETURN_COMMENT": "توصیف این عملکرد...",
+ "PROCEDURES_DEFRETURN_RETURN": "بازگشت",
+ "PROCEDURES_DEFRETURN_TOOLTIP": "تابعی با یک خروجی می‌سازد.",
+ "PROCEDURES_ALLOW_STATEMENTS": "اجازه اظهارات",
+ "PROCEDURES_DEF_DUPLICATE_WARNING": "اخطار: این تابعی پارامتر تکراری دارد.",
+ "PROCEDURES_CALLNORETURN_HELPURL": "https://fa.wikipedia.org/wiki/%D8%B1%D9%88%DB%8C%D9%87_%28%D8%B9%D9%84%D9%88%D9%85_%D8%B1%D8%A7%DB%8C%D8%A7%D9%86%D9%87%29",
+ "PROCEDURES_CALLNORETURN_TOOLTIP": "اجرای تابع تعریف‌شده توسط کاربر «%1».",
+ "PROCEDURES_CALLRETURN_HELPURL": "https://fa.wikipedia.org/wiki/%D8%B1%D9%88%DB%8C%D9%87_%28%D8%B9%D9%84%D9%88%D9%85_%D8%B1%D8%A7%DB%8C%D8%A7%D9%86%D9%87%29",
+ "PROCEDURES_CALLRETURN_TOOLTIP": "اجرای تابع تعریف‌شده توسط کاربر «%1» و استفاده از خروجی آن.",
+ "PROCEDURES_MUTATORCONTAINER_TITLE": "ورودی‌ها",
+ "PROCEDURES_MUTATORCONTAINER_TOOLTIP": "افزودن، حذف یا دوباره مرتب‌کردن ورودی این تابع.",
+ "PROCEDURES_MUTATORARG_TITLE": "نام ورودی:",
+ "PROCEDURES_MUTATORARG_TOOLTIP": "اضافه کردن ورودی به تابع.",
+ "PROCEDURES_HIGHLIGHT_DEF": "برجسته‌سازی تعریف تابع",
+ "PROCEDURES_CREATE_DO": "ساختن «%1»",
+ "PROCEDURES_IFRETURN_TOOLTIP": "اگر یک مقدار صحیح است، مقدار دوم را برگردان.",
+ "PROCEDURES_IFRETURN_WARNING": "اخطار: این بلوک احتمالاً فقط داخل یک تابع استفاده می‌شود."
+}
diff --git a/blockly/msg/json/fi.json b/blockly/msg/json/fi.json
new file mode 100644
index 0000000..b8b1969
--- /dev/null
+++ b/blockly/msg/json/fi.json
@@ -0,0 +1,330 @@
+{
+ "@metadata": {
+ "authors": [
+ "Nike",
+ "Silvonen",
+ "Espertus",
+ "Pettevi",
+ "McSalama",
+ "Espeox",
+ "SNuutti",
+ "PStudios",
+ "Mikahama"
+ ]
+ },
+ "VARIABLES_DEFAULT_NAME": "kohde",
+ "TODAY": "Tänään",
+ "DUPLICATE_BLOCK": "Kopioi",
+ "ADD_COMMENT": "Lisää kommentti",
+ "REMOVE_COMMENT": "Poista kommentti",
+ "EXTERNAL_INPUTS": "Ulkoiset syötteet",
+ "INLINE_INPUTS": "Tuo syötteet",
+ "DELETE_BLOCK": "Poista lohko",
+ "DELETE_X_BLOCKS": "Poista %1 lohkoa",
+ "DELETE_ALL_BLOCKS": "Poistetaanko kaikki %1 lohkoa?",
+ "CLEAN_UP": "Siivoa lohkot",
+ "COLLAPSE_BLOCK": "Sulje lohko",
+ "COLLAPSE_ALL": "Sulje lohkot",
+ "EXPAND_BLOCK": "Laajenna lohko",
+ "EXPAND_ALL": "Laajenna lohkot",
+ "DISABLE_BLOCK": "Passivoi lohko",
+ "ENABLE_BLOCK": "Aktivoi lohko",
+ "HELP": "Apua",
+ "UNDO": "Kumoa",
+ "REDO": "Tee uudelleen",
+ "CHANGE_VALUE_TITLE": "Muuta arvoa:",
+ "RENAME_VARIABLE": "Nimeä uudelleen muuttuja...",
+ "RENAME_VARIABLE_TITLE": "Nimeä uudelleen kaikki '%1' muuttujaa:",
+ "NEW_VARIABLE": "Uusi muuttuja...",
+ "NEW_VARIABLE_TITLE": "Uuden muuttujan nimi:",
+ "COLOUR_PICKER_HELPURL": "https://fi.wikipedia.org/wiki/V%C3%A4ri",
+ "COLOUR_PICKER_TOOLTIP": "Valitse väri paletista.",
+ "COLOUR_RANDOM_TITLE": "satunnainen väri",
+ "COLOUR_RANDOM_TOOLTIP": "Valitse väri sattumanvaraisesti.",
+ "COLOUR_RGB_HELPURL": "http://www.december.com/html/spec/colorper.html",
+ "COLOUR_RGB_TITLE": "väri, jossa on",
+ "COLOUR_RGB_RED": "punainen",
+ "COLOUR_RGB_GREEN": "vihreä",
+ "COLOUR_RGB_BLUE": "sininen",
+ "COLOUR_RGB_TOOLTIP": "Luo väri, jossa on tietty määrä punaista, vihreää ja sinistä. Kaikkien arvojen tulee olla välillä 0 - 100.",
+ "COLOUR_BLEND_TITLE": "sekoitus",
+ "COLOUR_BLEND_COLOUR1": "väri 1",
+ "COLOUR_BLEND_COLOUR2": "väri 2",
+ "COLOUR_BLEND_RATIO": "suhde",
+ "COLOUR_BLEND_TOOLTIP": "Sekoittaa kaksi väriä keskenään annetussa suhteessa (0.0 - 1.0).",
+ "CONTROLS_REPEAT_HELPURL": "https://en.wikipedia.org/wiki/For_loop",
+ "CONTROLS_REPEAT_TITLE": "toista %1 kertaa",
+ "CONTROLS_REPEAT_INPUT_DO": "tee",
+ "CONTROLS_REPEAT_TOOLTIP": "Suorita joukko lausekkeita useampi kertaa.",
+ "CONTROLS_WHILEUNTIL_OPERATOR_WHILE": "toista niin kauan kuin",
+ "CONTROLS_WHILEUNTIL_OPERATOR_UNTIL": "toista kunnes",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_WHILE": "Niin kauan kuin arvo on tosi, suorita joukko lausekkeita.",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL": "Niin kauan kuin arvo on epätosi, suorita joukko lausekkeita.",
+ "CONTROLS_FOR_TOOLTIP": "Aseta muuttujaan \"%1\" arvot alkuarvosta loppuarvoon annetun askeleen välein ja suorita joka askeleella annettu koodilohko.",
+ "CONTROLS_FOR_TITLE": "laske %1 Väli %2-%3 %4:n välein",
+ "CONTROLS_FOREACH_TITLE": "kullekin kohteelle %1 listassa %2",
+ "CONTROLS_FOREACH_TOOLTIP": "Aseta muuttujan %1 arvoksi kukin listan kohde vuorollaan ja suorita joukko lausekkeita.",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK": "poistu silmukasta",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE": "jatka silmukan seuraavaan toistoon",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK": "Poistu sisemmästä silmukasta.",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE": "Ohita loput tästä silmukasta ja siirry seuraavaan toistoon.",
+ "CONTROLS_FLOW_STATEMENTS_WARNING": "Varoitus: Tätä lohkoa voi käyttää vain silmukan sisällä.",
+ "CONTROLS_IF_TOOLTIP_1": "Jos arvo on tosi, suorita lauseke.",
+ "CONTROLS_IF_TOOLTIP_2": "Jos arvo on tosi, suorita ensimmäinen lohko lausekkeita. Muuten suorita toinen lohko lausekkeita.",
+ "CONTROLS_IF_TOOLTIP_3": "Jos ensimmäinen arvo on tosi, suorita ensimmäinen lohko lausekkeita. Muuten, jos toinen arvo on tosi, suorita toinen lohko lausekkeita.",
+ "CONTROLS_IF_TOOLTIP_4": "Jos ensimmäinen arvo on tosi, suorita ensimmäinen lohko lausekkeita. Muuten, jos toinen arvo on tosi, suorita toinen lohko lausekkeita. Jos mikään arvoista ei ole tosi, suorita viimeinen lohko lausekkeita.",
+ "CONTROLS_IF_MSG_IF": "jos",
+ "CONTROLS_IF_MSG_ELSEIF": "muuten jos",
+ "CONTROLS_IF_MSG_ELSE": "muuten",
+ "CONTROLS_IF_IF_TOOLTIP": "Lisää, poista tai järjestele osioita tässä \"jos\" lohkossa.",
+ "CONTROLS_IF_ELSEIF_TOOLTIP": "Lisää ehto \"jos\" lohkoon.",
+ "CONTROLS_IF_ELSE_TOOLTIP": "Lisää lopullinen \"muuten\" lohko \"jos\" lohkoon.",
+ "LOGIC_COMPARE_HELPURL": "https://fi.wikipedia.org/wiki/Ep%C3%A4yht%C3%A4l%C3%B6",
+ "LOGIC_COMPARE_TOOLTIP_EQ": "Palauta tosi, jos syötteet ovat keskenään samat.",
+ "LOGIC_COMPARE_TOOLTIP_NEQ": "Palauttaa tosi, jos syötteet eivät ole keskenään samoja.",
+ "LOGIC_COMPARE_TOOLTIP_LT": "Palauttaa tosi, jos ensimmäinen syöte on pienempi, kuin toinen.",
+ "LOGIC_COMPARE_TOOLTIP_LTE": "Palauttaa tosi, jos ensimmäinen syöte on pienempi tai yhtä suuri, kuin toinen.",
+ "LOGIC_COMPARE_TOOLTIP_GT": "Palauttaa tosi, jos ensimmäinen syöte on suurempi, kuin toinen.",
+ "LOGIC_COMPARE_TOOLTIP_GTE": "Palauttaa tosi, jos ensimmäinen syöte on suurempi tai yhtä suuri, kuin toinen.",
+ "LOGIC_OPERATION_TOOLTIP_AND": "Palauttaa tosi, jos kummatkin syötteet ovat tosia.",
+ "LOGIC_OPERATION_AND": "ja",
+ "LOGIC_OPERATION_TOOLTIP_OR": "Palauttaa tosi, jos ainakin yksi syötteistä on tosi.",
+ "LOGIC_OPERATION_OR": "tai",
+ "LOGIC_NEGATE_TITLE": "ei %1",
+ "LOGIC_NEGATE_TOOLTIP": "Palauttaa tosi, jos syöte on epätosi. Palauttaa epätosi, jos syöte on tosi.",
+ "LOGIC_BOOLEAN_TRUE": "tosi",
+ "LOGIC_BOOLEAN_FALSE": "epätosi",
+ "LOGIC_BOOLEAN_TOOLTIP": "Palauttaa joko tosi tai epätosi.",
+ "LOGIC_NULL": "ei mitään",
+ "LOGIC_NULL_TOOLTIP": "Palauttaa \"ei mitään\"-arvon.",
+ "LOGIC_TERNARY_CONDITION": "testi",
+ "LOGIC_TERNARY_IF_TRUE": "jos tosi",
+ "LOGIC_TERNARY_IF_FALSE": "jos epätosi",
+ "LOGIC_TERNARY_TOOLTIP": "Tarkistaa testin ehdon. Jos ehto on tosi, palauttaa \"jos tosi\" arvon, muuten palauttaa \"jos epätosi\" arvon.",
+ "MATH_NUMBER_HELPURL": "https://fi.wikipedia.org/wiki/Luku",
+ "MATH_NUMBER_TOOLTIP": "Luku.",
+ "MATH_ADDITION_SYMBOL": "+",
+ "MATH_SUBTRACTION_SYMBOL": "-",
+ "MATH_DIVISION_SYMBOL": "÷",
+ "MATH_MULTIPLICATION_SYMBOL": "⋅",
+ "MATH_POWER_SYMBOL": "^",
+ "MATH_TRIG_SIN": "sin",
+ "MATH_TRIG_COS": "cos",
+ "MATH_TRIG_TAN": "tan",
+ "MATH_TRIG_ASIN": "asin",
+ "MATH_TRIG_ACOS": "acos",
+ "MATH_TRIG_ATAN": "atan",
+ "MATH_ARITHMETIC_HELPURL": "http://fi.wikipedia.org/wiki/Aritmetiikka",
+ "MATH_ARITHMETIC_TOOLTIP_ADD": "Palauttaa kahden luvun summan.",
+ "MATH_ARITHMETIC_TOOLTIP_MINUS": "Palauttaa kahden luvun erotuksen.",
+ "MATH_ARITHMETIC_TOOLTIP_MULTIPLY": "Palauttaa kertolaskun tulon.",
+ "MATH_ARITHMETIC_TOOLTIP_DIVIDE": "Palauttaa jakolaskun osamäärän.",
+ "MATH_ARITHMETIC_TOOLTIP_POWER": "Palauttaa ensimmäisen luvun korotettuna toisen luvun potenssiin.",
+ "MATH_SINGLE_HELPURL": "https://fi.wikipedia.org/wiki/Neli%C3%B6juuri",
+ "MATH_SINGLE_OP_ROOT": "neliöjuuri",
+ "MATH_SINGLE_TOOLTIP_ROOT": "Palauttaa luvun neliöjuuren.",
+ "MATH_SINGLE_OP_ABSOLUTE": "itseisarvo",
+ "MATH_SINGLE_TOOLTIP_ABS": "Palauttaa luvun itseisarvon.",
+ "MATH_SINGLE_TOOLTIP_NEG": "Palauttaa numeron vastaluvun.",
+ "MATH_SINGLE_TOOLTIP_LN": "Palauttaa luvun luonnollisen logaritmin.",
+ "MATH_SINGLE_TOOLTIP_LOG10": "Palauttaa luvun kymmenkantaisen logaritmin.",
+ "MATH_SINGLE_TOOLTIP_EXP": "Palauttaa e potenssiin luku.",
+ "MATH_SINGLE_TOOLTIP_POW10": "Palauttaa 10 potenssiin luku.",
+ "MATH_TRIG_HELPURL": "https://fi.wikipedia.org/wiki/Trigonometrinen_funktio",
+ "MATH_TRIG_TOOLTIP_SIN": "Palauttaa asteluvun (ei radiaanin) sinin.",
+ "MATH_TRIG_TOOLTIP_COS": "Palauttaa asteluvun (ei radiaanin) kosinin.",
+ "MATH_TRIG_TOOLTIP_TAN": "Palauttaa asteluvun (ei radiaanin) tangentin.",
+ "MATH_TRIG_TOOLTIP_ASIN": "Palauttaa luvun arkussinin.",
+ "MATH_TRIG_TOOLTIP_ACOS": "Palauttaa luvun arkuskosinin.",
+ "MATH_TRIG_TOOLTIP_ATAN": "Palauttaa luvun arkustangentin.",
+ "MATH_CONSTANT_HELPURL": "https://en.wikipedia.org/wiki/Mathematical_constant",
+ "MATH_CONSTANT_TOOLTIP": "Palauttaa jonkin seuraavista vakioista: π (3.141…), e (2.718…), φ (1.618…), neliöjuuri(2) (1.414…), neliöjuuri(½) (0.707…), or ∞ (ääretön).",
+ "MATH_IS_EVEN": "on parillinen",
+ "MATH_IS_ODD": "on pariton",
+ "MATH_IS_PRIME": "on alkuluku",
+ "MATH_IS_WHOLE": "on kokonaisluku",
+ "MATH_IS_POSITIVE": "on positiivinen",
+ "MATH_IS_NEGATIVE": "on negatiivinen",
+ "MATH_IS_DIVISIBLE_BY": "on jaollinen luvulla",
+ "MATH_IS_TOOLTIP": "Tarkistaa onko numero parillinen, pariton, alkuluku, kokonaisluku, positiivinen, negatiivinen, tai jos se on jaollinen toisella luvulla. Palauttaa tosi tai epätosi.",
+ "MATH_CHANGE_HELPURL": "https://fi.wikipedia.org/wiki/Yhteenlasku",
+ "MATH_CHANGE_TITLE": "muuta %1 arvolla %2",
+ "MATH_CHANGE_TOOLTIP": "Lisää arvo muuttujaan '%1'.",
+ "MATH_ROUND_HELPURL": "https://fi.wikipedia.org/wiki/Py%C3%B6rist%C3%A4minen",
+ "MATH_ROUND_TOOLTIP": "Pyöristää luvun ylös- tai alaspäin.",
+ "MATH_ROUND_OPERATOR_ROUND": "pyöristä",
+ "MATH_ROUND_OPERATOR_ROUNDUP": "pyöristä ylöspäin",
+ "MATH_ROUND_OPERATOR_ROUNDDOWN": "pyöristä alaspäin",
+ "MATH_ONLIST_OPERATOR_SUM": "summa luvuista",
+ "MATH_ONLIST_TOOLTIP_SUM": "Palauttaa kaikkien annettujen lukujen summan.",
+ "MATH_ONLIST_OPERATOR_MIN": "pienin luvuista",
+ "MATH_ONLIST_TOOLTIP_MIN": "Palauttaa pienimmän annetuista luvuista.",
+ "MATH_ONLIST_OPERATOR_MAX": "suurin luvuista",
+ "MATH_ONLIST_TOOLTIP_MAX": "Palauttaa suurimman annetuista luvuista.",
+ "MATH_ONLIST_OPERATOR_AVERAGE": "keskiarvo luvuista",
+ "MATH_ONLIST_TOOLTIP_AVERAGE": "Palauttaa aritmeettisen keskiarvon annetuista luvuista.",
+ "MATH_ONLIST_OPERATOR_MEDIAN": "keskiluku luvuista",
+ "MATH_ONLIST_TOOLTIP_MEDIAN": "Palauttaa annettujen lukujen keskiluvun.",
+ "MATH_ONLIST_OPERATOR_MODE": "tyyppiarvo luvuista",
+ "MATH_ONLIST_TOOLTIP_MODE": "Palauttaa luettelon yleisimmistä luvuista annetussa listassa.",
+ "MATH_ONLIST_OPERATOR_STD_DEV": "keskihajonta luvuista",
+ "MATH_ONLIST_TOOLTIP_STD_DEV": "Palauttaa annettujen lukujen keskihajonnan.",
+ "MATH_ONLIST_OPERATOR_RANDOM": "satunnainen valinta luvuista",
+ "MATH_ONLIST_TOOLTIP_RANDOM": "Palauttaa satunnaisesti valitun luvun annetuista luvuista.",
+ "MATH_MODULO_HELPURL": "https://en.wikipedia.org/wiki/Modulo_operation",
+ "MATH_MODULO_TITLE": "%1 ÷ %2 jakojäännös",
+ "MATH_MODULO_TOOLTIP": "Palauttaa jakolaskun jakojäännöksen.",
+ "MATH_CONSTRAIN_TITLE": "rajoita %1 vähintään %2 enintään %3",
+ "MATH_CONSTRAIN_TOOLTIP": "Rajoittaa arvon annetulle suljetulle välille.",
+ "MATH_RANDOM_INT_HELPURL": "https://fi.wikipedia.org/wiki/Satunnaisluku",
+ "MATH_RANDOM_INT_TITLE": "Palauttaa satunnaisen kokonaisluvun väliltä %1-%2",
+ "MATH_RANDOM_INT_TOOLTIP": "Palauttaa satunnaisen kokonaisluvun kahden annetun arvon suljetulta väliltä.",
+ "MATH_RANDOM_FLOAT_HELPURL": "https://fi.wikipedia.org/wiki/Satunnaisluku",
+ "MATH_RANDOM_FLOAT_TITLE_RANDOM": "satunnainen murtoluku",
+ "MATH_RANDOM_FLOAT_TOOLTIP": "Palauttaa satunnaisen luvun oikealta puoliavoimesta välistä [0.0, 1.0).",
+ "TEXT_TEXT_HELPURL": "https://fi.wikipedia.org/wiki/Merkkijono",
+ "TEXT_TEXT_TOOLTIP": "Kirjain, sana tai rivi tekstiä.",
+ "TEXT_JOIN_TITLE_CREATEWITH": "luo teksti",
+ "TEXT_JOIN_TOOLTIP": "Luo merkkijonon liittämällä yhteen minkä tahansa määrän kohteita.",
+ "TEXT_CREATE_JOIN_TITLE_JOIN": "liitä",
+ "TEXT_CREATE_JOIN_TOOLTIP": "Lisää, poista tai uudelleen järjestä osioita tässä lohkossa.",
+ "TEXT_CREATE_JOIN_ITEM_TOOLTIP": "Lisää kohteen tekstiin.",
+ "TEXT_APPEND_TO": "muuttujaan",
+ "TEXT_APPEND_APPENDTEXT": "lisää teksti",
+ "TEXT_APPEND_TOOLTIP": "Lisää tekstiä muuttujaan '%1'.",
+ "TEXT_LENGTH_TITLE": "%1:n pituus",
+ "TEXT_LENGTH_TOOLTIP": "Palauttaa annetussa tekstissä olevien merkkien määrän (välilyönnit mukaan lukien).",
+ "TEXT_ISEMPTY_TITLE": "%1 on tyhjä",
+ "TEXT_ISEMPTY_TOOLTIP": "Palauttaa tosi, jos annettu teksti on tyhjä.",
+ "TEXT_INDEXOF_TOOLTIP": "Palauttaa ensin annetun tekstin ensimmäisen/viimeisen esiintymän osoitteen toisessa tekstissä. Palauttaa osoitteen %1 jos tekstiä ei löytynyt.",
+ "TEXT_INDEXOF_INPUT_INTEXT": "tekstistä",
+ "TEXT_INDEXOF_OPERATOR_FIRST": "etsi ensimmäinen esiintymä merkkijonolle",
+ "TEXT_INDEXOF_OPERATOR_LAST": "etsi viimeinen esiintymä merkkijonolle",
+ "TEXT_CHARAT_INPUT_INTEXT": "tekstistä",
+ "TEXT_CHARAT_FROM_START": "Hae kirjain nro",
+ "TEXT_CHARAT_FROM_END": "Hae kirjain nro (lopusta laskien)",
+ "TEXT_CHARAT_FIRST": "hae ensimmäinen kirjain",
+ "TEXT_CHARAT_LAST": "hae viimeinen kirjain",
+ "TEXT_CHARAT_RANDOM": "hae satunnainen kirjain",
+ "TEXT_CHARAT_TOOLTIP": "Palauttaa annetussa kohdassa olevan kirjaimen.",
+ "TEXT_GET_SUBSTRING_TOOLTIP": "Palauttaa määrätyn osan tekstistä.",
+ "TEXT_GET_SUBSTRING_INPUT_IN_TEXT": "merkkijonosta",
+ "TEXT_GET_SUBSTRING_START_FROM_START": "hae osa alkaen kirjaimesta nro",
+ "TEXT_GET_SUBSTRING_START_FROM_END": "hae osa alkaen kirjaimesta nro (lopusta laskien)",
+ "TEXT_GET_SUBSTRING_START_FIRST": "hae osa alkaen ensimmäisestä kirjaimesta",
+ "TEXT_GET_SUBSTRING_END_FROM_START": "kirjaimeen nro",
+ "TEXT_GET_SUBSTRING_END_FROM_END": "kirjaimeen nro (lopusta laskien)",
+ "TEXT_GET_SUBSTRING_END_LAST": "viimeiseen kirjaimeen",
+ "TEXT_CHANGECASE_TOOLTIP": "Palauttaa kopion tekstistä eri kirjainkoossa.",
+ "TEXT_CHANGECASE_OPERATOR_UPPERCASE": "isot kirjaimet",
+ "TEXT_CHANGECASE_OPERATOR_LOWERCASE": "pienet kirjaimet",
+ "TEXT_CHANGECASE_OPERATOR_TITLECASE": "isot alkukirjaimet",
+ "TEXT_TRIM_TOOLTIP": "Palauttaa kopion tekstistä siten, että välilyönnit on poistettu yhdestä tai molemmista päistä.",
+ "TEXT_TRIM_OPERATOR_BOTH": "poistaa välilyönnit kummaltakin puolelta",
+ "TEXT_TRIM_OPERATOR_LEFT": "poistaa välilyönnit vasemmalta puolelta",
+ "TEXT_TRIM_OPERATOR_RIGHT": "poistaa välilyönnit oikealta puolelta",
+ "TEXT_PRINT_TITLE": "tulosta %1",
+ "TEXT_PRINT_TOOLTIP": "Tulostaa annetun tekstin, numeron tai muun arvon.",
+ "TEXT_PROMPT_TYPE_TEXT": "käyttäen annettua viestiä, kehottaa syöttämään tekstiä",
+ "TEXT_PROMPT_TYPE_NUMBER": "käyttäen annettua viestiä, kehottaa syöttämään numeron",
+ "TEXT_PROMPT_TOOLTIP_NUMBER": "Kehottaa käyttäjää syöttämään numeron.",
+ "TEXT_PROMPT_TOOLTIP_TEXT": "Kehottaa käyttäjää syöttämään tekstiä.",
+ "LISTS_CREATE_EMPTY_TITLE": "Luo tyhjä lista",
+ "LISTS_CREATE_EMPTY_TOOLTIP": "Palauta tyhjä lista, pituus 0",
+ "LISTS_CREATE_WITH_TOOLTIP": "Luo lista, jossa on mikä tahansa määrä kohteita.",
+ "LISTS_CREATE_WITH_INPUT_WITH": "luo lista",
+ "LISTS_CREATE_WITH_CONTAINER_TITLE_ADD": "lista",
+ "LISTS_CREATE_WITH_CONTAINER_TOOLTIP": "Listää, poista tai järjestele uudestaan osioita tässä lohkossa.",
+ "LISTS_CREATE_WITH_ITEM_TOOLTIP": "Lisää kohde listaan.",
+ "LISTS_REPEAT_TOOLTIP": "Luo listan, jossa annettu arvo toistuu määrätyn monta kertaa.",
+ "LISTS_REPEAT_TITLE": "luo lista, jossa kohde %1 toistuu %2 kertaa",
+ "LISTS_LENGTH_TITLE": "%1:n pituus",
+ "LISTS_LENGTH_TOOLTIP": "Palauttaa listan pituuden.",
+ "LISTS_ISEMPTY_TITLE": "%1 on tyhjä",
+ "LISTS_ISEMPTY_TOOLTIP": "Palauttaa tosi, jos lista on tyhjä.",
+ "LISTS_INLIST": "listassa",
+ "LISTS_INDEX_OF_FIRST": "etsi ensimmäinen esiintymä kohteelle",
+ "LISTS_INDEX_OF_LAST": "etsi viimeinen esiintymä kohteelle",
+ "LISTS_INDEX_OF_TOOLTIP": "Palauttaa kohteen ensimmäisen/viimeisen esiintymän kohdan listassa. Palauttaa %1 jos kohdetta ei löydy.",
+ "LISTS_GET_INDEX_GET": "hae",
+ "LISTS_GET_INDEX_GET_REMOVE": "hae ja poista",
+ "LISTS_GET_INDEX_REMOVE": "poista",
+ "LISTS_GET_INDEX_FROM_START": "nro",
+ "LISTS_GET_INDEX_FROM_END": "nro (lopusta laskien)",
+ "LISTS_GET_INDEX_FIRST": "ensimmäinen",
+ "LISTS_GET_INDEX_LAST": "viimeinen",
+ "LISTS_GET_INDEX_RANDOM": "satunnainen",
+ "LISTS_INDEX_FROM_START_TOOLTIP": "Numero %1 tarkoittaa listan ensimmäistä kohdetta.",
+ "LISTS_INDEX_FROM_END_TOOLTIP": "Numero %1 tarkoittaa listan viimeistä kohdetta.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_FROM": "Palauta kohde annetusta kohdasta listaa.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_FIRST": "Palauta ensimmäinen kohde listalta.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_LAST": "Palauttaa listan viimeisen kohteen.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_RANDOM": "Palauttaa satunnaisen kohteen listalta.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM": "Poistaa ja palauttaa kohteen listan annetusta kohdasta.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST": "Poistaa ja palauttaa ensimmäisen kohteen listalta.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST": "Poistaa ja palauttaa viimeisen kohteen listalta.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM": "Poistaa ja palauttaa satunnaisen kohteen listalta.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM": "Poistaa kohteen listalta annetusta kohtaa.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST": "Poistaa ensimmäisen kohteen listalta.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST": "Poistaa viimeisen kohteen listalta.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM": "Poistaa satunnaisen kohteen listalta.",
+ "LISTS_SET_INDEX_SET": "aseta",
+ "LISTS_SET_INDEX_INSERT": "lisää kohtaan",
+ "LISTS_SET_INDEX_INPUT_TO": "kohteeksi",
+ "LISTS_SET_INDEX_TOOLTIP_SET_FROM": "Asettaa kohteen annettuun kohtaan listassa.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_FIRST": "Asettaa listan ensimmäisen kohteen.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_LAST": "Asettaa listan viimeisen kohteen.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_RANDOM": "Asettaa satunnaisen kohteen listassa.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_FROM": "Lisää kohteen annettuun kohtaan listassa.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST": "Lisää kohteen listan kärkeen.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_LAST": "Lisää kohteen listan loppuun.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM": "Lisää kohteen satunnaiseen kohtaan listassa.",
+ "LISTS_GET_SUBLIST_START_FROM_START": "hae osalista alkaen kohdasta",
+ "LISTS_GET_SUBLIST_START_FROM_END": "hae osalista alkaen kohdasta (lopusta laskien)",
+ "LISTS_GET_SUBLIST_START_FIRST": "hae osalista alkaen alusta",
+ "LISTS_GET_SUBLIST_END_FROM_START": "päättyen kohtaan",
+ "LISTS_GET_SUBLIST_END_FROM_END": "päättyen kohtaan (lopusta laskien)",
+ "LISTS_GET_SUBLIST_END_LAST": "viimeinen",
+ "LISTS_GET_SUBLIST_TOOLTIP": "Luo kopio määrätystä kohden listaa.",
+ "LISTS_SORT_HELPURL": "https://github.com/google/blockly/wiki/Lists#sorting-a-list",
+ "LISTS_SORT_TITLE": "lajittele %1 %2 %3",
+ "LISTS_SORT_TOOLTIP": "Lajittele kopio luettelosta.",
+ "LISTS_SORT_ORDER_ASCENDING": "nouseva",
+ "LISTS_SORT_ORDER_DESCENDING": "laskeva",
+ "LISTS_SORT_TYPE_NUMERIC": "numeerinen",
+ "LISTS_SORT_TYPE_TEXT": "aakkosjärjestys",
+ "LISTS_SORT_TYPE_IGNORECASE": "aakkosjärjestyksessä, ohita kapitaalit",
+ "LISTS_SPLIT_LIST_FROM_TEXT": "tee lista tekstistä",
+ "LISTS_SPLIT_TEXT_FROM_LIST": "tee listasta teksti",
+ "LISTS_SPLIT_WITH_DELIMITER": "erottimen kanssa",
+ "LISTS_SPLIT_TOOLTIP_SPLIT": "Jaa teksti osiin erotinmerkin perusteella ja järjestä osat listaksi.",
+ "LISTS_SPLIT_TOOLTIP_JOIN": "Yhdistä luettelon tekstit yhdeksi tekstiksi, erotettuina välimerkillä.",
+ "VARIABLES_GET_TOOLTIP": "Palauttaa muuttujan arvon.",
+ "VARIABLES_GET_CREATE_SET": "Luo 'aseta %1'",
+ "VARIABLES_SET": "aseta %1 arvoksi %2",
+ "VARIABLES_SET_TOOLTIP": "Asettaa muutujan arvoksi annetun syötteen.",
+ "VARIABLES_SET_CREATE_GET": "Luo 'hae %1'",
+ "PROCEDURES_DEFNORETURN_TITLE": "tehdäksesi",
+ "PROCEDURES_DEFNORETURN_PROCEDURE": "tee jotain",
+ "PROCEDURES_BEFORE_PARAMS": "parametrit:",
+ "PROCEDURES_CALL_BEFORE_PARAMS": "parametrit:",
+ "PROCEDURES_DEFNORETURN_TOOLTIP": "Luo funktio, jolla ei ole tuotosta.",
+ "PROCEDURES_DEFNORETURN_COMMENT": "Kuvaile tämä funktio...",
+ "PROCEDURES_DEFRETURN_RETURN": "palauta",
+ "PROCEDURES_DEFRETURN_TOOLTIP": "Luo funktio, jolla ei ole tuotosta.",
+ "PROCEDURES_ALLOW_STATEMENTS": "salli kommentit",
+ "PROCEDURES_DEF_DUPLICATE_WARNING": "Varoitus: tällä funktiolla on sama parametri useamman kerran.",
+ "PROCEDURES_CALLNORETURN_HELPURL": "https://fi.wikipedia.org/wiki/Aliohjelma",
+ "PROCEDURES_CALLNORETURN_TOOLTIP": "Suorittaa käyttäjän määrittelemä funktio '%1'.",
+ "PROCEDURES_CALLRETURN_HELPURL": "https://fi.wikipedia.org/wiki/Aliohjelma",
+ "PROCEDURES_CALLRETURN_TOOLTIP": "Suorittaa käyttäjän määrittelemän funktion '%1' ja käyttää sen tuotosta.",
+ "PROCEDURES_MUTATORCONTAINER_TITLE": "syötteet",
+ "PROCEDURES_MUTATORCONTAINER_TOOLTIP": "Lisää, poista tai järjestele uudelleen tämän toiminnon tulot.",
+ "PROCEDURES_MUTATORARG_TITLE": "syötteen nimi:",
+ "PROCEDURES_MUTATORARG_TOOLTIP": "Lisää sisääntulon funktioon.",
+ "PROCEDURES_HIGHLIGHT_DEF": "Korosta funktion määritelmä",
+ "PROCEDURES_CREATE_DO": "Luo '%1'",
+ "PROCEDURES_IFRETURN_TOOLTIP": "Jos arvo on tosi, palauta toinen arvo.",
+ "PROCEDURES_IFRETURN_HELPURL": "http://c2.com/cgi/wiki?GuardClause",
+ "PROCEDURES_IFRETURN_WARNING": "Varoitus: tätä lohkoa voi käyttää vain funktion määrityksessä."
+}
diff --git a/blockly/msg/json/fr.json b/blockly/msg/json/fr.json
new file mode 100644
index 0000000..c5903f5
--- /dev/null
+++ b/blockly/msg/json/fr.json
@@ -0,0 +1,325 @@
+{
+ "@metadata": {
+ "authors": [
+ "Espertus",
+ "Gomoko",
+ "ProfGra",
+ "Wladek92",
+ "Fredlefred",
+ "Grimault",
+ "Rixed",
+ "Frigory"
+ ]
+ },
+ "VARIABLES_DEFAULT_NAME": "élément",
+ "TODAY": "Aujourd'hui",
+ "DUPLICATE_BLOCK": "Dupliquer",
+ "ADD_COMMENT": "Ajouter un commentaire",
+ "REMOVE_COMMENT": "Supprimer un commentaire",
+ "EXTERNAL_INPUTS": "Entrées externes",
+ "INLINE_INPUTS": "Entrées en ligne",
+ "DELETE_BLOCK": "Supprimer le bloc",
+ "DELETE_X_BLOCKS": "Supprimer %1 blocs",
+ "DELETE_ALL_BLOCKS": "Supprimer ces %1 blocs ?",
+ "CLEAN_UP": "Nettoyer les blocs",
+ "COLLAPSE_BLOCK": "Réduire le bloc",
+ "COLLAPSE_ALL": "Réduire les blocs",
+ "EXPAND_BLOCK": "Développer le bloc",
+ "EXPAND_ALL": "Développer les blocs",
+ "DISABLE_BLOCK": "Désactiver le bloc",
+ "ENABLE_BLOCK": "Activer le bloc",
+ "HELP": "Aide",
+ "UNDO": "Annuler",
+ "REDO": "Refaire",
+ "CHANGE_VALUE_TITLE": "Modifier la valeur :",
+ "RENAME_VARIABLE": "Renommer la variable…",
+ "RENAME_VARIABLE_TITLE": "Renommer toutes les variables « %1 » en :",
+ "NEW_VARIABLE": "Créer une variable...",
+ "NEW_VARIABLE_TITLE": "Nouveau nom de la variable :",
+ "VARIABLE_ALREADY_EXISTS": "Une variable appelée '%1' existe déjà.",
+ "DELETE_VARIABLE_CONFIRMATION": "Supprimer %1 utilisations de la variable '%2' ?",
+ "DELETE_VARIABLE": "Supprimer la variable '%1'",
+ "COLOUR_PICKER_HELPURL": "https://fr.wikipedia.org/wiki/Couleur",
+ "COLOUR_PICKER_TOOLTIP": "Choisir une couleur dans la palette.",
+ "COLOUR_RANDOM_TITLE": "couleur aléatoire",
+ "COLOUR_RANDOM_TOOLTIP": "Choisir une couleur au hasard.",
+ "COLOUR_RGB_HELPURL": "http://www.december.com/html/spec/colorper.html",
+ "COLOUR_RGB_TITLE": "colorier avec",
+ "COLOUR_RGB_RED": "rouge",
+ "COLOUR_RGB_GREEN": "vert",
+ "COLOUR_RGB_BLUE": "bleu",
+ "COLOUR_RGB_TOOLTIP": "Créer une couleur avec la quantité spécifiée de rouge, vert et bleu. Les valeurs doivent être comprises entre 0 et 100.",
+ "COLOUR_BLEND_HELPURL": "http://meyerweb.com/eric/tools/color-blend/",
+ "COLOUR_BLEND_TITLE": "mélanger",
+ "COLOUR_BLEND_COLOUR1": "couleur 1",
+ "COLOUR_BLEND_COLOUR2": "couleur 2",
+ "COLOUR_BLEND_RATIO": "taux",
+ "COLOUR_BLEND_TOOLTIP": "Mélange deux couleurs dans une proportion donnée (de 0.0 à 1.0).",
+ "CONTROLS_REPEAT_HELPURL": "http://fr.wikipedia.org/wiki/Boucle_for",
+ "CONTROLS_REPEAT_TITLE": "répéter %1 fois",
+ "CONTROLS_REPEAT_INPUT_DO": "faire",
+ "CONTROLS_REPEAT_TOOLTIP": "Exécuter des instructions plusieurs fois.",
+ "CONTROLS_WHILEUNTIL_OPERATOR_WHILE": "répéter tant que",
+ "CONTROLS_WHILEUNTIL_OPERATOR_UNTIL": "répéter jusqu’à",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_WHILE": "Tant qu’une valeur est vraie, alors exécuter des instructions.",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL": "Tant qu’une valeur est fausse, alors exécuter des instructions.",
+ "CONTROLS_FOR_TOOLTIP": "Faire prendre à la variable « %1 » les valeurs depuis le nombre de début jusqu’au nombre de fin, en s’incrémentant du pas spécifié, et exécuter les instructions spécifiées.",
+ "CONTROLS_FOR_TITLE": "compter avec %1 de %2 à %3 par %4",
+ "CONTROLS_FOREACH_TITLE": "pour chaque élément %1 dans la liste %2",
+ "CONTROLS_FOREACH_TOOLTIP": "Pour chaque élément d’une liste, assigner la valeur de l’élément à la variable '%1', puis exécuter des instructions.",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK": "quitter la boucle",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE": "passer à l’itération de boucle suivante",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK": "Sortir de la boucle englobante.",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE": "Sauter le reste de cette boucle, et poursuivre avec l’itération suivante.",
+ "CONTROLS_FLOW_STATEMENTS_WARNING": "Attention : Ce bloc ne devrait être utilisé que dans une boucle.",
+ "CONTROLS_IF_TOOLTIP_1": "Si une valeur est vraie, alors exécuter certains ordres.",
+ "CONTROLS_IF_TOOLTIP_2": "Si une valeur est vraie, alors exécuter le premier bloc d’ordres. Sinon, exécuter le second bloc d’ordres.",
+ "CONTROLS_IF_TOOLTIP_3": "Si la première valeur est vraie, alors exécuter le premier bloc d’ordres. Sinon, si la seconde valeur est vraie, exécuter le second bloc d’ordres.",
+ "CONTROLS_IF_TOOLTIP_4": "Si la première valeur est vraie, alors exécuter le premier bloc d’ordres. Sinon, si la seconde valeur est vraie, exécuter le second bloc d’ordres. Si aucune des valeurs n’est vraie, exécuter le dernier bloc d’ordres.",
+ "CONTROLS_IF_MSG_IF": "si",
+ "CONTROLS_IF_MSG_ELSEIF": "sinon si",
+ "CONTROLS_IF_MSG_ELSE": "sinon",
+ "CONTROLS_IF_IF_TOOLTIP": "Ajouter, supprimer ou réordonner les sections pour reconfigurer ce bloc si.",
+ "CONTROLS_IF_ELSEIF_TOOLTIP": "Ajouter une condition au bloc si.",
+ "CONTROLS_IF_ELSE_TOOLTIP": "Ajouter une condition finale fourre-tout au bloc si.",
+ "LOGIC_COMPARE_HELPURL": "https://fr.wikipedia.org/wiki/Inegalite_(mathematiques)",
+ "LOGIC_COMPARE_TOOLTIP_EQ": "Renvoyer vrai si les deux entrées sont égales.",
+ "LOGIC_COMPARE_TOOLTIP_NEQ": "Renvoyer vrai si les deux entrées sont différentes.",
+ "LOGIC_COMPARE_TOOLTIP_LT": "Renvoyer vrai si la première entrée est plus petite que la seconde.",
+ "LOGIC_COMPARE_TOOLTIP_LTE": "Renvoyer vrai si la première entrée est plus petite ou égale à la seconde.",
+ "LOGIC_COMPARE_TOOLTIP_GT": "Renvoyer vrai si la première entrée est plus grande que la seconde.",
+ "LOGIC_COMPARE_TOOLTIP_GTE": "Renvoyer vrai si la première entrée est plus grande ou égale à la seconde.",
+ "LOGIC_OPERATION_TOOLTIP_AND": "Renvoyer vrai si les deux entrées sont vraies.",
+ "LOGIC_OPERATION_AND": "et",
+ "LOGIC_OPERATION_TOOLTIP_OR": "Renvoyer vrai si au moins une des entrées est vraie.",
+ "LOGIC_OPERATION_OR": "ou",
+ "LOGIC_NEGATE_TITLE": "pas %1",
+ "LOGIC_NEGATE_TOOLTIP": "Renvoie vrai si l’entrée est fausse. Renvoie faux si l’entrée est vraie.",
+ "LOGIC_BOOLEAN_TRUE": "vrai",
+ "LOGIC_BOOLEAN_FALSE": "faux",
+ "LOGIC_BOOLEAN_TOOLTIP": "Renvoie soit vrai soit faux.",
+ "LOGIC_NULL_HELPURL": "https://en.wikipedia.org/wiki/Nullable_type",
+ "LOGIC_NULL": "nul",
+ "LOGIC_NULL_TOOLTIP": "Renvoie nul.",
+ "LOGIC_TERNARY_HELPURL": "https://en.wikipedia.org/wiki/%3F:",
+ "LOGIC_TERNARY_CONDITION": "test",
+ "LOGIC_TERNARY_IF_TRUE": "si vrai",
+ "LOGIC_TERNARY_IF_FALSE": "si faux",
+ "LOGIC_TERNARY_TOOLTIP": "Vérifier la condition dans 'test'. Si elle est vraie, renvoie la valeur 'si vrai' ; sinon renvoie la valeur 'si faux'.",
+ "MATH_NUMBER_HELPURL": "https://fr.wikipedia.org/wiki/Nombre",
+ "MATH_NUMBER_TOOLTIP": "Un nombre.",
+ "MATH_ARITHMETIC_HELPURL": "https://fr.wikipedia.org/wiki/Arithmetique",
+ "MATH_ARITHMETIC_TOOLTIP_ADD": "Renvoie la somme des deux nombres.",
+ "MATH_ARITHMETIC_TOOLTIP_MINUS": "Renvoie la différence des deux nombres.",
+ "MATH_ARITHMETIC_TOOLTIP_MULTIPLY": "Renvoie le produit des deux nombres.",
+ "MATH_ARITHMETIC_TOOLTIP_DIVIDE": "Renvoie le quotient des deux nombres.",
+ "MATH_ARITHMETIC_TOOLTIP_POWER": "Renvoie le premier nombre élevé à la puissance du second.",
+ "MATH_SINGLE_HELPURL": "https://fr.wikipedia.org/wiki/Racine_carree",
+ "MATH_SINGLE_OP_ROOT": "racine carrée",
+ "MATH_SINGLE_TOOLTIP_ROOT": "Renvoie la racine carrée d’un nombre.",
+ "MATH_SINGLE_OP_ABSOLUTE": "valeur absolue",
+ "MATH_SINGLE_TOOLTIP_ABS": "Renvoie la valeur absolue d’un nombre.",
+ "MATH_SINGLE_TOOLTIP_NEG": "Renvoie l’opposé d’un nombre",
+ "MATH_SINGLE_TOOLTIP_LN": "Renvoie le logarithme naturel d’un nombre.",
+ "MATH_SINGLE_TOOLTIP_LOG10": "Renvoie le logarithme base 10 d’un nombre.",
+ "MATH_SINGLE_TOOLTIP_EXP": "Renvoie e à la puissance d’un nombre.",
+ "MATH_SINGLE_TOOLTIP_POW10": "Renvoie 10 à la puissance d’un nombre.",
+ "MATH_TRIG_HELPURL": "https://en.wikipedia.org/wiki/Trigonometric_functions",
+ "MATH_TRIG_TOOLTIP_SIN": "Renvoie le sinus d’un angle en degrés (pas en radians).",
+ "MATH_TRIG_TOOLTIP_COS": "Renvoie le cosinus d’un angle en degrés (pas en radians).",
+ "MATH_TRIG_TOOLTIP_TAN": "Renvoie la tangente d’un angle en degrés (pas en radians).",
+ "MATH_TRIG_TOOLTIP_ASIN": "Renvoie l’arcsinus d’un nombre.",
+ "MATH_TRIG_TOOLTIP_ACOS": "Renvoie l’arccosinus d’un nombre.",
+ "MATH_TRIG_TOOLTIP_ATAN": "Renvoie l’arctangente d’un nombre.",
+ "MATH_CONSTANT_HELPURL": "https://en.wikipedia.org/wiki/Mathematical_constant",
+ "MATH_CONSTANT_TOOLTIP": "Renvoie une des constantes courantes : π (3.141…), e (2.718…), φ (1.618…), sqrt(2) (1.414…), sqrt(½) (0.707…), ou ∞ (infini).",
+ "MATH_IS_EVEN": "est pair",
+ "MATH_IS_ODD": "est impair",
+ "MATH_IS_PRIME": "est premier",
+ "MATH_IS_WHOLE": "est entier",
+ "MATH_IS_POSITIVE": "est positif",
+ "MATH_IS_NEGATIVE": "est négatif",
+ "MATH_IS_DIVISIBLE_BY": "est divisible par",
+ "MATH_IS_TOOLTIP": "Vérifier si un nombre est pair, impair, premier, entier, positif, négatif, ou s’il est divisible par un certain nombre. Renvoie vrai ou faux.",
+ "MATH_CHANGE_HELPURL": "https://en.wikipedia.org/wiki/Programming_idiom#Incrementing_a_counter",
+ "MATH_CHANGE_TITLE": "incrémenter %1 de %2",
+ "MATH_CHANGE_TOOLTIP": "Ajouter un nombre à la variable '%1'.",
+ "MATH_ROUND_HELPURL": "https://en.wikipedia.org/wiki/Rounding",
+ "MATH_ROUND_TOOLTIP": "Arrondir un nombre au-dessus ou au-dessous.",
+ "MATH_ROUND_OPERATOR_ROUND": "arrondir",
+ "MATH_ROUND_OPERATOR_ROUNDUP": "arrondir par excès",
+ "MATH_ROUND_OPERATOR_ROUNDDOWN": "arrondir par défaut",
+ "MATH_ONLIST_OPERATOR_SUM": "somme de la liste",
+ "MATH_ONLIST_TOOLTIP_SUM": "Renvoyer la somme de tous les nombres dans la liste.",
+ "MATH_ONLIST_OPERATOR_MIN": "minimum de la liste",
+ "MATH_ONLIST_TOOLTIP_MIN": "Renvoyer le plus petit nombre dans la liste.",
+ "MATH_ONLIST_OPERATOR_MAX": "maximum de la liste",
+ "MATH_ONLIST_TOOLTIP_MAX": "Renvoyer le plus grand nombre dans la liste.",
+ "MATH_ONLIST_OPERATOR_AVERAGE": "moyenne de la liste",
+ "MATH_ONLIST_TOOLTIP_AVERAGE": "Renvoyer la moyenne (arithmétique) des valeurs numériques dans la liste.",
+ "MATH_ONLIST_OPERATOR_MEDIAN": "médiane de la liste",
+ "MATH_ONLIST_TOOLTIP_MEDIAN": "Renvoyer le nombre médian de la liste.",
+ "MATH_ONLIST_OPERATOR_MODE": "majoritaires de la liste",
+ "MATH_ONLIST_TOOLTIP_MODE": "Renvoyer une liste des élément(s) le(s) plus courant(s) dans la liste.",
+ "MATH_ONLIST_OPERATOR_STD_DEV": "écart-type de la liste",
+ "MATH_ONLIST_TOOLTIP_STD_DEV": "Renvoyer l’écart-type de la liste.",
+ "MATH_ONLIST_OPERATOR_RANDOM": "élément aléatoire de la liste",
+ "MATH_ONLIST_TOOLTIP_RANDOM": "Renvoyer un élément dans la liste au hasard.",
+ "MATH_MODULO_HELPURL": "https://en.wikipedia.org/wiki/Modulo_operation",
+ "MATH_MODULO_TITLE": "reste de %1 ÷ %2",
+ "MATH_MODULO_TOOLTIP": "Renvoyer le reste de la division euclidienne des deux nombres.",
+ "MATH_CONSTRAIN_TITLE": "contraindre %1 entre %2 et %3",
+ "MATH_CONSTRAIN_TOOLTIP": "Contraindre un nombre à être entre les limites spécifiées (incluses).",
+ "MATH_RANDOM_INT_HELPURL": "https://en.wikipedia.org/wiki/Random_number_generation",
+ "MATH_RANDOM_INT_TITLE": "entier aléatoire entre %1 et %2",
+ "MATH_RANDOM_INT_TOOLTIP": "Renvoyer un entier aléatoire entre les deux limites spécifiées, incluses.",
+ "MATH_RANDOM_FLOAT_HELPURL": "https://en.wikipedia.org/wiki/Random_number_generation",
+ "MATH_RANDOM_FLOAT_TITLE_RANDOM": "fraction aléatoire",
+ "MATH_RANDOM_FLOAT_TOOLTIP": "Renvoyer une fraction aléatoire entre 0.0 (inclus) et 1.0 (exclus).",
+ "TEXT_TEXT_HELPURL": "https://en.wikipedia.org/wiki/String_(computer_science)",
+ "TEXT_TEXT_TOOLTIP": "Une lettre, un mot ou une ligne de texte.",
+ "TEXT_JOIN_TITLE_CREATEWITH": "créer un texte avec",
+ "TEXT_JOIN_TOOLTIP": "Créer un morceau de texte en agrégeant un nombre quelconque d’éléments.",
+ "TEXT_CREATE_JOIN_TITLE_JOIN": "joindre",
+ "TEXT_CREATE_JOIN_TOOLTIP": "Ajouter, supprimer, ou réordonner des sections pour reconfigurer ce bloc de texte.",
+ "TEXT_CREATE_JOIN_ITEM_TOOLTIP": "Ajouter un élément au texte.",
+ "TEXT_APPEND_TO": "à",
+ "TEXT_APPEND_APPENDTEXT": "ajouter le texte",
+ "TEXT_APPEND_TOOLTIP": "Ajouter du texte à la variable '%1'.",
+ "TEXT_LENGTH_TITLE": "longueur de %1",
+ "TEXT_LENGTH_TOOLTIP": "Renvoie le nombre de lettres (espaces compris) dans le texte fourni.",
+ "TEXT_ISEMPTY_TITLE": "%1 est vide",
+ "TEXT_ISEMPTY_TOOLTIP": "Renvoie vrai si le texte fourni est vide.",
+ "TEXT_INDEXOF_TOOLTIP": "Renvoie l’index de la première/dernière occurrence de la première chaîne dans la seconde. Renvoie %1 si la chaîne n’est pas trouvée.",
+ "TEXT_INDEXOF_INPUT_INTEXT": "dans le texte",
+ "TEXT_INDEXOF_OPERATOR_FIRST": "trouver la première occurrence de la chaîne",
+ "TEXT_INDEXOF_OPERATOR_LAST": "trouver la dernière occurrence de la chaîne",
+ "TEXT_CHARAT_INPUT_INTEXT": "dans le texte",
+ "TEXT_CHARAT_FROM_START": "obtenir la lettre #",
+ "TEXT_CHARAT_FROM_END": "obtenir la lettre # depuis la fin",
+ "TEXT_CHARAT_FIRST": "obtenir la première lettre",
+ "TEXT_CHARAT_LAST": "obtenir la dernière lettre",
+ "TEXT_CHARAT_RANDOM": "obtenir une lettre au hasard",
+ "TEXT_CHARAT_TOOLTIP": "Renvoie la lettre à la position indiquée.",
+ "TEXT_GET_SUBSTRING_TOOLTIP": "Renvoie une partie indiquée du texte.",
+ "TEXT_GET_SUBSTRING_INPUT_IN_TEXT": "dans le texte",
+ "TEXT_GET_SUBSTRING_START_FROM_START": "obtenir la sous-chaîne depuis la lettre #",
+ "TEXT_GET_SUBSTRING_START_FROM_END": "obtenir la sous-chaîne depuis la lettre # depuis la fin",
+ "TEXT_GET_SUBSTRING_START_FIRST": "obtenir la sous-chaîne depuis la première lettre",
+ "TEXT_GET_SUBSTRING_END_FROM_START": "jusqu’à la lettre #",
+ "TEXT_GET_SUBSTRING_END_FROM_END": "jusqu’à la lettre # depuis la fin",
+ "TEXT_GET_SUBSTRING_END_LAST": "jusqu’à la dernière lettre",
+ "TEXT_CHANGECASE_TOOLTIP": "Renvoyer une copie du texte dans une autre casse.",
+ "TEXT_CHANGECASE_OPERATOR_UPPERCASE": "en MAJUSCULES",
+ "TEXT_CHANGECASE_OPERATOR_LOWERCASE": "en minuscules",
+ "TEXT_CHANGECASE_OPERATOR_TITLECASE": "en Majuscule Au Début De Chaque Mot",
+ "TEXT_TRIM_TOOLTIP": "Renvoyer une copie du texte avec les espaces supprimés d’un bout ou des deux.",
+ "TEXT_TRIM_OPERATOR_BOTH": "supprimer les espaces des deux côtés",
+ "TEXT_TRIM_OPERATOR_LEFT": "supprimer les espaces du côté gauche",
+ "TEXT_TRIM_OPERATOR_RIGHT": "supprimer les espaces du côté droit",
+ "TEXT_PRINT_TITLE": "afficher %1",
+ "TEXT_PRINT_TOOLTIP": "Afficher le texte, le nombre ou une autre valeur spécifié.",
+ "TEXT_PROMPT_TYPE_TEXT": "invite pour un texte avec un message",
+ "TEXT_PROMPT_TYPE_NUMBER": "invite pour un nombre avec un message",
+ "TEXT_PROMPT_TOOLTIP_NUMBER": "Demander un nombre à l’utilisateur.",
+ "TEXT_PROMPT_TOOLTIP_TEXT": "Demander un texte à l’utilisateur.",
+ "LISTS_CREATE_EMPTY_TITLE": "créer une liste vide",
+ "LISTS_CREATE_EMPTY_TOOLTIP": "Renvoyer une liste, de longueur 0, ne contenant aucun enregistrement",
+ "LISTS_CREATE_WITH_HELPURL": "https://github.com/google/blockly/wiki/Lists#create-list-with",
+ "LISTS_CREATE_WITH_TOOLTIP": "Créer une liste avec un nombre quelconque d’éléments.",
+ "LISTS_CREATE_WITH_INPUT_WITH": "créer une liste avec",
+ "LISTS_CREATE_WITH_CONTAINER_TITLE_ADD": "liste",
+ "LISTS_CREATE_WITH_CONTAINER_TOOLTIP": "Ajouter, supprimer, ou réordonner les sections pour reconfigurer ce bloc de liste.",
+ "LISTS_CREATE_WITH_ITEM_TOOLTIP": "Ajouter un élément à la liste.",
+ "LISTS_REPEAT_TOOLTIP": "Crée une liste consistant en la valeur fournie répétée le nombre de fois indiqué.",
+ "LISTS_REPEAT_TITLE": "créer une liste avec l’élément %1 répété %2 fois",
+ "LISTS_LENGTH_TITLE": "longueur de %1",
+ "LISTS_LENGTH_TOOLTIP": "Renvoie la longueur d’une liste.",
+ "LISTS_ISEMPTY_TITLE": "%1 est vide",
+ "LISTS_ISEMPTY_TOOLTIP": "Renvoie vrai si la liste est vide.",
+ "LISTS_INLIST": "dans la liste",
+ "LISTS_INDEX_OF_FIRST": "trouver la première occurrence de l’élément",
+ "LISTS_INDEX_OF_LAST": "trouver la dernière occurrence de l’élément",
+ "LISTS_INDEX_OF_TOOLTIP": "Renvoie l’index de la première/dernière occurrence de l’élément dans la liste. Renvoie %1 si l'élément n'est pas trouvé.",
+ "LISTS_GET_INDEX_GET": "obtenir",
+ "LISTS_GET_INDEX_GET_REMOVE": "obtenir et supprimer",
+ "LISTS_GET_INDEX_REMOVE": "supprimer",
+ "LISTS_GET_INDEX_FROM_END": "# depuis la fin",
+ "LISTS_GET_INDEX_FIRST": "premier",
+ "LISTS_GET_INDEX_LAST": "dernier",
+ "LISTS_GET_INDEX_RANDOM": "aléatoire",
+ "LISTS_INDEX_FROM_START_TOOLTIP": "%1 est le premier élément.",
+ "LISTS_INDEX_FROM_END_TOOLTIP": "%1 est le dernier élément.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_FROM": "Renvoie l’élément à la position indiquée dans une liste.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_FIRST": "Renvoie le premier élément dans une liste.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_LAST": "Renvoie le dernier élément dans une liste.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_RANDOM": "Renvoie un élément au hasard dans une liste.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM": "Supprime et renvoie l’élément à la position indiquée dans une liste.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST": "Supprime et renvoie le premier élément dans une liste.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST": "Supprime et renvoie le dernier élément dans une liste.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM": "Supprime et renvoie un élément au hasard dans une liste.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM": "Supprime l’élément à la position indiquée dans une liste.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST": "Supprime le premier élément dans une liste.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST": "Supprime le dernier élément dans une liste.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM": "Supprime un élément au hasard dans une liste.",
+ "LISTS_SET_INDEX_SET": "mettre",
+ "LISTS_SET_INDEX_INSERT": "insérer en",
+ "LISTS_SET_INDEX_INPUT_TO": "comme",
+ "LISTS_SET_INDEX_TOOLTIP_SET_FROM": "Met à jour l’élément à la position indiquée dans une liste.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_FIRST": "Fixe le premier élément dans une liste.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_LAST": "Fixe le dernier élément dans une liste.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_RANDOM": "Fixe un élément au hasard dans une liste.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_FROM": "Insère l’élément à la position indiquée dans une liste.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST": "Insère l’élément au début d’une liste.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_LAST": "Ajouter l’élément à la fin d’une liste.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM": "Insère l’élément au hasard dans une liste.",
+ "LISTS_GET_SUBLIST_START_FROM_START": "obtenir la sous-liste depuis #",
+ "LISTS_GET_SUBLIST_START_FROM_END": "obtenir la sous-liste depuis # depuis la fin",
+ "LISTS_GET_SUBLIST_START_FIRST": "obtenir la sous-liste depuis le début",
+ "LISTS_GET_SUBLIST_END_FROM_START": "jusqu’à #",
+ "LISTS_GET_SUBLIST_END_FROM_END": "jusqu’à # depuis la fin",
+ "LISTS_GET_SUBLIST_END_LAST": "jusqu’à la fin",
+ "LISTS_GET_SUBLIST_TOOLTIP": "Crée une copie de la partie spécifiée d’une liste.",
+ "LISTS_SORT_HELPURL": "https://github.com/google/blockly/wiki/Lists#sorting-a-list",
+ "LISTS_SORT_TITLE": "trier %1 %2 %3",
+ "LISTS_SORT_TOOLTIP": "Trier une copie d’une liste.",
+ "LISTS_SORT_ORDER_ASCENDING": "croissant",
+ "LISTS_SORT_ORDER_DESCENDING": "décroissant",
+ "LISTS_SORT_TYPE_NUMERIC": "numérique",
+ "LISTS_SORT_TYPE_TEXT": "alphabétique",
+ "LISTS_SORT_TYPE_IGNORECASE": "alphabétique, en ignorant la casse",
+ "LISTS_SPLIT_HELPURL": "https://github.com/google/blockly/wiki/Lists#splitting-strings-and-joining-lists",
+ "LISTS_SPLIT_LIST_FROM_TEXT": "créer une liste depuis le texte",
+ "LISTS_SPLIT_TEXT_FROM_LIST": "créer un texte depuis la liste",
+ "LISTS_SPLIT_WITH_DELIMITER": "avec le séparateur",
+ "LISTS_SPLIT_TOOLTIP_SPLIT": "Couper un texte en une liste de textes, en coupant à chaque séparateur.",
+ "LISTS_SPLIT_TOOLTIP_JOIN": "Réunir une liste de textes en un seul, en les séparant par un séparateur.",
+ "VARIABLES_GET_TOOLTIP": "Renvoie la valeur de cette variable.",
+ "VARIABLES_GET_CREATE_SET": "Créer 'fixer %1'",
+ "VARIABLES_SET": "fixer %1 à %2",
+ "VARIABLES_SET_TOOLTIP": "Fixe cette variable pour qu’elle soit égale à la valeur de l’entrée.",
+ "VARIABLES_SET_CREATE_GET": "Créer 'obtenir %1'",
+ "PROCEDURES_DEFNORETURN_TITLE": "pour",
+ "PROCEDURES_DEFNORETURN_PROCEDURE": "faire quelque chose",
+ "PROCEDURES_BEFORE_PARAMS": "avec :",
+ "PROCEDURES_CALL_BEFORE_PARAMS": "avec :",
+ "PROCEDURES_DEFNORETURN_TOOLTIP": "Crée une fonction sans sortie.",
+ "PROCEDURES_DEFNORETURN_COMMENT": "Décrire cette fonction…",
+ "PROCEDURES_DEFRETURN_RETURN": "retour",
+ "PROCEDURES_DEFRETURN_TOOLTIP": "Crée une fonction avec une sortie.",
+ "PROCEDURES_ALLOW_STATEMENTS": "autoriser les ordres",
+ "PROCEDURES_DEF_DUPLICATE_WARNING": "Attention : Cette fonction a des paramètres en double.",
+ "PROCEDURES_CALLNORETURN_HELPURL": "http://fr.wikipedia.org/wiki/Proc%C3%A9dure_%28informatique%29",
+ "PROCEDURES_CALLNORETURN_TOOLTIP": "Exécuter la fonction '%1' définie par l’utilisateur.",
+ "PROCEDURES_CALLRETURN_HELPURL": "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29",
+ "PROCEDURES_CALLRETURN_TOOLTIP": "Exécuter la fonction '%1' définie par l’utilisateur et utiliser son résultat.",
+ "PROCEDURES_MUTATORCONTAINER_TITLE": "entrées",
+ "PROCEDURES_MUTATORCONTAINER_TOOLTIP": "Ajouter, supprimer, ou réarranger les entrées de cette fonction.",
+ "PROCEDURES_MUTATORARG_TITLE": "nom de l’entrée :",
+ "PROCEDURES_MUTATORARG_TOOLTIP": "Ajouter une entrée à la fonction.",
+ "PROCEDURES_HIGHLIGHT_DEF": "Surligner la définition de la fonction",
+ "PROCEDURES_CREATE_DO": "Créer '%1'",
+ "PROCEDURES_IFRETURN_TOOLTIP": "Si une valeur est vraie, alors renvoyer une seconde valeur.",
+ "PROCEDURES_IFRETURN_HELPURL": "http://c2.com/cgi/wiki?GuardClause",
+ "PROCEDURES_IFRETURN_WARNING": "Attention : Ce bloc pourrait n’être utilisé que dans une définition de fonction."
+}
diff --git a/blockly/msg/json/he.json b/blockly/msg/json/he.json
new file mode 100644
index 0000000..69deb47
--- /dev/null
+++ b/blockly/msg/json/he.json
@@ -0,0 +1,277 @@
+{
+ "@metadata": {
+ "authors": [
+ "Dorongol",
+ "YaronSh",
+ "Amire80",
+ "Inkbug",
+ "Yona b",
+ "Noamrotem",
+ "Dvb",
+ "LaG roiL",
+ "아라",
+ "Elyashiv",
+ "Guycn2"
+ ]
+ },
+ "VARIABLES_DEFAULT_NAME": "פריט",
+ "TODAY": "היום",
+ "DUPLICATE_BLOCK": "שכפל",
+ "ADD_COMMENT": "הוסף תגובה",
+ "REMOVE_COMMENT": "הסר תגובה",
+ "EXTERNAL_INPUTS": "קלטים חיצוניים",
+ "INLINE_INPUTS": "קלטים פנימיים",
+ "DELETE_BLOCK": "מחק קטע קוד",
+ "DELETE_X_BLOCKS": "מחק %1 קטעי קוד",
+ "DELETE_ALL_BLOCKS": "האם למחוק את כל %1 קטעי הקוד?",
+ "CLEAN_UP": "סידור בלוקים",
+ "COLLAPSE_BLOCK": "צמצם קטע קוד",
+ "COLLAPSE_ALL": "צמצם קטעי קוד",
+ "EXPAND_BLOCK": "הרחב קטע קוד",
+ "EXPAND_ALL": "הרחב קטעי קוד",
+ "DISABLE_BLOCK": "נטרל קטע קוד",
+ "ENABLE_BLOCK": "הפעל קטע קוד",
+ "HELP": "עזרה",
+ "UNDO": "ביטול",
+ "REDO": "ביצוע חוזר",
+ "CHANGE_VALUE_TITLE": "שנה ערך:",
+ "RENAME_VARIABLE": "שנה את שם המשתנה...",
+ "RENAME_VARIABLE_TITLE": "שנה את שם כל '%1' המשתנים ל:",
+ "NEW_VARIABLE": "משתנה חדש...",
+ "NEW_VARIABLE_TITLE": "שם המשתנה החדש:",
+ "COLOUR_PICKER_HELPURL": "http://he.wikipedia.org/wiki/%D7%A6%D7%91%D7%A2",
+ "COLOUR_PICKER_TOOLTIP": "בחר צבע מן הצבעים.",
+ "COLOUR_RANDOM_TITLE": "צבע אקראי",
+ "COLOUR_RANDOM_TOOLTIP": "בחר צבא אקראי.",
+ "COLOUR_RGB_TITLE": "צבע עם",
+ "COLOUR_RGB_RED": "אדום",
+ "COLOUR_RGB_GREEN": "ירוק",
+ "COLOUR_RGB_BLUE": "כחול",
+ "COLOUR_RGB_TOOLTIP": "צור צבע עם הסכום המצוין של אדום, ירוק וכחול. כל הערכים חייבים להיות בין 0 ל100.",
+ "COLOUR_BLEND_TITLE": "ערבב",
+ "COLOUR_BLEND_COLOUR1": "צבע 1",
+ "COLOUR_BLEND_COLOUR2": "צבע 2",
+ "COLOUR_BLEND_RATIO": "יחס",
+ "COLOUR_BLEND_TOOLTIP": "מערבב שני צבעים יחד עם יחס נתון(0.0 - 1.0).",
+ "CONTROLS_REPEAT_HELPURL": "http://he.wikipedia.org/wiki/בקרת_זרימה",
+ "CONTROLS_REPEAT_TITLE": "חזור על הפעולה %1 פעמים",
+ "CONTROLS_REPEAT_INPUT_DO": "תעשה",
+ "CONTROLS_REPEAT_TOOLTIP": "לעשות כמה פעולות מספר פעמים.",
+ "CONTROLS_WHILEUNTIL_OPERATOR_WHILE": "חזור כל עוד",
+ "CONTROLS_WHILEUNTIL_OPERATOR_UNTIL": "חזור עד ש...",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_WHILE": "כל עוד הערך הוא אמת, לעשות כמה פעולות.",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL": "בזמן שהערך שווה לשגוי, תעשה מספר חישובים.",
+ "CONTROLS_FOR_TITLE": "תספור עם %1 מ- %2 ל- %3 עד- %4",
+ "CONTROLS_FOREACH_TITLE": "לכל פריט %1 ברשימה %2",
+ "CONTROLS_FOREACH_TOOLTIP": "לכל פריט ברשימה, להגדיר את המשתנה '%1' לפריט הזה, ולאחר מכן לעשות כמה פעולות.",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK": "צא מהלולאה",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE": "המשך עם האיטרציה הבאה של הלולאה",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK": "צא אל מחוץ ללולאה הכוללת.",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE": "דלג על שאר הלולאה והמשך עם האיטרציה הבאה.",
+ "CONTROLS_FLOW_STATEMENTS_WARNING": "אזהרה: בלוק זה עשוי לשמש רק בתוך לולאה.",
+ "CONTROLS_IF_TOOLTIP_1": "אם ערך נכון, לבצע כמה פעולות.",
+ "CONTROLS_IF_TOOLTIP_2": "אם הערך הוא אמת, לבצע את הבלוק הראשון של הפעולות. אחרת, לבצע את הבלוק השני של הפעולות.",
+ "CONTROLS_IF_TOOLTIP_3": "אם הערך הראשון הוא אמת, לבצע את הבלוק הראשון של הפעולות. אחרת, אם הערך השני הוא אמת, לבצע את הבלוק השני של הפעולות.",
+ "CONTROLS_IF_TOOLTIP_4": "אם הערך הראשון הוא אמת, לבצע את הבלוק הראשון של הפעולות. אחרת, אם הערך השני הוא אמת, לבצע את הבלוק השני של הפעולות. אם אף אחד מהם אינו נכון, לבצע את הבלוק האחרון של הפעולות.",
+ "CONTROLS_IF_MSG_IF": "אם",
+ "CONTROLS_IF_MSG_ELSEIF": "אחרת אם",
+ "CONTROLS_IF_MSG_ELSE": "אחרת",
+ "CONTROLS_IF_IF_TOOLTIP": "תוסיף, תמחק, או תסדר מחדש כדי להגדיר מחדש את הבלוק If.",
+ "CONTROLS_IF_ELSEIF_TOOLTIP": "תוסיף תנאי לבלוק If.",
+ "CONTROLS_IF_ELSE_TOOLTIP": "לסיום, כל התנאים תקפים לגבי בלוק If.",
+ "LOGIC_COMPARE_TOOLTIP_EQ": "תחזיר נכון אם שני הקלטים שווים אחד לשני.",
+ "LOGIC_COMPARE_TOOLTIP_NEQ": "תחזיר אמת אם שני הקלטים אינם שווים זה לזה.",
+ "LOGIC_COMPARE_TOOLTIP_LT": "תחזיר אמת (true) אם הקלט הראשון הוא קטן יותר מאשר הקלט השני.",
+ "LOGIC_COMPARE_TOOLTIP_LTE": "תחזיר אמת אם הקלט הראשון הוא קטן יותר או שווה לקלט השני.",
+ "LOGIC_COMPARE_TOOLTIP_GT": "תחזיר נכון אם הקלט הראשון גדול יותר מהקלט השני.",
+ "LOGIC_COMPARE_TOOLTIP_GTE": "תחזיר נכון אם הקלט הראשון גדול יותר או שווה לכניסה השנייה.",
+ "LOGIC_OPERATION_TOOLTIP_AND": "תחזיר נכון אם שני הקלטים נכונים.",
+ "LOGIC_OPERATION_AND": "ו",
+ "LOGIC_OPERATION_TOOLTIP_OR": "תחזיר נכון אם מתקיים לפחות אחד מהקלטים נכונים.",
+ "LOGIC_OPERATION_OR": "או",
+ "LOGIC_NEGATE_TITLE": "לא %1",
+ "LOGIC_NEGATE_TOOLTIP": "החזר אמת אם הקלט הוא שקר. החזר שקר אם הקלט אמת.",
+ "LOGIC_BOOLEAN_TRUE": "נכון",
+ "LOGIC_BOOLEAN_FALSE": "שגוי",
+ "LOGIC_BOOLEAN_TOOLTIP": "תחזיר אם נכון או אם שגוי.",
+ "LOGIC_NULL": "null",
+ "LOGIC_NULL_TOOLTIP": "תחזיר ריק.",
+ "LOGIC_TERNARY_CONDITION": "בדיקה",
+ "LOGIC_TERNARY_IF_TRUE": "אם נכון",
+ "LOGIC_TERNARY_IF_FALSE": "אם שגוי",
+ "LOGIC_TERNARY_TOOLTIP": "בדוק את התנאי ב'מבחן'. אם התנאי נכון, תחזיר את הערך 'אם נכון'; אחרת תחזיר את הערך 'אם שגוי'.",
+ "MATH_NUMBER_HELPURL": "https://he.wikipedia.org/wiki/מספר_ממשי",
+ "MATH_NUMBER_TOOLTIP": "מספר.",
+ "MATH_ADDITION_SYMBOL": "+",
+ "MATH_SUBTRACTION_SYMBOL": "-",
+ "MATH_DIVISION_SYMBOL": "÷",
+ "MATH_MULTIPLICATION_SYMBOL": "×",
+ "MATH_POWER_SYMBOL": "^",
+ "MATH_TRIG_SIN": "sin",
+ "MATH_TRIG_COS": "cos",
+ "MATH_TRIG_TAN": "tan",
+ "MATH_TRIG_ASIN": "asin",
+ "MATH_TRIG_ACOS": "acos",
+ "MATH_TRIG_ATAN": "atan",
+ "MATH_ARITHMETIC_HELPURL": "https://he.wikipedia.org/wiki/ארבע_פעולות_החשבון",
+ "MATH_ARITHMETIC_TOOLTIP_ADD": "תחזיר את סכום שני המספרים.",
+ "MATH_ARITHMETIC_TOOLTIP_MINUS": "החזרת ההפרש בין שני מספרים.",
+ "MATH_ARITHMETIC_TOOLTIP_MULTIPLY": "החזרת תוצאת הכפל בין שני מספרים.",
+ "MATH_ARITHMETIC_TOOLTIP_DIVIDE": "החזרת המנה של שני המספרים.",
+ "MATH_ARITHMETIC_TOOLTIP_POWER": "החזרת המספר הראשון בחזקת המספר השני.",
+ "MATH_SINGLE_HELPURL": "https://he.wikipedia.org/wiki/שורש_ריבועי",
+ "MATH_SINGLE_OP_ROOT": "שורש ריבועי",
+ "MATH_SINGLE_TOOLTIP_ROOT": "החזרת השורש הריבועי של מספר.",
+ "MATH_SINGLE_OP_ABSOLUTE": "ערך מוחלט",
+ "MATH_SINGLE_TOOLTIP_ABS": "החזרת הערך המוחלט של מספר.",
+ "MATH_SINGLE_TOOLTIP_NEG": "החזרת הערך הנגדי של מספר.",
+ "MATH_SINGLE_TOOLTIP_LN": "החזרת הלוגריתם הטבעי של מספר.",
+ "MATH_SINGLE_TOOLTIP_LOG10": "החזרת הלוגריתם לפי בסיס עשר של מספר.",
+ "MATH_SINGLE_TOOLTIP_EXP": "החזרת e בחזקת מספר.",
+ "MATH_SINGLE_TOOLTIP_POW10": "החזרת 10 בחזקת מספר.",
+ "MATH_TRIG_HELPURL": "https://he.wikipedia.org/wiki/פונקציות_טריגונומטריות",
+ "MATH_TRIG_TOOLTIP_SIN": "החזרת הסינוס של מעלה (לא רדיאן).",
+ "MATH_TRIG_TOOLTIP_COS": "החזרת הקוסינוס של מעלה (לא רדיאן).",
+ "MATH_TRIG_TOOLTIP_TAN": "החזרת הטנגס של מעלה (לא רדיאן).",
+ "MATH_IS_EVEN": "זוגי",
+ "MATH_IS_ODD": "אי-זוגי",
+ "MATH_IS_PRIME": "ראשוני",
+ "MATH_IS_WHOLE": "שלם",
+ "MATH_IS_POSITIVE": "חיובי",
+ "MATH_IS_NEGATIVE": "שלילי",
+ "MATH_IS_DIVISIBLE_BY": "מתחלק ב",
+ "MATH_CHANGE_TITLE": "שינוי %1 על־ידי %2",
+ "MATH_CHANGE_TOOLTIP": "הוסף מספר למשתנה '%1'.",
+ "MATH_ROUND_HELPURL": "https://he.wikipedia.org/wiki/עיגול_(אריתמטיקה)",
+ "MATH_ROUND_TOOLTIP": "עיגול מספר למעלה או למטה.",
+ "MATH_ROUND_OPERATOR_ROUND": "עיגול",
+ "MATH_ROUND_OPERATOR_ROUNDUP": "עיגול למעלה",
+ "MATH_ROUND_OPERATOR_ROUNDDOWN": "עיגול למטה",
+ "MATH_ONLIST_OPERATOR_SUM": "סכום של רשימה",
+ "MATH_ONLIST_TOOLTIP_SUM": "החזרת הסכום של המספרים ברשימה.",
+ "MATH_ONLIST_OPERATOR_MIN": "מינימום של רשימה",
+ "MATH_ONLIST_TOOLTIP_MIN": "תחזיר את המספר הקטן ביותר ברשימה.",
+ "MATH_ONLIST_OPERATOR_MAX": "מקסימום של רשימה",
+ "MATH_ONLIST_TOOLTIP_MAX": "תחזיר את המספר הגדול ביותר ברשימה.",
+ "MATH_ONLIST_OPERATOR_AVERAGE": "ממוצע של רשימה",
+ "MATH_ONLIST_OPERATOR_MEDIAN": "חציון של רשימה",
+ "MATH_ONLIST_TOOLTIP_MEDIAN": "תחזיר את המספר החיצוני ביותר ברשימה.",
+ "MATH_ONLIST_OPERATOR_MODE": "שכיחי הרשימה",
+ "MATH_ONLIST_TOOLTIP_MODE": "החזרת רשימה של הפריטים הנפוצים ביותר ברשימה",
+ "MATH_ONLIST_OPERATOR_RANDOM": "פריט אקראי מרשימה",
+ "MATH_ONLIST_TOOLTIP_RANDOM": "תחזיר רכיב אקראי מרשימה.",
+ "MATH_MODULO_TITLE": "שארית החילוק %1 ÷ %2",
+ "MATH_MODULO_TOOLTIP": "החזרת השארית מחלוקת שני המספרים.",
+ "MATH_RANDOM_FLOAT_TITLE_RANDOM": "שבר אקראי",
+ "TEXT_TEXT_TOOLTIP": "אות, מילה, או שורת טקסט.",
+ "TEXT_JOIN_TITLE_CREATEWITH": "יצירת טקסט עם",
+ "TEXT_CREATE_JOIN_TITLE_JOIN": "צירוף",
+ "TEXT_APPEND_TO": "אל",
+ "TEXT_APPEND_APPENDTEXT": "הוספת טקסט",
+ "TEXT_INDEXOF_TOOLTIP": "מחזירה את האינדקס של המופע הראשון/האחרון בטקסט הראשון לתוך הטקסט השני. מחזירה %1 אם הטקסט אינו נמצא.",
+ "TEXT_GET_SUBSTRING_END_FROM_START": "לאות #",
+ "TEXT_GET_SUBSTRING_END_FROM_END": "לאות # מהסוף",
+ "TEXT_CHANGECASE_OPERATOR_UPPERCASE": "לאותיות גדולות (עבור טקסט באנגלית)",
+ "TEXT_CHANGECASE_OPERATOR_LOWERCASE": "לאותיות קטנות (עבור טקסט באנגלית)",
+ "TEXT_CHANGECASE_OPERATOR_TITLECASE": "לאותיות גדולות בתחילת כל מילה (עבור טקסט באנגלית)",
+ "TEXT_TRIM_TOOLTIP": "להחזיר עותק של הטקסט לאחר מחיקת רווחים מאחד או משני הקצוות.",
+ "TEXT_TRIM_OPERATOR_BOTH": "למחוק רווחים משני הקצוות",
+ "TEXT_TRIM_OPERATOR_LEFT": "למחוק רווחים מימין",
+ "TEXT_TRIM_OPERATOR_RIGHT": "למחוק רווחים משמאל",
+ "TEXT_PRINT_TITLE": "הדפס %1",
+ "TEXT_PRINT_TOOLTIP": "להדפיס טקסט, מספר או ערך אחר שצוין",
+ "TEXT_PROMPT_TYPE_TEXT": "בקשה להזנת טקסט עם הודעה",
+ "TEXT_PROMPT_TYPE_NUMBER": "בקשה למספר עם הודעה",
+ "TEXT_PROMPT_TOOLTIP_NUMBER": "בקש מהמשתמש מספר.",
+ "TEXT_PROMPT_TOOLTIP_TEXT": "בקשה למשתמש להזין טקסט כלשהו.",
+ "LISTS_CREATE_EMPTY_TITLE": "צור רשימה ריקה",
+ "LISTS_CREATE_EMPTY_TOOLTIP": "החזר רשימה,באורך 0, המכילה רשומות נתונים",
+ "LISTS_CREATE_WITH_TOOLTIP": "צור רשימה עם כל מספר של פריטים.",
+ "LISTS_CREATE_WITH_INPUT_WITH": "צור רשימה עם",
+ "LISTS_CREATE_WITH_CONTAINER_TITLE_ADD": "רשימה",
+ "LISTS_CREATE_WITH_CONTAINER_TOOLTIP": "תוסיף, תמחק, או תסדר מחדש כדי להגדיר מחדש את הבלוק If.",
+ "LISTS_CREATE_WITH_ITEM_TOOLTIP": "הוסף פריט לרשימה.",
+ "LISTS_REPEAT_TOOLTIP": "יוצר רשימה המורכבת מהערך נתון חוזר מספר פעמים שצוין.",
+ "LISTS_REPEAT_TITLE": "ליצור רשימה עם הפריט %1 %2 פעמים",
+ "LISTS_LENGTH_TITLE": "אורכו של %1",
+ "LISTS_LENGTH_TOOLTIP": "מחזירה את האורך של רשימה.",
+ "LISTS_ISEMPTY_TITLE": "%1 הוא ריק",
+ "LISTS_ISEMPTY_TOOLTIP": "מחזיר אמת אם הרשימה ריקה.",
+ "LISTS_INLIST": "ברשימה",
+ "LISTS_INDEX_OF_FIRST": "מחזירה את המיקום הראשון של פריט ברשימה",
+ "LISTS_INDEX_OF_LAST": "מחזירה את המיקום האחרון של פריט ברשימה",
+ "LISTS_INDEX_OF_TOOLTIP": "מחזירה את האינדקס של המופע הראשון/האחרון של הפריט ברשימה. מחזירה %1 אם הפריט אינו נמצא.",
+ "LISTS_GET_INDEX_GET": "לקבל",
+ "LISTS_GET_INDEX_GET_REMOVE": "קבל ומחק",
+ "LISTS_GET_INDEX_REMOVE": "הסרה",
+ "LISTS_GET_INDEX_FROM_START": "#",
+ "LISTS_GET_INDEX_FROM_END": "# מהסוף",
+ "LISTS_GET_INDEX_FIRST": "ראשון",
+ "LISTS_GET_INDEX_LAST": "אחרון",
+ "LISTS_GET_INDEX_RANDOM": "אקראי",
+ "LISTS_INDEX_FROM_START_TOOLTIP": "%1 הוא הפריט הראשון.",
+ "LISTS_INDEX_FROM_END_TOOLTIP": "%1 הוא הפריט האחרון.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_FROM": "מחזיר פריט במיקום שצוין ברשימה.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_FIRST": "מחזיר את הפריט הראשון ברשימה.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_LAST": "מחזיר את הפריט האחרון ברשימה.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_RANDOM": "מחזיר פריט אקראי מהרשימה.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM": "מסיר ומחזיר את הפריט במיקום שצוין ברשימה.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST": "מסיר ומחזיר את הפריט הראשון ברשימה.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST": "מסיר ומחזיר את הפריט האחרון ברשימה.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM": "מחק והחזר פריט אקראי מהרשימה.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM": "מחזיר פריט במיקום שצוין ברשימה.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST": "הסר את הפריט הראשון ברשימה.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST": "הסר את הפריט הראשון ברשימה.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM": "הסר פריט אקראי ברשימה.",
+ "LISTS_SET_INDEX_SET": "הגדר",
+ "LISTS_SET_INDEX_INSERT": "הכנס ב",
+ "LISTS_SET_INDEX_INPUT_TO": "כמו",
+ "LISTS_SET_INDEX_TOOLTIP_SET_FROM": "מגדיר את הפריט במיקום שצוין ברשימה.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_FIRST": "מגדיר את הפריט הראשון ברשימה.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_LAST": "מגדיר את הפריט האחרון ברשימה.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_RANDOM": "מגדיר פריט אקראי ברשימה.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_FROM": "מכניס את הפריט במיקום שצוין ברשימה.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST": "מכניס את הפריט בתחילת רשימה.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_LAST": "מוסיף את הפריט בסוף רשימה.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM": "הוסף פריט באופן אקראי ברשימה.",
+ "LISTS_GET_SUBLIST_START_FROM_START": "לקבל חלק מהרשימה החל מ-#",
+ "LISTS_GET_SUBLIST_START_FROM_END": "לקבל חלק מהרשימה החל מ-# עד הסוף",
+ "LISTS_GET_SUBLIST_START_FIRST": "לקבל חלק מהרשימה החל מהתחלה",
+ "LISTS_GET_SUBLIST_END_FROM_START": "ל #",
+ "LISTS_GET_SUBLIST_END_FROM_END": "ל # מהסוף",
+ "LISTS_GET_SUBLIST_END_LAST": "לאחרון",
+ "LISTS_GET_SUBLIST_TOOLTIP": "יוצרת עותק של חלק מסוים מהרשימה.",
+ "LISTS_SORT_HELPURL": "https://github.com/google/blockly/wiki/Lists#sorting-a-list",
+ "LISTS_SORT_ORDER_ASCENDING": "סדר עולה",
+ "LISTS_SORT_ORDER_DESCENDING": "סדר יורד",
+ "LISTS_SORT_TYPE_TEXT": "סדר אלפביתי",
+ "LISTS_SORT_TYPE_IGNORECASE": "סדר אלפביתי, לא תלוי רישיות",
+ "LISTS_SPLIT_LIST_FROM_TEXT": "יצירת רשימה מטקסט",
+ "LISTS_SPLIT_TEXT_FROM_LIST": "יצירת טקסט מרשימה",
+ "VARIABLES_GET_TOOLTIP": "להחזיר את הערך של משתנה זה.",
+ "VARIABLES_GET_CREATE_SET": "ליצור 'הגדר %1'",
+ "VARIABLES_SET": "הגדר %1 ל- %2",
+ "VARIABLES_SET_TOOLTIP": "מגדיר משתנה זה להיות שווה לקלט.",
+ "VARIABLES_SET_CREATE_GET": "ליצור 'קרא %1'",
+ "PROCEDURES_DEFNORETURN_TITLE": "לביצוע:",
+ "PROCEDURES_DEFNORETURN_PROCEDURE": "לעשות משהו",
+ "PROCEDURES_BEFORE_PARAMS": "עם:",
+ "PROCEDURES_CALL_BEFORE_PARAMS": "עם:",
+ "PROCEDURES_DEFNORETURN_TOOLTIP": "יצירת פונקציה ללא פלט.",
+ "PROCEDURES_DEFRETURN_RETURN": "להחזיר",
+ "PROCEDURES_DEFRETURN_TOOLTIP": "יצירת פונקציה עם פלט.",
+ "PROCEDURES_ALLOW_STATEMENTS": "לאפשר פעולות",
+ "PROCEDURES_DEF_DUPLICATE_WARNING": "אזהרה: לפונקציה זו יש פרמטרים כפולים.",
+ "PROCEDURES_CALLNORETURN_HELPURL": "https://he.wikipedia.org/wiki/שגרה_(תכנות)",
+ "PROCEDURES_CALLNORETURN_TOOLTIP": "להפעיל את הפונקציה המוגדרת על-ידי המשתמש '%1'.",
+ "PROCEDURES_CALLRETURN_HELPURL": "https://he.wikipedia.org/wiki/שגרה_(תכנות)",
+ "PROCEDURES_CALLRETURN_TOOLTIP": "להפעיל את הפונקציה המוגדרת על-ידי המשתמש '%1' ולהשתמש הפלט שלה.",
+ "PROCEDURES_MUTATORCONTAINER_TITLE": "מקורות קלט",
+ "PROCEDURES_MUTATORCONTAINER_TOOLTIP": "הוסף, הסר או סדר מחדש קלטים לפונקציה זו",
+ "PROCEDURES_MUTATORARG_TITLE": "שם הקלט:",
+ "PROCEDURES_MUTATORARG_TOOLTIP": "הוסף קלט לפונקציה",
+ "PROCEDURES_HIGHLIGHT_DEF": "הדגש הגדרה של פונקציה",
+ "PROCEDURES_CREATE_DO": "ליצור '%1'",
+ "PROCEDURES_IFRETURN_TOOLTIP": "אם ערך נכון, אז להחזיר ערך שני.",
+ "PROCEDURES_IFRETURN_WARNING": "אזהרה: בלוק זה עשוי לשמש רק בתוך הגדרה של פונקציה."
+}
diff --git a/blockly/msg/json/hi.json b/blockly/msg/json/hi.json
new file mode 100644
index 0000000..c90cd1c
--- /dev/null
+++ b/blockly/msg/json/hi.json
@@ -0,0 +1,251 @@
+{
+ "@metadata": {
+ "authors": [
+ "Bl707",
+ "संजीव कुमार",
+ "Phoenix303",
+ "Sfic"
+ ]
+ },
+ "VARIABLES_DEFAULT_NAME": "आइटम",
+ "TODAY": "आज",
+ "DUPLICATE_BLOCK": "कॉपी करें",
+ "ADD_COMMENT": "टिप्पणी छोड़ें",
+ "REMOVE_COMMENT": "टिप्पणी हटायें",
+ "EXTERNAL_INPUTS": "बाहरी इनपुट",
+ "INLINE_INPUTS": "इनलाइन इनपुट",
+ "DELETE_BLOCK": "ब्लॉक हटाएँ",
+ "DELETE_X_BLOCKS": "%1 ब्लॉक हटाएँ",
+ "COLLAPSE_BLOCK": "ब्लॉक को संक्षिप्त करें",
+ "COLLAPSE_ALL": "ब्लॉक संक्षिप्त करें",
+ "EXPAND_BLOCK": "ब्लॉक का विस्तार करें",
+ "EXPAND_ALL": "ब्लॉक विस्तार करें",
+ "DISABLE_BLOCK": "ब्लॉक को अक्षम करें",
+ "ENABLE_BLOCK": "ब्लॉक को सक्षम करें",
+ "HELP": "सहायता",
+ "CHANGE_VALUE_TITLE": "मान परिवर्तित करें:",
+ "RENAME_VARIABLE": "चर का नाम बदलें...",
+ "RENAME_VARIABLE_TITLE": "सभी '%1' चरों के नाम बदलें:",
+ "NEW_VARIABLE": "नया चर...",
+ "NEW_VARIABLE_TITLE": "नए चर का नाम:",
+ "COLOUR_PICKER_HELPURL": "https://en.wikipedia.org/wiki/Color",
+ "COLOUR_PICKER_TOOLTIP": "पैलेट से एक रंग चुनें।",
+ "COLOUR_RANDOM_TITLE": "रैन्डम रंग",
+ "COLOUR_RANDOM_TOOLTIP": "रैन्डम्ली एक रंग चयन करें।",
+ "COLOUR_RGB_TITLE": "इसके साथ रंग करें",
+ "COLOUR_RGB_RED": "लाल",
+ "COLOUR_RGB_GREEN": "हरा",
+ "COLOUR_RGB_BLUE": "नीला",
+ "COLOUR_RGB_TOOLTIP": "लाल, हरा और नीले की निर्दिष्ट मात्रा के साथ एक रंग बनायें। सभी मान ० से १०० के बीच होने चाहिए।",
+ "COLOUR_BLEND_TITLE": "मिश्रण करें",
+ "COLOUR_BLEND_COLOUR1": "रंग 1",
+ "COLOUR_BLEND_COLOUR2": "रंग 2",
+ "COLOUR_BLEND_RATIO": "अनुपात",
+ "COLOUR_BLEND_TOOLTIP": "दिए गए अनुपात (0.0 - 1.0) के साथ दो रंगों का मिश्रण करता है।",
+ "CONTROLS_REPEAT_HELPURL": "https://en.wikipedia.org/wiki/For_loop",
+ "CONTROLS_REPEAT_TITLE": "%1 बार दोहराएँ",
+ "CONTROLS_REPEAT_INPUT_DO": "डू",
+ "CONTROLS_REPEAT_TOOLTIP": "कुछ स्टेट्मन्ट कई बार चलाएँ।",
+ "CONTROLS_WHILEUNTIL_OPERATOR_WHILE": "दोहराएँ जब कि",
+ "CONTROLS_WHILEUNTIL_OPERATOR_UNTIL": "दोहराएँ जब तक",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_WHILE": "जब तक मान ट्रू है, तब तक कुछ स्टेट्मेंट्स चलाएँ।",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL": "जब तक मान फॉल्स है, तब तक कुछ स्टेट्मेंट्स चलाएँ।",
+ "CONTROLS_FOR_TITLE": "काउंट करें",
+ "CONTROLS_FOREACH_TITLE": "प्रत्येक आइटम के लिए %1 सूची में %2",
+ "CONTROLS_FOREACH_TOOLTIP": "सूची के प्रत्येक आयटम के लिए, आयटम में चर का मान '%1' रखें और बाद में कुछ कथन लिखें।",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK": "लूप से बाहर निकलें",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE": "लूप का अगला आईटरेशन जारी रखें",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK": "भीतरी लूप से बाहर निकलें।",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE": "बाकी बचे लूप को छोड़ें, और अगला आईटरेशन जारी रखें।",
+ "CONTROLS_FLOW_STATEMENTS_WARNING": "सावधान: ये ब्लॉक केवल लूप के अंदर इस्तेमाल किया जा सकता है।",
+ "CONTROLS_IF_TOOLTIP_1": "यदी मान ट्रू है, तो कुछ स्टेट्मेंट्स चलाएँ।",
+ "CONTROLS_IF_TOOLTIP_2": "यदि एक मान सत्य है तो कथनों का प्रथम खण्ड बनायें। अन्यथा कथनों का दूसरा भाग निर्मित करें।",
+ "CONTROLS_IF_MSG_IF": "इफ",
+ "CONTROLS_IF_MSG_ELSEIF": "एल्स इफ",
+ "CONTROLS_IF_MSG_ELSE": "एल्स",
+ "CONTROLS_IF_ELSEIF_TOOLTIP": "यदि ब्लॉक मे एक शर्त जोड़ें।",
+ "LOGIC_COMPARE_HELPURL": "https://en.wikipedia.org/wiki/Inequality_(mathematics)",
+ "LOGIC_COMPARE_TOOLTIP_EQ": "ट्रू रिटर्न करें यदि दोनो इनपुट इक दूसरे के बराबर हों।",
+ "LOGIC_COMPARE_TOOLTIP_NEQ": "ट्रू रिटर्न करें यदि दोनो इनपुट इक दूसरे के बराबर नहीं हों।",
+ "LOGIC_COMPARE_TOOLTIP_LT": "ट्रू रिटर्न करें यदि पहला इनपुट दूसरे इनपुट से छोटा हो।",
+ "LOGIC_COMPARE_TOOLTIP_LTE": "ट्रू रिटर्न करें यदि पहला इनपुट दूसरे इनपुट से छोटा हो या बराबर हो।",
+ "LOGIC_COMPARE_TOOLTIP_GT": "ट्रू रिटर्न करें यदि पहला इनपुट दूसरे इनपुट से बड़ा हो।",
+ "LOGIC_COMPARE_TOOLTIP_GTE": "ट्रू रिटर्न करें यदि पहला इनपुट दूसरे इनपुट से बड़ा हो या बराबर हो।",
+ "LOGIC_OPERATION_TOOLTIP_AND": "ट्रू रिटर्न करें यदि दोनो इनपुट ट्रू हों।",
+ "LOGIC_OPERATION_AND": "AND (तथा)",
+ "LOGIC_OPERATION_TOOLTIP_OR": "ट्रू रिटर्न करें यदि दोनो मे से इक इनपुट ट्रू हो।",
+ "LOGIC_OPERATION_OR": "OR (अथवा)",
+ "LOGIC_NEGATE_TITLE": "NOT (पूरक) %1",
+ "LOGIC_NEGATE_TOOLTIP": "ट्रू रिटर्न करता है यदि इनपुट फॉल्स है। फॉल्स रिटर्न करता है यदि इनपुट ट्रू है।",
+ "LOGIC_BOOLEAN_TRUE": "ट्रू",
+ "LOGIC_BOOLEAN_FALSE": "फॉल्स",
+ "LOGIC_BOOLEAN_TOOLTIP": "ट्रू या फॉल्स रिटर्न करता है।",
+ "LOGIC_NULL": "NULL (अमान्य)",
+ "LOGIC_NULL_TOOLTIP": "null (अमान्य) रिटर्न करता है।",
+ "LOGIC_TERNARY_CONDITION": "टेस्ट",
+ "LOGIC_TERNARY_IF_TRUE": "यदि ट्रू है",
+ "LOGIC_TERNARY_IF_FALSE": "यदि फॉल्स है",
+ "MATH_NUMBER_HELPURL": "https://en.wikipedia.org/wiki/Number",
+ "MATH_NUMBER_TOOLTIP": "एक संख्या।",
+ "MATH_ARITHMETIC_HELPURL": "https://en.wikipedia.org/wiki/Arithmetic",
+ "MATH_ARITHMETIC_TOOLTIP_ADD": "दो संख्याओं का योग रिटर्न करें।",
+ "MATH_ARITHMETIC_TOOLTIP_MINUS": "दो संख्याओं का अंतर रिटर्न करें।",
+ "MATH_ARITHMETIC_TOOLTIP_MULTIPLY": "दो संख्याओं का गुणन रिटर्न करें।",
+ "MATH_ARITHMETIC_TOOLTIP_DIVIDE": "दो संख्याओं का भागफल रिटर्न करें।",
+ "MATH_SINGLE_HELPURL": "https://en.wikipedia.org/wiki/Square_root",
+ "MATH_SINGLE_OP_ROOT": "वर्गमूल",
+ "MATH_SINGLE_TOOLTIP_ROOT": "संख्या का वर्गमूल रिटर्न करें।",
+ "MATH_SINGLE_OP_ABSOLUTE": "परम",
+ "MATH_SINGLE_TOOLTIP_ABS": "संख्या का परम मान रिटर्न करें।",
+ "MATH_SINGLE_TOOLTIP_NEG": "संख्या का निषेध मान रिटर्न करें।",
+ "MATH_SINGLE_TOOLTIP_LN": "संख्या का प्राकृतिक लघुगणक रिटर्न करें।",
+ "MATH_SINGLE_TOOLTIP_LOG10": "संख्या का मूल 10 लघुगणक रिटर्न करें।",
+ "MATH_TRIG_HELPURL": "https://en.wikipedia.org/wiki/Trigonometric_functions",
+ "MATH_TRIG_TOOLTIP_SIN": "डिग्री का साइन रिटर्न करें (रेडियन नही)",
+ "MATH_TRIG_TOOLTIP_COS": "डिग्री का कोसाइन रिटर्न करें (रेडियन नही)",
+ "MATH_TRIG_TOOLTIP_TAN": "डिग्री का टैन्जन्ट रिटर्न करें (रेडियन नही)",
+ "MATH_TRIG_TOOLTIP_ASIN": "संख्या का आर्कसाइन रिटर्न करें।",
+ "MATH_TRIG_TOOLTIP_ACOS": "संख्या का आर्ककोसाइन रिटर्न करें।",
+ "MATH_TRIG_TOOLTIP_ATAN": "संख्या का आर्कटैन्जन्ट रिटर्न करें।",
+ "MATH_CONSTANT_HELPURL": "https://en.wikipedia.org/wiki/Mathematical_constant",
+ "MATH_IS_EVEN": "सम है",
+ "MATH_IS_ODD": "विषम है",
+ "MATH_IS_PRIME": "अभाज्य है",
+ "MATH_IS_WHOLE": "पूर्णांक है",
+ "MATH_IS_POSITIVE": "धनात्मक है",
+ "MATH_IS_NEGATIVE": "ऋणात्मक है",
+ "MATH_IS_DIVISIBLE_BY": "इसके द्वारा विभाज्य है",
+ "MATH_CHANGE_HELPURL": "https://en.wikipedia.org/wiki/Programming_idiom#Incrementing_a_counter",
+ "MATH_CHANGE_TOOLTIP": "संख्या को चर '%1' से जोड़ें।",
+ "MATH_ROUND_HELPURL": "https://en.wikipedia.org/wiki/Rounding",
+ "MATH_ROUND_TOOLTIP": "संख्या को बड़ा या घटा के पूर्णांक बनाएँ।",
+ "MATH_ROUND_OPERATOR_ROUND": "पूर्णांक बनाएँ",
+ "MATH_ROUND_OPERATOR_ROUNDUP": "बड़ा के पूर्णांक बनाएँ",
+ "MATH_ROUND_OPERATOR_ROUNDDOWN": "घटा के पूर्णांक बनाएँ",
+ "MATH_ONLIST_OPERATOR_SUM": "सूची का योग",
+ "MATH_ONLIST_TOOLTIP_SUM": "सूची की सभी संख्याओं का योग रिटर्न करें।",
+ "MATH_ONLIST_OPERATOR_MIN": "सूची मे न्यूनतम",
+ "MATH_ONLIST_TOOLTIP_MIN": "सूची मे सबसे छोटी संख्या रिटर्न करें।",
+ "MATH_ONLIST_OPERATOR_MAX": "सूची मे अधिकतम",
+ "MATH_ONLIST_TOOLTIP_MAX": "सूची मे सबसे बड़ी संख्या रिटर्न करें।",
+ "MATH_ONLIST_OPERATOR_AVERAGE": "सूची का औसत मान",
+ "MATH_ONLIST_OPERATOR_MEDIAN": "सूची की माध्यिका",
+ "MATH_ONLIST_TOOLTIP_MEDIAN": "सूची की माध्यिका संख्या रिटर्न करें।",
+ "MATH_ONLIST_OPERATOR_MODE": "सूची का मोड",
+ "MATH_ONLIST_TOOLTIP_MODE": "सूची मे सबसे आम आइटम(s) की सूची रिटर्न करें।",
+ "MATH_ONLIST_OPERATOR_STD_DEV": "सूची का मानक विचलन",
+ "MATH_ONLIST_TOOLTIP_STD_DEV": "सूची का मानक विचलन रिटर्न करें।",
+ "MATH_ONLIST_OPERATOR_RANDOM": "सूची का रैन्डम आइटम",
+ "MATH_ONLIST_TOOLTIP_RANDOM": "सूची से एक रैन्डम आइटम रिटर्न करें।",
+ "MATH_MODULO_HELPURL": "https://en.wikipedia.org/wiki/Modulo_operation",
+ "MATH_MODULO_TITLE": "%1 ÷ %2 का शेषफल",
+ "MATH_MODULO_TOOLTIP": "दो संख्याओं के भाग का शेषफल रिटर्न करें।",
+ "MATH_RANDOM_INT_HELPURL": "https://en.wikipedia.org/wiki/Random_number_generation",
+ "MATH_RANDOM_INT_TITLE": "%1 से %2 तक रैन्डम पूर्णांक",
+ "MATH_RANDOM_FLOAT_HELPURL": "https://en.wikipedia.org/wiki/Random_number_generation",
+ "MATH_RANDOM_FLOAT_TITLE_RANDOM": "रैन्डम अंश",
+ "TEXT_TEXT_HELPURL": "https://en.wikipedia.org/wiki/String_(computer_science)",
+ "TEXT_TEXT_TOOLTIP": "एक अक्षर, शब्द, या टेक्स्ट की पंक्ति।",
+ "TEXT_JOIN_TITLE_CREATEWITH": "इसके साथ टेक्स्ट बनाएँ",
+ "TEXT_CREATE_JOIN_TITLE_JOIN": "जोड़",
+ "TEXT_CREATE_JOIN_ITEM_TOOLTIP": "सूची मे एक आइटम जोड़ें।",
+ "TEXT_APPEND_TO": "इस",
+ "TEXT_APPEND_APPENDTEXT": "से जोड़ें ये टेक्स्ट",
+ "TEXT_APPEND_TOOLTIP": "कुछ टेक्स्ट इस चर '%1' से जोड़ें।",
+ "TEXT_LENGTH_TITLE": "%1 की लंबाई",
+ "TEXT_LENGTH_TOOLTIP": "दिए गये टेक्स्ट मे अक्षरों की संख्या रिटर्न करता है (खाली स्थान मिला के)।",
+ "TEXT_ISEMPTY_TITLE": "%1 खाली है",
+ "TEXT_ISEMPTY_TOOLTIP": "ट्रू रिटर्न करता है यदि दिया गया टेक्स्ट खाली है।",
+ "TEXT_INDEXOF_INPUT_INTEXT": "इस टेक्स्ट मे",
+ "TEXT_INDEXOF_OPERATOR_FIRST": "टेक्स्ट पहली बार जहाँ आया है उसे ढूढ़े",
+ "TEXT_INDEXOF_OPERATOR_LAST": "टेक्स्ट आखरी बार जहाँ आया है उसे ढूढ़े",
+ "TEXT_CHARAT_INPUT_INTEXT": "इस टेक्स्ट मे",
+ "TEXT_CHARAT_FROM_START": "अक्षर # पाएँ",
+ "TEXT_CHARAT_FROM_END": "आखिर से अक्षर # पाएँ",
+ "TEXT_CHARAT_FIRST": "पहला अक्षर पाएँ",
+ "TEXT_CHARAT_LAST": "आखरी अक्षर पाएँ",
+ "TEXT_CHARAT_RANDOM": "रैन्डम अक्षर पाएँ",
+ "TEXT_CHARAT_TOOLTIP": "बताई गयी जगह से अक्षर रिटर्न करता है",
+ "TEXT_GET_SUBSTRING_TOOLTIP": "टेक्स्ट का बताया गया अंश रिटर्न करता है",
+ "TEXT_GET_SUBSTRING_INPUT_IN_TEXT": "इस टेक्स्ट मे",
+ "TEXT_GET_SUBSTRING_START_FROM_START": "अक्षर # से सबस्ट्रिंग पाएँ",
+ "TEXT_GET_SUBSTRING_START_FROM_END": "आखरी अक्षर # से सबस्ट्रिंग पाएँ",
+ "TEXT_GET_SUBSTRING_START_FIRST": "पहले अक्षर से सबस्ट्रिंग पाएँ",
+ "TEXT_GET_SUBSTRING_END_FROM_START": "यहाँ तक अक्षर #",
+ "TEXT_GET_SUBSTRING_END_FROM_END": "आखिर से यहाँ तक अक्षर #",
+ "TEXT_GET_SUBSTRING_END_LAST": "यहाँ तक आखरी अक्षर",
+ "TEXT_CHANGECASE_TOOLTIP": "टेक्स्ट की कॉपी भिन्न केस (अक्षर से संबंधित) मे रिटर्न करें।",
+ "TEXT_CHANGECASE_OPERATOR_UPPERCASE": "बड़े अक्षर मे",
+ "TEXT_CHANGECASE_OPERATOR_LOWERCASE": "छोटे अक्षर मे",
+ "TEXT_CHANGECASE_OPERATOR_TITLECASE": "टाइटल केस मे",
+ "TEXT_TRIM_OPERATOR_BOTH": "रिक्त स्थान को इस टेक्स्ट के दोनों तरफ से निकालें",
+ "TEXT_TRIM_OPERATOR_LEFT": "रिक्त स्थान को इस टेक्स्ट के बायें तरफ से निकालें",
+ "TEXT_TRIM_OPERATOR_RIGHT": "रिक्त स्थान को इस टेक्स्ट के दाईं तरफ से निकालें",
+ "TEXT_PRINT_TITLE": "प्रिंट करें %1",
+ "TEXT_PRINT_TOOLTIP": "दिया गया टेक्स्ट प्रिंट करें, संख्या या अन्य मान।",
+ "TEXT_PROMPT_TYPE_TEXT": "सूचना के साथ टेक्स्ट के लिए प्रॉम्प्ट करें",
+ "TEXT_PROMPT_TYPE_NUMBER": "सूचना के साथ संख्या के लिए प्रॉम्प्ट करें",
+ "TEXT_PROMPT_TOOLTIP_NUMBER": "यूज़र से संख्या के लिए प्रॉम्प्ट करें।",
+ "TEXT_PROMPT_TOOLTIP_TEXT": "यूज़र से कुछ टेक्स्ट के लिए प्रॉम्प्ट करें।",
+ "LISTS_CREATE_EMPTY_TITLE": "खाली सूची बनाएँ",
+ "LISTS_CREATE_WITH_TOOLTIP": "कितने भी आइटम वाली एक सूची बनाएँ।",
+ "LISTS_CREATE_WITH_INPUT_WITH": "इसके सूची बनाएँ",
+ "LISTS_CREATE_WITH_CONTAINER_TITLE_ADD": "सूची",
+ "LISTS_CREATE_WITH_ITEM_TOOLTIP": "सूची मे एक आइटम जोड़ें।",
+ "LISTS_LENGTH_TITLE": "%1 की लंबाई",
+ "LISTS_LENGTH_TOOLTIP": "सूची की लंबाई रिटर्न करता है।",
+ "LISTS_ISEMPTY_TITLE": "%1 खाली है",
+ "LISTS_ISEMPTY_TOOLTIP": "यदि सूची खाली है तो ट्रू रिटर्न करता है।",
+ "LISTS_INLIST": "सूची में",
+ "LISTS_INDEX_OF_FIRST": "आइटम पहली बार जहाँ आया है उसे ढूढ़े",
+ "LISTS_INDEX_OF_LAST": "आइटम आखरी बार जहाँ आया है उसे ढूढ़े",
+ "LISTS_GET_INDEX_GET": "प्राप्त",
+ "LISTS_GET_INDEX_GET_REMOVE": "प्राप्त करे और हटाए",
+ "LISTS_GET_INDEX_REMOVE": "निकालें",
+ "LISTS_GET_INDEX_FROM_END": "अंत से #",
+ "LISTS_GET_INDEX_FIRST": "%1 पहला आइटम है।",
+ "LISTS_GET_INDEX_LAST": "%1 आखरी आइटम है।",
+ "LISTS_GET_INDEX_RANDOM": "रैन्डम",
+ "LISTS_GET_INDEX_TOOLTIP_GET_FIRST": "सूची का पहला आइटम रिटर्न करता है।",
+ "LISTS_GET_INDEX_TOOLTIP_GET_LAST": "सूची का आखरी आइटम रिटर्न करता है।",
+ "LISTS_GET_INDEX_TOOLTIP_GET_RANDOM": "सूची से रैन्डम आइटम रिटर्न करता है।",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST": "सूची का पहला आइटम निकालता है और रिटर्न करता है।",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST": "सूची का आखरी आइटम निकालता है और रिटर्न करता है।",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM": "सूची से रैन्डम आइटम निकालता है और रिटर्न करता है।",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST": "सूची का पहला आइटम निकालता है।",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST": "सूची का आखरी आइटम निकालता है।",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM": "सूची से रैन्डम आइटम निकालता है।",
+ "LISTS_SET_INDEX_SET": "सैट करें",
+ "LISTS_SET_INDEX_TOOLTIP_SET_FROM": "सूची मे बताए गये स्थान में आइटम सैट करता है।",
+ "LISTS_SET_INDEX_TOOLTIP_SET_FIRST": "सूची में पहला आइटम सैट करता है।",
+ "LISTS_SET_INDEX_TOOLTIP_SET_LAST": "सूची में आखरी आइटम सैट करता है।",
+ "LISTS_SET_INDEX_TOOLTIP_SET_RANDOM": "सूची में रैन्डम आइटम सैट करता है।",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_FROM": "सूची मे बताए गये स्थान में आइटम इनसर्ट करता है।",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST": "आइटम को सूची के शुरू में इनसर्ट करता है।",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_LAST": "आइटम को सूची के अंत में जोड़ता है।",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM": "आइटम को सूची में रैन्डम्ली इनसर्ट करता है।",
+ "LISTS_GET_SUBLIST_TOOLTIP": "सूची के बताए गये भाग की कॉपी बनता है।",
+ "LISTS_SORT_TYPE_NUMERIC": "अंकीय",
+ "VARIABLES_GET_TOOLTIP": "इस चर का मान रिटर्न करता है।",
+ "VARIABLES_GET_CREATE_SET": "सेट '%1' बनाएँ",
+ "VARIABLES_SET": "सेट करें %1 को %2",
+ "VARIABLES_SET_TOOLTIP": "इस चर को इनपुट के बराबर सेट करता है।",
+ "PROCEDURES_DEFNORETURN_PROCEDURE": "कुछ करें",
+ "PROCEDURES_BEFORE_PARAMS": ": के साथ",
+ "PROCEDURES_CALL_BEFORE_PARAMS": ": के साथ",
+ "PROCEDURES_DEFNORETURN_TOOLTIP": "बिना आउटपुट वाला एक फ़ंक्शन बनाता है।",
+ "PROCEDURES_DEFRETURN_RETURN": "रिटर्न",
+ "PROCEDURES_DEFRETURN_TOOLTIP": "आउटपुट वाला एक फ़ंक्शन बनाता है।",
+ "PROCEDURES_DEF_DUPLICATE_WARNING": "सावधान: इस फ़ंक्शन मे डुप्लिकेट पैरामीटर हैं।",
+ "PROCEDURES_CALLNORETURN_HELPURL": "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29",
+ "PROCEDURES_CALLNORETURN_TOOLTIP": "यूज़र द्वारा वर्णन किया गया फ़ंक्शन '%1' चलाएँ।",
+ "PROCEDURES_CALLRETURN_HELPURL": "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29",
+ "PROCEDURES_CALLRETURN_TOOLTIP": "यूज़र द्वारा वर्णन किया गया फ़ंक्शन '%1' चलाएँ और उसका आउटपुट इस्तेमाल करें।",
+ "PROCEDURES_MUTATORCONTAINER_TITLE": "इनपुट",
+ "PROCEDURES_MUTATORARG_TITLE": "इनपुट का नाम:",
+ "PROCEDURES_MUTATORARG_TOOLTIP": "फंगक्शन को इनपुट प्रदान करें।",
+ "PROCEDURES_HIGHLIGHT_DEF": "फ़ंक्शन परिभाषा को हाइलाइट करें",
+ "PROCEDURES_CREATE_DO": "'%1' बनाएँ",
+ "PROCEDURES_IFRETURN_TOOLTIP": "यदि एक मान ट्रू है तो, दूसरा मान रिटर्न करें।",
+ "PROCEDURES_IFRETURN_WARNING": "सावधान: ये ब्लॉक फ़ंक्शन परिभाषा के अंदर ही इस्तेमाल किया जा सकता।"
+}
diff --git a/blockly/msg/json/hrx.json b/blockly/msg/json/hrx.json
new file mode 100644
index 0000000..8f9e8c7
--- /dev/null
+++ b/blockly/msg/json/hrx.json
@@ -0,0 +1,289 @@
+{
+ "@metadata": {
+ "authors": [
+ "Paul Beppler"
+ ]
+ },
+ "VARIABLES_DEFAULT_NAME": "Element",
+ "DUPLICATE_BLOCK": "Kopieren",
+ "ADD_COMMENT": "Kommentar hinzufüche",
+ "REMOVE_COMMENT": "Kommentar entferne",
+ "EXTERNAL_INPUTS": "External Inputsexterne Ingänge",
+ "INLINE_INPUTS": "interne Ingänge",
+ "DELETE_BLOCK": "Block lösche",
+ "DELETE_X_BLOCKS": "Block %1 lösche",
+ "DELETE_ALL_BLOCKS": "All %1 Bausten lösche?",
+ "COLLAPSE_BLOCK": "Block zusammerfalte",
+ "COLLAPSE_ALL": "Blocke zusammerfalte",
+ "EXPAND_BLOCK": "Block entfalte",
+ "EXPAND_ALL": "Blocke expandiere",
+ "DISABLE_BLOCK": "Block deaktivieren",
+ "ENABLE_BLOCK": "Block aktivieren",
+ "HELP": "Hellef",
+ "CHANGE_VALUE_TITLE": "Neie Variable...",
+ "RENAME_VARIABLE": "Die neie Variable sei Noome:",
+ "RENAME_VARIABLE_TITLE": "All \"%1\" Variable umbenenne in:",
+ "NEW_VARIABLE": "Neie Variable...",
+ "NEW_VARIABLE_TITLE": "Die neie Variable sei Noome:",
+ "COLOUR_PICKER_HELPURL": "https://hrx.wikipedia.org/wiki/Farreb",
+ "COLOUR_PICKER_TOOLTIP": "Wähl en Farreb von der Palett.",
+ "COLOUR_RANDOM_TITLE": "zufälliche Farwe",
+ "COLOUR_RANDOM_TOOLTIP": "Wähl en Farreb noh dem Zufallsprinzip.",
+ "COLOUR_RGB_TITLE": "Färreb mit",
+ "COLOUR_RGB_RED": "rot",
+ "COLOUR_RGB_GREEN": "grün",
+ "COLOUR_RGB_BLUE": "blau",
+ "COLOUR_RGB_TOOLTIP": "Kreiere ene Farreb mit sellrbst definierte rot, grün und blau Wearte. All Wearte müsse zwischich 0 und 100 liehe.",
+ "COLOUR_BLEND_TITLE": "misch",
+ "COLOUR_BLEND_COLOUR1": "Farreb 1",
+ "COLOUR_BLEND_COLOUR2": "mit Farreb 2",
+ "COLOUR_BLEND_RATIO": "im Verhältniss",
+ "COLOUR_BLEND_TOOLTIP": "Vermischt 2 Farwe mit konfigurierbare Farrebverhältniss (0.0 - 1.0).",
+ "CONTROLS_REPEAT_HELPURL": "https://hrx.wikipedia.org/wiki/For-Schleif",
+ "CONTROLS_REPEAT_TITLE": "wiederhol %1 mol",
+ "CONTROLS_REPEAT_INPUT_DO": "mach",
+ "CONTROLS_REPEAT_TOOLTIP": "En Oonweisung meahrfach ausführe.",
+ "CONTROLS_WHILEUNTIL_OPERATOR_WHILE": "Repetier solang",
+ "CONTROLS_WHILEUNTIL_OPERATOR_UNTIL": "Repetiere bis",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_WHILE": "Füahr die Oonweisung solang aus wie die Bedingung woahr (true) ist.",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL": "Füahr die Oonweisung solang aus wie die Bedingung falsch (false) ist.",
+ "CONTROLS_FOR_TOOLTIP": "Zähl die Variable \"%1\" von enem Startweart bis zu enem Zielweart und füahrefür jede Weart en Oonweisung aus.",
+ "CONTROLS_FOR_TITLE": "Zähl %1 von %2 bis %3 mit %4",
+ "CONTROLS_FOREACH_TITLE": "Für Weart %1 aus der List %2",
+ "CONTROLS_FOREACH_TOOLTIP": "Füahr en Oonweisung für jede Weart in der List aus und setzt dabei die Variable \"%1\" uff den aktuelle List Weart.",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK": "ausbreche aus der Schleif",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE": "mit der nächste Iteration fortfoohre aus der Schleifa",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK": "Die umgebne Schleif beenne.",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE": "Die Oonweisung abbreche und mit der nächste Schleifiteration fortfoohre.",
+ "CONTROLS_FLOW_STATEMENTS_WARNING": "Warnung: Die block sollt nuar in en Schleif verwennet sin.",
+ "CONTROLS_IF_TOOLTIP_1": "Wenn en Bedingung woahr (true) ist, dann füahr en Oonweisung aus.",
+ "CONTROLS_IF_TOOLTIP_2": "Wenn en Bedingung woahr (true) ist, dann füahr die earscht Oonweisung aus. Ansonscht füahr die zwooite Oonweisung aus.",
+ "CONTROLS_IF_TOOLTIP_3": "Wenn der erschte Bedingung woahr (true) ist, dann füahr die erschte Oonweisung aus. Orrer wenn die zwooite Bedingung woahr (true) ist, dann füahr die zwooite Oonweisung aus.",
+ "CONTROLS_IF_TOOLTIP_4": "Wenn der erscht Bedingung woahr (true) ist, dann füahr die erschte Oonweisung aus. Orrer wenn die zwooite Bedingung woahr (true) ist, dann füahr die zwooite Oonweisung aus. Falls ken der beide Bedingungen woahr (true) ist, dann füahr die dritte Oonweisung aus.",
+ "CONTROLS_IF_MSG_IF": "wenn",
+ "CONTROLS_IF_MSG_ELSEIF": "orrer wenn",
+ "CONTROLS_IF_MSG_ELSE": "orrer",
+ "CONTROLS_IF_IF_TOOLTIP": "Hinzufüche, entferne orrer sortiere von Sektione",
+ "CONTROLS_IF_ELSEIF_TOOLTIP": "En weitre Bedingung hinzufüche.",
+ "CONTROLS_IF_ELSE_TOOLTIP": "En orrer Bedingung hinzufüche, füahrt en Oonweisung aus falls ken Bedingung zutrifft.",
+ "LOGIC_COMPARE_HELPURL": "https://hrx.wikipedia.org/wiki/Vergleich_%28Zahlen%29",
+ "LOGIC_COMPARE_TOOLTIP_EQ": "Ist woahr (true) wenn beide Wearte identisch sind.",
+ "LOGIC_COMPARE_TOOLTIP_NEQ": "Ist woahr (true) wenn beide Wearte unnerschiedlich sind.",
+ "LOGIC_COMPARE_TOOLTIP_LT": "Ist woahr (true) wenn der earschte Weart klener als der zwooite Weart ist.",
+ "LOGIC_COMPARE_TOOLTIP_LTE": "Ist woahr (true) wenn der earscht Weart klener als orrer gleich gross wie zwooite Weart ist.",
+ "LOGIC_COMPARE_TOOLTIP_GT": "Ist woahr (true) wenn der erschte Weart grösser als der zwooite Weart ist.",
+ "LOGIC_COMPARE_TOOLTIP_GTE": "Ist woahr (true) wenn der erschte Weart grösser als orrer gleich gross wie zwooite Weart ist.",
+ "LOGIC_OPERATION_TOOLTIP_AND": "Ist woahr (true) wenn beide Wearte woahr (true) sind.",
+ "LOGIC_OPERATION_AND": "und",
+ "LOGIC_OPERATION_TOOLTIP_OR": "Ist woahr (true) wenn en von der beide Wearte woahr (true) ist.",
+ "LOGIC_OPERATION_OR": "orrer",
+ "LOGIC_NEGATE_TITLE": "net %1",
+ "LOGIC_NEGATE_TOOLTIP": "Ist woahr (true) wenn der Ingäweweart falsch (false) ist. Ist falsch (false) wenn der Ingäweweart woahr (true) ist.",
+ "LOGIC_BOOLEAN_TRUE": "woahr",
+ "LOGIC_BOOLEAN_FALSE": "falsch",
+ "LOGIC_BOOLEAN_TOOLTIP": "Ist entweder woahr (true) orrer falsch (false)",
+ "LOGIC_NULL": "null",
+ "LOGIC_NULL_TOOLTIP": "Is NULL.",
+ "LOGIC_TERNARY_CONDITION": "test",
+ "LOGIC_TERNARY_IF_TRUE": "wenn woahr",
+ "LOGIC_TERNARY_IF_FALSE": "wenn falsch",
+ "LOGIC_TERNARY_TOOLTIP": "Üwerprüft en Bedingung \"test\". Wenn die Bedingung woahr ist weerd der \"wenn woahr\" Weart zurückgeb, annerfalls der \"wenn falsch\" Weart",
+ "MATH_NUMBER_HELPURL": "https://hrx.wikipedia.org/wiki/Zoohl",
+ "MATH_NUMBER_TOOLTIP": "En Zoohl.",
+ "MATH_ARITHMETIC_HELPURL": "https://hrx.wikipedia.org/wiki/Grundrechenoort",
+ "MATH_ARITHMETIC_TOOLTIP_ADD": "Ist die Summe zwooier Wearte.",
+ "MATH_ARITHMETIC_TOOLTIP_MINUS": "Ist die Differenz zwooier Wearte.",
+ "MATH_ARITHMETIC_TOOLTIP_MULTIPLY": "Ist das Produkt zwooier Wearte.",
+ "MATH_ARITHMETIC_TOOLTIP_DIVIDE": "Ist der Quotient zwooier Wearte.",
+ "MATH_ARITHMETIC_TOOLTIP_POWER": "Ist der earschte Weart potenziert mit dem zoiten Weart.",
+ "MATH_SINGLE_HELPURL": "https://hrx.wikipedia.org/wiki/Quadratwoorzel",
+ "MATH_SINGLE_OP_ROOT": "Quadratwoorzel",
+ "MATH_SINGLE_TOOLTIP_ROOT": "Ist die Qudratwoorzel von en Weart.",
+ "MATH_SINGLE_OP_ABSOLUTE": "Absolutweart",
+ "MATH_SINGLE_TOOLTIP_ABS": "Ist der Absolutweart von en Weart.",
+ "MATH_SINGLE_TOOLTIP_NEG": "Negiert en Weart.",
+ "MATH_SINGLE_TOOLTIP_LN": "Ist der natüarliche Logarithmus von en Weart.",
+ "MATH_SINGLE_TOOLTIP_LOG10": "Ist der dekoodische Logarithmus von en Weart.",
+ "MATH_SINGLE_TOOLTIP_EXP": "Ist Weart von der Exponentialfunktion von en Weart.",
+ "MATH_SINGLE_TOOLTIP_POW10": "Rechnet 10 hoch Ingäbweart.",
+ "MATH_TRIG_HELPURL": "https://hrx.wikipedia.org/wiki/Trigonometrie",
+ "MATH_TRIG_TOOLTIP_SIN": "Ist der Sinus von en Winkel.",
+ "MATH_TRIG_TOOLTIP_COS": "Ist der Cosinus von en Winkel.",
+ "MATH_TRIG_TOOLTIP_TAN": "Ist der Tangens von en Winkel.",
+ "MATH_TRIG_TOOLTIP_ASIN": "Ist der Arcussinus von en Ingäbweart.",
+ "MATH_TRIG_TOOLTIP_ACOS": "Ist der Arcuscosinus von en Ingabweart.",
+ "MATH_TRIG_TOOLTIP_ATAN": "Ist der Arcustangens von en Ingäbweart.",
+ "MATH_CONSTANT_HELPURL": "https://hrx.wikipedia.org/wiki/Mathematische_Konstante",
+ "MATH_CONSTANT_TOOLTIP": "Mathematische Konstante wie: π (3.141…), e (2.718…), φ (1.618…), sqrt(2) (1.414…), sqrt(½) (0.707…) oder ∞ (unendlich).",
+ "MATH_IS_EVEN": "ist grood",
+ "MATH_IS_ODD": "ist ungrood",
+ "MATH_IS_PRIME": "ist en Primenzoohl",
+ "MATH_IS_WHOLE": "ganze Zoohl",
+ "MATH_IS_POSITIVE": "ist positiv",
+ "MATH_IS_NEGATIVE": "ist negativ",
+ "MATH_IS_DIVISIBLE_BY": "ist telbar/kann getelt sin doorrich",
+ "MATH_IS_TOOLTIP": "Üwerprüft ob en Zoohl grood, ungrood, en Primenzoohl, ganzzoohlich, positiv, negativ orrer doorrich en zwooite Zoohl telbar ist. Gebt woahr (true) orrer falsch (false) zurück.",
+ "MATH_CHANGE_HELPURL": "https://hrx.wikipedia.org/wiki/Inkrement_und_Dekrement",
+ "MATH_CHANGE_TITLE": "mach höcher / erhöhe %1 um %2",
+ "MATH_CHANGE_TOOLTIP": "Addiert en Weart zur Variable \"%1\" hinzu.",
+ "MATH_ROUND_HELPURL": "https://hrx.wikipedia.org/wiki/Runden",
+ "MATH_ROUND_TOOLTIP": "En Zoohl uff orrer ab runde.",
+ "MATH_ROUND_OPERATOR_ROUND": "runde",
+ "MATH_ROUND_OPERATOR_ROUNDUP": "uff runde",
+ "MATH_ROUND_OPERATOR_ROUNDDOWN": "ab runde",
+ "MATH_ONLIST_OPERATOR_SUM": "Summe von en List",
+ "MATH_ONLIST_TOOLTIP_SUM": "Ist die Summ aller Wearte in en List.",
+ "MATH_ONLIST_OPERATOR_MIN": "Minimalweart von en List",
+ "MATH_ONLIST_TOOLTIP_MIN": "Ist der klenste Weart in en List.",
+ "MATH_ONLIST_OPERATOR_MAX": "Maximalweart en List",
+ "MATH_ONLIST_TOOLTIP_MAX": "Ist der grösste Weart in en List.",
+ "MATH_ONLIST_OPERATOR_AVERAGE": "Mittelweart en List",
+ "MATH_ONLIST_TOOLTIP_AVERAGE": "Ist der Doorrichschnittsweart von aller Wearte in en List.",
+ "MATH_ONLIST_OPERATOR_MEDIAN": "Median von en List",
+ "MATH_ONLIST_TOOLTIP_MEDIAN": "Ist der Zentralweart von aller Wearte in en List.",
+ "MATH_ONLIST_OPERATOR_MODE": "Restweart von en List",
+ "MATH_ONLIST_TOOLTIP_MODE": "Findt den am häifichste voarkommend Weart in en List. Falls ken Weart öftersch voarkomme als all annre, weard die originale List zurückgeche",
+ "MATH_ONLIST_OPERATOR_STD_DEV": "Standart/Padrong Abweichung von en List",
+ "MATH_ONLIST_TOOLTIP_STD_DEV": "Ist die standartiesierte/padronisierte Standartabweichung/Padrongabweichung von aller Wearte in der List",
+ "MATH_ONLIST_OPERATOR_RANDOM": "Zufallsweart von en List",
+ "MATH_ONLIST_TOOLTIP_RANDOM": "Geb en Zufallsweart aus der List zurück.",
+ "MATH_MODULO_HELPURL": "https://hrx.wikipedia.org/wiki/Modulo",
+ "MATH_MODULO_TITLE": "Rest von %1 ÷ %2",
+ "MATH_MODULO_TOOLTIP": "Der Rest noh en Division.",
+ "MATH_CONSTRAIN_TITLE": "begrenze %1 von %2 bis %3",
+ "MATH_CONSTRAIN_TOOLTIP": "Begrenzt den Weartebereich mittels von / bis Wearte. (inklusiv)",
+ "MATH_RANDOM_INT_HELPURL": "https://hrx.wikipedia.org/wiki/Zufallszahlen",
+ "MATH_RANDOM_INT_TITLE": "ganzoohlicher Zufallswearte zwischich %1 bis %2",
+ "MATH_RANDOM_INT_TOOLTIP": "Generier/erzeich en ganzähliche Zufallsweart zwischich zwooi Wearte (inklusiv).",
+ "MATH_RANDOM_FLOAT_HELPURL": "https://hex.wikipedia.org/wiki/Zufallszoohle",
+ "MATH_RANDOM_FLOAT_TITLE_RANDOM": "Zufallszoohl (0.0 -1.0)",
+ "MATH_RANDOM_FLOAT_TOOLTIP": "Generier/erzeich en Zufallszoohl zwischich 0.0 (inklusiv) und 1.0 (exklusiv).",
+ "TEXT_TEXT_HELPURL": "https://en.wikipedia.org/wiki/String_(computer_science)https://hrx.wikipedia.org/wiki/Zeichenkette",
+ "TEXT_TEXT_TOOLTIP": "En Buchstoob, Text orrer Satz.",
+ "TEXT_JOIN_TITLE_CREATEWITH": "Erstell Text aus",
+ "TEXT_JOIN_TOOLTIP": "Erstellt en Text doorrich das verbinne von mehre Textelemente.",
+ "TEXT_CREATE_JOIN_TITLE_JOIN": "verbinne",
+ "TEXT_CREATE_JOIN_TOOLTIP": "Hinzufüche, entfernne und sortiere von Elemente.",
+ "TEXT_CREATE_JOIN_ITEM_TOOLTIP": "En Element zum Text hinzufüche.",
+ "TEXT_APPEND_TO": "An",
+ "TEXT_APPEND_APPENDTEXT": "Text oonhänge",
+ "TEXT_APPEND_TOOLTIP": "Text an die Variable \"%1\" oonhänge.",
+ "TEXT_LENGTH_TITLE": "läng %1",
+ "TEXT_LENGTH_TOOLTIP": "Die Oonzoohl von Zeiche in enem Text. (inkl. Leerzeiche)",
+ "TEXT_ISEMPTY_TITLE": "%1 ist leer?",
+ "TEXT_ISEMPTY_TOOLTIP": "Ist woahr (true), wenn der Text leer ist.",
+ "TEXT_INDEXOF_TOOLTIP": "Findt das earste / letzte Voarkommniss von en Suchbegriffes in enem Text. Gebt die Position von dem Begriff orrer %1 zurück.",
+ "TEXT_INDEXOF_INPUT_INTEXT": "im Text",
+ "TEXT_INDEXOF_OPERATOR_FIRST": "Such der Begriff sein earstes Voarkommniss",
+ "TEXT_INDEXOF_OPERATOR_LAST": "Suche der Begriff sein letztes Vorkommniss.",
+ "TEXT_CHARAT_INPUT_INTEXT": "in Text",
+ "TEXT_CHARAT_FROM_START": "hol Buchstoob #",
+ "TEXT_CHARAT_FROM_END": "hol Buchstoob # von End",
+ "TEXT_CHARAT_FIRST": "hol earschte Buchstoob",
+ "TEXT_CHARAT_LAST": "hol letztes Wort",
+ "TEXT_CHARAT_RANDOM": "hol zufälliches Buchstoob",
+ "TEXT_CHARAT_TOOLTIP": "Extrahiear en Buchstoob von en spezifizierte Position.",
+ "TEXT_GET_SUBSTRING_TOOLTIP": "Schickt en bestimmstes Tel von dem Text retuar.",
+ "TEXT_GET_SUBSTRING_INPUT_IN_TEXT": "in Text",
+ "TEXT_GET_SUBSTRING_START_FROM_START": "hol substring Buchstoob #te",
+ "TEXT_GET_SUBSTRING_START_FROM_END": "hol #te Buchstoob von hinne",
+ "TEXT_GET_SUBSTRING_START_FIRST": "earschte Buchstoob",
+ "TEXT_GET_SUBSTRING_END_FROM_START": "bis Buchstoob #te",
+ "TEXT_GET_SUBSTRING_END_FROM_END": "bis #te Buchstoob von hinne",
+ "TEXT_GET_SUBSTRING_END_LAST": "bis letzte Buchstoob",
+ "TEXT_CHANGECASE_TOOLTIP": "Wandelt Schreibweise von Texte um, in Grossbuchstoobe, Klenbuchstoobe orrer den earste Buchstoob von jedes Wort gross und die annre klen.",
+ "TEXT_CHANGECASE_OPERATOR_UPPERCASE": "umwandle in GROSSBUCHSTOOBE",
+ "TEXT_CHANGECASE_OPERATOR_LOWERCASE": "umwandle in klenbuchstoobe",
+ "TEXT_CHANGECASE_OPERATOR_TITLECASE": "umwandle in Wörter",
+ "TEXT_TRIM_TOOLTIP": "Entfernt Leerzeiche vom Oonfang und / orrer End von en Text.",
+ "TEXT_TRIM_OPERATOR_BOTH": "entfern Leerzeiche von Oonfang und End Seite",
+ "TEXT_TRIM_OPERATOR_LEFT": "entferne Leerzeiche von Oonfang Seite",
+ "TEXT_TRIM_OPERATOR_RIGHT": "entferne Leerzeiche von End Seite von",
+ "TEXT_PRINT_TITLE": "Ausgäb %1",
+ "TEXT_PRINT_TOOLTIP": "Geb den Inhalt von en Variable aus.",
+ "TEXT_PROMPT_TYPE_TEXT": "Frocht noh Text mit Hinweis",
+ "TEXT_PROMPT_TYPE_NUMBER": "Frächt noh Zoohl mit Hinweis",
+ "TEXT_PROMPT_TOOLTIP_NUMBER": "Frocht den Benutzer noh en Zoohl.",
+ "TEXT_PROMPT_TOOLTIP_TEXT": "Frocht den Benutzer noh enem Text.",
+ "LISTS_CREATE_EMPTY_TITLE": "Generier/erzeich en leear List",
+ "LISTS_CREATE_EMPTY_TOOLTIP": "Generier/erzeich en leear List ohne Inhalt.",
+ "LISTS_CREATE_WITH_TOOLTIP": "Generier/erzeich en List mit konfigurierte Elemente.",
+ "LISTS_CREATE_WITH_INPUT_WITH": "Erzeich List mit",
+ "LISTS_CREATE_WITH_CONTAINER_TITLE_ADD": "List",
+ "LISTS_CREATE_WITH_CONTAINER_TOOLTIP": "Hinzufüche, entferne und sortiere von Elemente.",
+ "LISTS_CREATE_WITH_ITEM_TOOLTIP": "En Element zur List hinzufüche.",
+ "LISTS_REPEAT_TOOLTIP": "Erzeicht en List mit en variable Oonzoohl von Elemente",
+ "LISTS_REPEAT_TITLE": "Erzich List mit Element %1 wiederhol das %2 mol",
+ "LISTS_LENGTH_TITLE": "länge %1",
+ "LISTS_LENGTH_TOOLTIP": "Die Oonzoohl von Elemente in der List.",
+ "LISTS_ISEMPTY_TITLE": "%1 ist leear?",
+ "LISTS_ISEMPTY_TOOLTIP": "Ist woahr (true), wenn die List leear ist.",
+ "LISTS_INLIST": "in der List",
+ "LISTS_INDEX_OF_FIRST": "Such earstes Voarkommniss",
+ "LISTS_INDEX_OF_LAST": "Such letztes Voarkommniss",
+ "LISTS_INDEX_OF_TOOLTIP": "Sucht die Position (index) von en Element in der List Gebt %1 zurück wenn nixs gefunn woard.",
+ "LISTS_GET_INDEX_GET": "Nehm",
+ "LISTS_GET_INDEX_GET_REMOVE": "Nehm und entfern",
+ "LISTS_GET_INDEX_REMOVE": "Entfern",
+ "LISTS_GET_INDEX_FROM_END": "#te von hinne",
+ "LISTS_GET_INDEX_FIRST": "earste",
+ "LISTS_GET_INDEX_LAST": "letzte",
+ "LISTS_GET_INDEX_RANDOM": "zufälliches",
+ "LISTS_INDEX_FROM_START_TOOLTIP": "%1 ist das earschte Element.",
+ "LISTS_INDEX_FROM_END_TOOLTIP": "%1 ist das letzte Element.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_FROM": "Extrahiert das Element zu en definierte Stell von der List.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_FIRST": "Extrahiert das earste Element von der List.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_LAST": "Extrahiert das letzte Element von der List.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_RANDOM": "Extrahiert en zufälliches Element von der List.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM": "Extrahiert und entfernt das Element zu en definierte Stell von der List.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST": "Extrahiert und entfernt das earste Element von der List.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST": "Extrahiert und entfernt das letzte Element von der List.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM": "Extrahiert und entfernt en zufälliches Element von der List.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM": "Entfernt das Element zu en definierte Stell von der List.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST": "Entfernt das earste Element von der List.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST": "Entfernt das letzte Element von der List.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM": "Entfernt en zufälliches Element von der List.",
+ "LISTS_SET_INDEX_SET": "setz",
+ "LISTS_SET_INDEX_INSERT": "tue ren setz an",
+ "LISTS_SET_INDEX_INPUT_TO": "uff",
+ "LISTS_SET_INDEX_TOOLTIP_SET_FROM": "Setzt das Element zu en definierte Stell in en List.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_FIRST": "Sets the first item in a list.Setzt das earschte Element an en list.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_LAST": "Setzt das letzte Element an en List.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_RANDOM": "Setzt en zufälliches Element an en List.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_FROM": "Tut das Element ren setze an en definierte Stell an en List.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST": "Tut das Element an en Oonfang von en List ren setze.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_LAST": "Oonhängt das Element zu en List sei End.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM": "Tut das Element zufällich an en List ren setze.",
+ "LISTS_GET_SUBLIST_START_FROM_START": "hol Unnerlist von #",
+ "LISTS_GET_SUBLIST_START_FROM_END": "hol Unnerliste von # vom End",
+ "LISTS_GET_SUBLIST_START_FIRST": "hol Unnerliste vom Earste",
+ "LISTS_GET_SUBLIST_END_FROM_START": "zu #",
+ "LISTS_GET_SUBLIST_END_FROM_END": "zu # vom End",
+ "LISTS_GET_SUBLIST_END_LAST": "zum Letzte",
+ "LISTS_GET_SUBLIST_TOOLTIP": "Generiert en Kopie von en definierte Tel von en List.",
+ "VARIABLES_GET_TOOLTIP": "Gebt der Variable sein Weart zurück.",
+ "VARIABLES_GET_CREATE_SET": "Generier/erzeiche \"Schreibe %1\"",
+ "VARIABLES_SET": "Schreib %1 zu %2",
+ "VARIABLES_SET_TOOLTIP": "Setzt en Variable sei Weart.",
+ "VARIABLES_SET_CREATE_GET": "Generier/erzeich \"Lese %1\"",
+ "PROCEDURES_DEFNORETURN_TITLE": "zu",
+ "PROCEDURES_DEFNORETURN_PROCEDURE": "Funktionsblock",
+ "PROCEDURES_BEFORE_PARAMS": "mit:",
+ "PROCEDURES_CALL_BEFORE_PARAMS": "mit:",
+ "PROCEDURES_DEFNORETURN_TOOLTIP": "En Funktionsblock ohne Rückgäbweart.",
+ "PROCEDURES_DEFRETURN_RETURN": "geb zurück",
+ "PROCEDURES_DEFRETURN_TOOLTIP": "En Funktionsblock mit Rückgäbweart.",
+ "PROCEDURES_DEF_DUPLICATE_WARNING": "Warnung: die Funktionsblock hot doppelt Parameter.",
+ "PROCEDURES_CALLNORETURN_HELPURL": "https://hrx.wikipedia.org/wiki/Prozedur_%28Programmierung%29",
+ "PROCEDURES_CALLNORETURN_TOOLTIP": "Ruf en Funktionsblock ohne Rückgäweart uff.",
+ "PROCEDURES_CALLRETURN_HELPURL": "https://hrx.wikipedia.org/wiki/Prozedur_%28Programmierung%29",
+ "PROCEDURES_CALLRETURN_TOOLTIP": "Ruf en Funktionsblock mit Rückgäbweart uff.",
+ "PROCEDURES_MUTATORCONTAINER_TITLE": "Parameter",
+ "PROCEDURES_MUTATORCONTAINER_TOOLTIP": "Variable:",
+ "PROCEDURES_MUTATORARG_TITLE": "Markiear Funktionsblock",
+ "PROCEDURES_MUTATORARG_TOOLTIP": "Generier/erzeich \"Uffruf %1\"",
+ "PROCEDURES_HIGHLIGHT_DEF": "Markiear Funktionsblock",
+ "PROCEDURES_CREATE_DO": "Generier/erzeich \"Uffruf %1\"",
+ "PROCEDURES_IFRETURN_TOOLTIP": "Wenn der earste Weart woahr (true) ist, Geb den zwooite Weart zurück.",
+ "PROCEDURES_IFRETURN_WARNING": "Warnung: Der Block därref nuar innich en Funktionsblock genutzt sin."
+}
diff --git a/blockly/msg/json/hu.json b/blockly/msg/json/hu.json
new file mode 100644
index 0000000..eef1456
--- /dev/null
+++ b/blockly/msg/json/hu.json
@@ -0,0 +1,327 @@
+{
+ "@metadata": {
+ "authors": [
+ "Espertus",
+ "Takács Viktor László",
+ "Dj",
+ "Grin",
+ "ViDam",
+ "Csega",
+ "Fitoschido",
+ "Lajthabalazs",
+ "Tacsipacsi",
+ "Rodrigo",
+ "Máté"
+ ]
+ },
+ "VARIABLES_DEFAULT_NAME": "változó",
+ "TODAY": "Ma",
+ "DUPLICATE_BLOCK": "Másolat",
+ "ADD_COMMENT": "Megjegyzés hozzáadása",
+ "REMOVE_COMMENT": "Megjegyzés törlése",
+ "EXTERNAL_INPUTS": "Külső kapcsolatok",
+ "INLINE_INPUTS": "Belső kapcsolatok",
+ "DELETE_BLOCK": "Blokk törlése",
+ "DELETE_X_BLOCKS": "%1 blokk törlése",
+ "DELETE_ALL_BLOCKS": "Az összes %1 blokk törlése?",
+ "CLEAN_UP": "Blokkok kiürítése",
+ "COLLAPSE_BLOCK": "Blokk összecsukása",
+ "COLLAPSE_ALL": "Blokkok összecsukása",
+ "EXPAND_BLOCK": "Blokk kibontása",
+ "EXPAND_ALL": "Blokkok kibontása",
+ "DISABLE_BLOCK": "Blokk letiltása",
+ "ENABLE_BLOCK": "Blokk engedélyezése",
+ "HELP": "Súgó",
+ "UNDO": "Visszavonás",
+ "REDO": "Újra",
+ "CHANGE_VALUE_TITLE": "Érték módosítása:",
+ "RENAME_VARIABLE": "Változó átnevezése...",
+ "RENAME_VARIABLE_TITLE": "Minden \"%1\" változó átnevezése erre:",
+ "NEW_VARIABLE": "Új változó...",
+ "NEW_VARIABLE_TITLE": "Az új változó neve:",
+ "COLOUR_PICKER_HELPURL": "https://hu.wikipedia.org/wiki/Szín",
+ "COLOUR_PICKER_TOOLTIP": "Válassz színt a palettáról.",
+ "COLOUR_RANDOM_TITLE": "véletlen szín",
+ "COLOUR_RANDOM_TOOLTIP": "Véletlenszerűen kiválasztott szín.",
+ "COLOUR_RGB_TITLE": "Szín",
+ "COLOUR_RGB_RED": "vörös",
+ "COLOUR_RGB_GREEN": "zöld",
+ "COLOUR_RGB_BLUE": "kék",
+ "COLOUR_RGB_TOOLTIP": "Szín előállítása a megadott vörös, zöld, és kék értékekkel. Minden értéknek 0 és 100 közé kell esnie.",
+ "COLOUR_BLEND_TITLE": "színkeverés",
+ "COLOUR_BLEND_COLOUR1": "szín 1",
+ "COLOUR_BLEND_COLOUR2": "szín 2",
+ "COLOUR_BLEND_RATIO": "arány",
+ "COLOUR_BLEND_TOOLTIP": "Két színt kever össze a megadott arányban (0.0 - 1.0).",
+ "CONTROLS_REPEAT_HELPURL": "https://hu.wikipedia.org/wiki/Ciklus_(programoz%C3%A1s)#Sz.C3.A1ml.C3.A1l.C3.B3s_.28FOR.29_ciklus",
+ "CONTROLS_REPEAT_TITLE": "ismételd %1 alkalommal",
+ "CONTROLS_REPEAT_INPUT_DO": "",
+ "CONTROLS_REPEAT_TOOLTIP": "Megadott kódrészlet ismételt végrehajtása.",
+ "CONTROLS_WHILEUNTIL_OPERATOR_WHILE": "ismételd amíg",
+ "CONTROLS_WHILEUNTIL_OPERATOR_UNTIL": "ismételd amíg nem",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_WHILE": "Amíg a feltétel igaz, végrehajtja az utasításokat.",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL": "Amíg a feltétel hamis, végrehajtja az utasításokat.",
+ "CONTROLS_FOR_TOOLTIP": "A(z) '%1' változó felveszi a kezdőérték és a végérték közötti értékeket a meghatározott lépésközzel. Eközben a meghatározott blokkokat hajtja végre.",
+ "CONTROLS_FOR_TITLE": "számolj %1 értékével %2 és %3 között %4 lépésközzel",
+ "CONTROLS_FOREACH_TITLE": "minden %1 elemre a %2 listában",
+ "CONTROLS_FOREACH_TOOLTIP": "A '%1' változó minden lépésben megkapja a lista adott elemének értékét, és végrehajt vele néhány utasítást.",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK": "befejezi az ismétlést",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE": "folytatja a következővel",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK": "Megszakítja az utasítást tartalmazó ciklust.",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE": "Kihagyja a ciklus további részét, és elölről kezdi a következő elemmel.",
+ "CONTROLS_FLOW_STATEMENTS_WARNING": "Figyelem: Ez a blokk csak cikluson belül használható.",
+ "CONTROLS_IF_TOOLTIP_1": "Ha a kifejezés igaz, akkor végrehajtja az utasításokat.",
+ "CONTROLS_IF_TOOLTIP_2": "Ha a kifejezés igaz, akkor végrehajtja az első utasításblokkot. Különben a második utasításblokk kerül végrehajtásra.",
+ "CONTROLS_IF_TOOLTIP_3": "Ha az első kifejezés igaz, akkor végrehajtja az első utasításblokkot. Különben, ha a második kifejezés igaz, akkor végrehajtja a második utasítás blokkot.",
+ "CONTROLS_IF_TOOLTIP_4": "Ha az első kifejezés igaz, akkor végrehajtjuk az első utasítás blokkot. Ha a második kifejezés igaz, akkor végrehajtjuk a második utasítás blokkot. Amennyiben egyik kifejezés sem igaz, akkor az utolsó utasítás blokk kerül végrehajtásra.",
+ "CONTROLS_IF_MSG_IF": "ha",
+ "CONTROLS_IF_MSG_ELSEIF": "különben ha",
+ "CONTROLS_IF_MSG_ELSE": "különben",
+ "CONTROLS_IF_IF_TOOLTIP": "A ha blokk testreszabásához bővítsd, töröld vagy rendezd át a részeit.",
+ "CONTROLS_IF_ELSEIF_TOOLTIP": "Feltétel hozzáadása a ha blokkhoz.",
+ "CONTROLS_IF_ELSE_TOOLTIP": "Végső feltétel hozzáadása a ha blokkhoz.",
+ "LOGIC_COMPARE_HELPURL": "https://hu.wikipedia.org/wiki/Egyenl%C5%91tlens%C3%A9g",
+ "LOGIC_COMPARE_TOOLTIP_EQ": "Igaz, ha a kifejezés két oldala egyenlő.",
+ "LOGIC_COMPARE_TOOLTIP_NEQ": "Igaz, ha a kifejezés két oldala nem egyenlő..",
+ "LOGIC_COMPARE_TOOLTIP_LT": "Igaz, ha a bal oldali kifejezés kisebb, mint a jobb oldali.",
+ "LOGIC_COMPARE_TOOLTIP_LTE": "Igaz, ha a bal oldali kifejezés kisebb vagy egyenlő, mint a jobb oldali.",
+ "LOGIC_COMPARE_TOOLTIP_GT": "Igaz, ha a bal oldali kifejezés nagyobb, mint a jobb oldali.",
+ "LOGIC_COMPARE_TOOLTIP_GTE": "Igaz, ha a bal oldali kifejezés nagyobb vagy egyenlő, mint a jobb oldali.",
+ "LOGIC_OPERATION_TOOLTIP_AND": "Igaz, ha mindkét kifejezés igaz.",
+ "LOGIC_OPERATION_AND": "és",
+ "LOGIC_OPERATION_TOOLTIP_OR": "Igaz, ha legalább az egyik kifejezés igaz.",
+ "LOGIC_OPERATION_OR": "vagy",
+ "LOGIC_NEGATE_TITLE": "nem %1",
+ "LOGIC_NEGATE_TOOLTIP": "Igaz, ha a kifejezés hamis. Hamis, ha a kifejezés igaz.",
+ "LOGIC_BOOLEAN_TRUE": "igaz",
+ "LOGIC_BOOLEAN_FALSE": "hamis",
+ "LOGIC_BOOLEAN_TOOLTIP": "Igaz, vagy hamis érték",
+ "LOGIC_NULL": "null",
+ "LOGIC_NULL_TOOLTIP": "null érték.",
+ "LOGIC_TERNARY_CONDITION": "vizsgáld meg:",
+ "LOGIC_TERNARY_IF_TRUE": "érték, ha igaz:",
+ "LOGIC_TERNARY_IF_FALSE": "érték, ha hamis:",
+ "LOGIC_TERNARY_TOOLTIP": "Kiértékeli a megvizsgálandó kifejezést. Ha a kifejezés igaz, visszatér az \"érték, ha igaz\" értékkel, különben az \"érték, ha hamis\" értékkel.",
+ "MATH_NUMBER_HELPURL": "https://hu.wikipedia.org/wiki/Sz%C3%A1m",
+ "MATH_NUMBER_TOOLTIP": "Egy szám.",
+ "MATH_ARITHMETIC_HELPURL": "https://hu.wikipedia.org/wiki/Matematikai_m%C5%B1velet",
+ "MATH_ARITHMETIC_TOOLTIP_ADD": "Két szám összege.",
+ "MATH_ARITHMETIC_TOOLTIP_MINUS": "Két szám különbsége.",
+ "MATH_ARITHMETIC_TOOLTIP_MULTIPLY": "Két szám szorzata.",
+ "MATH_ARITHMETIC_TOOLTIP_DIVIDE": "Két szám hányadosa.",
+ "MATH_ARITHMETIC_TOOLTIP_POWER": "Az első számnak a második számmal megegyező hatványa.",
+ "MATH_SINGLE_HELPURL": "https://hu.wikipedia.org/wiki/Gy%C3%B6kvon%C3%A1s",
+ "MATH_SINGLE_OP_ROOT": "négyzetgyök",
+ "MATH_SINGLE_TOOLTIP_ROOT": "A szám négyzetgyöke.",
+ "MATH_SINGLE_OP_ABSOLUTE": "abszolútérték",
+ "MATH_SINGLE_TOOLTIP_ABS": "A szám abszolútértéke.",
+ "MATH_SINGLE_TOOLTIP_NEG": "A szám -1 szerese.",
+ "MATH_SINGLE_TOOLTIP_LN": "A szám természetes alapú logaritmusa.",
+ "MATH_SINGLE_TOOLTIP_LOG10": "A szám 10-es alapú logaritmusa.",
+ "MATH_SINGLE_TOOLTIP_EXP": "Az e megadott számú hatványa.",
+ "MATH_SINGLE_TOOLTIP_POW10": "A 10 megadott számú hatványa.",
+ "MATH_TRIG_HELPURL": "https://hu.wikipedia.org/wiki/Sz%C3%B6gf%C3%BCggv%C3%A9nyek",
+ "MATH_TRIG_TOOLTIP_SIN": "A fokban megadott szög szinusz értéke.",
+ "MATH_TRIG_TOOLTIP_COS": "A fokban megadott szög koszinusz értéke.",
+ "MATH_TRIG_TOOLTIP_TAN": "A fokban megadott szög tangens értéke.",
+ "MATH_TRIG_TOOLTIP_ASIN": "A fokban megadott szög arkusz szinusz értéke.",
+ "MATH_TRIG_TOOLTIP_ACOS": "A fokban megadott szög arkusz koszinusz értéke.",
+ "MATH_TRIG_TOOLTIP_ATAN": "A fokban megadott szög arkusz tangens értéke.",
+ "MATH_CONSTANT_HELPURL": "https://hu.wikipedia.org/wiki/Matematikai_konstans",
+ "MATH_CONSTANT_TOOLTIP": "Ismert matematikai konstans: π (3.141…), e (2.718…), φ (1.618…), gyök(2) (1.414…), gyök(½) (0.707…), vagy ∞ (végtelen).",
+ "MATH_IS_EVEN": "páros",
+ "MATH_IS_ODD": "páratlan",
+ "MATH_IS_PRIME": "prím",
+ "MATH_IS_WHOLE": "egész",
+ "MATH_IS_POSITIVE": "pozitív",
+ "MATH_IS_NEGATIVE": "negatív",
+ "MATH_IS_DIVISIBLE_BY": "-nek osztója",
+ "MATH_IS_TOOLTIP": "Ellenőrzi, hogy a szám páros, páratlan, prím, egész, pozitív vagy negatív-e, illetve osztható-e a másodikkal. Igaz, vagy hamis értéket ad eredményül.",
+ "MATH_CHANGE_HELPURL": "https://hu.wikipedia.org/wiki/JavaScript#Aritmetikai_oper.C3.A1torok",
+ "MATH_CHANGE_TITLE": "növeld %1 értékét %2 -vel",
+ "MATH_CHANGE_TOOLTIP": "A \"%1\" változó értékének növelése egy számmal.",
+ "MATH_ROUND_HELPURL": "https://hu.wikipedia.org/wiki/Eg%C3%A9szr%C3%A9sz#Kerek.C3.ADt.C3.A9s",
+ "MATH_ROUND_TOOLTIP": "Egy szám kerekítése felfelé vagy lefelé.",
+ "MATH_ROUND_OPERATOR_ROUND": "kerekítsd",
+ "MATH_ROUND_OPERATOR_ROUNDUP": "kerekítsd felfelé",
+ "MATH_ROUND_OPERATOR_ROUNDDOWN": "kerekítsd lefelé",
+ "MATH_ONLIST_OPERATOR_SUM": "lista elemeinek összege",
+ "MATH_ONLIST_TOOLTIP_SUM": "A lista elemeinek összegét adja eredményül.",
+ "MATH_ONLIST_OPERATOR_MIN": "lista legkisebb eleme",
+ "MATH_ONLIST_TOOLTIP_MIN": "A lista legkisebb elemét adja vissza.",
+ "MATH_ONLIST_OPERATOR_MAX": "lista legnagyobb eleme",
+ "MATH_ONLIST_TOOLTIP_MAX": "A lista legnagyobb elemét adja vissza.",
+ "MATH_ONLIST_OPERATOR_AVERAGE": "lista elemeinek átlaga",
+ "MATH_ONLIST_TOOLTIP_AVERAGE": "A lista elemeinek átlagát adja eredményül.",
+ "MATH_ONLIST_OPERATOR_MEDIAN": "lista mediánja",
+ "MATH_ONLIST_TOOLTIP_MEDIAN": "A lista elemeinek mediánját adja eredményül.",
+ "MATH_ONLIST_OPERATOR_MODE": "lista módusza",
+ "MATH_ONLIST_TOOLTIP_MODE": "A lista elemeinek móduszát adja eredményül.",
+ "MATH_ONLIST_OPERATOR_STD_DEV": "lista elemeinek szórása",
+ "MATH_ONLIST_TOOLTIP_STD_DEV": "A lista elemeinek szórását adja eredményül.",
+ "MATH_ONLIST_OPERATOR_RANDOM": "lista véletlen eleme",
+ "MATH_ONLIST_TOOLTIP_RANDOM": "A lista egy véletlen elemét adja eredményül.",
+ "MATH_MODULO_HELPURL": "https://hu.wikipedia.org/wiki/Eg%C3%A9szr%C3%A9sz#Als.C3.B3_eg.C3.A9szr.C3.A9sz",
+ "MATH_MODULO_TITLE": "%1 ÷ %2 maradéka",
+ "MATH_MODULO_TOOLTIP": "Az egész osztás maradékát adja eredméynül.",
+ "MATH_CONSTRAIN_TITLE": "korlátozd %1-t %2 és %3 közé",
+ "MATH_CONSTRAIN_TOOLTIP": "Egy változó értékének korlátozása a megadott zárt intervallumra.",
+ "MATH_RANDOM_INT_HELPURL": "https://hu.wikipedia.org/wiki/V%C3%A9letlen",
+ "MATH_RANDOM_INT_TITLE": "véletlen egész szám %1 között %2",
+ "MATH_RANDOM_INT_TOOLTIP": "Véletlen egész szám a megadott zárt intervallumon belül.",
+ "MATH_RANDOM_FLOAT_HELPURL": "https://hu.wikipedia.org/wiki/V%C3%A9letlen",
+ "MATH_RANDOM_FLOAT_TITLE_RANDOM": "véletlen tört",
+ "MATH_RANDOM_FLOAT_TOOLTIP": "Véletlen tört érték 0.0 és 1.0 között.",
+ "TEXT_TEXT_HELPURL": "https://hu.wikipedia.org/wiki/String",
+ "TEXT_TEXT_TOOLTIP": "Egy betű, szó vagy szöveg egy sora.",
+ "TEXT_JOIN_TITLE_CREATEWITH": "fűzd össze",
+ "TEXT_JOIN_TOOLTIP": "Tetszőleges számú szövegrészletet fűz össze egybefüggő szöveggé.",
+ "TEXT_CREATE_JOIN_TITLE_JOIN": "fűzd össze",
+ "TEXT_CREATE_JOIN_TOOLTIP": "Összefűzéssel, törléssel vagy rendezéssel kapcsolato sblokkok szöveg szerkesztéséhez.",
+ "TEXT_CREATE_JOIN_ITEM_TOOLTIP": "Elem hozzáfűzése a szöveghez.",
+ "TEXT_APPEND_TO": "A",
+ "TEXT_APPEND_APPENDTEXT": "szövegéhez fűzd hozzá",
+ "TEXT_APPEND_TOOLTIP": "Szöveget fűz a \"%1\" változó értékéhez.",
+ "TEXT_LENGTH_TITLE": "%1 hossza",
+ "TEXT_LENGTH_TOOLTIP": "A megadott szöveg karaktereinek számát adja eredményül (beleértve a szóközöket).",
+ "TEXT_ISEMPTY_TITLE": "%1 üres",
+ "TEXT_ISEMPTY_TOOLTIP": "Igaz, ha a vizsgált szöveg hossza 0.",
+ "TEXT_INDEXOF_TOOLTIP": "A keresett szöveg első vagy utolsó előfordulásával tér vissza. %1 esetén a szövegrészlet nem található.",
+ "TEXT_INDEXOF_INPUT_INTEXT": "A(z)",
+ "TEXT_INDEXOF_OPERATOR_FIRST": "szövegben az első előfordulásának helye",
+ "TEXT_INDEXOF_OPERATOR_LAST": "szövegben az utolsó előfordulásának helye",
+ "TEXT_INDEXOF_TAIL": "szövegnek",
+ "TEXT_CHARAT_INPUT_INTEXT": "A",
+ "TEXT_CHARAT_FROM_START": "elölről",
+ "TEXT_CHARAT_FROM_END": "hátulról",
+ "TEXT_CHARAT_FIRST": "első",
+ "TEXT_CHARAT_LAST": "utolsó",
+ "TEXT_CHARAT_RANDOM": "véletlen",
+ "TEXT_CHARAT_TAIL": "karaktere",
+ "TEXT_CHARAT_TOOLTIP": "A szöveg egy megadott karakterét adja eredményül.",
+ "TEXT_GET_SUBSTRING_TOOLTIP": "A megadott szövegrészletet adja eredményül.",
+ "TEXT_GET_SUBSTRING_INPUT_IN_TEXT": "a",
+ "TEXT_GET_SUBSTRING_START_FROM_START": "szövegben válaszd ki a(z)",
+ "TEXT_GET_SUBSTRING_START_FROM_END": "szövegben válaszd ki a hátulról a(z)",
+ "TEXT_GET_SUBSTRING_START_FIRST": "szövegben válaszd ki az első",
+ "TEXT_GET_SUBSTRING_END_FROM_START": "betűtől a(z)",
+ "TEXT_GET_SUBSTRING_END_FROM_END": "betűtől a hátulról számított",
+ "TEXT_GET_SUBSTRING_END_LAST": "betűtől az utolsó",
+ "TEXT_GET_SUBSTRING_TAIL": "betűig tartó betűsort",
+ "TEXT_CHANGECASE_TOOLTIP": "Return a copy of the text in a different case.",
+ "TEXT_CHANGECASE_OPERATOR_UPPERCASE": "NAGYBETŰS",
+ "TEXT_CHANGECASE_OPERATOR_LOWERCASE": "kisbetűs",
+ "TEXT_CHANGECASE_OPERATOR_TITLECASE": "Címként Formázott",
+ "TEXT_TRIM_TOOLTIP": "Levágja a megadott szöveg végeiről a szóközöket.",
+ "TEXT_TRIM_OPERATOR_BOTH": "szóközök levágása mindkét végéről",
+ "TEXT_TRIM_OPERATOR_LEFT": "szóközök levágása az elejéről",
+ "TEXT_TRIM_OPERATOR_RIGHT": "szóközök levágása a végéről",
+ "TEXT_PRINT_TITLE": "Üzenet %1",
+ "TEXT_PRINT_TOOLTIP": "Megejelníti a megadott kaakterláncot üzenetként a képernyőn.",
+ "TEXT_PROMPT_TYPE_TEXT": "Kérj be szöveget",
+ "TEXT_PROMPT_TYPE_NUMBER": "Kérj be számot",
+ "TEXT_PROMPT_TOOLTIP_NUMBER": "Számot kér be a felhasználótól.",
+ "TEXT_PROMPT_TOOLTIP_TEXT": "Szöveget kér be a felhasználótól.",
+ "LISTS_CREATE_EMPTY_TITLE": "üres lista",
+ "LISTS_CREATE_EMPTY_TOOLTIP": "Elemeket nem tartalmazó üres listát ad eredményül",
+ "LISTS_CREATE_WITH_TOOLTIP": "Listát készít a megadott elemekből.",
+ "LISTS_CREATE_WITH_INPUT_WITH": "Lista készítés, elemek:",
+ "LISTS_CREATE_WITH_CONTAINER_TITLE_ADD": "lista",
+ "LISTS_CREATE_WITH_CONTAINER_TOOLTIP": "Add, remove, or reorder sections to reconfigure this list block.",
+ "LISTS_CREATE_WITH_ITEM_TOOLTIP": "Elem hozzáadása listához.",
+ "LISTS_REPEAT_TOOLTIP": "A megadtott elem felhasználásával n elemű listát készít",
+ "LISTS_REPEAT_TITLE": "Lista készítése %1 elemet %2 alkalommal hozzáadva",
+ "LISTS_LENGTH_TITLE": "%1 lista hossza",
+ "LISTS_LENGTH_TOOLTIP": "A lista elemszámát adja eredményül.",
+ "LISTS_ISEMPTY_TITLE": "%1 üres lista?",
+ "LISTS_ISEMPTY_TOOLTIP": "Az eredmény igaz, ha a lista nem tartalmaz elemeket.",
+ "LISTS_INLIST": "A(z)",
+ "LISTS_INDEX_OF_FIRST": "listában első előfordulásaː",
+ "LISTS_INDEX_OF_LAST": "listában utolsó előfordulásaː",
+ "LISTS_INDEX_OF_TOOLTIP": "A megadott elem első vagy utolsó előfordulásával tér vissza. Ha nem talál ilyen elemet, akkor %1 a visszatérési érték.",
+ "LISTS_GET_INDEX_GET": "listából értéke",
+ "LISTS_GET_INDEX_GET_REMOVE": "listából kivétele",
+ "LISTS_GET_INDEX_REMOVE": "listából törlése",
+ "LISTS_GET_INDEX_FROM_START": "az elejétől számított",
+ "LISTS_GET_INDEX_FROM_END": "a végétől számított",
+ "LISTS_GET_INDEX_FIRST": "az első",
+ "LISTS_GET_INDEX_LAST": "az utolsó",
+ "LISTS_GET_INDEX_RANDOM": "bármely",
+ "LISTS_GET_INDEX_TAIL": "elemnek",
+ "LISTS_INDEX_FROM_START_TOOLTIP": "%1 az első elemet jelenti.",
+ "LISTS_INDEX_FROM_END_TOOLTIP": "%1 az utolsó elemet jelenti.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_FROM": "A lista megadott sorszámú elemét adja eredményül.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_FIRST": "A lista első elemét adja eredményül.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_LAST": "A lista utolsó elemét adja eredményül.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_RANDOM": "A lista véletlenszerűen választott elemét adja eredményül.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM": "A megadott sorszámú elem kivétele a listából.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST": "Az első elem kivétele a listából.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST": "Az utolsó elem kivétele a listából.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM": "Véletlenszerűen választott elem kivétele a listából.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM": "A megadott sorszámú elem törlése a listából.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST": "Az első elem törlése a listából.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST": "Az utolsó elem törlése a listából.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM": "Véletlenszerűen választott elem törlése a listából.",
+ "LISTS_SET_INDEX_SET": "listába állítsd be",
+ "LISTS_SET_INDEX_INSERT": "listába szúrd be",
+ "LISTS_SET_INDEX_INPUT_TO": "elemkéntː",
+ "LISTS_SET_INDEX_TOOLTIP_SET_FROM": "A megadott sorszámú elem cseréje a listában.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_FIRST": "Az első elem cseréje a listában.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_LAST": "Az utolsó elem cseréje a listában.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_RANDOM": "Véletlenszerűen választott elem cseréje a listában.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_FROM": "Beszúrás a megadott sorszámú elem elé a listában.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST": "Beszúrás a lista elejére.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_LAST": "Beszúrás a lista végére.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM": "Beszúrás véletlenszerűen választott elem elé a listában.",
+ "LISTS_GET_SUBLIST_START_FROM_START": "részlistája az elejétől számított",
+ "LISTS_GET_SUBLIST_START_FROM_END": "részlistája a végétől számított",
+ "LISTS_GET_SUBLIST_START_FIRST": "részlistája az első",
+ "LISTS_GET_SUBLIST_END_FROM_START": "és az elejétől számított",
+ "LISTS_GET_SUBLIST_END_FROM_END": "és a végétől számított",
+ "LISTS_GET_SUBLIST_END_LAST": "és az utolsó",
+ "LISTS_GET_SUBLIST_TAIL": "elem között",
+ "LISTS_GET_SUBLIST_TOOLTIP": "A lista adott részéről másolat.",
+ "LISTS_SORT_HELPURL": "https://github.com/google/blockly/wiki/Lists#sorting-a-list",
+ "LISTS_SORT_TITLE": "%1 %2 %3 rendezés",
+ "LISTS_SORT_TOOLTIP": "Egy lista egy másolatának rendezése.",
+ "LISTS_SORT_ORDER_ASCENDING": "növekvő",
+ "LISTS_SORT_ORDER_DESCENDING": "csökkenő",
+ "LISTS_SORT_TYPE_NUMERIC": "numerikus",
+ "LISTS_SORT_TYPE_TEXT": "betűrendben",
+ "LISTS_SORT_TYPE_IGNORECASE": "betűrendben nagybetű figyelmen kívül hagyásával",
+ "LISTS_SPLIT_LIST_FROM_TEXT": "lista készítése szövegből",
+ "LISTS_SPLIT_TEXT_FROM_LIST": "sztring készítése listából",
+ "LISTS_SPLIT_WITH_DELIMITER": "határoló karakter",
+ "LISTS_SPLIT_TOOLTIP_SPLIT": "Listát készít a határoló karaktereknél törve a szöveget.",
+ "LISTS_SPLIT_TOOLTIP_JOIN": "A lista elemeit összefűzi szöveggé a határoló karaktereket is felhasználva.",
+ "ORDINAL_NUMBER_SUFFIX": ".",
+ "VARIABLES_GET_TOOLTIP": "A változó értékét adja eredményül.",
+ "VARIABLES_GET_CREATE_SET": "Készíts \"%1=\"",
+ "VARIABLES_SET": "%1 %2",
+ "VARIABLES_SET_TOOLTIP": "A változónak adhatunk értéket.",
+ "VARIABLES_SET_CREATE_GET": "Készíts \"%1\"",
+ "PROCEDURES_DEFNORETURN_TITLE": "Eljárás",
+ "PROCEDURES_DEFNORETURN_PROCEDURE": "név",
+ "PROCEDURES_BEFORE_PARAMS": "paraméterlistaː",
+ "PROCEDURES_CALL_BEFORE_PARAMS": "paraméterlistaː",
+ "PROCEDURES_DEFNORETURN_DO": "",
+ "PROCEDURES_DEFNORETURN_TOOLTIP": "Eljárás (nem ad vissza eredményt).",
+ "PROCEDURES_DEFNORETURN_COMMENT": "Írj erről a funkcióról...",
+ "PROCEDURES_DEFRETURN_RETURN": "eredménye",
+ "PROCEDURES_DEFRETURN_TOOLTIP": "Függvény eredménnyel.",
+ "PROCEDURES_ALLOW_STATEMENTS": "utasítások engedélyezése",
+ "PROCEDURES_DEF_DUPLICATE_WARNING": "Figyelem: Az eljárásban azonos elnevezésű paramétert adtál meg.",
+ "PROCEDURES_CALLNORETURN_HELPURL": "https://hu.wikipedia.org/wiki/F%C3%BCggv%C3%A9ny_(programoz%C3%A1s)",
+ "PROCEDURES_CALLNORETURN_TOOLTIP": "Végrehajtja az eljárást.",
+ "PROCEDURES_CALLRETURN_HELPURL": "https://hu.wikipedia.org/wiki/F%C3%BCggv%C3%A9ny_(programoz%C3%A1s)",
+ "PROCEDURES_CALLRETURN_TOOLTIP": "Meghívja a függvényt.",
+ "PROCEDURES_MUTATORCONTAINER_TITLE": "paraméterek",
+ "PROCEDURES_MUTATORCONTAINER_TOOLTIP": "Bemenetek hozzáadása, eltávolítása vagy átrendezése ehhez a függvényhez.",
+ "PROCEDURES_MUTATORARG_TITLE": "változó:",
+ "PROCEDURES_MUTATORARG_TOOLTIP": "Bemenet hozzáadása a függvényhez.",
+ "PROCEDURES_HIGHLIGHT_DEF": "Függvénydefiníció kiemelése",
+ "PROCEDURES_CREATE_DO": "„%1” létrehozása",
+ "PROCEDURES_IFRETURN_TOOLTIP": "Ha az érték igaz, akkor visszatér a függvény értékével.",
+ "PROCEDURES_IFRETURN_HELPURL": "http://c2.com/cgi/wiki?GuardClause",
+ "PROCEDURES_IFRETURN_WARNING": "Figyelem: Ez a blokk csak függvénydefiníción belül használható."
+}
diff --git a/blockly/msg/json/ia.json b/blockly/msg/json/ia.json
new file mode 100644
index 0000000..2580900
--- /dev/null
+++ b/blockly/msg/json/ia.json
@@ -0,0 +1,298 @@
+{
+ "@metadata": {
+ "authors": [
+ "McDutchie",
+ "Karmwiki"
+ ]
+ },
+ "VARIABLES_DEFAULT_NAME": "cosa",
+ "TODAY": "Hodie",
+ "DUPLICATE_BLOCK": "Duplicar",
+ "ADD_COMMENT": "Adder commento",
+ "REMOVE_COMMENT": "Remover commento",
+ "EXTERNAL_INPUTS": "Entrata externe",
+ "INLINE_INPUTS": "Entrata interne",
+ "DELETE_BLOCK": "Deler bloco",
+ "DELETE_X_BLOCKS": "Deler %1 blocos",
+ "DELETE_ALL_BLOCKS": "Deler tote le %1 blocos?",
+ "CLEAN_UP": "Clarar le blocos",
+ "COLLAPSE_BLOCK": "Plicar bloco",
+ "COLLAPSE_ALL": "Plicar blocos",
+ "EXPAND_BLOCK": "Displicar bloco",
+ "EXPAND_ALL": "Displicar blocos",
+ "DISABLE_BLOCK": "Disactivar bloco",
+ "ENABLE_BLOCK": "Activar bloco",
+ "HELP": "Adjuta",
+ "UNDO": "Disfacer",
+ "REDO": "Refacer",
+ "CHANGE_VALUE_TITLE": "Cambiar valor:",
+ "RENAME_VARIABLE": "Renominar variabile...",
+ "RENAME_VARIABLE_TITLE": "Renominar tote le variabiles '%1' a:",
+ "NEW_VARIABLE": "Nove variabile...",
+ "NEW_VARIABLE_TITLE": "Nomine del nove variabile:",
+ "COLOUR_PICKER_HELPURL": "https://ia.wikipedia.org/wiki/Color",
+ "COLOUR_PICKER_TOOLTIP": "Elige un color del paletta.",
+ "COLOUR_RANDOM_TITLE": "color aleatori",
+ "COLOUR_RANDOM_TOOLTIP": "Eliger un color al hasardo.",
+ "COLOUR_RGB_TITLE": "colorar con",
+ "COLOUR_RGB_RED": "rubie",
+ "COLOUR_RGB_GREEN": "verde",
+ "COLOUR_RGB_BLUE": "blau",
+ "COLOUR_RGB_TOOLTIP": "Crear un color con le quantitate specificate de rubie, verde e blau. Tote le valores debe esser inter 0 e 100.",
+ "COLOUR_BLEND_TITLE": "miscer",
+ "COLOUR_BLEND_COLOUR1": "color 1",
+ "COLOUR_BLEND_COLOUR2": "color 2",
+ "COLOUR_BLEND_RATIO": "ration",
+ "COLOUR_BLEND_TOOLTIP": "Misce duo colores con un ration specificate (0.0 - 1.0).",
+ "CONTROLS_REPEAT_HELPURL": "https://en.wikipedia.org/wiki/For_loop",
+ "CONTROLS_REPEAT_TITLE": "repeter %1 vices",
+ "CONTROLS_REPEAT_INPUT_DO": "face",
+ "CONTROLS_REPEAT_TOOLTIP": "Exequer certe instructiones plure vices.",
+ "CONTROLS_WHILEUNTIL_OPERATOR_WHILE": "repeter durante que",
+ "CONTROLS_WHILEUNTIL_OPERATOR_UNTIL": "repeter usque a",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_WHILE": "Durante que un valor es ver, exequer certe instructiones.",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL": "Durante que un valor es false, exequer certe instructiones.",
+ "CONTROLS_FOR_TOOLTIP": "Mitter in le variabile '%1' le valores ab le numero initial usque al numero final, con passos secundo le intervallo specificate, e exequer le blocos specificate.",
+ "CONTROLS_FOR_TITLE": "contar con %1 de %2 a %3 per %4",
+ "CONTROLS_FOREACH_TITLE": "pro cata elemento %1 in lista %2",
+ "CONTROLS_FOREACH_TOOLTIP": "Pro cata elemento in un lista, mitter lo in le variabile '%1' e exequer certe instructiones.",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK": "escappar del bucla",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE": "continuar con le proxime iteration del bucla",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK": "Escappar del bucla continente.",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE": "Saltar le resto de iste bucla e continuar con le proxime iteration.",
+ "CONTROLS_FLOW_STATEMENTS_WARNING": "Attention: Iste bloco pote solmente esser usate in un bucla.",
+ "CONTROLS_IF_TOOLTIP_1": "Si un valor es ver, exequer certe instructiones.",
+ "CONTROLS_IF_TOOLTIP_2": "Si un valor es ver, exequer le prime bloco de instructiones. Si non, exequer le secunde bloco de instructiones.",
+ "CONTROLS_IF_TOOLTIP_3": "Si le prime valor es ver, exequer le prime bloco de instructiones. Si non, si le secunde valor es ver, exequer le secunde bloco de instructiones.",
+ "CONTROLS_IF_TOOLTIP_4": "Si le prime valor es ver, exequer le prime bloco de instructiones. Si non, si le secunde valor es ver, exequer le secunde bloco de instructiones. Si necun del valores es ver, exequer le ultime bloco de instructiones.",
+ "CONTROLS_IF_MSG_IF": "si",
+ "CONTROLS_IF_MSG_ELSEIF": "si non si",
+ "CONTROLS_IF_MSG_ELSE": "si non",
+ "CONTROLS_IF_IF_TOOLTIP": "Adde, remove o reordina sectiones pro reconfigurar iste bloco \"si\".",
+ "CONTROLS_IF_ELSEIF_TOOLTIP": "Adder un condition al bloco \"si\".",
+ "CONTROLS_IF_ELSE_TOOLTIP": "Adder un condition final de reserva al bloco \"si\".",
+ "LOGIC_COMPARE_TOOLTIP_EQ": "Retornar ver si le duo entratas es equal.",
+ "LOGIC_COMPARE_TOOLTIP_NEQ": "Retornar ver si le duo entratas non es equal.",
+ "LOGIC_COMPARE_TOOLTIP_LT": "Retornar ver si le prime entrata es minor que le secunde.",
+ "LOGIC_COMPARE_TOOLTIP_LTE": "Retornar ver si le prime entrata es minor que o equal al secunde.",
+ "LOGIC_COMPARE_TOOLTIP_GT": "Retornar ver si le prime entrata es major que le secunde.",
+ "LOGIC_COMPARE_TOOLTIP_GTE": "Retornar ver si le prime entrata es major que o equal al secunde.",
+ "LOGIC_OPERATION_TOOLTIP_AND": "Retornar ver si ambe entratas es ver.",
+ "LOGIC_OPERATION_AND": "e",
+ "LOGIC_OPERATION_TOOLTIP_OR": "Retornar ver si al minus un del entratas es ver.",
+ "LOGIC_OPERATION_OR": "o",
+ "LOGIC_NEGATE_TITLE": "non %1",
+ "LOGIC_NEGATE_TOOLTIP": "Retornar ver si le entrata es false. Retornar false si le entrata es ver.",
+ "LOGIC_BOOLEAN_TRUE": "ver",
+ "LOGIC_BOOLEAN_FALSE": "false",
+ "LOGIC_BOOLEAN_TOOLTIP": "Retorna o ver o false.",
+ "LOGIC_NULL": "nulle",
+ "LOGIC_NULL_TOOLTIP": "Retorna nulle.",
+ "LOGIC_TERNARY_CONDITION": "test",
+ "LOGIC_TERNARY_IF_TRUE": "si ver",
+ "LOGIC_TERNARY_IF_FALSE": "si false",
+ "LOGIC_TERNARY_TOOLTIP": "Verificar le condition in 'test'. Si le condition es ver, retorna le valor de 'si ver'; si non, retorna le valor de 'si false'.",
+ "MATH_NUMBER_HELPURL": "https://ia.wikipedia.org/wiki/Numero",
+ "MATH_NUMBER_TOOLTIP": "Un numero.",
+ "MATH_ARITHMETIC_HELPURL": "https://ia.wikipedia.org/wiki/Arithmetica",
+ "MATH_ARITHMETIC_TOOLTIP_ADD": "Retornar le summa del duo numeros.",
+ "MATH_ARITHMETIC_TOOLTIP_MINUS": "Retornar le differentia del duo numeros.",
+ "MATH_ARITHMETIC_TOOLTIP_MULTIPLY": "Retornar le producto del duo numeros.",
+ "MATH_ARITHMETIC_TOOLTIP_DIVIDE": "Retornar le quotiente del duo numeros.",
+ "MATH_ARITHMETIC_TOOLTIP_POWER": "Retornar le prime numero elevate al potentia del secunde numero.",
+ "MATH_SINGLE_HELPURL": "https://ia.wikipedia.org/wiki/Radice_quadrate",
+ "MATH_SINGLE_OP_ROOT": "radice quadrate",
+ "MATH_SINGLE_TOOLTIP_ROOT": "Retornar le radice quadrate de un numero.",
+ "MATH_SINGLE_OP_ABSOLUTE": "absolute",
+ "MATH_SINGLE_TOOLTIP_ABS": "Retornar le valor absolute de un numero.",
+ "MATH_SINGLE_TOOLTIP_NEG": "Retornar le negation de un numero.",
+ "MATH_SINGLE_TOOLTIP_LN": "Retornar le logarithmo natural de un numero.",
+ "MATH_SINGLE_TOOLTIP_LOG10": "Retornar le logarithmo in base 10 del numero.",
+ "MATH_SINGLE_TOOLTIP_EXP": "Retornar e elevate al potentia del numero.",
+ "MATH_SINGLE_TOOLTIP_POW10": "Retornar 10 elevate al potentia de un numero.",
+ "MATH_TRIG_TOOLTIP_SIN": "Retornar le sino de un grado (non radiano).",
+ "MATH_TRIG_TOOLTIP_COS": "Retornar le cosino de un grado (non radiano).",
+ "MATH_TRIG_TOOLTIP_TAN": "Retornar le tangente de un grado (non radiano).",
+ "MATH_TRIG_TOOLTIP_ASIN": "Retornar le arcosino de un numero.",
+ "MATH_TRIG_TOOLTIP_ACOS": "Retornar le arcocosino de un numero.",
+ "MATH_TRIG_TOOLTIP_ATAN": "Retornar le arcotangente de un numero.",
+ "MATH_CONSTANT_TOOLTIP": "Retornar un del constantes commun: π (3,141…), e (2,718…), φ (1,618…), sqrt(2) (1,414…), sqrt(½) (0,707…) o ∞ (infinite).",
+ "MATH_IS_EVEN": "es par",
+ "MATH_IS_ODD": "es impare",
+ "MATH_IS_PRIME": "es prime",
+ "MATH_IS_WHOLE": "es integre",
+ "MATH_IS_POSITIVE": "es positive",
+ "MATH_IS_NEGATIVE": "es negative",
+ "MATH_IS_DIVISIBLE_BY": "es divisibile per",
+ "MATH_IS_TOOLTIP": "Verificar si un numero es par, impare, prime, integre, positive, negative, o divisibile per un certe numero. Retorna ver o false.",
+ "MATH_CHANGE_TITLE": "cambiar %1 per %2",
+ "MATH_CHANGE_TOOLTIP": "Adder un numero al variabile '%1'.",
+ "MATH_ROUND_HELPURL": "https://ia.wikipedia.org/wiki/Rotundamento",
+ "MATH_ROUND_TOOLTIP": "Arrotundar un numero a supra o a infra.",
+ "MATH_ROUND_OPERATOR_ROUND": "arrotundar",
+ "MATH_ROUND_OPERATOR_ROUNDUP": "arrotundar a supra",
+ "MATH_ROUND_OPERATOR_ROUNDDOWN": "arrotundar a infra",
+ "MATH_ONLIST_OPERATOR_SUM": "summa del lista",
+ "MATH_ONLIST_TOOLTIP_SUM": "Retornar le summa de tote le numeros in le lista.",
+ "MATH_ONLIST_OPERATOR_MIN": "minimo del lista",
+ "MATH_ONLIST_TOOLTIP_MIN": "Retornar le numero le plus parve in le lista.",
+ "MATH_ONLIST_OPERATOR_MAX": "maximo del lista",
+ "MATH_ONLIST_TOOLTIP_MAX": "Retornar le numero le plus grande in le lista.",
+ "MATH_ONLIST_OPERATOR_AVERAGE": "media del lista",
+ "MATH_ONLIST_TOOLTIP_AVERAGE": "Retornar le media arithmetic del valores numeric in le lista.",
+ "MATH_ONLIST_OPERATOR_MEDIAN": "mediana del lista",
+ "MATH_ONLIST_TOOLTIP_MEDIAN": "Retornar le numero median del lista.",
+ "MATH_ONLIST_OPERATOR_MODE": "modas del lista",
+ "MATH_ONLIST_TOOLTIP_MODE": "Retornar un lista del elemento(s) le plus commun in le lista.",
+ "MATH_ONLIST_OPERATOR_STD_DEV": "deviation standard del lista",
+ "MATH_ONLIST_TOOLTIP_STD_DEV": "Retornar le deviation standard del lista.",
+ "MATH_ONLIST_OPERATOR_RANDOM": "elemento aleatori del lista",
+ "MATH_ONLIST_TOOLTIP_RANDOM": "Retornar un elemento aleatori del lista.",
+ "MATH_MODULO_TITLE": "resto de %1 ÷ %2",
+ "MATH_MODULO_TOOLTIP": "Retornar le resto del division del duo numeros.",
+ "MATH_CONSTRAIN_TITLE": "limitar %1 inter %2 e %3",
+ "MATH_CONSTRAIN_TOOLTIP": "Limitar un numero a esser inter le limites specificate (incluse).",
+ "MATH_RANDOM_INT_TITLE": "numero integre aleatori inter %1 e %2",
+ "MATH_RANDOM_INT_TOOLTIP": "Retornar un numero integre aleatori inter le duo limites specificate, incluse.",
+ "MATH_RANDOM_FLOAT_TITLE_RANDOM": "fraction aleatori",
+ "MATH_RANDOM_FLOAT_TOOLTIP": "Retornar un fraction aleatori inter 0.0 (incluse) e 1.0 (excluse).",
+ "TEXT_TEXT_TOOLTIP": "Un littera, parola o linea de texto.",
+ "TEXT_JOIN_TITLE_CREATEWITH": "crear texto con",
+ "TEXT_JOIN_TOOLTIP": "Crear un pecia de texto uniente un certe numero de elementos.",
+ "TEXT_CREATE_JOIN_TITLE_JOIN": "unir",
+ "TEXT_CREATE_JOIN_TOOLTIP": "Adde, remove o reordina sectiones pro reconfigurar iste bloco de texto.",
+ "TEXT_CREATE_JOIN_ITEM_TOOLTIP": "Adder un elemento al texto.",
+ "TEXT_APPEND_TO": "a",
+ "TEXT_APPEND_APPENDTEXT": "adjunger texto",
+ "TEXT_APPEND_TOOLTIP": "Adjunger un texto al variabile '%1'.",
+ "TEXT_LENGTH_TITLE": "longitude de %1",
+ "TEXT_LENGTH_TOOLTIP": "Retorna le numero de litteras (incluse spatios) in le texto fornite.",
+ "TEXT_ISEMPTY_TITLE": "%1 es vacue",
+ "TEXT_ISEMPTY_TOOLTIP": "Retorna ver si le texto fornite es vacue.",
+ "TEXT_INDEXOF_TOOLTIP": "Retorna le indice del prime/ultime occurrentia del prime texto in le secunde texto. Retorna %1 si le texto non es trovate.",
+ "TEXT_INDEXOF_INPUT_INTEXT": "in le texto",
+ "TEXT_INDEXOF_OPERATOR_FIRST": "cercar le prime occurrentia del texto",
+ "TEXT_INDEXOF_OPERATOR_LAST": "cercar le ultime occurrentia del texto",
+ "TEXT_CHARAT_INPUT_INTEXT": "in le texto",
+ "TEXT_CHARAT_FROM_START": "prender le littera №",
+ "TEXT_CHARAT_FROM_END": "prender ab le fin le littera №",
+ "TEXT_CHARAT_FIRST": "prender le prime littera",
+ "TEXT_CHARAT_LAST": "prender le ultime littera",
+ "TEXT_CHARAT_RANDOM": "prender un littera aleatori",
+ "TEXT_CHARAT_TOOLTIP": "Retorna le littera presente al position specificate.",
+ "TEXT_GET_SUBSTRING_TOOLTIP": "Retorna le parte specificate del texto.",
+ "TEXT_GET_SUBSTRING_INPUT_IN_TEXT": "in le texto",
+ "TEXT_GET_SUBSTRING_START_FROM_START": "prender subcatena ab le littera №",
+ "TEXT_GET_SUBSTRING_START_FROM_END": "prender subcatena ab le fin ab le littera №",
+ "TEXT_GET_SUBSTRING_START_FIRST": "prender subcatena ab le prime littera",
+ "TEXT_GET_SUBSTRING_END_FROM_START": "usque al littera №",
+ "TEXT_GET_SUBSTRING_END_FROM_END": "ab le fin usque al littera №",
+ "TEXT_GET_SUBSTRING_END_LAST": "usque al ultime littera",
+ "TEXT_CHANGECASE_TOOLTIP": "Retornar un copia del texto con differente majusculas/minusculas.",
+ "TEXT_CHANGECASE_OPERATOR_UPPERCASE": "in MAJUSCULAS",
+ "TEXT_CHANGECASE_OPERATOR_LOWERCASE": "in minusculas",
+ "TEXT_CHANGECASE_OPERATOR_TITLECASE": "con Initiales Majuscule",
+ "TEXT_TRIM_TOOLTIP": "Retornar un copia del texto con spatios eliminate de un extremitate o ambes.",
+ "TEXT_TRIM_OPERATOR_BOTH": "remover spatios de ambe lateres de",
+ "TEXT_TRIM_OPERATOR_LEFT": "remover spatios del sinistre latere de",
+ "TEXT_TRIM_OPERATOR_RIGHT": "remover spatios del dextre latere de",
+ "TEXT_PRINT_TITLE": "scriber %1",
+ "TEXT_PRINT_TOOLTIP": "Scriber le texto, numero o altere valor specificate.",
+ "TEXT_PROMPT_TYPE_TEXT": "peter un texto con le message",
+ "TEXT_PROMPT_TYPE_NUMBER": "peter un numero con le message",
+ "TEXT_PROMPT_TOOLTIP_NUMBER": "Peter un numero al usator.",
+ "TEXT_PROMPT_TOOLTIP_TEXT": "Peter un texto al usator.",
+ "LISTS_CREATE_EMPTY_TITLE": "crear un lista vacue",
+ "LISTS_CREATE_EMPTY_TOOLTIP": "Retorna un lista, de longitude 0, sin datos.",
+ "LISTS_CREATE_WITH_TOOLTIP": "Crear un lista con un numero qualcunque de elementos.",
+ "LISTS_CREATE_WITH_INPUT_WITH": "crear lista con",
+ "LISTS_CREATE_WITH_CONTAINER_TITLE_ADD": "lista",
+ "LISTS_CREATE_WITH_CONTAINER_TOOLTIP": "Adde, remove o reordina sectiones pro reconfigurar iste bloco de listas.",
+ "LISTS_CREATE_WITH_ITEM_TOOLTIP": "Adder un elemento al lista.",
+ "LISTS_REPEAT_TOOLTIP": "Crea un lista que contine le valor fornite, repetite le numero specificate de vices.",
+ "LISTS_REPEAT_TITLE": "crear lista con elemento %1 repetite %2 vices",
+ "LISTS_LENGTH_TITLE": "longitude de %1",
+ "LISTS_LENGTH_TOOLTIP": "Retorna le longitude de un lista.",
+ "LISTS_ISEMPTY_TITLE": "%1 es vacue",
+ "LISTS_ISEMPTY_TOOLTIP": "Retorna ver si le lista es vacue.",
+ "LISTS_INLIST": "in lista",
+ "LISTS_INDEX_OF_FIRST": "cercar le prime occurrentia del elemento",
+ "LISTS_INDEX_OF_LAST": "cercar le ultime occurrentia del elemento",
+ "LISTS_INDEX_OF_TOOLTIP": "Retorna le indice del prime/ultime occurrentia del elemento in le lista. Retorna %1 si le elemento non es trovate.",
+ "LISTS_GET_INDEX_GET": "prender",
+ "LISTS_GET_INDEX_GET_REMOVE": "prender e remover",
+ "LISTS_GET_INDEX_REMOVE": "remover",
+ "LISTS_GET_INDEX_FROM_END": "№ ab fin",
+ "LISTS_GET_INDEX_FIRST": "prime",
+ "LISTS_GET_INDEX_LAST": "ultime",
+ "LISTS_GET_INDEX_RANDOM": "aleatori",
+ "LISTS_INDEX_FROM_START_TOOLTIP": "№ %1 es le prime elemento.",
+ "LISTS_INDEX_FROM_END_TOOLTIP": "№ %1 es le ultime elemento.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_FROM": "Retorna le elemento presente al position specificate in un lista.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_FIRST": "Retorna le prime elemento in un lista.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_LAST": "Retorna le ultime elemento in un lista.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_RANDOM": "Retorna un elemento aleatori in un lista.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM": "Remove e retorna le elemento presente al position specificate in un lista.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST": "Remove e retorna le prime elemento in un lista.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST": "Remove e retorna le ultime elemento in un lista.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM": "Remove e retorna un elemento aleatori in un lista.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM": "Remove le elemento presente al position specificate in un lista.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST": "Remove le prime elemento in un lista.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST": "Remove le ultime elemento in un lista.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM": "Remove un elemento aleatori in un lista.",
+ "LISTS_SET_INDEX_SET": "mitter",
+ "LISTS_SET_INDEX_INSERT": "inserer in",
+ "LISTS_SET_INDEX_INPUT_TO": "a",
+ "LISTS_SET_INDEX_TOOLTIP_SET_FROM": "Defini le valor del elemento al position specificate in un lista.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_FIRST": "Defini le valor del prime elemento in un lista.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_LAST": "Defini le valor del ultime elemento in un lista.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_RANDOM": "Defini le valor de un elemento aleatori in un lista.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_FROM": "Insere le elemento al position specificate in un lista.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST": "Insere le elemento al initio de un lista.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_LAST": "Adjunge le elemento al fin de un lista.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM": "Insere le elemento a un position aleatori in un lista.",
+ "LISTS_GET_SUBLIST_START_FROM_START": "prender sublista ab №",
+ "LISTS_GET_SUBLIST_START_FROM_END": "prender sublista ab le fin ab №",
+ "LISTS_GET_SUBLIST_START_FIRST": "prender sublista ab initio",
+ "LISTS_GET_SUBLIST_END_FROM_START": "usque al №",
+ "LISTS_GET_SUBLIST_END_FROM_END": "usque al № ab fin",
+ "LISTS_GET_SUBLIST_END_LAST": "usque al ultime",
+ "LISTS_GET_SUBLIST_TOOLTIP": "Crea un copia del parte specificate de un lista.",
+ "LISTS_SORT_TITLE": "ordinamento %1 %2 %3",
+ "LISTS_SORT_TOOLTIP": "Ordinar un copia de un lista.",
+ "LISTS_SORT_ORDER_ASCENDING": "ascendente",
+ "LISTS_SORT_ORDER_DESCENDING": "descendente",
+ "LISTS_SORT_TYPE_NUMERIC": "numeric",
+ "LISTS_SORT_TYPE_TEXT": "alphabetic",
+ "LISTS_SORT_TYPE_IGNORECASE": "alphabetic, ignorar majuscula/minuscula",
+ "LISTS_SPLIT_LIST_FROM_TEXT": "Crear un lista per un texto",
+ "LISTS_SPLIT_TEXT_FROM_LIST": "crear un texto per un lista",
+ "LISTS_SPLIT_WITH_DELIMITER": "con delimitator",
+ "LISTS_SPLIT_TOOLTIP_SPLIT": "Divider texto in un lista de textos, separante lo a cata delimitator.",
+ "LISTS_SPLIT_TOOLTIP_JOIN": "Unir un lista de textos, separate per un delimitator, in un sol texto.",
+ "VARIABLES_GET_TOOLTIP": "Retorna le valor de iste variabile.",
+ "VARIABLES_GET_CREATE_SET": "Crea 'mitter %1'",
+ "VARIABLES_SET": "mitter %1 a %2",
+ "VARIABLES_SET_TOOLTIP": "Mitte iste variabile al valor del entrata.",
+ "VARIABLES_SET_CREATE_GET": "Crear 'prender %1'",
+ "PROCEDURES_DEFNORETURN_TITLE": "pro",
+ "PROCEDURES_DEFNORETURN_PROCEDURE": "facer qualcosa",
+ "PROCEDURES_BEFORE_PARAMS": "con:",
+ "PROCEDURES_CALL_BEFORE_PARAMS": "con:",
+ "PROCEDURES_DEFNORETURN_TOOLTIP": "Crea un function que non retorna un valor.",
+ "PROCEDURES_DEFNORETURN_COMMENT": "Describe iste function...",
+ "PROCEDURES_DEFRETURN_RETURN": "retornar",
+ "PROCEDURES_DEFRETURN_TOOLTIP": "Crea un function que retorna un valor.",
+ "PROCEDURES_ALLOW_STATEMENTS": "permitter declarationes",
+ "PROCEDURES_DEF_DUPLICATE_WARNING": "Attention: Iste function ha parametros duplicate.",
+ "PROCEDURES_CALLNORETURN_TOOLTIP": "Executar le function '%1' definite per le usator.",
+ "PROCEDURES_CALLRETURN_TOOLTIP": "Executar le function '%1' definite per le usator e usar su resultato.",
+ "PROCEDURES_MUTATORCONTAINER_TITLE": "entratas",
+ "PROCEDURES_MUTATORCONTAINER_TOOLTIP": "Adder, remover o reordinar le entratas pro iste function.",
+ "PROCEDURES_MUTATORARG_TITLE": "nomine del entrata:",
+ "PROCEDURES_MUTATORARG_TOOLTIP": "Adder un entrata al function.",
+ "PROCEDURES_HIGHLIGHT_DEF": "Accentuar le definition del function",
+ "PROCEDURES_CREATE_DO": "Crear '%1'",
+ "PROCEDURES_IFRETURN_TOOLTIP": "Si un valor es ver, alora retornar un secunde valor.",
+ "PROCEDURES_IFRETURN_WARNING": "Attention: Iste bloco pote solmente esser usate in le definition de un function."
+}
diff --git a/blockly/msg/json/id.json b/blockly/msg/json/id.json
new file mode 100644
index 0000000..3f61ade
--- /dev/null
+++ b/blockly/msg/json/id.json
@@ -0,0 +1,335 @@
+{
+ "@metadata": {
+ "authors": [
+ "Kenrick95",
+ "아라",
+ "Mirws",
+ "Marwan Mohamad",
+ "Kasimtan",
+ "Arifin.wijaya"
+ ]
+ },
+ "VARIABLES_DEFAULT_NAME": "item",
+ "TODAY": "Hari ini",
+ "DUPLICATE_BLOCK": "Duplikat",
+ "ADD_COMMENT": "Tambahkan Komentar",
+ "REMOVE_COMMENT": "Hapus Komentar",
+ "EXTERNAL_INPUTS": "Input Eksternal",
+ "INLINE_INPUTS": "Input Inline",
+ "DELETE_BLOCK": "Hapus Blok",
+ "DELETE_X_BLOCKS": "Hapus %1 Blok",
+ "DELETE_ALL_BLOCKS": "Hapus semua %1 blok?",
+ "CLEAN_UP": "Bersihkan Blok",
+ "COLLAPSE_BLOCK": "Ciutkan Blok",
+ "COLLAPSE_ALL": "Ciutkan Blok",
+ "EXPAND_BLOCK": "Kembangkan Blok",
+ "EXPAND_ALL": "Kembangkan Blok",
+ "DISABLE_BLOCK": "Nonaktifkan Blok",
+ "ENABLE_BLOCK": "Aktifkan Blok",
+ "HELP": "Bantuan",
+ "UNDO": "Urungkan",
+ "REDO": "Lakukan ulang",
+ "CHANGE_VALUE_TITLE": "Ubah nilai:",
+ "RENAME_VARIABLE": "Ubah nama variabel...",
+ "RENAME_VARIABLE_TITLE": "Ubah nama semua variabel '%1' menjadi:",
+ "NEW_VARIABLE": "Buat variabel...",
+ "NEW_VARIABLE_TITLE": "Nama variabel baru:",
+ "VARIABLE_ALREADY_EXISTS": "Sebuah variabel dengan nama '%1' sudah ada.",
+ "DELETE_VARIABLE_CONFIRMATION": "Hapus %1 yang digunakan pada variabel '%2'?",
+ "DELETE_VARIABLE": "Hapus variabel '%1'",
+ "COLOUR_PICKER_HELPURL": "https://en.wikipedia.org/wiki/Color",
+ "COLOUR_PICKER_TOOLTIP": "Pilih warna dari daftar warna.",
+ "COLOUR_RANDOM_TITLE": "Warna acak",
+ "COLOUR_RANDOM_TOOLTIP": "Pilih warna secara acak.",
+ "COLOUR_RGB_HELPURL": "http://www.december.com/html/spec/colorper.html",
+ "COLOUR_RGB_TITLE": "Dengan warna",
+ "COLOUR_RGB_RED": "merah",
+ "COLOUR_RGB_GREEN": "hijau",
+ "COLOUR_RGB_BLUE": "biru",
+ "COLOUR_RGB_TOOLTIP": "Buatlah warna dengan jumlah yang ditentukan dari merah, hijau dan biru. Semua nilai harus antarai 0 sampai 100.",
+ "COLOUR_BLEND_HELPURL": "http://meyerweb.com/eric/tools/color-blend/",
+ "COLOUR_BLEND_TITLE": "campur",
+ "COLOUR_BLEND_COLOUR1": "warna 1",
+ "COLOUR_BLEND_COLOUR2": "warna 2",
+ "COLOUR_BLEND_RATIO": "rasio",
+ "COLOUR_BLEND_TOOLTIP": "Campur dua warna secara bersamaan dengan perbandingan (0.0 - 1.0).",
+ "CONTROLS_REPEAT_HELPURL": "https://en.wikipedia.org/wiki/For_loop",
+ "CONTROLS_REPEAT_TITLE": "ulangi %1 kali",
+ "CONTROLS_REPEAT_INPUT_DO": "kerjakan",
+ "CONTROLS_REPEAT_TOOLTIP": "Lakukan beberapa perintah beberapa kali.",
+ "CONTROLS_WHILEUNTIL_OPERATOR_WHILE": "ulangi jika",
+ "CONTROLS_WHILEUNTIL_OPERATOR_UNTIL": "ulangi sampai",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_WHILE": "Selagi nilainya benar, maka lakukan beberapa perintah.",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL": "Selagi nilainya salah, maka lakukan beberapa perintah.",
+ "CONTROLS_FOR_TOOLTIP": "Menggunakan variabel \"%1\" dengan mengambil nilai dari batas awal hingga ke batas akhir, dengan interval tertentu, dan mengerjakan block tertentu.",
+ "CONTROLS_FOR_TITLE": "Cacah dengan %1 dari %2 ke %3 dengan step / penambahan %4",
+ "CONTROLS_FOREACH_TITLE": "untuk setiap item %1 di dalam list %2",
+ "CONTROLS_FOREACH_TOOLTIP": "Untuk tiap-tiap item di dalam list, tetapkan variabel '%1' ke dalam item, selanjutnya kerjakan beberapa statement.",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK": "keluar dari perulangan",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE": "lanjutkan dengan langkah perulangan berikutnya",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK": "Keluar dari perulangan.",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE": "Abaikan sisa dari perulangan ini, dan lanjutkan dengan langkah berikutnya.",
+ "CONTROLS_FLOW_STATEMENTS_WARNING": "Peringatan: Blok ini hanya dapat digunakan dalam perulangan.",
+ "CONTROLS_IF_TOOLTIP_1": "Jika nilainya benar, maka lakukan beberapa perintah.",
+ "CONTROLS_IF_TOOLTIP_2": "Jika nilainya benar, maka kerjakan perintah blok pertama. Jika tidak, kerjakan perintah blok kedua.",
+ "CONTROLS_IF_TOOLTIP_3": "Jika nilai pertama benar, maka kerjakan perintah blok pertama. Sebaliknya, jika nilai kedua benar, kerjakan perintah blok kedua.",
+ "CONTROLS_IF_TOOLTIP_4": "Jika nilai pertama benar, maka kerjakan perintah blok pertama. Sebaliknya, jika nilai kedua benar, kerjakan perintah blok kedua. Jika dua-duanya tidak benar, kerjakan perintah blok terakhir.",
+ "CONTROLS_IF_MSG_IF": "jika",
+ "CONTROLS_IF_MSG_ELSEIF": "atau jika",
+ "CONTROLS_IF_MSG_ELSE": "lainnya",
+ "CONTROLS_IF_IF_TOOLTIP": "Tambahkan, hapus, atau susun kembali bagian untuk mengkonfigurasi blok IF ini.",
+ "CONTROLS_IF_ELSEIF_TOOLTIP": "Tambahkan prasyarat ke dalam blok IF.",
+ "CONTROLS_IF_ELSE_TOOLTIP": "Terakhir, tambahkan kondisi tangkap-semua kedalam blok IF.",
+ "LOGIC_COMPARE_HELPURL": "https://en.wikipedia.org/wiki/Inequality_(mathematics)",
+ "LOGIC_COMPARE_TOOLTIP_EQ": "Kembalikan benar jika kedua input sama satu dengan lainnya.",
+ "LOGIC_COMPARE_TOOLTIP_NEQ": "Kembalikan benar jika kedua input tidak sama satu dengan lainnya.",
+ "LOGIC_COMPARE_TOOLTIP_LT": "Kembalikan benar jika input pertama lebih kecil dari input kedua.",
+ "LOGIC_COMPARE_TOOLTIP_LTE": "Kembalikan benar jika input pertama lebih kecil atau sama dengan input kedua .",
+ "LOGIC_COMPARE_TOOLTIP_GT": "Kembalikan benar jika input pertama lebih besar dari input kedua.",
+ "LOGIC_COMPARE_TOOLTIP_GTE": "Kembalikan benar jika input pertama lebih besar dari atau sama dengan input kedua.",
+ "LOGIC_OPERATION_TOOLTIP_AND": "Kembalikan benar jika kedua input adalah benar.",
+ "LOGIC_OPERATION_AND": "dan",
+ "LOGIC_OPERATION_TOOLTIP_OR": "Kembalikan benar jika minimal satu input nilainya benar.",
+ "LOGIC_OPERATION_OR": "atau",
+ "LOGIC_NEGATE_TITLE": "bukan (not) %1",
+ "LOGIC_NEGATE_TOOLTIP": "Kembalikan benar jika input salah. Kembalikan salah jika input benar.",
+ "LOGIC_BOOLEAN_TRUE": "benar",
+ "LOGIC_BOOLEAN_FALSE": "salah",
+ "LOGIC_BOOLEAN_TOOLTIP": "Kembalikan benar atau salah.",
+ "LOGIC_NULL_HELPURL": "https://en.wikipedia.org/wiki/Nullable_type",
+ "LOGIC_NULL": "null",
+ "LOGIC_NULL_TOOLTIP": "Kembalikan null.",
+ "LOGIC_TERNARY_HELPURL": "https://en.wikipedia.org/wiki/%3F:",
+ "LOGIC_TERNARY_CONDITION": "test",
+ "LOGIC_TERNARY_IF_TRUE": "jika benar",
+ "LOGIC_TERNARY_IF_FALSE": "jika salah",
+ "LOGIC_TERNARY_TOOLTIP": "Periksa kondisi di 'test'. Jika kondisi benar, kembalikan nilai 'if true'; jika sebaliknya kembalikan nilai 'if false'.",
+ "MATH_NUMBER_HELPURL": "https://en.wikipedia.org/wiki/Number",
+ "MATH_NUMBER_TOOLTIP": "Suatu angka.",
+ "MATH_ADDITION_SYMBOL": "+",
+ "MATH_SUBTRACTION_SYMBOL": "-",
+ "MATH_DIVISION_SYMBOL": "÷",
+ "MATH_MULTIPLICATION_SYMBOL": "×",
+ "MATH_POWER_SYMBOL": "^",
+ "MATH_TRIG_SIN": "sin",
+ "MATH_TRIG_COS": "cos",
+ "MATH_TRIG_TAN": "tan",
+ "MATH_TRIG_ASIN": "asin",
+ "MATH_TRIG_ACOS": "acos",
+ "MATH_TRIG_ATAN": "atan",
+ "MATH_ARITHMETIC_HELPURL": "https://id.wikipedia.org/wiki/Aritmetika",
+ "MATH_ARITHMETIC_TOOLTIP_ADD": "Kembalikan jumlah dari kedua angka.",
+ "MATH_ARITHMETIC_TOOLTIP_MINUS": "Kembalikan selisih dari kedua angka.",
+ "MATH_ARITHMETIC_TOOLTIP_MULTIPLY": "Kembalikan perkalian dari kedua angka.",
+ "MATH_ARITHMETIC_TOOLTIP_DIVIDE": "Kembalikan hasil bagi dari kedua angka.",
+ "MATH_ARITHMETIC_TOOLTIP_POWER": "Kembalikan angka pertama pangkat angka kedua.",
+ "MATH_SINGLE_HELPURL": "https://en.wikipedia.org/wiki/Square_root",
+ "MATH_SINGLE_OP_ROOT": "akar",
+ "MATH_SINGLE_TOOLTIP_ROOT": "Kembalikan akar dari angka.",
+ "MATH_SINGLE_OP_ABSOLUTE": "mutlak",
+ "MATH_SINGLE_TOOLTIP_ABS": "Kembalikan nilai absolut angka.",
+ "MATH_SINGLE_TOOLTIP_NEG": "Kembalikan penyangkalan terhadap angka.",
+ "MATH_SINGLE_TOOLTIP_LN": "Kembalikan logaritma natural dari angka.",
+ "MATH_SINGLE_TOOLTIP_LOG10": "Kembalikan dasar logaritma 10 dari angka.",
+ "MATH_SINGLE_TOOLTIP_EXP": "Kembalikan 10 pangkat angka.",
+ "MATH_SINGLE_TOOLTIP_POW10": "Kembalikan 10 pangkat angka.",
+ "MATH_TRIG_HELPURL": "https://en.wikipedia.org/wiki/Trigonometric_functions",
+ "MATH_TRIG_TOOLTIP_SIN": "Kembalikan sinus dari derajat (bukan radian).",
+ "MATH_TRIG_TOOLTIP_COS": "Kembalikan cosinus dari derajat (bukan radian).",
+ "MATH_TRIG_TOOLTIP_TAN": "Kembalikan tangen dari derajat (bukan radian).",
+ "MATH_TRIG_TOOLTIP_ASIN": "Kembalikan asin dari angka.",
+ "MATH_TRIG_TOOLTIP_ACOS": "Kembalikan acosine dari angka.",
+ "MATH_TRIG_TOOLTIP_ATAN": "Kembalikan atan dari angka.",
+ "MATH_CONSTANT_HELPURL": "https://en.wikipedia.org/wiki/Mathematical_constant",
+ "MATH_CONSTANT_TOOLTIP": "Kembalikan salah satu konstanta: π (3,141…), e (2,718…), φ (1,618…), akar(2) (1,414…), akar(½) (0.707…), atau ∞ (tak terhingga).",
+ "MATH_IS_EVEN": "adalah bilangan genap",
+ "MATH_IS_ODD": "adalah bilangan ganjil",
+ "MATH_IS_PRIME": "adalah bilangan pokok",
+ "MATH_IS_WHOLE": "adalah bilangan bulat",
+ "MATH_IS_POSITIVE": "adalah bilangan positif",
+ "MATH_IS_NEGATIVE": "adalah bilangan negatif",
+ "MATH_IS_DIVISIBLE_BY": "dapat dibagi oleh",
+ "MATH_IS_TOOLTIP": "Periksa apakah angka adalah bilangan genap, bilangan ganjil, bilangan pokok, bilangan bulat, bilangan positif, bilangan negatif, atau apakan bisa dibagi oleh angka tertentu. Kembalikan benar atau salah.",
+ "MATH_CHANGE_HELPURL": "https://en.wikipedia.org/wiki/Programming_idiom#Incrementing_a_counter",
+ "MATH_CHANGE_TITLE": "ubah %1 oleh %2",
+ "MATH_CHANGE_TOOLTIP": "Tambahkan angka kedalam variabel '%1'.",
+ "MATH_ROUND_HELPURL": "https://en.wikipedia.org/wiki/Rounding",
+ "MATH_ROUND_TOOLTIP": "Bulatkan suatu bilangan naik atau turun.",
+ "MATH_ROUND_OPERATOR_ROUND": "membulatkan",
+ "MATH_ROUND_OPERATOR_ROUNDUP": "membulatkan keatas",
+ "MATH_ROUND_OPERATOR_ROUNDDOWN": "membulatkan kebawah",
+ "MATH_ONLIST_OPERATOR_SUM": "jumlah dari list",
+ "MATH_ONLIST_TOOLTIP_SUM": "Kembalikan jumlah dari seluruh bilangan dari list.",
+ "MATH_ONLIST_OPERATOR_MIN": "minimum dari list",
+ "MATH_ONLIST_TOOLTIP_MIN": "Kembalikan angka terkecil dari list.",
+ "MATH_ONLIST_OPERATOR_MAX": "maksimum dari list",
+ "MATH_ONLIST_TOOLTIP_MAX": "Kembalikan angka terbesar dari list.",
+ "MATH_ONLIST_OPERATOR_AVERAGE": "rata-rata dari list",
+ "MATH_ONLIST_TOOLTIP_AVERAGE": "Kembalikan rata-rata (mean aritmetik) dari nilai numerik dari list.",
+ "MATH_ONLIST_OPERATOR_MEDIAN": "median dari list",
+ "MATH_ONLIST_TOOLTIP_MEDIAN": "Kembalikan median dari list.",
+ "MATH_ONLIST_OPERATOR_MODE": "mode-mode dari list",
+ "MATH_ONLIST_TOOLTIP_MODE": "Kembalikan list berisi item yang paling umum dari dalam list.",
+ "MATH_ONLIST_OPERATOR_STD_DEV": "deviasi standar dari list",
+ "MATH_ONLIST_TOOLTIP_STD_DEV": "Kembalikan standard deviasi dari list.",
+ "MATH_ONLIST_OPERATOR_RANDOM": "item acak dari list",
+ "MATH_ONLIST_TOOLTIP_RANDOM": "Kembalikan elemen acak dari list.",
+ "MATH_MODULO_HELPURL": "https://en.wikipedia.org/wiki/Modulo_operation",
+ "MATH_MODULO_TITLE": "sisa dari %1 ÷ %2",
+ "MATH_MODULO_TOOLTIP": "Kembalikan sisa dari pembagian ke dua angka.",
+ "MATH_CONSTRAIN_TITLE": "Batasi %1 rendah %2 tinggi %3",
+ "MATH_CONSTRAIN_TOOLTIP": "Batasi angka antara batas yang ditentukan (inklusif).",
+ "MATH_RANDOM_INT_HELPURL": "https://en.wikipedia.org/wiki/Random_number_generation",
+ "MATH_RANDOM_INT_TITLE": "acak bulat dari %1 sampai %2",
+ "MATH_RANDOM_INT_TOOLTIP": "Kembalikan bilangan acak antara dua batas yang ditentukan, inklusif.",
+ "MATH_RANDOM_FLOAT_HELPURL": "https://en.wikipedia.org/wiki/Random_number_generation",
+ "MATH_RANDOM_FLOAT_TITLE_RANDOM": "nilai pecahan acak",
+ "MATH_RANDOM_FLOAT_TOOLTIP": "Kembalikan nilai pecahan acak antara 0.0 (inklusif) dan 1.0 (eksklusif).",
+ "TEXT_TEXT_HELPURL": "https://en.wikipedia.org/wiki/String_(computer_science)",
+ "TEXT_TEXT_TOOLTIP": "Huruf, kata atau baris teks.",
+ "TEXT_JOIN_TITLE_CREATEWITH": "buat teks dengan",
+ "TEXT_JOIN_TOOLTIP": "Buat teks dengan cara gabungkan sejumlah item.",
+ "TEXT_CREATE_JOIN_TITLE_JOIN": "join",
+ "TEXT_CREATE_JOIN_TOOLTIP": "Tambah, ambil, atau susun ulang teks blok.",
+ "TEXT_CREATE_JOIN_ITEM_TOOLTIP": "Tambahkan suatu item ke dalam teks.",
+ "TEXT_APPEND_TO": "untuk",
+ "TEXT_APPEND_APPENDTEXT": "tambahkan teks",
+ "TEXT_APPEND_TOOLTIP": "Tambahkan beberapa teks ke variabel '%1'.",
+ "TEXT_LENGTH_TITLE": "panjang dari %1",
+ "TEXT_LENGTH_TOOLTIP": "Kembalikan sejumlah huruf (termasuk spasi) dari teks yang disediakan.",
+ "TEXT_ISEMPTY_TITLE": "%1 kosong",
+ "TEXT_ISEMPTY_TOOLTIP": "Kembalikan benar jika teks yang disediakan kosong.",
+ "TEXT_INDEXOF_TOOLTIP": "Kembalikan indeks pertama dan terakhir dari kejadian pertama/terakhir dari teks pertama dalam teks kedua. Kembalikan %1 jika teks tidak ditemukan.",
+ "TEXT_INDEXOF_INPUT_INTEXT": "dalam teks",
+ "TEXT_INDEXOF_OPERATOR_FIRST": "temukan kejadian pertama dalam teks",
+ "TEXT_INDEXOF_OPERATOR_LAST": "temukan kejadian terakhir dalam teks",
+ "TEXT_CHARAT_INPUT_INTEXT": "dalam teks",
+ "TEXT_CHARAT_FROM_START": "ambil huruf ke #",
+ "TEXT_CHARAT_FROM_END": "ambil huruf nomor # dari belakang",
+ "TEXT_CHARAT_FIRST": "ambil huruf pertama",
+ "TEXT_CHARAT_LAST": "ambil huruf terakhir",
+ "TEXT_CHARAT_RANDOM": "ambil huruf secara acak",
+ "TEXT_CHARAT_TOOLTIP": "Kembalikan karakter dari posisi tertentu.",
+ "TEXT_GET_SUBSTRING_TOOLTIP": "Kembalikan spesifik bagian dari teks.",
+ "TEXT_GET_SUBSTRING_INPUT_IN_TEXT": "in teks",
+ "TEXT_GET_SUBSTRING_START_FROM_START": "ambil bagian teks (substring) dari huruf no #",
+ "TEXT_GET_SUBSTRING_START_FROM_END": "ambil bagian teks (substring) dari huruf ke # dari terakhir",
+ "TEXT_GET_SUBSTRING_START_FIRST": "ambil bagian teks (substring) dari huruf pertama",
+ "TEXT_GET_SUBSTRING_END_FROM_START": "pada huruf #",
+ "TEXT_GET_SUBSTRING_END_FROM_END": "pada huruf nomer # dari terakhir",
+ "TEXT_GET_SUBSTRING_END_LAST": "pada huruf terakhir",
+ "TEXT_CHANGECASE_TOOLTIP": "Kembalikan kopi dari text dengan kapitalisasi yang berbeda.",
+ "TEXT_CHANGECASE_OPERATOR_UPPERCASE": "menjadi huruf kapital",
+ "TEXT_CHANGECASE_OPERATOR_LOWERCASE": "menjadi huruf kecil",
+ "TEXT_CHANGECASE_OPERATOR_TITLECASE": "menjadi huruf pertama kapital",
+ "TEXT_TRIM_TOOLTIP": "Kembali salinan teks dengan spasi dihapus dari satu atau kedua ujungnya.",
+ "TEXT_TRIM_OPERATOR_BOTH": "pangkas ruang dari kedua belah sisi",
+ "TEXT_TRIM_OPERATOR_LEFT": "pangkas ruang dari sisi kiri",
+ "TEXT_TRIM_OPERATOR_RIGHT": "pangkas ruang dari sisi kanan",
+ "TEXT_PRINT_TITLE": "cetak %1",
+ "TEXT_PRINT_TOOLTIP": "Cetak teks yant ditentukan, angka atau ninlai lainnya.",
+ "TEXT_PROMPT_TYPE_TEXT": "meminta teks dengan pesan",
+ "TEXT_PROMPT_TYPE_NUMBER": "Meminta angka dengan pesan",
+ "TEXT_PROMPT_TOOLTIP_NUMBER": "Meminta pengguna untuk memberi sebuah angka.",
+ "TEXT_PROMPT_TOOLTIP_TEXT": "Meminta pengguna untuk memberi beberapa teks.",
+ "LISTS_CREATE_EMPTY_HELPURL": "https://github.com/google/blockly/wiki/Lists#create-empty-list",
+ "LISTS_CREATE_EMPTY_TITLE": "buat list kosong",
+ "LISTS_CREATE_EMPTY_TOOLTIP": "Kembalikan list, dengan panjang 0, tidak berisi data",
+ "LISTS_CREATE_WITH_TOOLTIP": "Buat sebuah list dengan sejumlah item.",
+ "LISTS_CREATE_WITH_INPUT_WITH": "buat list dengan",
+ "LISTS_CREATE_WITH_CONTAINER_TITLE_ADD": "list",
+ "LISTS_CREATE_WITH_CONTAINER_TOOLTIP": "Tambahkan, hapus, atau susun ulang bagian untuk mengkonfigurasi blok list ini.",
+ "LISTS_CREATE_WITH_ITEM_TOOLTIP": "Tambahkan sebuah item ke list.",
+ "LISTS_REPEAT_TOOLTIP": "Buat sebuah list yang terdiri dari nilai yang diberikan diulang sebanyak jumlah yang ditentukan.",
+ "LISTS_REPEAT_TITLE": "buat list dengan item %1 diulang %2 kali",
+ "LISTS_LENGTH_TITLE": "panjang dari %1",
+ "LISTS_LENGTH_TOOLTIP": "Kembalikan panjang list.",
+ "LISTS_ISEMPTY_TITLE": "%1 kosong",
+ "LISTS_ISEMPTY_TOOLTIP": "Kembalikan benar jika list kosong.",
+ "LISTS_INLIST": "dalam list",
+ "LISTS_INDEX_OF_FIRST": "cari kejadian pertama item",
+ "LISTS_INDEX_OF_LAST": "cari kejadian terakhir item",
+ "LISTS_INDEX_OF_TOOLTIP": "Kembalikan indeks dari item pertama/terakhir kali muncul dalam list. Kembalikan %1 jika item tidak ditemukan.",
+ "LISTS_GET_INDEX_GET": "dapatkan",
+ "LISTS_GET_INDEX_GET_REMOVE": "dapatkan dan hapus",
+ "LISTS_GET_INDEX_REMOVE": "Hapus",
+ "LISTS_GET_INDEX_FROM_START": "#",
+ "LISTS_GET_INDEX_FROM_END": "# dari akhir",
+ "LISTS_GET_INDEX_FIRST": "pertama",
+ "LISTS_GET_INDEX_LAST": "terakhir",
+ "LISTS_GET_INDEX_RANDOM": "acak",
+ "LISTS_INDEX_FROM_START_TOOLTIP": "%1 adalah item pertama.",
+ "LISTS_INDEX_FROM_END_TOOLTIP": "%1 adalah item terakhir.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_FROM": "Kembalikan item di posisi tertentu dalam list.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_FIRST": "Kembalikan item pertama dalam list.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_LAST": "Kembalikan item terakhir dalam list.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_RANDOM": "Kembalikan item acak dalam list.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM": "Hapus dan kembalikan item di posisi tertentu dalam list.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST": "Hapus dan kembalikan item pertama dalam list.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST": "Hapus dan kembalikan item terakhir dalam list.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM": "Hapus dan kembalikan item acak dalam list.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM": "Hapus item di posisi tertentu dalam list.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST": "Hapus item pertama dalam list.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST": "Hapus item terakhir dalam list.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM": "Hapus sebuah item acak dalam list.",
+ "LISTS_SET_INDEX_SET": "tetapkan",
+ "LISTS_SET_INDEX_INSERT": "sisipkan di",
+ "LISTS_SET_INDEX_INPUT_TO": "sebagai",
+ "LISTS_SET_INDEX_TOOLTIP_SET_FROM": "Tetapkan item ke dalam posisi yang telah ditentukan di dalam list.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_FIRST": "Tetapkan item pertama di dalam list.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_LAST": "Menetapkan item terakhir dalam list.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_RANDOM": "Tetapkan secara acak sebuah item dalam list.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_FROM": "Sisipkan item ke dalam posisi yang telah ditentukan di dalam list.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST": "Sisipkan item di bagian awal dari list.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_LAST": "Tambahkan item ke bagian akhir list.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM": "Sisipkan item secara acak ke dalam list.",
+ "LISTS_GET_SUBLIST_START_FROM_START": "dapatkan sub-list dari #",
+ "LISTS_GET_SUBLIST_START_FROM_END": "dapatkan sub-list dari nomor # dari akhir",
+ "LISTS_GET_SUBLIST_START_FIRST": "dapatkan sub-list dari pertama",
+ "LISTS_GET_SUBLIST_END_FROM_START": "ke #",
+ "LISTS_GET_SUBLIST_END_FROM_END": "ke # dari akhir",
+ "LISTS_GET_SUBLIST_END_LAST": "ke yang paling akhir",
+ "LISTS_GET_SUBLIST_TOOLTIP": "Buat salinan bagian tertentu dari list.",
+ "LISTS_SORT_HELPURL": "https://github.com/google/blockly/wiki/Lists#sorting-a-list",
+ "LISTS_SORT_TITLE": "urutkan %1 %2 %3",
+ "LISTS_SORT_TOOLTIP": "Urutkan salinan dari daftar",
+ "LISTS_SORT_ORDER_ASCENDING": "menaik",
+ "LISTS_SORT_ORDER_DESCENDING": "menurun",
+ "LISTS_SORT_TYPE_NUMERIC": "sesuai nomor",
+ "LISTS_SORT_TYPE_TEXT": "sesuai abjad",
+ "LISTS_SORT_TYPE_IGNORECASE": "sesuai abjad, abaikan kasus",
+ "LISTS_SPLIT_LIST_FROM_TEXT": "buat list dari teks",
+ "LISTS_SPLIT_TEXT_FROM_LIST": "buat teks dari list",
+ "LISTS_SPLIT_WITH_DELIMITER": "dengan pembatas",
+ "LISTS_SPLIT_TOOLTIP_SPLIT": "Membagi teks ke dalam daftar teks, pisahkan pada setiap pembatas.",
+ "LISTS_SPLIT_TOOLTIP_JOIN": "Gabung daftar teks menjadi satu teks, yang dipisahkan oleh pembatas.",
+ "VARIABLES_GET_TOOLTIP": "Kembalikan nilai variabel ini.",
+ "VARIABLES_GET_CREATE_SET": "Buat 'set %1'",
+ "VARIABLES_SET": "tetapkan %1 untuk %2",
+ "VARIABLES_SET_TOOLTIP": "tetapkan variabel ini dengan input yang sama.",
+ "VARIABLES_SET_CREATE_GET": "Buat 'get %1'",
+ "PROCEDURES_DEFNORETURN_HELPURL": "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29",
+ "PROCEDURES_DEFNORETURN_TITLE": "untuk",
+ "PROCEDURES_DEFNORETURN_PROCEDURE": "buat sesuatu",
+ "PROCEDURES_BEFORE_PARAMS": "dengan:",
+ "PROCEDURES_CALL_BEFORE_PARAMS": "dengan:",
+ "PROCEDURES_DEFNORETURN_TOOLTIP": "Buat sebuah fungsi tanpa output.",
+ "PROCEDURES_DEFNORETURN_COMMENT": "Jelaskan fungsi ini...",
+ "PROCEDURES_DEFRETURN_HELPURL": "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29",
+ "PROCEDURES_DEFRETURN_RETURN": "kembali",
+ "PROCEDURES_DEFRETURN_TOOLTIP": "Buat sebuah fungsi dengan satu output.",
+ "PROCEDURES_ALLOW_STATEMENTS": "memungkinkan pernyataan",
+ "PROCEDURES_DEF_DUPLICATE_WARNING": "Peringatan: Fungsi ini memiliki parameter duplikat.",
+ "PROCEDURES_CALLNORETURN_HELPURL": "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29",
+ "PROCEDURES_CALLNORETURN_TOOLTIP": "Menjalankan fungsi '%1' yang ditetapkan pengguna.",
+ "PROCEDURES_CALLRETURN_HELPURL": "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29",
+ "PROCEDURES_CALLRETURN_TOOLTIP": "Menjalankan fungsi '%1' yang ditetapkan pengguna dan menggunakan outputnya.",
+ "PROCEDURES_MUTATORCONTAINER_TITLE": "input",
+ "PROCEDURES_MUTATORCONTAINER_TOOLTIP": "Menambah, menghapus, atau menyusun ulang masukan untuk fungsi ini.",
+ "PROCEDURES_MUTATORARG_TITLE": "masukan Nama:",
+ "PROCEDURES_MUTATORARG_TOOLTIP": "Tambahkan masukan ke fungsi.",
+ "PROCEDURES_HIGHLIGHT_DEF": "Sorot definisi fungsi",
+ "PROCEDURES_CREATE_DO": "Buat '%1'",
+ "PROCEDURES_IFRETURN_TOOLTIP": "Jika nilai yang benar, kemudian kembalikan nilai kedua.",
+ "PROCEDURES_IFRETURN_WARNING": "Peringatan: Blok ini dapat digunakan hanya dalam definisi fungsi."
+}
diff --git a/blockly/msg/json/is.json b/blockly/msg/json/is.json
new file mode 100644
index 0000000..8bf3dc2
--- /dev/null
+++ b/blockly/msg/json/is.json
@@ -0,0 +1,357 @@
+{
+ "@metadata": {
+ "authors": [
+ "Jonbg",
+ "아라",
+ "Gaddi00",
+ "Sveinki",
+ "Sveinn í Felli"
+ ]
+ },
+ "VARIABLES_DEFAULT_NAME": "atriði",
+ "TODAY": "Í dag",
+ "DUPLICATE_BLOCK": "Afrita",
+ "ADD_COMMENT": "Skrifa skýringu",
+ "REMOVE_COMMENT": "Fjarlægja skýringu",
+ "EXTERNAL_INPUTS": "Ytri inntök",
+ "INLINE_INPUTS": "Innri inntök",
+ "DELETE_BLOCK": "Eyða kubbi",
+ "DELETE_X_BLOCKS": "Eyða %1 kubbum",
+ "DELETE_ALL_BLOCKS": "Eyða öllum %1 kubbunum?",
+ "CLEAN_UP": "Hreinsa kubba",
+ "COLLAPSE_BLOCK": "Loka kubbi",
+ "COLLAPSE_ALL": "Loka kubbum",
+ "EXPAND_BLOCK": "Opna kubb",
+ "EXPAND_ALL": "Opna kubba",
+ "DISABLE_BLOCK": "Óvirkja kubb",
+ "ENABLE_BLOCK": "Virkja kubb",
+ "HELP": "Hjálp",
+ "UNDO": "Afturkalla",
+ "REDO": "Endurtaka",
+ "CHANGE_VALUE_TITLE": "Breyta gildi:",
+ "RENAME_VARIABLE": "Endurnefna breytu...",
+ "RENAME_VARIABLE_TITLE": "Endurnefna allar '%1' breyturnar:",
+ "NEW_VARIABLE": "Ný breyta...",
+ "NEW_VARIABLE_TITLE": "Heiti nýrrar breytu:",
+ "COLOUR_PICKER_HELPURL": "https://en.wikipedia.org/wiki/Color",
+ "COLOUR_PICKER_TOOLTIP": "Velja lit úr litakorti.",
+ "COLOUR_RANDOM_TITLE": "einhver litur",
+ "COLOUR_RANDOM_TOOLTIP": "Velja einhvern lit af handahófi.",
+ "COLOUR_RGB_HELPURL": "http://www.december.com/html/spec/colorper.html",
+ "COLOUR_RGB_TITLE": "litur",
+ "COLOUR_RGB_RED": "rauður",
+ "COLOUR_RGB_GREEN": "grænt",
+ "COLOUR_RGB_BLUE": "blátt",
+ "COLOUR_RGB_TOOLTIP": "Búa til lit úr tilteknu magni af rauðu, grænu og bláu. Allar tölurnar verða að vera á bilinu 0 til 100.",
+ "COLOUR_BLEND_HELPURL": "http://meyerweb.com/eric/tools/color-blend/",
+ "COLOUR_BLEND_TITLE": "blöndun",
+ "COLOUR_BLEND_COLOUR1": "litur 1",
+ "COLOUR_BLEND_COLOUR2": "litur 2",
+ "COLOUR_BLEND_RATIO": "hlutfall",
+ "COLOUR_BLEND_TOOLTIP": "Blandar tveimur litum í gefnu hlutfalli (0.0 - 1.0).",
+ "CONTROLS_REPEAT_HELPURL": "https://en.wikipedia.org/wiki/For_loop",
+ "CONTROLS_REPEAT_TITLE": "endurtaka %1 sinnum",
+ "CONTROLS_REPEAT_INPUT_DO": "gera",
+ "CONTROLS_REPEAT_TOOLTIP": "Gera eitthvað aftur og aftur.",
+ "CONTROLS_WHILEUNTIL_HELPURL": "https://github.com/google/blockly/wiki/Loops#repeat",
+ "CONTROLS_WHILEUNTIL_OPERATOR_WHILE": "endurtaka á meðan",
+ "CONTROLS_WHILEUNTIL_OPERATOR_UNTIL": "endurtaka þar til",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_WHILE": "Endurtaka eitthvað á meðan gildi er satt.",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL": "Endurtaka eitthvað á meðan gildi er ósatt.",
+ "CONTROLS_FOR_HELPURL": "https://github.com/google/blockly/wiki/Loops#count-with",
+ "CONTROLS_FOR_TOOLTIP": "Láta breytuna '%1' taka inn gildi frá fyrstu tölu til síðustu tölu, hlaupandi á tiltekna bilinu og gera tilteknu kubbana.",
+ "CONTROLS_FOR_TITLE": "telja með %1 frá %2 til %3 um %4",
+ "CONTROLS_FOREACH_TITLE": "fyrir hvert %1 í lista %2",
+ "CONTROLS_FOREACH_TOOLTIP": "Fyrir hvert atriði í lista er breyta '%1' stillt á atriðið og skipanir gerðar.",
+ "CONTROLS_FLOW_STATEMENTS_HELPURL": "https://github.com/google/blockly/wiki/Loops#loop-termination-blocks",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK": "fara út úr lykkju",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE": "fara beint í næstu umferð lykkjunnar",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK": "Fara út úr umlykjandi lykkju.",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE": "Sleppa afganginum af lykkjunni og fara beint í næstu umferð hennar.",
+ "CONTROLS_FLOW_STATEMENTS_WARNING": "Aðvörun: Þennan kubb má aðeins nota innan lykkju.",
+ "CONTROLS_IF_HELPURL": "https://github.com/google/blockly/wiki/IfElse",
+ "CONTROLS_IF_TOOLTIP_1": "Ef gildi er satt skal gera einhverjar skipanir.",
+ "CONTROLS_IF_TOOLTIP_2": "Ef gildi er satt skal gera skipanir í fyrri kubbnum. Annars skal gera skipanir í seinni kubbnum.",
+ "CONTROLS_IF_TOOLTIP_3": "Ef fyrra gildið er satt skal gera skipanir í fyrri kubbnum. Annars, ef seinna gildið er satt, þá skal gera skipanir í seinni kubbnum.",
+ "CONTROLS_IF_TOOLTIP_4": "Ef fyrra gildið er satt skal gera skipanir í fyrri kubbnum. Annars, ef seinna gildið er satt, skal gera skipanir í seinni kubbnum. Ef hvorugt gildið er satt, skal gera skipanir í síðasta kubbnum.",
+ "CONTROLS_IF_MSG_IF": "ef",
+ "CONTROLS_IF_MSG_ELSEIF": "annars ef",
+ "CONTROLS_IF_MSG_ELSE": "annars",
+ "CONTROLS_IF_IF_TOOLTIP": "Bæta við, fjarlægja eða umraða til að breyta skipan þessa EF kubbs.",
+ "CONTROLS_IF_ELSEIF_TOOLTIP": "Bæta skilyrði við EF kubbinn.",
+ "CONTROLS_IF_ELSE_TOOLTIP": "Bæta við hluta EF kubbs sem grípur öll tilfelli sem uppfylla ekki hin skilyrðin.",
+ "LOGIC_COMPARE_HELPURL": "https://en.wikipedia.org/wiki/Inequality_(mathematics)",
+ "LOGIC_COMPARE_TOOLTIP_EQ": "Skila sönnu ef inntökin eru jöfn.",
+ "LOGIC_COMPARE_TOOLTIP_NEQ": "Skila sönnu ef inntökin eru ekki jöfn.",
+ "LOGIC_COMPARE_TOOLTIP_LT": "Skila sönnu ef fyrra inntakið er minna en seinna inntakið.",
+ "LOGIC_COMPARE_TOOLTIP_LTE": "Skila sönnu ef fyrra inntakið er minna en eða jafnt og seinna inntakið.",
+ "LOGIC_COMPARE_TOOLTIP_GT": "Skila sönnu ef fyrra inntakið er stærra en seinna inntakið.",
+ "LOGIC_COMPARE_TOOLTIP_GTE": "Skila sönnu ef fyrra inntakið er stærra en eða jafnt og seinna inntakið.",
+ "LOGIC_OPERATION_HELPURL": "https://github.com/google/blockly/wiki/Logic#logical-operations",
+ "LOGIC_OPERATION_TOOLTIP_AND": "Skila sönnu ef bæði inntökin eru sönn.",
+ "LOGIC_OPERATION_AND": "og",
+ "LOGIC_OPERATION_TOOLTIP_OR": "Skila sönnu ef að minnsta kosti eitt inntak er satt.",
+ "LOGIC_OPERATION_OR": "eða",
+ "LOGIC_NEGATE_HELPURL": "https://github.com/google/blockly/wiki/Logic#not",
+ "LOGIC_NEGATE_TITLE": "ekki %1",
+ "LOGIC_NEGATE_TOOLTIP": "Skilar sönnu ef inntakið er ósatt. Skilar ósönnu ef inntakið er satt.",
+ "LOGIC_BOOLEAN_HELPURL": "https://github.com/google/blockly/wiki/Logic#values",
+ "LOGIC_BOOLEAN_TRUE": "satt",
+ "LOGIC_BOOLEAN_FALSE": "ósatt",
+ "LOGIC_BOOLEAN_TOOLTIP": "Skilar annað hvort sönnu eða ósönnu.",
+ "LOGIC_NULL_HELPURL": "https://en.wikipedia.org/wiki/Nullable_type",
+ "LOGIC_NULL": "tómagildi",
+ "LOGIC_NULL_TOOLTIP": "Skilar tómagildi.",
+ "LOGIC_TERNARY_HELPURL": "https://en.wikipedia.org/wiki/%3F:",
+ "LOGIC_TERNARY_CONDITION": "prófun",
+ "LOGIC_TERNARY_IF_TRUE": "ef satt",
+ "LOGIC_TERNARY_IF_FALSE": "ef ósatt",
+ "LOGIC_TERNARY_TOOLTIP": "Kanna skilyrðið í 'prófun'. Skilar 'ef satt' gildinu ef skilyrðið er satt, en skilar annars 'ef ósatt' gildinu.",
+ "MATH_NUMBER_HELPURL": "https://en.wikipedia.org/wiki/Number",
+ "MATH_NUMBER_TOOLTIP": "Tala.",
+ "MATH_ADDITION_SYMBOL": "+",
+ "MATH_SUBTRACTION_SYMBOL": "-",
+ "MATH_DIVISION_SYMBOL": "÷",
+ "MATH_MULTIPLICATION_SYMBOL": "×",
+ "MATH_POWER_SYMBOL": "^",
+ "MATH_TRIG_SIN": "sin",
+ "MATH_TRIG_COS": "cos",
+ "MATH_TRIG_TAN": "tan",
+ "MATH_TRIG_ASIN": "asin",
+ "MATH_TRIG_ACOS": "acos",
+ "MATH_TRIG_ATAN": "atan",
+ "MATH_ARITHMETIC_HELPURL": "https://en.wikipedia.org/wiki/Arithmetic",
+ "MATH_ARITHMETIC_TOOLTIP_ADD": "Skila summu talnanna tveggja.",
+ "MATH_ARITHMETIC_TOOLTIP_MINUS": "Skila mismun talnanna.",
+ "MATH_ARITHMETIC_TOOLTIP_MULTIPLY": "Skila margfeldi talnanna.",
+ "MATH_ARITHMETIC_TOOLTIP_DIVIDE": "Skila deilingu talnanna.",
+ "MATH_ARITHMETIC_TOOLTIP_POWER": "Skila fyrri tölunni í veldinu seinni talan.",
+ "MATH_SINGLE_HELPURL": "https://en.wikipedia.org/wiki/Square_root",
+ "MATH_SINGLE_OP_ROOT": "kvaðratrót",
+ "MATH_SINGLE_TOOLTIP_ROOT": "Skila kvaðratrót tölu.",
+ "MATH_SINGLE_OP_ABSOLUTE": "algildi",
+ "MATH_SINGLE_TOOLTIP_ABS": "Skila algildi tölu.",
+ "MATH_SINGLE_TOOLTIP_NEG": "Skila neitun tölu (tölunni með öfugu formerki).",
+ "MATH_SINGLE_TOOLTIP_LN": "Skila náttúrlegum lógaritma tölu.",
+ "MATH_SINGLE_TOOLTIP_LOG10": "Skila tugalógaritma tölu.",
+ "MATH_SINGLE_TOOLTIP_EXP": "Skila e í veldi tölu.",
+ "MATH_SINGLE_TOOLTIP_POW10": "Skila 10 í veldi tölu.",
+ "MATH_TRIG_HELPURL": "https://en.wikipedia.org/wiki/Trigonometric_functions",
+ "MATH_TRIG_TOOLTIP_SIN": "Skila sínusi horns gefnu í gráðum.",
+ "MATH_TRIG_TOOLTIP_COS": "Skila kósínusi horns gefnu í gráðum.",
+ "MATH_TRIG_TOOLTIP_TAN": "Skila tangensi horns gefnu í gráðum.",
+ "MATH_TRIG_TOOLTIP_ASIN": "Skila arkarsínusi tölu.",
+ "MATH_TRIG_TOOLTIP_ACOS": "Skila arkarkósínusi tölu.",
+ "MATH_TRIG_TOOLTIP_ATAN": "Skila arkartangensi tölu.",
+ "MATH_CONSTANT_HELPURL": "https://en.wikipedia.org/wiki/Mathematical_constant",
+ "MATH_CONSTANT_TOOLTIP": "Skila algengum fasta: π (3.141…), e (2.718…), φ (1.618…), kvrót(2) (1.414…), kvrót(½) (0.707…) eða ∞ (óendanleika).",
+ "MATH_IS_EVEN": "er\\u00A0jöfn tala",
+ "MATH_IS_ODD": "er oddatala",
+ "MATH_IS_PRIME": "er prímtala",
+ "MATH_IS_WHOLE": "er heiltala",
+ "MATH_IS_POSITIVE": "er jákvæð",
+ "MATH_IS_NEGATIVE": "er neikvæð",
+ "MATH_IS_DIVISIBLE_BY": "er\\u00A0deilanleg með",
+ "MATH_IS_TOOLTIP": "Kanna hvort tala sé jöfn tala, oddatala, jákvæð, neikvæð eða deilanleg með tiltekinni tölu. Skilar sönnu eða ósönnu.",
+ "MATH_CHANGE_HELPURL": "https://en.wikipedia.org/wiki/Programming_idiom#Incrementing_a_counter",
+ "MATH_CHANGE_TITLE": "breyta %1 um %2",
+ "MATH_CHANGE_TOOLTIP": "Bæta tölu við breytu '%1'.",
+ "MATH_ROUND_HELPURL": "https://en.wikipedia.org/wiki/Rounding",
+ "MATH_ROUND_TOOLTIP": "Námunda tölu upp eða niður.",
+ "MATH_ROUND_OPERATOR_ROUND": "námunda",
+ "MATH_ROUND_OPERATOR_ROUNDUP": "námunda upp",
+ "MATH_ROUND_OPERATOR_ROUNDDOWN": "námunda niður",
+ "MATH_ONLIST_OPERATOR_SUM": "summa lista",
+ "MATH_ONLIST_TOOLTIP_SUM": "Skila summu allra talna í listanum.",
+ "MATH_ONLIST_OPERATOR_MIN": "minnst í lista",
+ "MATH_ONLIST_TOOLTIP_MIN": "Skila minnstu tölu í listanum.",
+ "MATH_ONLIST_OPERATOR_MAX": "stærst í lista",
+ "MATH_ONLIST_TOOLTIP_MAX": "Skila stærstu tölu í listanum.",
+ "MATH_ONLIST_OPERATOR_AVERAGE": "meðaltal lista",
+ "MATH_ONLIST_TOOLTIP_AVERAGE": "Skila meðaltali talna í listanum.",
+ "MATH_ONLIST_OPERATOR_MEDIAN": "miðgildi lista",
+ "MATH_ONLIST_TOOLTIP_MEDIAN": "Skila miðgildi listans.",
+ "MATH_ONLIST_OPERATOR_MODE": "tíðast í lista",
+ "MATH_ONLIST_TOOLTIP_MODE": "Skila lista yfir tíðustu gildin í listanum.",
+ "MATH_ONLIST_OPERATOR_STD_DEV": "staðalfrávik lista",
+ "MATH_ONLIST_TOOLTIP_STD_DEV": "Skila staðalfráviki lista.",
+ "MATH_ONLIST_OPERATOR_RANDOM": "eitthvað úr lista",
+ "MATH_ONLIST_TOOLTIP_RANDOM": "Skila einhverju atriði úr listanum.",
+ "MATH_MODULO_HELPURL": "https://en.wikipedia.org/wiki/Modulo_operation",
+ "MATH_MODULO_TITLE": "afgangur af %1 ÷ %2",
+ "MATH_MODULO_TOOLTIP": "Skila afgangi deilingar með tölunum.",
+ "MATH_CONSTRAIN_TITLE": "þröngva %1 lægst %2 hæst %3",
+ "MATH_CONSTRAIN_TOOLTIP": "Þröngva tölu til að vera innan hinna tilgreindu marka (að báðum meðtöldum).",
+ "MATH_RANDOM_INT_HELPURL": "https://en.wikipedia.org/wiki/Random_number_generation",
+ "MATH_RANDOM_INT_TITLE": "slembitala frá %1 til %2",
+ "MATH_RANDOM_INT_TOOLTIP": "Skila heiltölu sem valin er af handahófi og er innan tilgreindra marka, að báðum meðtöldum.",
+ "MATH_RANDOM_FLOAT_HELPURL": "https://en.wikipedia.org/wiki/Random_number_generation",
+ "MATH_RANDOM_FLOAT_TITLE_RANDOM": "slembibrot",
+ "MATH_RANDOM_FLOAT_TOOLTIP": "Skila broti sem er valið af handahófi úr tölum á bilinu frá og með 0.0 til (en ekki með) 1.0.",
+ "TEXT_TEXT_HELPURL": "https://en.wikipedia.org/wiki/String_(computer_science)",
+ "TEXT_TEXT_TOOLTIP": "Stafur, orð eða textalína.",
+ "TEXT_JOIN_HELPURL": "https://github.com/google/blockly/wiki/Text#text-creation",
+ "TEXT_JOIN_TITLE_CREATEWITH": "búa til texta með",
+ "TEXT_JOIN_TOOLTIP": "Búa til texta með því að tengja saman einhvern fjölda atriða.",
+ "TEXT_CREATE_JOIN_TITLE_JOIN": "tengja",
+ "TEXT_CREATE_JOIN_TOOLTIP": "Bæta við, fjarlægja eða umraða hlutum til að breyta skipan þessa textakubbs.",
+ "TEXT_CREATE_JOIN_ITEM_TOOLTIP": "Bæta atriði við textann.",
+ "TEXT_APPEND_HELPURL": "https://github.com/google/blockly/wiki/Text#text-modification",
+ "TEXT_APPEND_TO": "við",
+ "TEXT_APPEND_APPENDTEXT": "bæta texta",
+ "TEXT_APPEND_TOOLTIP": "Bæta texta við breytuna '%1'.",
+ "TEXT_LENGTH_HELPURL": "https://github.com/google/blockly/wiki/Text#text-modification",
+ "TEXT_LENGTH_TITLE": "lengd %1",
+ "TEXT_LENGTH_TOOLTIP": "Skilar fjölda stafa (með bilum) í gefna textanum.",
+ "TEXT_ISEMPTY_HELPURL": "https://github.com/google/blockly/wiki/Text#checking-for-empty-text",
+ "TEXT_ISEMPTY_TITLE": "%1 er tómur",
+ "TEXT_ISEMPTY_TOOLTIP": "Skilar sönnu ef gefni textinn er tómur.",
+ "TEXT_INDEXOF_HELPURL": "https://github.com/google/blockly/wiki/Text#finding-text",
+ "TEXT_INDEXOF_TOOLTIP": "Finnur fyrsta/síðasta tilfelli fyrri textans í seinni textanum og skilar sæti hans. Skilar %1 ef textinn finnst ekki.",
+ "TEXT_INDEXOF_INPUT_INTEXT": "í texta",
+ "TEXT_INDEXOF_OPERATOR_FIRST": "finna fyrsta tilfelli texta",
+ "TEXT_INDEXOF_OPERATOR_LAST": "finna síðasta tilfelli texta",
+ "TEXT_CHARAT_HELPURL": "https://github.com/google/blockly/wiki/Text#extracting-text",
+ "TEXT_CHARAT_INPUT_INTEXT": "í texta",
+ "TEXT_CHARAT_FROM_START": "sækja staf #",
+ "TEXT_CHARAT_FROM_END": "sækja staf # frá enda",
+ "TEXT_CHARAT_FIRST": "sækja fyrsta staf",
+ "TEXT_CHARAT_LAST": "sækja síðasta staf",
+ "TEXT_CHARAT_RANDOM": "sækja einhvern staf",
+ "TEXT_CHARAT_TOOLTIP": "Skila staf á tilteknum stað.",
+ "TEXT_GET_SUBSTRING_TOOLTIP": "Skilar tilteknum hluta textans.",
+ "TEXT_GET_SUBSTRING_HELPURL": "https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text",
+ "TEXT_GET_SUBSTRING_INPUT_IN_TEXT": "í texta",
+ "TEXT_GET_SUBSTRING_START_FROM_START": "sækja textabút frá staf #",
+ "TEXT_GET_SUBSTRING_START_FROM_END": "sækja textabút frá staf # frá enda",
+ "TEXT_GET_SUBSTRING_START_FIRST": "sækja textabút frá fyrsta staf",
+ "TEXT_GET_SUBSTRING_END_FROM_START": "að staf #",
+ "TEXT_GET_SUBSTRING_END_FROM_END": "að staf # frá enda",
+ "TEXT_GET_SUBSTRING_END_LAST": "að síðasta staf",
+ "TEXT_CHANGECASE_HELPURL": "https://github.com/google/blockly/wiki/Text#adjusting-text-case",
+ "TEXT_CHANGECASE_TOOLTIP": "Skila afriti af textanum með annarri stafastöðu.",
+ "TEXT_CHANGECASE_OPERATOR_UPPERCASE": "í HÁSTAFI",
+ "TEXT_CHANGECASE_OPERATOR_LOWERCASE": "í lágstafi",
+ "TEXT_CHANGECASE_OPERATOR_TITLECASE": "í Upphafstafi",
+ "TEXT_TRIM_HELPURL": "https://github.com/google/blockly/wiki/Text#trimming-removing-spaces",
+ "TEXT_TRIM_TOOLTIP": "Skila afriti af textanum þar sem möguleg bil við báða enda hafa verið fjarlægð.",
+ "TEXT_TRIM_OPERATOR_BOTH": "eyða bilum báðum megin við",
+ "TEXT_TRIM_OPERATOR_LEFT": "eyða bilum vinstra megin við",
+ "TEXT_TRIM_OPERATOR_RIGHT": "eyða bilum hægra megin við",
+ "TEXT_PRINT_HELPURL": "https://github.com/google/blockly/wiki/Text#printing-text",
+ "TEXT_PRINT_TITLE": "prenta %1",
+ "TEXT_PRINT_TOOLTIP": "Prenta tiltekinn texta, tölu eða annað gildi.",
+ "TEXT_PROMPT_HELPURL": "https://github.com/google/blockly/wiki/Text#getting-input-from-the-user",
+ "TEXT_PROMPT_TYPE_TEXT": "biðja um texta með skilaboðum",
+ "TEXT_PROMPT_TYPE_NUMBER": "biðja um tölu með skilaboðum",
+ "TEXT_PROMPT_TOOLTIP_NUMBER": "Biðja notandann um tölu.",
+ "TEXT_PROMPT_TOOLTIP_TEXT": "Biðja notandann um texta.",
+ "LISTS_CREATE_EMPTY_HELPURL": "https://github.com/google/blockly/wiki/Lists#create-empty-list",
+ "LISTS_CREATE_EMPTY_TITLE": "búa til tóman lista",
+ "LISTS_CREATE_EMPTY_TOOLTIP": "Skilar lista með lengdina 0 án gagna",
+ "LISTS_CREATE_WITH_TOOLTIP": "Búa til lista með einhverjum fjölda atriða.",
+ "LISTS_CREATE_WITH_INPUT_WITH": "búa til lista með",
+ "LISTS_CREATE_WITH_CONTAINER_TITLE_ADD": "listi",
+ "LISTS_CREATE_WITH_CONTAINER_TOOLTIP": "Bæta við, fjarlægja eða umraða hlutum til að breyta skipan þessa listakubbs.",
+ "LISTS_CREATE_WITH_ITEM_TOOLTIP": "Bæta atriði við listann.",
+ "LISTS_REPEAT_HELPURL": "https://github.com/google/blockly/wiki/Lists#create-list-with",
+ "LISTS_REPEAT_TOOLTIP": "Býr til lista sem inniheldur tiltekna gildið endurtekið tiltekið oft.",
+ "LISTS_REPEAT_TITLE": "búa til lista með atriði %1 endurtekið %2 sinnum",
+ "LISTS_LENGTH_HELPURL": "https://github.com/google/blockly/wiki/Lists#length-of",
+ "LISTS_LENGTH_TITLE": "lengd %1",
+ "LISTS_LENGTH_TOOLTIP": "Skilar lengd lista.",
+ "LISTS_ISEMPTY_TITLE": "%1 er tómur",
+ "LISTS_ISEMPTY_TOOLTIP": "Skilar sönnu ef listinn er tómur.",
+ "LISTS_INLIST": "í lista",
+ "LISTS_INDEX_OF_HELPURL": "https://github.com/google/blockly/wiki/Lists#getting-items-from-a-list",
+ "LISTS_INDEX_OF_FIRST": "finna fyrsta tilfelli atriðis",
+ "LISTS_INDEX_OF_LAST": "finna síðasta tilfelli atriðis",
+ "LISTS_INDEX_OF_TOOLTIP": "Finnur hvar atriðið kemur fyrir fyrst/síðast í listanum og skilar sæti þess. Skilar %1 ef atriðið finnst ekki.",
+ "LISTS_GET_INDEX_GET": "sækja",
+ "LISTS_GET_INDEX_GET_REMOVE": "sækja og fjarlægja",
+ "LISTS_GET_INDEX_REMOVE": "fjarlægja",
+ "LISTS_GET_INDEX_FROM_START": "#",
+ "LISTS_GET_INDEX_FROM_END": "# frá enda",
+ "LISTS_GET_INDEX_FIRST": "fyrsta",
+ "LISTS_GET_INDEX_LAST": "síðasta",
+ "LISTS_GET_INDEX_RANDOM": "eitthvert",
+ "LISTS_INDEX_FROM_START_TOOLTIP": "%1 er fyrsta atriðið.",
+ "LISTS_INDEX_FROM_END_TOOLTIP": "%1 er síðasta atriðið.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_FROM": "Skilar atriðinu í hinum tiltekna stað í lista.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_FIRST": "Skilar fyrsta atriði í lista.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_LAST": "Skilar síðasta atriði í lista.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_RANDOM": "Skilar einhverju atriði úr lista.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM": "Fjarlægir og skilar atriðinu á hinum tiltekna stað í lista.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST": "Fjarlægir og skilar fyrsta atriðinu í lista.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST": "Fjarlægir og skilar síðasta atriðinu í lista.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM": "Fjarlægir og skilar einhverju atriði úr lista.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM": "Fjarlægir atriðið á hinum tiltekna stað í lista.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST": "Fjarlægir fyrsta atriðið í lista.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST": "Fjarlægir síðasta atriðið í lista.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM": "Fjarlægir eitthvert atriði úr lista.",
+ "LISTS_SET_INDEX_HELPURL": "https://github.com/google/blockly/wiki/Lists#in-list--set",
+ "LISTS_SET_INDEX_SET": "setja í",
+ "LISTS_SET_INDEX_INSERT": "bæta við",
+ "LISTS_SET_INDEX_INPUT_TO": "sem",
+ "LISTS_SET_INDEX_TOOLTIP_SET_FROM": "Setur atriðið í tiltekna sætið í listanum.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_FIRST": "Setur atriðið í fyrsta sæti lista.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_LAST": "Setur atriðið í síðasta sæti lista.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_RANDOM": "Setur atriðið í eitthvert sæti lista.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_FROM": "Bætir atriðinu í listann á tilteknum stað.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST": "Bætir atriðinu fremst í listann.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_LAST": "Bætir atriðinu aftan við listann.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM": "Bætir atriðinu einhversstaðar við listann.",
+ "LISTS_GET_SUBLIST_HELPURL": "https://github.com/google/blockly/wiki/Lists#getting-a-sublist",
+ "LISTS_GET_SUBLIST_START_FROM_START": "sækja undirlista frá #",
+ "LISTS_GET_SUBLIST_START_FROM_END": "sækja undirlista frá # frá enda",
+ "LISTS_GET_SUBLIST_START_FIRST": "sækja undirlista frá fyrsta",
+ "LISTS_GET_SUBLIST_END_FROM_START": "til #",
+ "LISTS_GET_SUBLIST_END_FROM_END": "til # frá enda",
+ "LISTS_GET_SUBLIST_END_LAST": "til síðasta",
+ "LISTS_GET_SUBLIST_TOOLTIP": "Býr til afrit af tilteknum hluta lista.",
+ "LISTS_SORT_HELPURL": "https://github.com/google/blockly/wiki/Lists#sorting-a-list",
+ "LISTS_SORT_TITLE": "raða %1 %2 %3",
+ "LISTS_SORT_TOOLTIP": "Raða afriti lista.",
+ "LISTS_SORT_ORDER_ASCENDING": "hækkandi",
+ "LISTS_SORT_ORDER_DESCENDING": "lækkandi",
+ "LISTS_SORT_TYPE_NUMERIC": "í númeraröð",
+ "LISTS_SORT_TYPE_TEXT": "í stafrófsröð",
+ "LISTS_SORT_TYPE_IGNORECASE": "í stafrófsröð án tillits til stafstöðu",
+ "LISTS_SPLIT_LIST_FROM_TEXT": "gera lista úr texta",
+ "LISTS_SPLIT_TEXT_FROM_LIST": "gera texta úr lista",
+ "LISTS_SPLIT_WITH_DELIMITER": "með skiltákni",
+ "LISTS_SPLIT_TOOLTIP_SPLIT": "Skiptir texta í lista af textum, með skil við hvert skiltákn.",
+ "LISTS_SPLIT_TOOLTIP_JOIN": "Sameinar lista af textum í einn texta, með skiltákn á milli.",
+ "VARIABLES_GET_HELPURL": "https://github.com/google/blockly/wiki/Variables#get",
+ "VARIABLES_GET_TOOLTIP": "Skilar gildi þessarar breytu.",
+ "VARIABLES_GET_CREATE_SET": "Búa til 'stilla %1'",
+ "VARIABLES_SET_HELPURL": "https://github.com/google/blockly/wiki/Variables#set",
+ "VARIABLES_SET": "stilla %1 á %2",
+ "VARIABLES_SET_TOOLTIP": "Stillir þessa breytu á innihald inntaksins.",
+ "VARIABLES_SET_CREATE_GET": "Búa til 'sækja %1'",
+ "PROCEDURES_DEFNORETURN_HELPURL": "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29",
+ "PROCEDURES_DEFNORETURN_TITLE": "til að",
+ "PROCEDURES_DEFNORETURN_PROCEDURE": "gera eitthvað",
+ "PROCEDURES_BEFORE_PARAMS": "með:",
+ "PROCEDURES_CALL_BEFORE_PARAMS": "með:",
+ "PROCEDURES_DEFNORETURN_TOOLTIP": "Býr til fall sem skilar engu.",
+ "PROCEDURES_DEFNORETURN_COMMENT": "Lýstu þessari aðgerð/falli...",
+ "PROCEDURES_DEFRETURN_HELPURL": "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29",
+ "PROCEDURES_DEFRETURN_RETURN": "skila",
+ "PROCEDURES_DEFRETURN_TOOLTIP": "Býr til fall sem skilar úttaki.",
+ "PROCEDURES_ALLOW_STATEMENTS": "leyfa setningar",
+ "PROCEDURES_DEF_DUPLICATE_WARNING": "Aðvörun: Þetta fall er með tvítekna stika.",
+ "PROCEDURES_CALLNORETURN_HELPURL": "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29",
+ "PROCEDURES_CALLNORETURN_TOOLTIP": "Keyra heimatilbúna fallið '%1'.",
+ "PROCEDURES_CALLRETURN_HELPURL": "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29",
+ "PROCEDURES_CALLRETURN_TOOLTIP": "Keyra heimatilbúna fallið '%1' og nota úttak þess.",
+ "PROCEDURES_MUTATORCONTAINER_TITLE": "inntök",
+ "PROCEDURES_MUTATORCONTAINER_TOOLTIP": "Bæta við, fjarlægja eða umraða inntökum fyrir þetta fall.",
+ "PROCEDURES_MUTATORARG_TITLE": "heiti inntaks:",
+ "PROCEDURES_MUTATORARG_TOOLTIP": "Bæta inntaki við fallið.",
+ "PROCEDURES_HIGHLIGHT_DEF": "Sýna skilgreiningu falls",
+ "PROCEDURES_CREATE_DO": "Búa til '%1'",
+ "PROCEDURES_IFRETURN_TOOLTIP": "Ef gildi er satt, skal skila öðru gildi.",
+ "PROCEDURES_IFRETURN_HELPURL": "http://c2.com/cgi/wiki?GuardClause",
+ "PROCEDURES_IFRETURN_WARNING": "Aðvörun: Þennan kubb má aðeins nota í skilgreiningu falls."
+}
diff --git a/blockly/msg/json/it.json b/blockly/msg/json/it.json
new file mode 100644
index 0000000..5991e26
--- /dev/null
+++ b/blockly/msg/json/it.json
@@ -0,0 +1,317 @@
+{
+ "@metadata": {
+ "authors": [
+ "Beta16",
+ "Espertus",
+ "Nerimic",
+ "Gbonanome",
+ "Gianfranco",
+ "Federico Mugnaini",
+ "JackLantern"
+ ]
+ },
+ "VARIABLES_DEFAULT_NAME": "elemento",
+ "TODAY": "Oggi",
+ "DUPLICATE_BLOCK": "Duplica",
+ "ADD_COMMENT": "Aggiungi commento",
+ "REMOVE_COMMENT": "Rimuovi commento",
+ "EXTERNAL_INPUTS": "Ingressi esterni",
+ "INLINE_INPUTS": "Ingressi in linea",
+ "DELETE_BLOCK": "Cancella blocco",
+ "DELETE_X_BLOCKS": "Cancella %1 blocchi",
+ "DELETE_ALL_BLOCKS": "Cancellare tutti i %1 blocchi?",
+ "CLEAN_UP": "Pulisci i blocchi",
+ "COLLAPSE_BLOCK": "Comprimi blocco",
+ "COLLAPSE_ALL": "Comprimi blocchi",
+ "EXPAND_BLOCK": "Espandi blocco",
+ "EXPAND_ALL": "Espandi blocchi",
+ "DISABLE_BLOCK": "Disattiva blocco",
+ "ENABLE_BLOCK": "Attiva blocco",
+ "HELP": "Aiuto",
+ "UNDO": "Annulla",
+ "REDO": "Ripeti",
+ "CHANGE_VALUE_TITLE": "Modifica valore:",
+ "RENAME_VARIABLE": "Rinomina variabile...",
+ "RENAME_VARIABLE_TITLE": "Rinomina tutte le variabili '%1' in:",
+ "NEW_VARIABLE": "Crea variabile...",
+ "NEW_VARIABLE_TITLE": "Nome della nuova variabile:",
+ "VARIABLE_ALREADY_EXISTS": "Una variabile denominata '%1' esiste già.",
+ "DELETE_VARIABLE_CONFIRMATION": "Cancella %1 usi della variabile '%2'?",
+ "DELETE_VARIABLE": "Cancella la variabile '%1'",
+ "COLOUR_PICKER_HELPURL": "https://it.wikipedia.org/wiki/Colore",
+ "COLOUR_PICKER_TOOLTIP": "Scegli un colore dalla tavolozza.",
+ "COLOUR_RANDOM_TITLE": "colore casuale",
+ "COLOUR_RANDOM_TOOLTIP": "Scegli un colore a caso.",
+ "COLOUR_RGB_TITLE": "colora con",
+ "COLOUR_RGB_RED": "rosso",
+ "COLOUR_RGB_GREEN": "verde",
+ "COLOUR_RGB_BLUE": "blu",
+ "COLOUR_RGB_TOOLTIP": "Crea un colore con la quantità specificata di rosso, verde e blu. Tutti i valori devono essere compresi tra 0 e 100.",
+ "COLOUR_BLEND_TITLE": "miscela",
+ "COLOUR_BLEND_COLOUR1": "colore 1",
+ "COLOUR_BLEND_COLOUR2": "colore 2",
+ "COLOUR_BLEND_RATIO": "rapporto",
+ "COLOUR_BLEND_TOOLTIP": "Mescola due colori insieme con un determinato rapporto (0.0 - 1.0).",
+ "CONTROLS_REPEAT_HELPURL": "https://it.wikipedia.org/wiki/Ciclo_for",
+ "CONTROLS_REPEAT_TITLE": "ripeti %1 volte",
+ "CONTROLS_REPEAT_INPUT_DO": "fai",
+ "CONTROLS_REPEAT_TOOLTIP": "Esegue alcune istruzione diverse volte.",
+ "CONTROLS_WHILEUNTIL_OPERATOR_WHILE": "ripeti mentre",
+ "CONTROLS_WHILEUNTIL_OPERATOR_UNTIL": "ripeti fino a che",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_WHILE": "Finché un valore è vero, esegue alcune istruzioni.",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL": "Finché un valore è falso, esegue alcune istruzioni.",
+ "CONTROLS_FOR_TOOLTIP": "Fa sì che la variabile '%1' prenda tutti i valori a partire dal numero di partenza fino a quello di arrivo, con passo pari all'intervallo specificato, ed esegue il blocco indicato.",
+ "CONTROLS_FOR_TITLE": "conta con %1 da %2 a %3 per %4",
+ "CONTROLS_FOREACH_TITLE": "per ogni elemento %1 nella lista %2",
+ "CONTROLS_FOREACH_TOOLTIP": "Per ogni elemento in una lista, imposta la variabile '%1' pari all'elemento e quindi esegue alcune istruzioni.",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK": "esce dal ciclo",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE": "prosegui con la successiva iterazione del ciclo",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK": "Esce dal ciclo.",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE": "Salta il resto di questo ciclo e prosegue con la successiva iterazione.",
+ "CONTROLS_FLOW_STATEMENTS_WARNING": "Attenzioneː Questo blocco può essere usato solo in un ciclo.",
+ "CONTROLS_IF_TOOLTIP_1": "Se un valore è vero allora esegue alcune istruzioni.",
+ "CONTROLS_IF_TOOLTIP_2": "Se un valore è vero allora esegue il primo blocco di istruzioni. Altrimenti esegue il secondo blocco di istruzioni.",
+ "CONTROLS_IF_TOOLTIP_3": "Se il primo valore è vero allora esegue un primo blocco di istruzioni. Altrimenti, se il secondo valore è vero, esegue un secondo blocco di istruzioni.",
+ "CONTROLS_IF_TOOLTIP_4": "Se il primo valore è vero allora esegue un primo blocco di istruzioni. Altrimenti, se il secondo valore è vero, esegue un secondo blocco di istruzioni. Se nessuno dei valori è vero esegue l'ultimo blocco di istruzioni.",
+ "CONTROLS_IF_MSG_IF": "se",
+ "CONTROLS_IF_MSG_ELSEIF": "altrimenti se",
+ "CONTROLS_IF_MSG_ELSE": "altrimenti",
+ "CONTROLS_IF_IF_TOOLTIP": "Aggiungi, elimina o riordina le sezioni per riconfigurare questo blocco se.",
+ "CONTROLS_IF_ELSEIF_TOOLTIP": "Aggiungi una condizione al blocco se.",
+ "CONTROLS_IF_ELSE_TOOLTIP": "Aggiungi una condizione finale pigliatutto al blocco se.",
+ "LOGIC_COMPARE_HELPURL": "https://it.wikipedia.org/wiki/Disuguaglianza",
+ "LOGIC_COMPARE_TOOLTIP_EQ": "Restituisce vero se gli input sono uno uguale all'altro.",
+ "LOGIC_COMPARE_TOOLTIP_NEQ": "Restituisce vero se gli input non sono uno uguale all'altro.",
+ "LOGIC_COMPARE_TOOLTIP_LT": "Restituisce vero se il primo input è minore del secondo.",
+ "LOGIC_COMPARE_TOOLTIP_LTE": "Restituisce vero se il primo input è minore o uguale al secondo.",
+ "LOGIC_COMPARE_TOOLTIP_GT": "Restituisce vero se il primo input è maggiore o uguale al secondo.",
+ "LOGIC_COMPARE_TOOLTIP_GTE": "Restituisce uguale se il primo input è maggiore o uguale al secondo input.",
+ "LOGIC_OPERATION_TOOLTIP_AND": "Restituisce vero se entrambi gli input sono veri.",
+ "LOGIC_OPERATION_AND": "e",
+ "LOGIC_OPERATION_TOOLTIP_OR": "Restituisce vero se almeno uno degli input è vero.",
+ "LOGIC_OPERATION_OR": "o",
+ "LOGIC_NEGATE_TITLE": "non %1",
+ "LOGIC_NEGATE_TOOLTIP": "Restituisce vero se l'input è falso. Restituisce falso se l'input è vero.",
+ "LOGIC_BOOLEAN_TRUE": "vero",
+ "LOGIC_BOOLEAN_FALSE": "falso",
+ "LOGIC_BOOLEAN_TOOLTIP": "Restituisce vero o falso.",
+ "LOGIC_NULL": "nullo",
+ "LOGIC_NULL_TOOLTIP": "Restituisce valore nullo.",
+ "LOGIC_TERNARY_CONDITION": "test",
+ "LOGIC_TERNARY_IF_TRUE": "se vero",
+ "LOGIC_TERNARY_IF_FALSE": "se falso",
+ "LOGIC_TERNARY_TOOLTIP": "Verifica la condizione in 'test'. Se questa è vera restituisce il valore 'se vero' altrimenti restituisce il valore 'se falso'.",
+ "MATH_NUMBER_HELPURL": "https://it.wikipedia.org/wiki/Numero",
+ "MATH_NUMBER_TOOLTIP": "Un numero.",
+ "MATH_ARITHMETIC_HELPURL": "https://it.wikipedia.org/wiki/Aritmetica",
+ "MATH_ARITHMETIC_TOOLTIP_ADD": "Restituisce la somma dei due numeri.",
+ "MATH_ARITHMETIC_TOOLTIP_MINUS": "Restituisce la differenza dei due numeri.",
+ "MATH_ARITHMETIC_TOOLTIP_MULTIPLY": "Restituisce il prodotto dei due numeri.",
+ "MATH_ARITHMETIC_TOOLTIP_DIVIDE": "Restituisce il quoziente dei due numeri.",
+ "MATH_ARITHMETIC_TOOLTIP_POWER": "Restituisce il primo numero elevato alla potenza del secondo numero.",
+ "MATH_SINGLE_HELPURL": "https://it.wikipedia.org/wiki/Radice_quadrata",
+ "MATH_SINGLE_OP_ROOT": "radice quadrata",
+ "MATH_SINGLE_TOOLTIP_ROOT": "Restituisce la radice quadrata del numero.",
+ "MATH_SINGLE_OP_ABSOLUTE": "assoluto",
+ "MATH_SINGLE_TOOLTIP_ABS": "Restituisce il valore assoluto del numero.",
+ "MATH_SINGLE_TOOLTIP_NEG": "Restituisce l'opposto del numero.",
+ "MATH_SINGLE_TOOLTIP_LN": "Restituisce il logaritmo naturale del numero.",
+ "MATH_SINGLE_TOOLTIP_LOG10": "Restituisce il logaritmo in base 10 del numero.",
+ "MATH_SINGLE_TOOLTIP_EXP": "Restituisce e elevato alla potenza del numero.",
+ "MATH_SINGLE_TOOLTIP_POW10": "Restituisce 10 elevato alla potenza del numero.",
+ "MATH_TRIG_HELPURL": "https://it.wikipedia.org/wiki/Funzione_trigonometrica",
+ "MATH_TRIG_TOOLTIP_SIN": "Restituisce il seno di un angolo espresso in gradi (non radianti).",
+ "MATH_TRIG_TOOLTIP_COS": "Restituisce il coseno di un angolo espresso in gradi (non radianti).",
+ "MATH_TRIG_TOOLTIP_TAN": "Restituisce la tangente di un angolo espresso in gradi (non radianti).",
+ "MATH_TRIG_TOOLTIP_ASIN": "Restituisce l'arco-seno di un numero.",
+ "MATH_TRIG_TOOLTIP_ACOS": "Restituisce l'arco-coseno di un numero.",
+ "MATH_TRIG_TOOLTIP_ATAN": "Restituisce l'arco-tangente di un numero.",
+ "MATH_CONSTANT_HELPURL": "https://it.wikipedia.org/wiki/Costante_matematica",
+ "MATH_CONSTANT_TOOLTIP": "Restituisce una delle costanti comuniː π (3.141…), e (2.718…), φ (1.618…), radq(2) (1.414…), radq(½) (0.707…) o ∞ (infinito).",
+ "MATH_IS_EVEN": "è pari",
+ "MATH_IS_ODD": "è dispari",
+ "MATH_IS_PRIME": "è primo",
+ "MATH_IS_WHOLE": "è intero",
+ "MATH_IS_POSITIVE": "è positivo",
+ "MATH_IS_NEGATIVE": "è negativo",
+ "MATH_IS_DIVISIBLE_BY": "è divisibile per",
+ "MATH_IS_TOOLTIP": "Verifica se un numero è pari, dispari, primo, intero, positivo, negativo o se è divisibile per un certo numero. Restituisce vero o falso.",
+ "MATH_CHANGE_HELPURL": "https://it.wikipedia.org/wiki/Addizione",
+ "MATH_CHANGE_TITLE": "cambia %1 di %2",
+ "MATH_CHANGE_TOOLTIP": "Aggiunge un numero alla variabile '%1'.",
+ "MATH_ROUND_HELPURL": "https://it.wikipedia.org/wiki/Arrotondamento",
+ "MATH_ROUND_TOOLTIP": "Arrotonda un numero verso l'alto o verso il basso.",
+ "MATH_ROUND_OPERATOR_ROUND": "arrotonda",
+ "MATH_ROUND_OPERATOR_ROUNDUP": "arrotonda verso l'alto",
+ "MATH_ROUND_OPERATOR_ROUNDDOWN": "arrotonda verso il basso",
+ "MATH_ONLIST_OPERATOR_SUM": "somma la lista",
+ "MATH_ONLIST_TOOLTIP_SUM": "Restituisce la somma si tutti i numeri nella lista.",
+ "MATH_ONLIST_OPERATOR_MIN": "minimo della lista",
+ "MATH_ONLIST_TOOLTIP_MIN": "Restituisce il più piccolo numero della lista.",
+ "MATH_ONLIST_OPERATOR_MAX": "massimo della lista",
+ "MATH_ONLIST_TOOLTIP_MAX": "Restituisce il più grande numero della lista.",
+ "MATH_ONLIST_OPERATOR_AVERAGE": "media della lista",
+ "MATH_ONLIST_TOOLTIP_AVERAGE": "Restituisce la media (media aritmetica) dei valori numerici nella lista.",
+ "MATH_ONLIST_OPERATOR_MEDIAN": "mediana della lista",
+ "MATH_ONLIST_TOOLTIP_MEDIAN": "Restituisce il valore mediano della lista.",
+ "MATH_ONLIST_OPERATOR_MODE": "mode della lista",
+ "MATH_ONLIST_TOOLTIP_MODE": "Restituisce una lista degli elementi più frequenti nella lista.",
+ "MATH_ONLIST_OPERATOR_STD_DEV": "deviazione standard della lista",
+ "MATH_ONLIST_TOOLTIP_STD_DEV": "Restituisce la deviazione standard della lista.",
+ "MATH_ONLIST_OPERATOR_RANDOM": "elemento casuale della lista",
+ "MATH_ONLIST_TOOLTIP_RANDOM": "Restituisce un elemento casuale della lista.",
+ "MATH_MODULO_HELPURL": "https://it.wikipedia.org/wiki/Resto",
+ "MATH_MODULO_TITLE": "resto di %1 ÷ %2",
+ "MATH_MODULO_TOOLTIP": "Restituisce il resto della divisione di due numeri.",
+ "MATH_CONSTRAIN_TITLE": "costringi %1 da %2 a %3",
+ "MATH_CONSTRAIN_TOOLTIP": "Costringe un numero all'interno dei limiti indicati (compresi).",
+ "MATH_RANDOM_INT_HELPURL": "https://it.wikipedia.org/wiki/Numeri_pseudo-casuali",
+ "MATH_RANDOM_INT_TITLE": "intero casuale da %1 a %2",
+ "MATH_RANDOM_INT_TOOLTIP": "Restituisce un numero intero casuale compreso tra i due limiti indicati (inclusi).",
+ "MATH_RANDOM_FLOAT_HELPURL": "https://it.wikipedia.org/wiki/Numeri_pseudo-casuali",
+ "MATH_RANDOM_FLOAT_TITLE_RANDOM": "frazione casuale",
+ "MATH_RANDOM_FLOAT_TOOLTIP": "Restituisce una frazione compresa fra 0.0 (incluso) e 1.0 (escluso).",
+ "TEXT_TEXT_HELPURL": "https://it.wikipedia.org/wiki/Stringa_(informatica)",
+ "TEXT_TEXT_TOOLTIP": "Una lettera, una parola o una linea di testo.",
+ "TEXT_JOIN_TITLE_CREATEWITH": "crea testo con",
+ "TEXT_JOIN_TOOLTIP": "Crea un blocco di testo unendo un certo numero di elementi.",
+ "TEXT_CREATE_JOIN_TITLE_JOIN": "unisci",
+ "TEXT_CREATE_JOIN_TOOLTIP": "Aggiungi, rimuovi o riordina le sezioni per riconfigurare questo blocco testo.",
+ "TEXT_CREATE_JOIN_ITEM_TOOLTIP": "Aggiungi un elemento al testo.",
+ "TEXT_APPEND_TO": "a",
+ "TEXT_APPEND_APPENDTEXT": "aggiungi il testo",
+ "TEXT_APPEND_TOOLTIP": "Aggiunge del testo alla variabile '%1'.",
+ "TEXT_LENGTH_TITLE": "lunghezza di %1",
+ "TEXT_LENGTH_TOOLTIP": "Restituisce il numero di lettere (inclusi gli spazi) nel testo fornito.",
+ "TEXT_ISEMPTY_TITLE": "%1 è vuoto",
+ "TEXT_ISEMPTY_TOOLTIP": "Restituisce vero se il testo fornito è vuoto.",
+ "TEXT_INDEXOF_TOOLTIP": "Restituisce l'indice della prima occorrenza del primo testo all'interno del secondo testo. Restituisce %1 se il testo non viene trovato.",
+ "TEXT_INDEXOF_INPUT_INTEXT": "nel testo",
+ "TEXT_INDEXOF_OPERATOR_FIRST": "trova la prima occorrenza del testo",
+ "TEXT_INDEXOF_OPERATOR_LAST": "trova l'ultima occorrenza del testo",
+ "TEXT_CHARAT_INPUT_INTEXT": "nel testo",
+ "TEXT_CHARAT_FROM_START": "prendi la lettera #",
+ "TEXT_CHARAT_FROM_END": "prendi la lettera # dalla fine",
+ "TEXT_CHARAT_FIRST": "prendi la prima lettera",
+ "TEXT_CHARAT_LAST": "prendi l'ultima lettera",
+ "TEXT_CHARAT_RANDOM": "prendi lettera casuale",
+ "TEXT_CHARAT_TOOLTIP": "Restituisce la lettera nella posizione indicata.",
+ "TEXT_GET_SUBSTRING_TOOLTIP": "Restituisce la porzione di testo indicata.",
+ "TEXT_GET_SUBSTRING_INPUT_IN_TEXT": "nel testo",
+ "TEXT_GET_SUBSTRING_START_FROM_START": "prendi sotto-stringa dalla lettera #",
+ "TEXT_GET_SUBSTRING_START_FROM_END": "prendi sotto-stringa dalla lettera # dalla fine",
+ "TEXT_GET_SUBSTRING_START_FIRST": "prendi sotto-stringa dalla prima lettera",
+ "TEXT_GET_SUBSTRING_END_FROM_START": "alla lettera #",
+ "TEXT_GET_SUBSTRING_END_FROM_END": "alla lettera # dalla fine",
+ "TEXT_GET_SUBSTRING_END_LAST": "all'ultima lettera",
+ "TEXT_CHANGECASE_TOOLTIP": "Restituisce una copia del testo in un diverso formato maiuscole/minuscole.",
+ "TEXT_CHANGECASE_OPERATOR_UPPERCASE": "in MAIUSCOLO",
+ "TEXT_CHANGECASE_OPERATOR_LOWERCASE": "in minuscolo",
+ "TEXT_CHANGECASE_OPERATOR_TITLECASE": "con Iniziali Maiuscole",
+ "TEXT_TRIM_TOOLTIP": "Restituisce una copia del testo con gli spazi rimossi ad uno o entrambe le estremità.",
+ "TEXT_TRIM_OPERATOR_BOTH": "rimuovi spazi da entrambi gli estremi",
+ "TEXT_TRIM_OPERATOR_LEFT": "rimuovi spazi a sinistra",
+ "TEXT_TRIM_OPERATOR_RIGHT": "rimuovi spazi a destra",
+ "TEXT_PRINT_TITLE": "scrivi %1",
+ "TEXT_PRINT_TOOLTIP": "Scrive il testo, numero o altro valore indicato.",
+ "TEXT_PROMPT_TYPE_TEXT": "richiedi testo con messaggio",
+ "TEXT_PROMPT_TYPE_NUMBER": "richiedi numero con messaggio",
+ "TEXT_PROMPT_TOOLTIP_NUMBER": "Richiedi un numero all'utente.",
+ "TEXT_PROMPT_TOOLTIP_TEXT": "Richiede del testo da parte dell'utente.",
+ "LISTS_CREATE_EMPTY_TITLE": "crea lista vuota",
+ "LISTS_CREATE_EMPTY_TOOLTIP": "Restituisce una lista, di lunghezza 0, contenente nessun record di dati",
+ "LISTS_CREATE_WITH_TOOLTIP": "Crea una lista con un certo numero di elementi.",
+ "LISTS_CREATE_WITH_INPUT_WITH": "crea lista con",
+ "LISTS_CREATE_WITH_CONTAINER_TITLE_ADD": "lista",
+ "LISTS_CREATE_WITH_CONTAINER_TOOLTIP": "Aggiungi, rimuovi o riordina le sezioni per riconfigurare il blocco lista.",
+ "LISTS_CREATE_WITH_ITEM_TOOLTIP": "Aggiunge un elemento alla lista.",
+ "LISTS_REPEAT_TOOLTIP": "Crea una lista costituita dal valore indicato ripetuto per il numero di volte specificato.",
+ "LISTS_REPEAT_TITLE": "crea una lista con l'elemento %1 ripetuto %2 volte",
+ "LISTS_LENGTH_TITLE": "lunghezza di %1",
+ "LISTS_LENGTH_TOOLTIP": "Restituisce la lunghezza della lista",
+ "LISTS_ISEMPTY_TITLE": "%1 è vuota",
+ "LISTS_ISEMPTY_TOOLTIP": "Restituisce vero se la lista è vuota.",
+ "LISTS_INLIST": "nella lista",
+ "LISTS_INDEX_OF_FIRST": "trova la prima occorrenza dell'elemento",
+ "LISTS_INDEX_OF_LAST": "trova l'ultima occorrenza dell'elemento",
+ "LISTS_INDEX_OF_TOOLTIP": "Restituisce l'indice della prima/ultima occorrenza dell'elemento nella lista. Restituisce %1 se l'elemento non viene trovato.",
+ "LISTS_GET_INDEX_GET": "prendi",
+ "LISTS_GET_INDEX_GET_REMOVE": "prendi e rimuovi",
+ "LISTS_GET_INDEX_REMOVE": "rimuovi",
+ "LISTS_GET_INDEX_FROM_END": "# dalla fine",
+ "LISTS_GET_INDEX_FIRST": "primo",
+ "LISTS_GET_INDEX_LAST": "ultimo",
+ "LISTS_GET_INDEX_RANDOM": "casuale",
+ "LISTS_INDEX_FROM_START_TOOLTIP": "%1 corrisponde al primo elemento.",
+ "LISTS_INDEX_FROM_END_TOOLTIP": "%1 corrisponde all'ultimo elemento.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_FROM": "Restituisce l'elemento nella posizione indicata della lista.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_FIRST": "Restituisce il primo elemento in una lista.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_LAST": "Restituisce l'ultimo elemento in una lista.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_RANDOM": "Restituisce un elemento casuale in una lista.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM": "Rimuove e restituisce l'elemento nella posizione indicata in una lista.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST": "Rimuove e restituisce il primo elemento in una lista.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST": "Restituisce e rimuove l'ultimo elemento in una lista.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM": "Restituisce e rimuove un elemento casuale in una lista.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM": "Rimuove l'elemento nella posizione indicata in una lista.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST": "Rimuove il primo elemento in una lista.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST": "Rimuove l'ultimo elemento in una lista.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM": "Rimuove un elemento casuale in una lista.",
+ "LISTS_SET_INDEX_SET": "imposta",
+ "LISTS_SET_INDEX_INSERT": "inserisci in",
+ "LISTS_SET_INDEX_INPUT_TO": "come",
+ "LISTS_SET_INDEX_TOOLTIP_SET_FROM": "Imposta l'elemento nella posizione indicata di una lista.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_FIRST": "Imposta il primo elemento in una lista.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_LAST": "Imposta l'ultimo elemento in una lista.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_RANDOM": "Imposta un elemento casuale in una lista.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_FROM": "Inserisci un elemento nella posizione indicata in una lista.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST": "Inserisci l'elemento all'inizio della lista.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_LAST": "Aggiungi un elemento alla fine di una lista",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM": "Inserisce l'elemento casualmente in una lista.",
+ "LISTS_GET_SUBLIST_START_FROM_START": "prendi sotto-lista da #",
+ "LISTS_GET_SUBLIST_START_FROM_END": "prendi sotto-lista da # dalla fine",
+ "LISTS_GET_SUBLIST_START_FIRST": "prendi sotto-lista dall'inizio",
+ "LISTS_GET_SUBLIST_END_FROM_START": "fino a #",
+ "LISTS_GET_SUBLIST_END_FROM_END": "da # dalla fine",
+ "LISTS_GET_SUBLIST_END_LAST": "dagli ultimi",
+ "LISTS_GET_SUBLIST_TOOLTIP": "Crea una copia della porzione specificata di una lista.",
+ "LISTS_SORT_TITLE": "ordinamento %1 %2 %3",
+ "LISTS_SORT_TOOLTIP": "Ordina una copia di un elenco.",
+ "LISTS_SORT_ORDER_ASCENDING": "crescente",
+ "LISTS_SORT_ORDER_DESCENDING": "decrescente",
+ "LISTS_SORT_TYPE_NUMERIC": "numerico",
+ "LISTS_SORT_TYPE_TEXT": "alfabetico",
+ "LISTS_SORT_TYPE_IGNORECASE": "alfabetico, ignorare differenze maiuscole e minuscole",
+ "LISTS_SPLIT_LIST_FROM_TEXT": "crea lista da testo",
+ "LISTS_SPLIT_TEXT_FROM_LIST": "crea testo da lista",
+ "LISTS_SPLIT_WITH_DELIMITER": "con delimitatore",
+ "LISTS_SPLIT_TOOLTIP_SPLIT": "Dividi il testo in un elenco di testi, interrompendo ad ogni delimitatore.",
+ "LISTS_SPLIT_TOOLTIP_JOIN": "Unisci una lista di testi in un unico testo, separato da un delimitatore.",
+ "VARIABLES_GET_TOOLTIP": "Restituisce il valore di una variabile.",
+ "VARIABLES_GET_CREATE_SET": "Crea 'imposta %1'",
+ "VARIABLES_SET": "imposta %1 a %2",
+ "VARIABLES_SET_TOOLTIP": "Imposta questa variabile ad essere pari all'input.",
+ "VARIABLES_SET_CREATE_GET": "Crea 'prendi %1'",
+ "PROCEDURES_DEFNORETURN_TITLE": "per",
+ "PROCEDURES_DEFNORETURN_PROCEDURE": "fai qualcosa",
+ "PROCEDURES_BEFORE_PARAMS": "conː",
+ "PROCEDURES_CALL_BEFORE_PARAMS": "conː",
+ "PROCEDURES_DEFNORETURN_TOOLTIP": "Crea una funzione senza output.",
+ "PROCEDURES_DEFNORETURN_COMMENT": "Descrivi questa funzione...",
+ "PROCEDURES_DEFRETURN_RETURN": "ritorna",
+ "PROCEDURES_DEFRETURN_TOOLTIP": "Crea una funzione con un output.",
+ "PROCEDURES_ALLOW_STATEMENTS": "consenti dichiarazioni",
+ "PROCEDURES_DEF_DUPLICATE_WARNING": "Attenzioneː Questa funzione ha parametri duplicati.",
+ "PROCEDURES_CALLNORETURN_HELPURL": "https://it.wikipedia.org/wiki/Funzione_(informatica)",
+ "PROCEDURES_CALLNORETURN_TOOLTIP": "Esegue la funzione definita dall'utente '%1'.",
+ "PROCEDURES_CALLRETURN_HELPURL": "https://it.wikipedia.org/wiki/Funzione_(informatica)",
+ "PROCEDURES_CALLRETURN_TOOLTIP": "Esegue la funzione definita dall'utente '%1' ed usa il suo output.",
+ "PROCEDURES_MUTATORCONTAINER_TITLE": "input",
+ "PROCEDURES_MUTATORCONTAINER_TOOLTIP": "Aggiungi, rimuovi o riordina input alla funzione.",
+ "PROCEDURES_MUTATORARG_TITLE": "nome inputː",
+ "PROCEDURES_MUTATORARG_TOOLTIP": "Aggiungi un input alla funzione.",
+ "PROCEDURES_HIGHLIGHT_DEF": "Evidenzia definizione di funzione",
+ "PROCEDURES_CREATE_DO": "Crea '%1'",
+ "PROCEDURES_IFRETURN_TOOLTIP": "Se un valore è vero allora restituisce un secondo valore.",
+ "PROCEDURES_IFRETURN_HELPURL": "http://c2.com/cgi/wiki?GuardClause",
+ "PROCEDURES_IFRETURN_WARNING": "Attenzioneː Questo blocco può essere usato solo all'interno di una definizione di funzione."
+}
diff --git a/blockly/msg/json/ja.json b/blockly/msg/json/ja.json
new file mode 100644
index 0000000..3e52b2b
--- /dev/null
+++ b/blockly/msg/json/ja.json
@@ -0,0 +1,328 @@
+{
+ "@metadata": {
+ "authors": [
+ "Shirayuki",
+ "Oda",
+ "아라",
+ "Otokoume",
+ "Sujiniku",
+ "Sgk"
+ ]
+ },
+ "VARIABLES_DEFAULT_NAME": "項目",
+ "TODAY": "今日",
+ "DUPLICATE_BLOCK": "複製",
+ "ADD_COMMENT": "コメントを追加",
+ "REMOVE_COMMENT": "コメントを削除",
+ "EXTERNAL_INPUTS": "外部入力",
+ "INLINE_INPUTS": "インライン入力",
+ "DELETE_BLOCK": "ブロックを消す",
+ "DELETE_X_BLOCKS": "%1 個のブロックを消す",
+ "DELETE_ALL_BLOCKS": "%1件のすべてのブロックを消しますか?",
+ "CLEAN_UP": "ブロックの整理",
+ "COLLAPSE_BLOCK": "ブロックを折りたたむ",
+ "COLLAPSE_ALL": "ブロックを折りたたむ",
+ "EXPAND_BLOCK": "ブロックを展開します。",
+ "EXPAND_ALL": "ブロックを展開します。",
+ "DISABLE_BLOCK": "ブロックを無効にします。",
+ "ENABLE_BLOCK": "ブロックを有効にします。",
+ "HELP": "ヘルプ",
+ "UNDO": "取り消し",
+ "REDO": "やり直し",
+ "CHANGE_VALUE_TITLE": "値を変更します。",
+ "RENAME_VARIABLE": "変数の名前を変更.",
+ "RENAME_VARIABLE_TITLE": "%1の変数すべてを名前変更します。",
+ "NEW_VARIABLE": "新しい変数",
+ "NEW_VARIABLE_TITLE": "新しい変数の、名前",
+ "COLOUR_PICKER_HELPURL": "https://ja.wikipedia.org/wiki/色",
+ "COLOUR_PICKER_TOOLTIP": "パレットから色を選んでください。",
+ "COLOUR_RANDOM_TITLE": "ランダムな色",
+ "COLOUR_RANDOM_TOOLTIP": "ランダムな色を選択します。",
+ "COLOUR_RGB_HELPURL": "http://www.december.com/html/spec/colorper.html",
+ "COLOUR_RGB_TITLE": "カラーと",
+ "COLOUR_RGB_RED": "赤",
+ "COLOUR_RGB_GREEN": "緑",
+ "COLOUR_RGB_BLUE": "青",
+ "COLOUR_RGB_TOOLTIP": "赤、緑、および青の指定された量で色を作成します。すべての値は 0 ~ 100 の間でなければなりません。",
+ "COLOUR_BLEND_HELPURL": "http://meyerweb.com/eric/tools/color-blend/",
+ "COLOUR_BLEND_TITLE": "ブレンド",
+ "COLOUR_BLEND_COLOUR1": "色 1",
+ "COLOUR_BLEND_COLOUR2": "色 2",
+ "COLOUR_BLEND_RATIO": "割合",
+ "COLOUR_BLEND_TOOLTIP": "ブレンド2 つの色を指定された比率に混ぜる」 (0.0 ~ 1.0)。",
+ "CONTROLS_REPEAT_HELPURL": "https://ja.wikipedia.org/wiki/for文",
+ "CONTROLS_REPEAT_TITLE": "%1 回、繰り返します",
+ "CONTROLS_REPEAT_INPUT_DO": "してください",
+ "CONTROLS_REPEAT_TOOLTIP": "いくつかのステートメントを数回行います。",
+ "CONTROLS_WHILEUNTIL_OPERATOR_WHILE": "つつその間、繰り返す4",
+ "CONTROLS_WHILEUNTIL_OPERATOR_UNTIL": "までを繰り返します",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_WHILE": "値は true のあいだ、いくつかのステートメントを行います。",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL": "値は false のあいだ、いくつかのステートメントを行います。",
+ "CONTROLS_FOR_TOOLTIP": "変数 \"%1\"は、指定した間隔ごとのカウントを開始番号から 終了番号まで、値をとり、指定したブロックを行う必要があります。",
+ "CONTROLS_FOR_TITLE": "で、カウントします。 %1 %2 から%3、 %4 で",
+ "CONTROLS_FOREACH_TITLE": "各項目の %1 リストで %2",
+ "CONTROLS_FOREACH_TOOLTIP": "リストの各項目に対して変数 '%1' のアイテムに設定し、いくつかのステートメントをしてください。",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK": "ループから抜け出す",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE": "ループの次の反復処理を続行します。",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK": "含むループから抜け出します。",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE": "このループの残りの部分をスキップし、次のイテレーションに進みます。",
+ "CONTROLS_FLOW_STATEMENTS_WARNING": "注意: このブロックは、ループ内でのみ使用します。",
+ "CONTROLS_IF_TOOLTIP_1": "値が true の場合はその後ステートメントを行をいくつかします。",
+ "CONTROLS_IF_TOOLTIP_2": "値が true 場合は、ステートメントの最初のブロックを行います。それ以外の場合は、ステートメントの 2 番目のブロックを行います。",
+ "CONTROLS_IF_TOOLTIP_3": "最初の値が true 場合は、ステートメントの最初のブロックを行います。それ以外の場合は、2 番目の値が true の場合、ステートメントの 2 番目のブロックをします。",
+ "CONTROLS_IF_TOOLTIP_4": "最初の値が true 場合は、ステートメントの最初のブロックを行います。2 番目の値が true の場合は、ステートメントの 2 番目のブロックを行います。それ以外の場合は最後のブロックのステートメントを行います。",
+ "CONTROLS_IF_MSG_IF": "もし",
+ "CONTROLS_IF_MSG_ELSEIF": "他でもし",
+ "CONTROLS_IF_MSG_ELSE": "他",
+ "CONTROLS_IF_IF_TOOLTIP": "追加、削除、またはセクションを順序変更して、ブロックをこれを再構成します。",
+ "CONTROLS_IF_ELSEIF_TOOLTIP": "場合に条件にブロック追加。",
+ "CONTROLS_IF_ELSE_TOOLTIP": "Ifブロックに、すべてをキャッチする条件を追加。",
+ "LOGIC_COMPARE_HELPURL": "https://ja.wikipedia.org/wiki/不等式",
+ "LOGIC_COMPARE_TOOLTIP_EQ": "もし両方がお互いに等しく入力した場合は true を返します。",
+ "LOGIC_COMPARE_TOOLTIP_NEQ": "両方の入力が互いに等しくない場合に true を返します。",
+ "LOGIC_COMPARE_TOOLTIP_LT": "最初の入力が 2 番目の入力よりも小さいい場合は true を返します。",
+ "LOGIC_COMPARE_TOOLTIP_LTE": "もし、最初の入力が二つ目入力より少ないか、おなじであったらTRUEをかえしてください",
+ "LOGIC_COMPARE_TOOLTIP_GT": "最初の入力が 2 番目の入力よりも大きい場合は true を返します。",
+ "LOGIC_COMPARE_TOOLTIP_GTE": "もし入力がふたつめの入よりも大きかったらtrueをり返します。",
+ "LOGIC_OPERATION_TOOLTIP_AND": "両方の入力がおんなじ場わいわtrue を返します。",
+ "LOGIC_OPERATION_AND": "そして",
+ "LOGIC_OPERATION_TOOLTIP_OR": "最低少なくとも 1 つの入力が true の場合は true を返します。",
+ "LOGIC_OPERATION_OR": "または",
+ "LOGIC_NEGATE_HELPURL": "https://ja.wikipedia.org/wiki/否定",
+ "LOGIC_NEGATE_TITLE": "%1 ではないです。",
+ "LOGIC_NEGATE_TOOLTIP": "入力が false の場合は、true を返します。入力が true の場合は false を返します。",
+ "LOGIC_BOOLEAN_TRUE": "true",
+ "LOGIC_BOOLEAN_FALSE": "false",
+ "LOGIC_BOOLEAN_TOOLTIP": "True または false を返します。",
+ "LOGIC_NULL_HELPURL": "https://en.wikipedia.org/wiki/Nullable_type",
+ "LOGIC_NULL": "null",
+ "LOGIC_NULL_TOOLTIP": "Null を返します。",
+ "LOGIC_TERNARY_HELPURL": "https://ja.wikipedia.org/wiki/%3F:",
+ "LOGIC_TERNARY_CONDITION": "テスト",
+ "LOGIC_TERNARY_IF_TRUE": "true の場合",
+ "LOGIC_TERNARY_IF_FALSE": "false の場合",
+ "LOGIC_TERNARY_TOOLTIP": "'テスト' の条件をチェックします。条件が true の場合、'true' の値を返します。それ以外の場合 'false' のを返します。",
+ "MATH_NUMBER_HELPURL": "https://ja.wikipedia.org/wiki/数",
+ "MATH_NUMBER_TOOLTIP": "数です。",
+ "MATH_ADDITION_SYMBOL": "+",
+ "MATH_SUBTRACTION_SYMBOL": "-",
+ "MATH_DIVISION_SYMBOL": "÷",
+ "MATH_MULTIPLICATION_SYMBOL": "×",
+ "MATH_POWER_SYMBOL": "^",
+ "MATH_TRIG_SIN": "sin",
+ "MATH_TRIG_COS": "cos",
+ "MATH_TRIG_TAN": "tan",
+ "MATH_TRIG_ASIN": "asin",
+ "MATH_TRIG_ACOS": "acos",
+ "MATH_TRIG_ATAN": "atan",
+ "MATH_ARITHMETIC_HELPURL": "https://ja.wikipedia.org/wiki/算術",
+ "MATH_ARITHMETIC_TOOLTIP_ADD": "2 つの数の合計を返します。",
+ "MATH_ARITHMETIC_TOOLTIP_MINUS": "2 つの数の差を返します。",
+ "MATH_ARITHMETIC_TOOLTIP_MULTIPLY": "2 つの数の積を返します。",
+ "MATH_ARITHMETIC_TOOLTIP_DIVIDE": "2 つの数の商を返します。",
+ "MATH_ARITHMETIC_TOOLTIP_POWER": "最初の数を2 番目の値で累乗した結果を返します。",
+ "MATH_SINGLE_HELPURL": "https://ja.wikipedia.org/wiki/平方根",
+ "MATH_SINGLE_OP_ROOT": "平方根",
+ "MATH_SINGLE_TOOLTIP_ROOT": "平方根を返す",
+ "MATH_SINGLE_OP_ABSOLUTE": "絶対値",
+ "MATH_SINGLE_TOOLTIP_ABS": "絶対値を返す",
+ "MATH_SINGLE_TOOLTIP_NEG": "負の数を返す",
+ "MATH_SINGLE_TOOLTIP_LN": "数値の自然対数をかえしてください",
+ "MATH_SINGLE_TOOLTIP_LOG10": "log 10 を返す。",
+ "MATH_SINGLE_TOOLTIP_EXP": "数値の e 粂を返す",
+ "MATH_SINGLE_TOOLTIP_POW10": "10の x 乗",
+ "MATH_TRIG_HELPURL": "https://ja.wikipedia.org/wiki/三角関数",
+ "MATH_TRIG_TOOLTIP_SIN": "番号のsineの次数を返す",
+ "MATH_TRIG_TOOLTIP_COS": "番号のcosineの次数を返す",
+ "MATH_TRIG_TOOLTIP_TAN": "番号のtangentの次数を返す",
+ "MATH_TRIG_TOOLTIP_ASIN": "番号のarcsine を返すます",
+ "MATH_TRIG_TOOLTIP_ACOS": "arccosine の値を返す",
+ "MATH_TRIG_TOOLTIP_ATAN": "番号のarctangent を返すます",
+ "MATH_CONSTANT_HELPURL": "https://ja.wikipedia.org/wiki/数学定数",
+ "MATH_CONSTANT_TOOLTIP": "いずれかの共通の定数のを返す: π (3.141…), e (2.718…), φ (1.618…), sqrt(2) (1.414…), sqrt(½) (0.707…), or ∞ (無限).",
+ "MATH_IS_EVEN": "わ偶数",
+ "MATH_IS_ODD": "奇数です。",
+ "MATH_IS_PRIME": "素数です",
+ "MATH_IS_WHOLE": "は整数",
+ "MATH_IS_POSITIVE": "正の値",
+ "MATH_IS_NEGATIVE": "負の値",
+ "MATH_IS_DIVISIBLE_BY": "割り切れる",
+ "MATH_IS_TOOLTIP": "数字が、偶数、奇数、素数、整数、正数、負数、またはそれが特定の数で割り切れる場合かどうかを確認してください。どの制限が一つでも本当でしたら true をかえしてください、そうでない場合わ falseを返してください。",
+ "MATH_CHANGE_HELPURL": "https://ja.wikipedia.org/wiki/加法",
+ "MATH_CHANGE_TITLE": "変更 %1 に %2",
+ "MATH_CHANGE_TOOLTIP": "'%1' をたします。",
+ "MATH_ROUND_HELPURL": "https://ja.wikipedia.org/wiki/端数処理",
+ "MATH_ROUND_TOOLTIP": "数値を切り上げるか切り捨てる",
+ "MATH_ROUND_OPERATOR_ROUND": "概数",
+ "MATH_ROUND_OPERATOR_ROUNDUP": "数値を切り上げ",
+ "MATH_ROUND_OPERATOR_ROUNDDOWN": "端数を切り捨てる",
+ "MATH_ONLIST_HELPURL": "",
+ "MATH_ONLIST_OPERATOR_SUM": "リストの合計",
+ "MATH_ONLIST_TOOLTIP_SUM": "全部リストの数をたして返す",
+ "MATH_ONLIST_OPERATOR_MIN": "リストの最小の数",
+ "MATH_ONLIST_TOOLTIP_MIN": "リストの最小数を返します。",
+ "MATH_ONLIST_OPERATOR_MAX": "リストの最大値",
+ "MATH_ONLIST_TOOLTIP_MAX": "リストの最大数を返します。",
+ "MATH_ONLIST_OPERATOR_AVERAGE": "リストの平均",
+ "MATH_ONLIST_TOOLTIP_AVERAGE": "リストの数値の平均 (算術平均) を返します。",
+ "MATH_ONLIST_OPERATOR_MEDIAN": "リストの中央値",
+ "MATH_ONLIST_TOOLTIP_MEDIAN": "リストの中央値の数を返します。",
+ "MATH_ONLIST_OPERATOR_MODE": "一覧モード",
+ "MATH_ONLIST_TOOLTIP_MODE": "リストで最も一般的な項目のリストを返します。",
+ "MATH_ONLIST_OPERATOR_STD_DEV": "リストの標準偏差",
+ "MATH_ONLIST_TOOLTIP_STD_DEV": "リウトの標準偏差をかえす",
+ "MATH_ONLIST_OPERATOR_RANDOM": "リストのランダム アイテム",
+ "MATH_ONLIST_TOOLTIP_RANDOM": "リストからランダムに要素を返します。",
+ "MATH_MODULO_HELPURL": "https://en.wikipedia.org/wiki/Modulo_operation",
+ "MATH_MODULO_TITLE": "残りの %1 ÷ %2",
+ "MATH_MODULO_TOOLTIP": "2つの数値を除算した余りを返します。",
+ "MATH_CONSTRAIN_TITLE": "制限%1下リミット%2上限リミット%3",
+ "MATH_CONSTRAIN_TOOLTIP": "値を、上限 x と下限 y のあいだに制限んする(上限と下限が、x と y とに同じ場合わ、上限の値は x, 下限の値はy)。",
+ "MATH_RANDOM_INT_HELPURL": "https://en.wikipedia.org/wiki/Random_number_generation",
+ "MATH_RANDOM_INT_TITLE": "%1 から %2 への無作為の整数",
+ "MATH_RANDOM_INT_TOOLTIP": "指定した下限の間、無作為なランダムな整数を返します。",
+ "MATH_RANDOM_FLOAT_HELPURL": "https://en.wikipedia.org/wiki/Random_number_generation",
+ "MATH_RANDOM_FLOAT_TITLE_RANDOM": "ランダムな分数",
+ "MATH_RANDOM_FLOAT_TOOLTIP": "ランダムな分数を返すー0.0 (包括) の間のと 1.0 (排他的な)。",
+ "TEXT_TEXT_HELPURL": "https://ja.wikipedia.org/wiki/文字列",
+ "TEXT_TEXT_TOOLTIP": "文字、単語、または行のテキスト。",
+ "TEXT_JOIN_TITLE_CREATEWITH": "テキストを作成します。",
+ "TEXT_JOIN_TOOLTIP": "任意の数の項目一部を一緒に接合してテキストの作成します。",
+ "TEXT_CREATE_JOIN_TITLE_JOIN": "結合",
+ "TEXT_CREATE_JOIN_TOOLTIP": "追加、削除、またはセクションを順序変更して、ブロックを再構成します。",
+ "TEXT_CREATE_JOIN_ITEM_TOOLTIP": "テキスト をアイテム追加します。",
+ "TEXT_APPEND_TO": "宛先",
+ "TEXT_APPEND_APPENDTEXT": "テキストを追加します。",
+ "TEXT_APPEND_TOOLTIP": "変数 '%1' にいくつかのテキストを追加します。",
+ "TEXT_LENGTH_TITLE": "%1 の長さ",
+ "TEXT_LENGTH_TOOLTIP": "指定されたテキストの文字 (スペースを含む) の数を返します。",
+ "TEXT_ISEMPTY_TITLE": "%1 が空",
+ "TEXT_ISEMPTY_TOOLTIP": "指定されたテキストが空の場合は、true を返します。",
+ "TEXT_INDEXOF_TOOLTIP": "最初のテキストの二番目のてきすとの、最初と最後の、出現したインデックスをかえします。テキストが見つからない場合は %1 を返します。",
+ "TEXT_INDEXOF_INPUT_INTEXT": "テキストで",
+ "TEXT_INDEXOF_OPERATOR_FIRST": "テキストの最初の出現箇所を検索します。",
+ "TEXT_INDEXOF_OPERATOR_LAST": "テキストの最後に見つかったを検索します。",
+ "TEXT_INDEXOF_TAIL": "",
+ "TEXT_CHARAT_INPUT_INTEXT": "テキストで",
+ "TEXT_CHARAT_FROM_START": "文字# を取得",
+ "TEXT_CHARAT_FROM_END": "一番最後の言葉、キャラクターを所得",
+ "TEXT_CHARAT_FIRST": "最初の文字を得る",
+ "TEXT_CHARAT_LAST": "最後の文字を得る",
+ "TEXT_CHARAT_RANDOM": "ランダムな文字を得る",
+ "TEXT_CHARAT_TAIL": "",
+ "TEXT_CHARAT_TOOLTIP": "指定された位置に文字を返します。",
+ "TEXT_GET_SUBSTRING_TOOLTIP": "テキストの指定部分を返します。",
+ "TEXT_GET_SUBSTRING_INPUT_IN_TEXT": "テキストで",
+ "TEXT_GET_SUBSTRING_START_FROM_START": "文字列からの部分文字列を取得 #",
+ "TEXT_GET_SUBSTRING_START_FROM_END": "部分文字列を取得する #端から得る",
+ "TEXT_GET_SUBSTRING_START_FIRST": "部分文字列を取得する。",
+ "TEXT_GET_SUBSTRING_END_FROM_START": "# の文字",
+ "TEXT_GET_SUBSTRING_END_FROM_END": "文字列の# 終わりからの#",
+ "TEXT_GET_SUBSTRING_END_LAST": "最後のの文字",
+ "TEXT_GET_SUBSTRING_TAIL": "",
+ "TEXT_CHANGECASE_TOOLTIP": "別のケースに、テキストのコピーを返します。",
+ "TEXT_CHANGECASE_OPERATOR_UPPERCASE": "大文字に変換する",
+ "TEXT_CHANGECASE_OPERATOR_LOWERCASE": "小文字に",
+ "TEXT_CHANGECASE_OPERATOR_TITLECASE": "タイトル ケースに",
+ "TEXT_TRIM_TOOLTIP": "スペースを 1 つまたは両方の端から削除したのち、テキストのコピーを返します。",
+ "TEXT_TRIM_OPERATOR_BOTH": "両端のスペースを取り除く",
+ "TEXT_TRIM_OPERATOR_LEFT": "左端のスペースを取り除く",
+ "TEXT_TRIM_OPERATOR_RIGHT": "右端のスペースを取り除く",
+ "TEXT_PRINT_TITLE": "%1 を印刷します。",
+ "TEXT_PRINT_TOOLTIP": "指定したテキスト、番号または他の値を印刷します。",
+ "TEXT_PROMPT_TYPE_TEXT": "メッセージをプロンプトしてにテキストを求める",
+ "TEXT_PROMPT_TYPE_NUMBER": "メッセージを送って番号の入力を求める",
+ "TEXT_PROMPT_TOOLTIP_NUMBER": "ユーザーにプロンプトして数字のインプットを求めます",
+ "TEXT_PROMPT_TOOLTIP_TEXT": "いくつかのテキストを、ユーザーに入力するようにプロンプト。",
+ "LISTS_CREATE_EMPTY_HELPURL": "https://github.com/google/blockly/wiki/Lists#create-empty-list",
+ "LISTS_CREATE_EMPTY_TITLE": "空のリストを作成します。",
+ "LISTS_CREATE_EMPTY_TOOLTIP": "長さゼロ、データ レコード空のリストを返します",
+ "LISTS_CREATE_WITH_TOOLTIP": "アイテム数かぎりないのリストを作成します。",
+ "LISTS_CREATE_WITH_INPUT_WITH": "これを使ってリストを作成します。",
+ "LISTS_CREATE_WITH_CONTAINER_TITLE_ADD": "リスト",
+ "LISTS_CREATE_WITH_CONTAINER_TOOLTIP": "追加、削除、またはセクションを順序変更して、ブロックを再構成します。",
+ "LISTS_CREATE_WITH_ITEM_TOOLTIP": "リストにアイテムを追加します。",
+ "LISTS_REPEAT_TOOLTIP": "指定された値をなんどか繰り返してリストを作ります。",
+ "LISTS_REPEAT_TITLE": "アイテム %1 と一緒にリストを作成し %2 回繰り",
+ "LISTS_LENGTH_TITLE": " %1の長さ",
+ "LISTS_LENGTH_TOOLTIP": "リストの長さを返します。",
+ "LISTS_ISEMPTY_TITLE": "%1 が空",
+ "LISTS_ISEMPTY_TOOLTIP": "リストが空の場合は、true を返します。",
+ "LISTS_INLIST": "リストで",
+ "LISTS_INDEX_OF_FIRST": "最初に見つかった項目を検索します。",
+ "LISTS_INDEX_OF_LAST": "最後に見つかったアイテムを見つける",
+ "LISTS_INDEX_OF_TOOLTIP": "リスト項目の最初/最後に出現するインデックス位置を返します。項目が見つからない場合は %1 を返します。",
+ "LISTS_GET_INDEX_GET": "取得",
+ "LISTS_GET_INDEX_GET_REMOVE": "取得と削除",
+ "LISTS_GET_INDEX_REMOVE": "削除",
+ "LISTS_GET_INDEX_FROM_START": "#",
+ "LISTS_GET_INDEX_FROM_END": "終しまいから #",
+ "LISTS_GET_INDEX_FIRST": "最初",
+ "LISTS_GET_INDEX_LAST": "最後",
+ "LISTS_GET_INDEX_RANDOM": "ランダム",
+ "LISTS_GET_INDEX_TAIL": "",
+ "LISTS_INDEX_FROM_START_TOOLTIP": "%1 は、最初の項目です。",
+ "LISTS_INDEX_FROM_END_TOOLTIP": "%1 は、最後の項目です。",
+ "LISTS_GET_INDEX_TOOLTIP_GET_FROM": "リスト内の指定位置にある項目を返します。",
+ "LISTS_GET_INDEX_TOOLTIP_GET_FIRST": "リストの最初の項目を返信します。",
+ "LISTS_GET_INDEX_TOOLTIP_GET_LAST": "リストの最後の項目を返します。",
+ "LISTS_GET_INDEX_TOOLTIP_GET_RANDOM": "ランダム アイテム リストを返します。",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM": "リスト内の指定位置にある項目を削除し、返します。",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST": "リスト内の最初の項目を削除したあと返します。",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST": "リスト内の最後の項目を削除したあと返します。",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM": "リストのランダムなアイテムを削除し、返します。",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM": "リスト内の指定位置にある項目を返します。",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST": "リスト内の最初の項目を削除します。",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST": "リスト内の最後の項目を削除します。",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM": "リスト内にある任意のアイテムを削除します。",
+ "LISTS_SET_INDEX_SET": "セット",
+ "LISTS_SET_INDEX_INSERT": "挿入します。",
+ "LISTS_SET_INDEX_INPUT_TO": "として",
+ "LISTS_SET_INDEX_TOOLTIP_SET_FROM": "リスト内の指定された位置に項目を設定します。",
+ "LISTS_SET_INDEX_TOOLTIP_SET_FIRST": "リスト内に最初の項目を設定します。",
+ "LISTS_SET_INDEX_TOOLTIP_SET_LAST": "リスト内の最後の項目を設定します。",
+ "LISTS_SET_INDEX_TOOLTIP_SET_RANDOM": "リスト内にランダムなアイテムを設定します。",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_FROM": "リスト内の指定位置に項目を挿入します。",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST": "リストの先頭に項目を挿入します。",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_LAST": "リストの末尾に項目を追加します。",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM": "リストに項目をランダムに挿入します。",
+ "LISTS_GET_SUBLIST_START_FROM_START": "# からサブディレクトリのリストを取得します。",
+ "LISTS_GET_SUBLIST_START_FROM_END": "端から #のサブリストを取得します。",
+ "LISTS_GET_SUBLIST_START_FIRST": "最初からサブリストを取得する。",
+ "LISTS_GET_SUBLIST_END_FROM_START": "#へ",
+ "LISTS_GET_SUBLIST_END_FROM_END": "最後から#へ",
+ "LISTS_GET_SUBLIST_END_LAST": "最後へ",
+ "LISTS_GET_SUBLIST_TAIL": "",
+ "LISTS_GET_SUBLIST_TOOLTIP": "リストの指定された部分のコピーを作成してくださ。",
+ "LISTS_SORT_ORDER_ASCENDING": "昇順",
+ "LISTS_SORT_ORDER_DESCENDING": "降順",
+ "LISTS_SPLIT_LIST_FROM_TEXT": "テキストからリストを作る",
+ "LISTS_SPLIT_TEXT_FROM_LIST": "リストからテキストを作る",
+ "ORDINAL_NUMBER_SUFFIX": "",
+ "VARIABLES_GET_TOOLTIP": "この変数の値を返します。",
+ "VARIABLES_GET_CREATE_SET": "'セット%1を作成します。",
+ "VARIABLES_SET": "セット %1 宛先 %2",
+ "VARIABLES_SET_TOOLTIP": "この入力を変数と等しくなるように設定します。",
+ "VARIABLES_SET_CREATE_GET": "'%1 を取得' を作成します。",
+ "PROCEDURES_DEFNORETURN_HELPURL": "https://ja.wikipedia.org/wiki/サブルーチン",
+ "PROCEDURES_DEFNORETURN_TITLE": "宛先",
+ "PROCEDURES_DEFNORETURN_PROCEDURE": "何かしてください",
+ "PROCEDURES_BEFORE_PARAMS": "で。",
+ "PROCEDURES_CALL_BEFORE_PARAMS": "で。",
+ "PROCEDURES_DEFNORETURN_DO": "",
+ "PROCEDURES_DEFNORETURN_TOOLTIP": "出力なしで関数を作成します。",
+ "PROCEDURES_DEFRETURN_HELPURL": "https://ja.wikipedia.org/wiki/サブルーチン",
+ "PROCEDURES_DEFRETURN_RETURN": "返す",
+ "PROCEDURES_DEFRETURN_TOOLTIP": "出力を持つ関数を作成します。",
+ "PROCEDURES_DEF_DUPLICATE_WARNING": "警告: この関数は、重複するパラメーターがあります。",
+ "PROCEDURES_CALLNORETURN_HELPURL": "https://ja.wikipedia.org/wiki/サブルーチン",
+ "PROCEDURES_CALLNORETURN_TOOLTIP": "ユーザー定義関数 '%1' を実行します。",
+ "PROCEDURES_CALLRETURN_HELPURL": "https://ja.wikipedia.org/wiki/サブルーチン",
+ "PROCEDURES_CALLRETURN_TOOLTIP": "ユーザー定義関数 '%1' を実行し、その出力を使用します。",
+ "PROCEDURES_MUTATORCONTAINER_TITLE": "入力",
+ "PROCEDURES_MUTATORARG_TITLE": "入力名:",
+ "PROCEDURES_HIGHLIGHT_DEF": "関数の内容を強調表示します。",
+ "PROCEDURES_CREATE_DO": "%1をつくる",
+ "PROCEDURES_IFRETURN_TOOLTIP": "1番目値が true の場合、2 番目の値を返します。",
+ "PROCEDURES_IFRETURN_WARNING": "警告: このブロックは、関数定義内でのみ使用できます。"
+}
diff --git a/blockly/msg/json/ko.json b/blockly/msg/json/ko.json
new file mode 100644
index 0000000..a393394
--- /dev/null
+++ b/blockly/msg/json/ko.json
@@ -0,0 +1,376 @@
+{
+ "@metadata": {
+ "authors": [
+ "Hym411",
+ "아라",
+ "Priviet",
+ "Revi",
+ "SeoJeongHo",
+ "Alex00728",
+ "Kurousagi",
+ "Lemondoge",
+ "Ykhwong"
+ ]
+ },
+ "VARIABLES_DEFAULT_NAME": "항목",
+ "TODAY": "오늘",
+ "DUPLICATE_BLOCK": "중복됨",
+ "ADD_COMMENT": "댓글 추가",
+ "REMOVE_COMMENT": "내용 제거",
+ "EXTERNAL_INPUTS": "외부 입력",
+ "INLINE_INPUTS": "내부 입력",
+ "DELETE_BLOCK": "블록 삭제",
+ "DELETE_X_BLOCKS": "블록 %1개 삭제",
+ "DELETE_ALL_BLOCKS": "모든 블록 %1개를 삭제하겠습니까?",
+ "CLEAN_UP": "블록 정리",
+ "COLLAPSE_BLOCK": "블록 축소",
+ "COLLAPSE_ALL": "블록 축소",
+ "EXPAND_BLOCK": "블록 확장",
+ "EXPAND_ALL": "블록 확장",
+ "DISABLE_BLOCK": "블록 비활성화",
+ "ENABLE_BLOCK": "블록 활성화",
+ "HELP": "도움말",
+ "UNDO": "실행 취소",
+ "REDO": "다시 실행",
+ "CHANGE_VALUE_TITLE": "값 바꾸기:",
+ "RENAME_VARIABLE": "변수 이름 바꾸기:",
+ "RENAME_VARIABLE_TITLE": "'%1' 변수 이름을 바꾸기:",
+ "NEW_VARIABLE": "변수 만들기...",
+ "NEW_VARIABLE_TITLE": "새 변수 이름:",
+ "VARIABLE_ALREADY_EXISTS": "'%1' 변수는 이미 존재합니다.",
+ "DELETE_VARIABLE": "'%1' 변수를 삭제합니다",
+ "COLOUR_PICKER_HELPURL": "https://ko.wikipedia.org/wiki/색",
+ "COLOUR_PICKER_TOOLTIP": "팔레트에서 색을 고릅니다",
+ "COLOUR_RANDOM_TITLE": "임의 색상",
+ "COLOUR_RANDOM_TOOLTIP": "무작위로 색을 고릅니다.",
+ "COLOUR_RGB_HELPURL": "http://www.december.com/html/spec/colorper.html",
+ "COLOUR_RGB_TITLE": "색",
+ "COLOUR_RGB_RED": "빨강",
+ "COLOUR_RGB_GREEN": "초록",
+ "COLOUR_RGB_BLUE": "파랑",
+ "COLOUR_RGB_TOOLTIP": "빨강,파랑,초록의 값을 이용하여 색을 만드십시오. 모든 값은 0과 100 사이에 있어야 합니다.",
+ "COLOUR_BLEND_HELPURL": "http://meyerweb.com/eric/tools/color-blend/",
+ "COLOUR_BLEND_TITLE": "혼합",
+ "COLOUR_BLEND_COLOUR1": "색 1",
+ "COLOUR_BLEND_COLOUR2": "색 2",
+ "COLOUR_BLEND_RATIO": "비율",
+ "COLOUR_BLEND_TOOLTIP": "두 색을 주어진 비율로 혼합 (0.0 - 1.0)",
+ "CONTROLS_REPEAT_HELPURL": "https://ko.wikipedia.org/wiki/For_루프",
+ "CONTROLS_REPEAT_TITLE": "%1회 반복",
+ "CONTROLS_REPEAT_INPUT_DO": "하기",
+ "CONTROLS_REPEAT_TOOLTIP": "여러 번 반복해 명령들을 실행합니다.",
+ "CONTROLS_WHILEUNTIL_HELPURL": "https://ko.wikipedia.org/wiki/While_%EB%A3%A8%ED%94%84",
+ "CONTROLS_WHILEUNTIL_OPERATOR_WHILE": "동안 반복",
+ "CONTROLS_WHILEUNTIL_OPERATOR_UNTIL": "다음까지 반복",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_WHILE": "값이 참일 때, 몇 가지 선언을 합니다.",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL": "값이 거짓일 때, 몇 가지 선언을 합니다.",
+ "CONTROLS_FOR_HELPURL": "https://ko.wikipedia.org/wiki/For_%EB%A3%A8%ED%94%84",
+ "CONTROLS_FOR_TOOLTIP": "변수 \"%1\"은 지정된 간격으로 시작 수에서 끝 수까지를 세어 지정된 블록을 수행해야 합니다.",
+ "CONTROLS_FOR_TITLE": "으로 계산 %1 %2에서 %4을 이용하여 %3로",
+ "CONTROLS_FOREACH_HELPURL": "https://ko.wikipedia.org/wiki/For_%EB%A3%A8%ED%94%84#.EC.9E.84.EC.9D.98.EC.9D.98_.EC.A7.91.ED.95.A9",
+ "CONTROLS_FOREACH_TITLE": "각 항목에 대해 %1 목록으로 %2",
+ "CONTROLS_FOREACH_TOOLTIP": "리스트 안에 들어있는 각 아이템들을, 순서대로 변수 '%1' 에 한 번씩 저장시키고, 그 때 마다 명령을 실행합니다.",
+ "CONTROLS_FLOW_STATEMENTS_HELPURL": "https://ko.wikipedia.org/wiki/%EC%A0%9C%EC%96%B4_%ED%9D%90%EB%A6%84",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK": "반복 중단",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE": "다음 반복",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK": "현재 반복 실행 블럭을 빠져나갑니다.",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE": "나머지 반복 부분을 더 이상 실행하지 않고, 다음 반복을 수행합니다.",
+ "CONTROLS_FLOW_STATEMENTS_WARNING": "경고 : 이 블록은 반복 실행 블럭 안에서만 사용됩니다.",
+ "CONTROLS_IF_HELPURL": "https://ko.wikipedia.org/wiki/%EC%A1%B0%EA%B1%B4%EB%AC%B8",
+ "CONTROLS_IF_TOOLTIP_1": "조건식의 계산 결과가 참이면, 명령을 실행합니다.",
+ "CONTROLS_IF_TOOLTIP_2": "조건식의 계산 결과가 참이면, 첫 번째 블럭의 명령을 실행하고, 그렇지 않으면 두 번째 블럭의 명령을 실행합니다.",
+ "CONTROLS_IF_TOOLTIP_3": "첫 번째 조건식의 계산 결과가 참이면, 첫 번째 블럭의 명령을 실행하고, 두 번째 조건식의 계산 결과가 참이면, 두 번째 블럭의 명령을 실행합니다.",
+ "CONTROLS_IF_TOOLTIP_4": "첫 번째 조건식의 계산 결과가 참이면, 첫 번째 블럭의 명령을 실행하고, 두 번째 조건식의 계산 결과가 참이면, 두 번째 블럭의 명령을 실행하고, ... , 어떤 조건식의 계산 결과도 참이 아니면, 마지막 블럭의 명령을 실행합니다.",
+ "CONTROLS_IF_MSG_IF": "만약",
+ "CONTROLS_IF_MSG_ELSEIF": "다른 경우",
+ "CONTROLS_IF_MSG_ELSE": "아니라면",
+ "CONTROLS_IF_IF_TOOLTIP": "섹션을 추가, 제거하거나 순서를 변경하여 이 if 블럭을 재구성합니다.",
+ "CONTROLS_IF_ELSEIF_TOOLTIP": "\"만약\" 블럭에 조건 검사를 추가합니다.",
+ "CONTROLS_IF_ELSE_TOOLTIP": "\"만약\" 블럭의 마지막에, 모든 검사 결과가 거짓인 경우 실행할 부분을 추가합니다.",
+ "LOGIC_COMPARE_HELPURL": "https://en.wikipedia.org/wiki/Inequality_(mathematics)",
+ "LOGIC_COMPARE_TOOLTIP_EQ": "두 값이 같으면, 참(true) 값을 돌려줍니다.",
+ "LOGIC_COMPARE_TOOLTIP_NEQ": "두 값이 서로 다르면, 참(true) 값을 돌려줍니다.",
+ "LOGIC_COMPARE_TOOLTIP_LT": "첫 번째 값이 두 번째 값보다 작으면, 참(true) 값을 돌려줍니다.",
+ "LOGIC_COMPARE_TOOLTIP_LTE": "첫 번째 값이 두 번째 값보다 작거나 같으면, 참(true) 값을 돌려줍니다.",
+ "LOGIC_COMPARE_TOOLTIP_GT": "첫 번째 값이 두 번째 값보다 크면, 참(true) 값을 돌려줍니다.",
+ "LOGIC_COMPARE_TOOLTIP_GTE": "첫 번째 값이 두 번째 값보다 크거나 같으면, 참(true) 값을 돌려줍니다.",
+ "LOGIC_OPERATION_HELPURL": "https://ko.wikipedia.org/wiki/%EB%B6%88_%EB%85%BC%EB%A6%AC",
+ "LOGIC_OPERATION_TOOLTIP_AND": "두 값이 모두 참(true) 값이면, 참 값을 돌려줍니다.",
+ "LOGIC_OPERATION_AND": "그리고",
+ "LOGIC_OPERATION_TOOLTIP_OR": "적어도 하나의 값이 참일 경우 참을 반환합니다.",
+ "LOGIC_OPERATION_OR": "또는",
+ "LOGIC_NEGATE_HELPURL": "https://ko.wikipedia.org/wiki/%EB%B6%80%EC%A0%95",
+ "LOGIC_NEGATE_TITLE": "%1가 아닙니다",
+ "LOGIC_NEGATE_TOOLTIP": "입력값이 거짓이라면 참을 반환합니다. 참이라면 거짓을 반환합니다.",
+ "LOGIC_BOOLEAN_HELPURL": "https://ko.wikipedia.org/wiki/%EC%A7%84%EB%A6%BF%EA%B0%92",
+ "LOGIC_BOOLEAN_TRUE": "참",
+ "LOGIC_BOOLEAN_FALSE": "거짓",
+ "LOGIC_BOOLEAN_TOOLTIP": "참 혹은 거짓 모두 반환합니다.",
+ "LOGIC_NULL_HELPURL": "https://en.wikipedia.org/wiki/Nullable_type",
+ "LOGIC_NULL": "빈 값",
+ "LOGIC_NULL_TOOLTIP": "빈 값을 반환합니다.",
+ "LOGIC_TERNARY_HELPURL": "https://en.wikipedia.org/wiki/%3F:",
+ "LOGIC_TERNARY_CONDITION": "테스트",
+ "LOGIC_TERNARY_IF_TRUE": "만약 참이라면",
+ "LOGIC_TERNARY_IF_FALSE": "만약 거짓이라면",
+ "LOGIC_TERNARY_TOOLTIP": "'test'의 조건을 검사합니다. 조건이 참이면 'if true' 값을 반환합니다. 거짓이면 'if false' 값을 반환합니다.",
+ "MATH_NUMBER_HELPURL": "https://en.wikipedia.org/wiki/Number",
+ "MATH_NUMBER_TOOLTIP": "수",
+ "MATH_ADDITION_SYMBOL": "+",
+ "MATH_SUBTRACTION_SYMBOL": "-",
+ "MATH_DIVISION_SYMBOL": "÷",
+ "MATH_MULTIPLICATION_SYMBOL": "x",
+ "MATH_POWER_SYMBOL": "^",
+ "MATH_TRIG_SIN": "sin",
+ "MATH_TRIG_COS": "cos",
+ "MATH_TRIG_TAN": "tan",
+ "MATH_TRIG_ASIN": "asin",
+ "MATH_TRIG_ACOS": "acos",
+ "MATH_TRIG_ATAN": "atan",
+ "MATH_ARITHMETIC_HELPURL": "https://en.wikipedia.org/wiki/Arithmetic",
+ "MATH_ARITHMETIC_TOOLTIP_ADD": "두 수의 합을 반환합니다.",
+ "MATH_ARITHMETIC_TOOLTIP_MINUS": "두 수간의 차이를 반환합니다.",
+ "MATH_ARITHMETIC_TOOLTIP_MULTIPLY": "두 수의 곱을 반환합니다.",
+ "MATH_ARITHMETIC_TOOLTIP_DIVIDE": "두 수의 나눈 결과를 반환합니다.",
+ "MATH_ARITHMETIC_TOOLTIP_POWER": "첫 번째 수를 두 번째 수 만큼, 거듭제곱 한 결과값을 돌려줍니다.",
+ "MATH_SINGLE_HELPURL": "https://en.wikipedia.org/wiki/Square_root",
+ "MATH_SINGLE_OP_ROOT": "제곱근",
+ "MATH_SINGLE_TOOLTIP_ROOT": "숫자의 제곱근을 반환합니다.",
+ "MATH_SINGLE_OP_ABSOLUTE": "절대값",
+ "MATH_SINGLE_TOOLTIP_ABS": "어떤 수의 절대값(absolute)을 계산한 결과를, 정수값으로 돌려줍니다.",
+ "MATH_SINGLE_TOOLTIP_NEG": "음(-)/양(+), 부호를 반대로 하여 값을 돌려줍니다.",
+ "MATH_SINGLE_TOOLTIP_LN": "어떤 수의, 자연로그(natural logarithm) 값을 돌려줍니다.(밑 e, 예시 log e x)",
+ "MATH_SINGLE_TOOLTIP_LOG10": "어떤 수의, 기본로그(logarithm) 값을 돌려줍니다.(밑 10, 예시 log 10 x)",
+ "MATH_SINGLE_TOOLTIP_EXP": "e의 거듭제곱 값을 반환합니다.",
+ "MATH_SINGLE_TOOLTIP_POW10": "10의 거듭제곱 값을 반환합니다.",
+ "MATH_TRIG_HELPURL": "https://en.wikipedia.org/wiki/Trigonometric_functions",
+ "MATH_TRIG_TOOLTIP_SIN": "각도의 사인을 반환합니다. (라디안 아님)",
+ "MATH_TRIG_TOOLTIP_COS": "각도의 코사인을 반환합니다. (라디안 아님)",
+ "MATH_TRIG_TOOLTIP_TAN": "각도의 탄젠트를 반환합니다. (라디안 아님)",
+ "MATH_TRIG_TOOLTIP_ASIN": "어떤 수에 대한, asin(arcsine) 값을 돌려줍니다.",
+ "MATH_TRIG_TOOLTIP_ACOS": "어떤 수에 대한, acos(arccosine) 값을 돌려줍니다.",
+ "MATH_TRIG_TOOLTIP_ATAN": "어떤 수에 대한, atan(arctangent) 값을 돌려줍니다.",
+ "MATH_CONSTANT_HELPURL": "https://en.wikipedia.org/wiki/Mathematical_constant",
+ "MATH_CONSTANT_TOOLTIP": "일반적인 상수 값들 중 하나를 돌려줍니다. : π (3.141…), e (2.718…), φ (1.618…), sqrt(2) (1.414…), sqrt(½) (0.707…), or ∞ (infinity).",
+ "MATH_IS_EVEN": "가 짝수(even) 이면",
+ "MATH_IS_ODD": "가 홀수(odd) 이면",
+ "MATH_IS_PRIME": "가 소수(prime) 이면",
+ "MATH_IS_WHOLE": "가 정수이면",
+ "MATH_IS_POSITIVE": "가 양(+)수 이면",
+ "MATH_IS_NEGATIVE": "가 음(-)수 이면",
+ "MATH_IS_DIVISIBLE_BY": "가 다음 수로 나누어 떨어지면 :",
+ "MATH_IS_TOOLTIP": "어떤 수가 짝 수, 홀 수, 소 수, 정 수, 양 수, 음 수, 나누어 떨어지는 수 인지 검사해 결과값을 돌려줍니다. 참(true) 또는 거짓(false) 값을 돌려줌.",
+ "MATH_CHANGE_HELPURL": "https://en.wikipedia.org/wiki/Programming_idiom#Incrementing_a_counter",
+ "MATH_CHANGE_TITLE": "바꾸기 %1 만큼 %2",
+ "MATH_CHANGE_TOOLTIP": "변수 '%1' 에 저장되어있는 값에, 어떤 수를 더해, 변수에 다시 저장합니다.",
+ "MATH_ROUND_HELPURL": "https://en.wikipedia.org/wiki/Rounding",
+ "MATH_ROUND_TOOLTIP": "어떤 수를 반올림/올림/버림한 결과를, 정수값으로 돌려줍니다.",
+ "MATH_ROUND_OPERATOR_ROUND": "반올림",
+ "MATH_ROUND_OPERATOR_ROUNDUP": "올림",
+ "MATH_ROUND_OPERATOR_ROUNDDOWN": "버림",
+ "MATH_ONLIST_HELPURL": "",
+ "MATH_ONLIST_OPERATOR_SUM": "합",
+ "MATH_ONLIST_TOOLTIP_SUM": "리스트에 들어있는 수(값)들을, 모두 합(sum) 한, 총합(sum)을 돌려줍니다.",
+ "MATH_ONLIST_OPERATOR_MIN": "최소값",
+ "MATH_ONLIST_TOOLTIP_MIN": "리스트에 들어있는 수(값) 들 중, 가장 작은(min) 수(값)를 돌려줍니다.",
+ "MATH_ONLIST_OPERATOR_MAX": "최대값",
+ "MATH_ONLIST_TOOLTIP_MAX": "리스트에 들어있는 수(값) 들 중, 가장 큰(max) 수(값)를 돌려줍니다.",
+ "MATH_ONLIST_OPERATOR_AVERAGE": "평균값",
+ "MATH_ONLIST_TOOLTIP_AVERAGE": "리스트에 들어있는 수(값)들에 대해, 산술 평균(arithmetic mean) 한 값을 돌려줍니다.",
+ "MATH_ONLIST_OPERATOR_MEDIAN": "중간값",
+ "MATH_ONLIST_TOOLTIP_MEDIAN": "리스트에 들어있는 수(값) 들 중, 중간(median) 수(값)를 돌려줍니다.",
+ "MATH_ONLIST_OPERATOR_MODE": "가장 여러 개 있는 값",
+ "MATH_ONLIST_TOOLTIP_MODE": "리스트에 들어있는 아이템들 중에서, 가장 여러 번 들어있는 아이템들을 리스트로 만들어 돌려줍니다. (최빈값, modes)",
+ "MATH_ONLIST_OPERATOR_STD_DEV": "표준 편차",
+ "MATH_ONLIST_TOOLTIP_STD_DEV": "이 리스트의 표준 편차를 반환합니다.",
+ "MATH_ONLIST_OPERATOR_RANDOM": "목록의 임의 항목",
+ "MATH_ONLIST_TOOLTIP_RANDOM": "목록에서 임의의 아이템을 돌려줍니다.",
+ "MATH_MODULO_HELPURL": "https://en.wikipedia.org/wiki/Modulo_operation",
+ "MATH_MODULO_TITLE": "%1 ÷ %2의 나머지",
+ "MATH_MODULO_TOOLTIP": "첫 번째 수를 두 번째 수로 나눈, 나머지 값을 돌려줍니다.",
+ "MATH_CONSTRAIN_HELPURL": "https://ko.wikipedia.org/wiki/%ED%81%B4%EB%9E%A8%ED%95%91_(%EA%B7%B8%EB%9E%98%ED%94%BD)",
+ "MATH_CONSTRAIN_TITLE": "%1의 값을, 최소 %2 최대 %3으로 조정",
+ "MATH_CONSTRAIN_TOOLTIP": "어떤 수를, 특정 범위의 값이 되도록 강제로 조정합니다.",
+ "MATH_RANDOM_INT_HELPURL": "https://en.wikipedia.org/wiki/Random_number_generation",
+ "MATH_RANDOM_INT_TITLE": "랜덤정수(%1<= n <=%2)",
+ "MATH_RANDOM_INT_TOOLTIP": "두 주어진 제한된 범위 사이의 임의 정수값을 돌려줍니다.",
+ "MATH_RANDOM_FLOAT_HELPURL": "https://en.wikipedia.org/wiki/Random_number_generation",
+ "MATH_RANDOM_FLOAT_TITLE_RANDOM": "임의 분수",
+ "MATH_RANDOM_FLOAT_TOOLTIP": "0.0 (포함)과 1.0 (배타적) 사이의 임의 분수 값을 돌려줍니다.",
+ "TEXT_TEXT_HELPURL": "https://en.wikipedia.org/wiki/String_(computer_science)",
+ "TEXT_TEXT_TOOLTIP": "문자, 단어, 문장.",
+ "TEXT_JOIN_HELPURL": "https://github.com/google/blockly/wiki/Text#text-creation",
+ "TEXT_JOIN_TITLE_CREATEWITH": "텍스트 만들기",
+ "TEXT_JOIN_TOOLTIP": "여러 개의 아이템들을 연결해(묶어), 새로운 문장을 만듭니다.",
+ "TEXT_CREATE_JOIN_TITLE_JOIN": "가입",
+ "TEXT_CREATE_JOIN_TOOLTIP": "섹션을 추가, 제거하거나 순서를 변경하여 이 텍스트 블럭을 재구성합니다.",
+ "TEXT_CREATE_JOIN_ITEM_TOOLTIP": "텍스트에 항목을 추가합니다.",
+ "TEXT_APPEND_HELPURL": "https://github.com/google/blockly/wiki/Text#text-modification",
+ "TEXT_APPEND_TO": "다음",
+ "TEXT_APPEND_APPENDTEXT": "내용 덧붙이기",
+ "TEXT_APPEND_TOOLTIP": "'%1' 변수의 끝에 일부 텍스트를 덧붙입니다.",
+ "TEXT_LENGTH_HELPURL": "https://github.com/google/blockly/wiki/Text#text-modification",
+ "TEXT_LENGTH_TITLE": "다음 문장의 문자 개수 %1",
+ "TEXT_LENGTH_TOOLTIP": "입력된 문장의, 문자 개수를 돌려줍니다.(공백문자 포함)",
+ "TEXT_ISEMPTY_HELPURL": "https://github.com/google/blockly/wiki/Text#checking-for-empty-text",
+ "TEXT_ISEMPTY_TITLE": "%1이 비어 있습니다",
+ "TEXT_ISEMPTY_TOOLTIP": "입력된 문장이, 빈 문장(\"\")이면 참(true) 값을 돌려줍니다.",
+ "TEXT_INDEXOF_HELPURL": "https://github.com/google/blockly/wiki/Text#finding-text",
+ "TEXT_INDEXOF_TOOLTIP": "두 번째 텍스트에서 첫 번째 텍스트가 처음 또는 마지막으로 발생한 색인 위치를 반환합니다. 텍스트가 없으면 %1을 반환합니다.",
+ "TEXT_INDEXOF_INPUT_INTEXT": "문장",
+ "TEXT_INDEXOF_OPERATOR_FIRST": "에서 다음 문장이 처음으로 나타난 위치 찾기 :",
+ "TEXT_INDEXOF_OPERATOR_LAST": "에서 다음 문장이 마지막으로 나타난 위치 찾기 :",
+ "TEXT_INDEXOF_TAIL": "",
+ "TEXT_CHARAT_HELPURL": "https://github.com/google/blockly/wiki/Text#extracting-text",
+ "TEXT_CHARAT_INPUT_INTEXT": "문장",
+ "TEXT_CHARAT_FROM_START": "에서, 앞에서부터 # 번째 위치의 문자 얻기",
+ "TEXT_CHARAT_FROM_END": "에서, 마지막부터 # 번째 위치의 문자 얻기",
+ "TEXT_CHARAT_FIRST": "에서, 첫 번째 문자 얻기",
+ "TEXT_CHARAT_LAST": "에서, 마지막 문자 얻기",
+ "TEXT_CHARAT_RANDOM": "에서, 랜덤하게 한 문자 얻기",
+ "TEXT_CHARAT_TAIL": "",
+ "TEXT_CHARAT_TOOLTIP": "특정 번째 위치에서, 문자를 얻어내 돌려줍니다.",
+ "TEXT_GET_SUBSTRING_TOOLTIP": "문장 중 일부를 얻어내 돌려줍니다.",
+ "TEXT_GET_SUBSTRING_HELPURL": "https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text",
+ "TEXT_GET_SUBSTRING_INPUT_IN_TEXT": "문장",
+ "TEXT_GET_SUBSTRING_START_FROM_START": "에서, 처음부터 # 번째 문자부터 얻어냄",
+ "TEXT_GET_SUBSTRING_START_FROM_END": "에서, 마지막에서 # 번째부터 얻어냄",
+ "TEXT_GET_SUBSTRING_START_FIRST": "에서, 처음부터 얻어냄",
+ "TEXT_GET_SUBSTRING_END_FROM_START": "# 번째 문자까지",
+ "TEXT_GET_SUBSTRING_END_FROM_END": "끝에서부터 # 번째 문자까지",
+ "TEXT_GET_SUBSTRING_END_LAST": "마지막 문자까지",
+ "TEXT_GET_SUBSTRING_TAIL": "",
+ "TEXT_CHANGECASE_HELPURL": "https://github.com/google/blockly/wiki/Text#adjusting-text-case",
+ "TEXT_CHANGECASE_TOOLTIP": "영문 대소문자 형태를 변경해 돌려줍니다.",
+ "TEXT_CHANGECASE_OPERATOR_UPPERCASE": "대문자로",
+ "TEXT_CHANGECASE_OPERATOR_LOWERCASE": "소문자로",
+ "TEXT_CHANGECASE_OPERATOR_TITLECASE": "첫 문자만 대문자로",
+ "TEXT_TRIM_HELPURL": "https://github.com/google/blockly/wiki/Text#trimming-removing-spaces",
+ "TEXT_TRIM_TOOLTIP": "문장의 왼쪽/오른쪽/양쪽에서 스페이스 문자를 제거해 돌려줍니다.",
+ "TEXT_TRIM_OPERATOR_BOTH": "양쪽의 공백 문자 제거",
+ "TEXT_TRIM_OPERATOR_LEFT": "왼쪽의 공백 문자 제거",
+ "TEXT_TRIM_OPERATOR_RIGHT": "오른쪽의 공백 문자 제거",
+ "TEXT_PRINT_HELPURL": "https://github.com/google/blockly/wiki/Text#printing-text",
+ "TEXT_PRINT_TITLE": "다음 내용 출력 %1",
+ "TEXT_PRINT_TOOLTIP": "원하는 문장, 수, 값 등을 출력합니다.",
+ "TEXT_PROMPT_HELPURL": "https://github.com/google/blockly/wiki/Text#getting-input-from-the-user",
+ "TEXT_PROMPT_TYPE_TEXT": "메시지를 활용해 문장 입력",
+ "TEXT_PROMPT_TYPE_NUMBER": "메시지를 활용해 수 입력",
+ "TEXT_PROMPT_TOOLTIP_NUMBER": "수에 대해 사용자의 입력을 받습니다.",
+ "TEXT_PROMPT_TOOLTIP_TEXT": "문장에 대해 사용자의 입력을 받습니다.",
+ "LISTS_CREATE_EMPTY_HELPURL": "https://github.com/google/blockly/wiki/Lists#create-empty-list",
+ "LISTS_CREATE_EMPTY_TITLE": "빈 리스트 생성",
+ "LISTS_CREATE_EMPTY_TOOLTIP": "데이터 레코드가 없는, 길이가 0인 목록을 반환합니다.",
+ "LISTS_CREATE_WITH_HELPURL": "https://github.com/google/blockly/wiki/Lists#create-list-with",
+ "LISTS_CREATE_WITH_TOOLTIP": "원하는 수의 항목들로 목록을 생성합니다.",
+ "LISTS_CREATE_WITH_INPUT_WITH": "리스트 만들기",
+ "LISTS_CREATE_WITH_CONTAINER_TITLE_ADD": "리스트",
+ "LISTS_CREATE_WITH_CONTAINER_TOOLTIP": "섹션을 추가, 제거하거나 순서를 변경하여 이 리스트 블럭을 재구성합니다.",
+ "LISTS_CREATE_WITH_ITEM_TOOLTIP": "아이템을 리스트에 추가합니다.",
+ "LISTS_REPEAT_HELPURL": "https://github.com/google/blockly/wiki/Lists#create-list-with",
+ "LISTS_REPEAT_TOOLTIP": "원하는 값을, 원하는 갯수 만큼 넣어, 목록을 생성합니다.",
+ "LISTS_REPEAT_TITLE": "%1을 %2번 넣어, 리스트 생성",
+ "LISTS_LENGTH_HELPURL": "https://github.com/google/blockly/wiki/Lists#length-of",
+ "LISTS_LENGTH_TITLE": "%1의 길이",
+ "LISTS_LENGTH_TOOLTIP": "목록의 길이를 반환합니다.",
+ "LISTS_ISEMPTY_HELPURL": "https://github.com/google/blockly/wiki/Lists#is-empty",
+ "LISTS_ISEMPTY_TITLE": "%1이 비어 있습니다",
+ "LISTS_ISEMPTY_TOOLTIP": "목록이 비었을 때 참을 반환합니다.",
+ "LISTS_INLIST": "리스트",
+ "LISTS_INDEX_OF_HELPURL": "https://github.com/google/blockly/wiki/Lists#getting-items-from-a-list",
+ "LISTS_INDEX_OF_FIRST": "처음으로 나타난 위치",
+ "LISTS_INDEX_OF_LAST": "마지막으로 나타난 위치",
+ "LISTS_INDEX_OF_TOOLTIP": "목록에서 항목이 처음 또는 마지막으로 발생한 색인 위치를 반환합니다. 항목이 없으면 %1을 반환합니다.",
+ "LISTS_GET_INDEX_GET": "가져오기",
+ "LISTS_GET_INDEX_GET_REMOVE": "잘라 내기",
+ "LISTS_GET_INDEX_REMOVE": "삭제",
+ "LISTS_GET_INDEX_FROM_START": "#",
+ "LISTS_GET_INDEX_FROM_END": "마지막 번째 위치부터, # 번째",
+ "LISTS_GET_INDEX_FIRST": "첫 번째",
+ "LISTS_GET_INDEX_LAST": "마지막",
+ "LISTS_GET_INDEX_RANDOM": "임의로",
+ "LISTS_GET_INDEX_TAIL": "",
+ "LISTS_INDEX_FROM_START_TOOLTIP": "%1은 첫 번째 항목입니다.",
+ "LISTS_INDEX_FROM_END_TOOLTIP": "%1은(는) 마지막 항목입니다.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_FROM": "목록에서 특정 위치의 항목을 반환합니다.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_FIRST": "첫 번째 아이템을 찾아 돌려줍니다.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_LAST": "마지막 아이템을 찾아 돌려줍니다.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_RANDOM": "리스트의 아이템들 중, 랜덤으로 선택해 돌려줍니다.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM": "목록의 특정 위치에 있는 항목을 제거하고 반환합니다.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST": "첫 번째 아이템을 찾아내 돌려주고, 그 아이템을 리스트에서 삭제합니다.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST": "마지막 아이템을 찾아내 돌려주고, 그 아이템을 리스트에서 삭제합니다.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM": "목록에서 임의 위치의 아이템을 찾아내 삭제하고 돌려줍니다.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM": "목록에서 특정 위치의 항목을 삭제합니다.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST": "리스트에서 첫 번째 아이템을 삭제합니다.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST": "리스트에서 마지막 아이템을 찾아 삭제합니다.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM": "리스트에서 랜덤하게 아이템을 삭제합니다.",
+ "LISTS_SET_INDEX_HELPURL": "https://github.com/google/blockly/wiki/Lists#in-list--set",
+ "LISTS_SET_INDEX_SET": "에서 설정",
+ "LISTS_SET_INDEX_INSERT": "에서 원하는 위치에 삽입",
+ "LISTS_SET_INDEX_INPUT_TO": "에",
+ "LISTS_SET_INDEX_TOOLTIP_SET_FROM": "목록의 특정 위치에 있는 항목으로 설정합니다.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_FIRST": "첫 번째 위치의 아이템으로 설정합니다.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_LAST": "마지막 아이템으로 설정합니다.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_RANDOM": "목록에서 임의 위치의 아이템을 설정합니다.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_FROM": "목록의 특정 위치에 항목을 삽입합니다.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST": "항목을 목록의 처음 위치에 삽입합니다.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_LAST": "리스트의 마지막에 아이템을 추가합니다.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM": "목록에서 임의 위치에 아이템을 삽입합니다.",
+ "LISTS_GET_SUBLIST_HELPURL": "https://github.com/google/blockly/wiki/Lists#getting-a-sublist",
+ "LISTS_GET_SUBLIST_START_FROM_START": "처음 # 번째 위치부터, 서브 리스트 추출",
+ "LISTS_GET_SUBLIST_START_FROM_END": "마지막부터 # 번째 위치부터, 서브 리스트 추출",
+ "LISTS_GET_SUBLIST_START_FIRST": "첫 번째 위치부터, 서브 리스트 추출",
+ "LISTS_GET_SUBLIST_END_FROM_START": "앞에서부터 # 번째로",
+ "LISTS_GET_SUBLIST_END_FROM_END": "끝에서부터 # 번째로",
+ "LISTS_GET_SUBLIST_END_LAST": "마지막으로",
+ "LISTS_GET_SUBLIST_TAIL": "",
+ "LISTS_GET_SUBLIST_TOOLTIP": "목록의 특정 부분에 대한 복사본을 만듭니다.",
+ "LISTS_SORT_HELPURL": "https://github.com/google/blockly/wiki/Lists#sorting-a-list",
+ "LISTS_SORT_TITLE": "정렬 %1 %2 %3",
+ "LISTS_SORT_TOOLTIP": "목록의 사본을 정렬합니다.",
+ "LISTS_SORT_ORDER_ASCENDING": "오름차순",
+ "LISTS_SORT_ORDER_DESCENDING": "내림차순",
+ "LISTS_SORT_TYPE_NUMERIC": "숫자순",
+ "LISTS_SORT_TYPE_TEXT": "알파벳순",
+ "LISTS_SORT_TYPE_IGNORECASE": "알파벳순 (대소문자 구분 안 함)",
+ "LISTS_SPLIT_HELPURL": "https://github.com/google/blockly/wiki/Lists#splitting-strings-and-joining-lists",
+ "LISTS_SPLIT_LIST_FROM_TEXT": "텍스트에서 목록 만들기",
+ "LISTS_SPLIT_TEXT_FROM_LIST": "목록에서 텍스트 만들기",
+ "LISTS_SPLIT_WITH_DELIMITER": "분리와",
+ "LISTS_SPLIT_TOOLTIP_SPLIT": "각 속보, 텍스트의 목록들에서 텍스트를 분할합니다.",
+ "LISTS_SPLIT_TOOLTIP_JOIN": "구분 기호로 구분하여 텍스트 목록을 하나의 텍스트에 병합합니다.",
+ "ORDINAL_NUMBER_SUFFIX": "",
+ "VARIABLES_GET_HELPURL": "https://ko.wikipedia.org/wiki/%EB%B3%80%EC%88%98_(%EC%BB%B4%ED%93%A8%ED%84%B0_%EA%B3%BC%ED%95%99)",
+ "VARIABLES_GET_TOOLTIP": "변수에 저장 되어있는 값을 돌려줍니다.",
+ "VARIABLES_GET_CREATE_SET": "'집합 %1' 생성",
+ "VARIABLES_SET_HELPURL": "https://ko.wikipedia.org/wiki/%EB%B3%80%EC%88%98_(%EC%BB%B4%ED%93%A8%ED%84%B0_%EA%B3%BC%ED%95%99)",
+ "VARIABLES_SET": "%1를 %2로 설정",
+ "VARIABLES_SET_TOOLTIP": "변수의 값을 입력한 값으로 변경해 줍니다.",
+ "VARIABLES_SET_CREATE_GET": "'%1 값 읽기' 블럭 생성",
+ "PROCEDURES_DEFNORETURN_HELPURL": "https://ko.wikipedia.org/wiki/%ED%95%A8%EC%88%98_%28%ED%94%84%EB%A1%9C%EA%B7%B8%EB%9E%98%EB%B0%8D%29",
+ "PROCEDURES_DEFNORETURN_TITLE": "함수",
+ "PROCEDURES_DEFNORETURN_PROCEDURE": "함수 이름",
+ "PROCEDURES_BEFORE_PARAMS": "사용:",
+ "PROCEDURES_CALL_BEFORE_PARAMS": "사용:",
+ "PROCEDURES_DEFNORETURN_DO": "",
+ "PROCEDURES_DEFNORETURN_TOOLTIP": "실행 후, 결과 값을 돌려주지 않는 함수를 만듭니다.",
+ "PROCEDURES_DEFNORETURN_COMMENT": "이 함수를 설명하세요...",
+ "PROCEDURES_DEFRETURN_HELPURL": "https://ko.wikipedia.org/wiki/%ED%95%A8%EC%88%98_%28%ED%94%84%EB%A1%9C%EA%B7%B8%EB%9E%98%EB%B0%8D%29",
+ "PROCEDURES_DEFRETURN_RETURN": "다음을 돌려줌",
+ "PROCEDURES_DEFRETURN_TOOLTIP": "실행 후, 결과 값을 돌려주는 함수를 만듭니다.",
+ "PROCEDURES_ALLOW_STATEMENTS": "서술 허가",
+ "PROCEDURES_DEF_DUPLICATE_WARNING": "경고: 이 함수에는, 같은 이름을 사용하는 매개 변수들이 있습니다.",
+ "PROCEDURES_CALLNORETURN_HELPURL": "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29",
+ "PROCEDURES_CALLNORETURN_TOOLTIP": "미리 정의해 둔 '%1' 함수를 실행합니다.",
+ "PROCEDURES_CALLRETURN_HELPURL": "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29",
+ "PROCEDURES_CALLRETURN_TOOLTIP": "미리 정의해 둔 '%1' 함수를 실행하고, 함수를 실행한 결과 값을 돌려줍니다.",
+ "PROCEDURES_MUTATORCONTAINER_TITLE": "매개 변수들",
+ "PROCEDURES_MUTATORCONTAINER_TOOLTIP": "이 함수를 추가, 삭제, 혹은 재정렬합니다.",
+ "PROCEDURES_MUTATORARG_TITLE": "매개 변수:",
+ "PROCEDURES_MUTATORARG_TOOLTIP": "함수에 값을 더합니다.",
+ "PROCEDURES_HIGHLIGHT_DEF": "함수 정의 찾기",
+ "PROCEDURES_CREATE_DO": "'%1' 생성",
+ "PROCEDURES_IFRETURN_TOOLTIP": "값이 참이라면, 두 번째 값을 반환합니다.",
+ "PROCEDURES_IFRETURN_HELPURL": "http://c2.com/cgi/wiki?GuardClause",
+ "PROCEDURES_IFRETURN_WARNING": "경고: 이 블럭은, 함수 정의 블럭 안에서만 사용할 수 있습니다."
+}
diff --git a/blockly/msg/json/lb.json b/blockly/msg/json/lb.json
new file mode 100644
index 0000000..50e4668
--- /dev/null
+++ b/blockly/msg/json/lb.json
@@ -0,0 +1,126 @@
+{
+ "@metadata": {
+ "authors": [
+ "Robby",
+ "Soued031",
+ "Les Meloures"
+ ]
+ },
+ "VARIABLES_DEFAULT_NAME": "Element",
+ "TODAY": "Haut",
+ "DUPLICATE_BLOCK": "Eng Kopie maachen",
+ "ADD_COMMENT": "Bemierkung derbäisetzen",
+ "REMOVE_COMMENT": "Bemierkung ewechhuelen",
+ "DELETE_BLOCK": "Block läschen",
+ "DELETE_X_BLOCKS": "%1 Bléck läschen",
+ "CLEAN_UP": "Bléck opraumen",
+ "COLLAPSE_BLOCK": "Block zesummeklappen",
+ "COLLAPSE_ALL": "Bléck zesummeklappen",
+ "EXPAND_BLOCK": "Block opklappen",
+ "EXPAND_ALL": "Bléck opklappen",
+ "DISABLE_BLOCK": "Block desaktivéieren",
+ "ENABLE_BLOCK": "Block aktivéieren",
+ "HELP": "Hëllef",
+ "UNDO": "Réckgängeg maachen",
+ "REDO": "Widderhuelen",
+ "CHANGE_VALUE_TITLE": "Wäert änneren:",
+ "RENAME_VARIABLE": "Variabel ëmbenennen...",
+ "RENAME_VARIABLE_TITLE": "All '%1' Variabelen ëmbenennen op:",
+ "NEW_VARIABLE": "Variabel uleeën...",
+ "NEW_VARIABLE_TITLE": "Neie variabelen Numm:",
+ "COLOUR_PICKER_TOOLTIP": "Sicht eng Faarf an der Palette eraus.",
+ "COLOUR_RANDOM_TITLE": "zoufälleg Faarf",
+ "COLOUR_RANDOM_TOOLTIP": "Eng zoufälleg Faarf eraussichen.",
+ "COLOUR_RGB_TITLE": "fierwe mat",
+ "COLOUR_RGB_RED": "rout",
+ "COLOUR_RGB_GREEN": "gréng",
+ "COLOUR_RGB_BLUE": "blo",
+ "COLOUR_BLEND_TITLE": "mëschen",
+ "COLOUR_BLEND_COLOUR1": "Faarf 1",
+ "COLOUR_BLEND_COLOUR2": "Faarf 2",
+ "COLOUR_BLEND_RATIO": "ratio",
+ "CONTROLS_REPEAT_TITLE": "%1-mol widderhuelen",
+ "CONTROLS_REPEAT_INPUT_DO": "maach",
+ "CONTROLS_WHILEUNTIL_OPERATOR_WHILE": "Widderhuel soulaang",
+ "CONTROLS_WHILEUNTIL_OPERATOR_UNTIL": "widderhuele bis",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_WHILE": "Féiert d'Uweisungen aus, soulaang wéi de Wäert richteg ass",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL": "Féiert d'Uweisungen aus, soulaang wéi de Wäert falsch ass.",
+ "CONTROLS_FOR_TITLE": "zielt mat %1 vun %2 bis %3 mat %4",
+ "CONTROLS_FOREACH_TITLE": "fir all Element %1 an der Lëscht %2",
+ "CONTROLS_IF_MSG_IF": "wann",
+ "CONTROLS_IF_MSG_ELSE": "soss",
+ "LOGIC_OPERATION_AND": "an",
+ "LOGIC_OPERATION_OR": "oder",
+ "LOGIC_NEGATE_TITLE": "net %1",
+ "LOGIC_BOOLEAN_TRUE": "wouer",
+ "LOGIC_BOOLEAN_FALSE": "falsch",
+ "LOGIC_BOOLEAN_TOOLTIP": "Schéckt entweder richteg oder falsch zréck.",
+ "LOGIC_NULL": "null",
+ "LOGIC_TERNARY_HELPURL": "https://en.wikipedia.org/wiki/%3F:",
+ "LOGIC_TERNARY_CONDITION": "Test",
+ "LOGIC_TERNARY_IF_TRUE": "wa wouer",
+ "LOGIC_TERNARY_IF_FALSE": "wa falsch",
+ "MATH_NUMBER_TOOLTIP": "Eng Zuel.",
+ "MATH_ARITHMETIC_TOOLTIP_ADD": "Den Total vun den zwou Zuelen zréckginn.",
+ "MATH_ARITHMETIC_TOOLTIP_MULTIPLY": "D'Produkt vun den zwou Zuelen zréckginn.",
+ "MATH_SINGLE_HELPURL": "https://lb.wikipedia.org/wiki/Racine carrée",
+ "MATH_SINGLE_OP_ROOT": "Quadratwuerzel",
+ "MATH_SINGLE_OP_ABSOLUTE": "absolut",
+ "MATH_IS_EVEN": "ass gerued",
+ "MATH_IS_ODD": "ass ongerued",
+ "MATH_IS_PRIME": "ass eng Primzuel",
+ "MATH_IS_WHOLE": "ass eng ganz Zuel",
+ "MATH_IS_POSITIVE": "ass positiv",
+ "MATH_IS_NEGATIVE": "ass negativ",
+ "MATH_CHANGE_TITLE": "änneren %1 ëm %2",
+ "MATH_ROUND_TOOLTIP": "Eng Zuel op- oder ofrënnen.",
+ "MATH_ROUND_OPERATOR_ROUND": "opronnen",
+ "MATH_ROUND_OPERATOR_ROUNDUP": "oprënnen",
+ "MATH_ROUND_OPERATOR_ROUNDDOWN": "ofrënnen",
+ "MATH_ONLIST_OPERATOR_MAX": "Maximum aus der Lëscht",
+ "MATH_ONLIST_TOOLTIP_MAX": "Schéckt de gréisste Wäert aus enger Lëscht zréck.",
+ "MATH_ONLIST_OPERATOR_AVERAGE": "Moyenne vun der Lëscht",
+ "MATH_ONLIST_OPERATOR_RANDOM": "zoufällegt Element vun enger Lëscht",
+ "MATH_MODULO_TITLE": "Rescht vu(n) %1 ÷ %2",
+ "MATH_RANDOM_INT_TITLE": "zoufälleg ganz Zuel tëscht %1 a(n) %2",
+ "TEXT_TEXT_TOOLTIP": "E Buschtaf, e Wuert oder eng Textzeil.",
+ "TEXT_CREATE_JOIN_ITEM_TOOLTIP": "En Element bei den Text derbäisetzen.",
+ "TEXT_APPEND_APPENDTEXT": "Text drunhänken",
+ "TEXT_LENGTH_TITLE": "Längt vu(n) %1",
+ "TEXT_ISEMPTY_TITLE": "%1 ass eidel",
+ "TEXT_INDEXOF_INPUT_INTEXT": "am Text",
+ "TEXT_CHARAT_INPUT_INTEXT": "am Text",
+ "TEXT_GET_SUBSTRING_INPUT_IN_TEXT": "am Text",
+ "TEXT_GET_SUBSTRING_END_FROM_START": "bis bei de Buschtaf #",
+ "TEXT_GET_SUBSTRING_END_LAST": "bis bei de leschte Buschtaw",
+ "TEXT_PRINT_TITLE": "%1 drécken",
+ "TEXT_PROMPT_TOOLTIP_TEXT": "Frot de Benotzer no engem Text.",
+ "LISTS_CREATE_WITH_CONTAINER_TITLE_ADD": "Lëscht",
+ "LISTS_CREATE_WITH_ITEM_TOOLTIP": "En Element op d'Lëscht derbäisetzen.",
+ "LISTS_LENGTH_TITLE": "Längt vu(n) %1",
+ "LISTS_ISEMPTY_TITLE": "%1 ass eidel",
+ "LISTS_INLIST": "an der Lëscht",
+ "LISTS_GET_INDEX_REMOVE": "ewechhuelen",
+ "LISTS_GET_INDEX_FROM_START": "#",
+ "LISTS_GET_INDEX_FROM_END": "# vun hannen",
+ "LISTS_GET_INDEX_FIRST": "éischt",
+ "LISTS_GET_INDEX_LAST": "lescht",
+ "LISTS_GET_INDEX_RANDOM": "Zoufall",
+ "LISTS_INDEX_FROM_START_TOOLTIP": "%1 ass dat éischt Element.",
+ "LISTS_INDEX_FROM_END_TOOLTIP": "%1 ass dat éischt Element.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_RANDOM": "Schéckt en zoufällegt Element aus enger Lëscht zréck.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST": "Hëlt dat lescht Element aus enger Lëscht eraus.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM": "Hëlt en zoufällegt Element aus enger Lëscht eraus.",
+ "LISTS_SET_INDEX_INSERT": "asetzen op",
+ "LISTS_SET_INDEX_INPUT_TO": "als",
+ "LISTS_SET_INDEX_TOOLTIP_SET_RANDOM": "Setzt en zoufällegt Element an eng Lëscht.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_LAST": "Setzt d'Element um Enn vun enger Lëscht derbäi.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM": "Setzt d'Element op eng zoufälleg Plaz an d'Lëscht derbäi.",
+ "LISTS_SORT_TYPE_NUMERIC": "numeresch",
+ "LISTS_SORT_TYPE_TEXT": "alphabetesch",
+ "PROCEDURES_DEFNORETURN_PROCEDURE": "eppes maachen",
+ "PROCEDURES_BEFORE_PARAMS": "mat:",
+ "PROCEDURES_CALL_BEFORE_PARAMS": "mat:",
+ "PROCEDURES_DEFNORETURN_COMMENT": "Dës Funktioun beschreiwen...",
+ "PROCEDURES_DEFRETURN_RETURN": "zréck"
+}
diff --git a/blockly/msg/json/lki.json b/blockly/msg/json/lki.json
new file mode 100644
index 0000000..ca97a89
--- /dev/null
+++ b/blockly/msg/json/lki.json
@@ -0,0 +1,296 @@
+{
+ "@metadata": {
+ "authors": [
+ "Hosseinblue",
+ "Lakzon"
+ ]
+ },
+ "VARIABLES_DEFAULT_NAME": "آیتم",
+ "TODAY": "ایمڕۆ",
+ "DUPLICATE_BLOCK": "کؤپی کردن",
+ "ADD_COMMENT": "گةپ دائن",
+ "REMOVE_COMMENT": "پاک کردن گةپةل/قِسةل",
+ "EXTERNAL_INPUTS": "ورودیةل خروجی",
+ "INLINE_INPUTS": "ورودیةل نوم جا",
+ "DELETE_BLOCK": "پاک کردن بلاک",
+ "DELETE_X_BLOCKS": "حةذف %1 بلاکةل",
+ "DELETE_ALL_BLOCKS": "حةذف کؤل %1 بلاکةل?",
+ "CLEAN_UP": "تمیزکردن بلاکةل",
+ "COLLAPSE_BLOCK": "چؤیچانن/پشکانن بلاک",
+ "COLLAPSE_ALL": "چؤیچانن/پشکانن بلاکةل",
+ "EXPAND_BLOCK": "کةلنگآ کردِن بلاک",
+ "EXPAND_ALL": "کةلنگآ کردِن بلاکةل",
+ "DISABLE_BLOCK": "إ کار کةتن(غیرفعال‌سازی) بلاک",
+ "ENABLE_BLOCK": "إ کارآشتن(فعال)بلاک",
+ "HELP": "کؤمةک",
+ "CHANGE_VALUE_TITLE": "تةغییر مقدار:",
+ "RENAME_VARIABLE": "تغییر نام متغیر...",
+ "RENAME_VARIABLE_TITLE": "تغییر نام همهٔ متغیرهای «%1» به:",
+ "NEW_VARIABLE": "متغیر تازه...",
+ "NEW_VARIABLE_TITLE": "نام متغیر تازه:",
+ "COLOUR_PICKER_HELPURL": "https://en.wikipedia.org/wiki/رةنگ",
+ "COLOUR_PICKER_TOOLTIP": "رةنگێ إژ تةختة رةنگ انتخاب کةن",
+ "COLOUR_RANDOM_TITLE": "رةنگ بةختةکی",
+ "COLOUR_RANDOM_TOOLTIP": ".رةنگئ بةختةکی انتخاب کةن",
+ "COLOUR_RGB_TITLE": "رةنگ وة",
+ "COLOUR_RGB_RED": "سۆر",
+ "COLOUR_RGB_GREEN": "سؤز",
+ "COLOUR_RGB_BLUE": "کاوو",
+ "COLOUR_RGB_TOOLTIP": "ساخت یک رنگ با مقدار مشخص‌شده‌ای از سۆر، سؤز و کاوو. همهٔ مقادیر باید بین ۰ تا ۱۰۰ باشند.",
+ "COLOUR_BLEND_TITLE": "قاتی پاتی",
+ "COLOUR_BLEND_COLOUR1": "رةنگ 1",
+ "COLOUR_BLEND_COLOUR2": "رةنگ 2",
+ "COLOUR_BLEND_RATIO": "نسبت",
+ "COLOUR_BLEND_TOOLTIP": "دو رنگ را با نسبت مشخص‌شده مخلوط می‌کند (۰٫۰ - ۱٫۰)",
+ "CONTROLS_REPEAT_HELPURL": "https://lki.wikipedia.org/wiki/حلقه_فور",
+ "CONTROLS_REPEAT_TITLE": "%بار تکرار 1",
+ "CONTROLS_REPEAT_INPUT_DO": "انجوم بی",
+ "CONTROLS_REPEAT_TOOLTIP": "انجام چةن عبارت چندین گِل.",
+ "CONTROLS_WHILEUNTIL_OPERATOR_WHILE": "تکرار در حالی که",
+ "CONTROLS_WHILEUNTIL_OPERATOR_UNTIL": "تکرار تا وةختێ گإ",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_WHILE": "تا زمانی که یک مقدار صحیح است، چند عبارت را انجام بده.",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL": "تا زمانی که یک مقدار ناصحیح است، چند عبارت را انجام بده.",
+ "CONTROLS_FOR_TOOLTIP": "متغیر %1 را در مقادیر شروع‌شده از عدد انتهای به عدد انتهایی را دارد، با فواصل مشخص‌شده می‌شمارد و این بلوک مشخص‌شده را انجام می‌دهد.",
+ "CONTROLS_FOR_TITLE": "با تعداد %1 از %2 به %3 با گام‌های %4",
+ "CONTROLS_FOREACH_TITLE": "ئةرا هر مورد %1 وۀ نام لیست%2",
+ "CONTROLS_FOREACH_TOOLTIP": "برای هر مورد در این فهرست، تنظیم متغیر «%1» به مورد و انجام تعدادی عبارت.",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK": "شکانِن حلقه",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE": "ادامه با تکرار بعدی حلقه",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK": "شکستن حلقهٔ شامل.",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE": "پریدن از بقیهٔ حلقه و ادامه با تکرار بعدی.",
+ "CONTROLS_FLOW_STATEMENTS_WARNING": "اخطار: این بلوک ممکن است فقط داخل یک حلقه استفاده شود.",
+ "CONTROLS_IF_TOOLTIP_1": "اگر یک مقدار صحیح است، سپس چند عبارت را انجام بده.",
+ "CONTROLS_IF_TOOLTIP_2": "اگر یک مقدار صحیح است، اول بلوک اول عبارات را انجام بده. در غیر این صورت بلوک دوم عبارات انجام بده.",
+ "CONTROLS_IF_TOOLTIP_3": "اگر مقدار اول صحیح بود، از آن بلوک اول عبارات را انجام بده. در غیر این صورت، اگر مقدار دوم صحیح است، بلوک دوم عبارات را انجام بده.",
+ "CONTROLS_IF_TOOLTIP_4": "اگر مقدار اول درست است، بلوک اول عبارات را انجام بده. در غیر این صورت، اگر مقدار دوم درست باشد بلوک دوم عبارات را انجام بده. اگر هیچ از مقادیر درست نبود، آخرین بلوک عبارات را انجام بده.",
+ "CONTROLS_IF_MSG_IF": "اگر",
+ "CONTROLS_IF_MSG_ELSEIF": "اگر آنگاه",
+ "CONTROLS_IF_MSG_ELSE": "آنگاه",
+ "CONTROLS_IF_IF_TOOLTIP": "افزودن، حذف یا بازمرتب‌سازی قسمت‌ها برای پیکربندی دوبارهٔ این بلوک اگر.",
+ "CONTROLS_IF_ELSEIF_TOOLTIP": "افزودن یک شرط به بلوک اگر.",
+ "CONTROLS_IF_ELSE_TOOLTIP": "اضافه‌کردن نهایی، گرفتن همهٔ شرایط به بلوک اگر.",
+ "LOGIC_COMPARE_HELPURL": "https://en.wikipedia.org/wiki/Inequality_(mathematics)",
+ "LOGIC_COMPARE_TOOLTIP_EQ": "بازگشت صحیح اگر هر دو ورودی با یکدیگر برابر باشد.",
+ "LOGIC_COMPARE_TOOLTIP_NEQ": "برگرداندن صحیح اگر هر دو ورودی با یکدیگر برابر نباشند.",
+ "LOGIC_COMPARE_TOOLTIP_LT": "بازگرداندن صحیح اگر ورودی اول کوچکتر از ورودی دوم باشد.",
+ "LOGIC_COMPARE_TOOLTIP_LTE": "بازگرداندن صحیح اگر ورودی اول کوچکتر یا مساوی با ورودی دوم باشد.",
+ "LOGIC_COMPARE_TOOLTIP_GT": "بازگرداندن صحیح اگر ورودی اول بزرگتر از ورودی دوم باشد.",
+ "LOGIC_COMPARE_TOOLTIP_GTE": "بازگرداندن صحیح اگر ورودی اول بزرگتر یا مساوی یا ورودی دوم باشد.",
+ "LOGIC_OPERATION_TOOLTIP_AND": "بازگرداندن صحیح اگر هر دو ورودی صحیح باشد.",
+ "LOGIC_OPERATION_AND": "و",
+ "LOGIC_OPERATION_TOOLTIP_OR": "بازگرداندن صحیح اگر یکی از دو ورودی صحیح باشد.",
+ "LOGIC_OPERATION_OR": "یا",
+ "LOGIC_NEGATE_TITLE": "نه %1",
+ "LOGIC_NEGATE_TOOLTIP": "صجیج باز می‌گرداند اگر ورودی نا صحیح باشند. ناصحیح بازمی‌گرداند اگر ورودی صحیح باشد.",
+ "LOGIC_BOOLEAN_TRUE": "درست",
+ "LOGIC_BOOLEAN_FALSE": "نادرست",
+ "LOGIC_BOOLEAN_TOOLTIP": "بازگرداندن یکی از صحیح یا ناصحیح.",
+ "LOGIC_NULL": "پةتی/خالی",
+ "LOGIC_NULL_TOOLTIP": "تهی باز می گرداند",
+ "LOGIC_TERNARY_CONDITION": "آزمائشت",
+ "LOGIC_TERNARY_IF_TRUE": "اگر درست",
+ "LOGIC_TERNARY_IF_FALSE": "اگر نادرست",
+ "LOGIC_TERNARY_TOOLTIP": "بررسی وضعیت در «آزمایش». اگر وضعیت صحیح باشد، مقدار «اگر صحیح» را بر می‌گرداند در غیر اینصورت مقدار «اگر ناصحیح» را.",
+ "MATH_NUMBER_HELPURL": "https://en.wikipedia.org/wiki/Number",
+ "MATH_NUMBER_TOOLTIP": "شؤمارە یەک",
+ "MATH_ARITHMETIC_HELPURL": "https://en.wikipedia.org/wiki/Arithmetic",
+ "MATH_ARITHMETIC_TOOLTIP_ADD": "بازگرداندن مقدار جمع دو عدد.",
+ "MATH_ARITHMETIC_TOOLTIP_MINUS": "بازگرداندن تفاوت دو عدد.",
+ "MATH_ARITHMETIC_TOOLTIP_MULTIPLY": "بازگرداندن حاصلضرب دو عدد.",
+ "MATH_ARITHMETIC_TOOLTIP_DIVIDE": "بازگرداندن باقی‌ماندهٔ دو عدد.",
+ "MATH_ARITHMETIC_TOOLTIP_POWER": "بازگرداندن اولین عددی که از توان عدد دوم حاصل شده باشد.",
+ "MATH_SINGLE_HELPURL": "https://en.wikipedia.org/wiki/Square_root",
+ "MATH_SINGLE_OP_ROOT": "ریشهٔ دوم",
+ "MATH_SINGLE_TOOLTIP_ROOT": "ریشهٔ دوم یک عدد را باز می‌گرداند.",
+ "MATH_SINGLE_OP_ABSOLUTE": "مطلق",
+ "MATH_SINGLE_TOOLTIP_ABS": "قدر مطلق یک عدد را بازمی‌گرداند.",
+ "MATH_SINGLE_TOOLTIP_NEG": "منفی‌شدهٔ یک عدد را باز می‌گرداند.",
+ "MATH_SINGLE_TOOLTIP_LN": "لوگاریتم طبیعی یک عدد را باز می‌گرداند.",
+ "MATH_SINGLE_TOOLTIP_LOG10": "بازگرداندن لگاریتم بر پایهٔ ۱۰ یک عدد.",
+ "MATH_SINGLE_TOOLTIP_EXP": "بازگرداندن توان e یک عدد.",
+ "MATH_SINGLE_TOOLTIP_POW10": "بازگرداندن توان ۱۰ یک عدد.",
+ "MATH_TRIG_HELPURL": "https://en.wikipedia.org/wiki/Trigonometric_functions",
+ "MATH_TRIG_TOOLTIP_SIN": "بازگرداندن سینوس درجه (نه رادیان).",
+ "MATH_TRIG_TOOLTIP_COS": "بازگرداندن کسینوس درجه (نه رادیان).",
+ "MATH_TRIG_TOOLTIP_TAN": "بازگرداندن تانژانت یک درجه (نه رادیان).",
+ "MATH_TRIG_TOOLTIP_ASIN": ".(بازگرداندن آرک‌سینوس درجه (نه رادیان",
+ "MATH_TRIG_TOOLTIP_ACOS": "بازگرداندن آرک‌کسینوس درجه (نه رادیان).",
+ "MATH_TRIG_TOOLTIP_ATAN": "بازگرداندن آرک‌تانژانت درجه (نه رادیان).",
+ "MATH_CONSTANT_HELPURL": "https://en.wikipedia.org/wiki/Mathematical_constant",
+ "MATH_CONSTANT_TOOLTIP": "یکی از مقادیر مشترک را برمی‌گرداند: π (۳٫۱۴۱…)، e (۲٫۷۱۸...)، φ (۱٫۶۱۸)، sqrt(۲) (۱٫۴۱۴)، sqrt(۱/۲) (۰٫۷۰۷...) و یا ∞ (بی‌نهایت).",
+ "MATH_IS_EVEN": "زوج است",
+ "MATH_IS_ODD": "فرد است",
+ "MATH_IS_PRIME": "عدد اول است",
+ "MATH_IS_WHOLE": "کامل است",
+ "MATH_IS_POSITIVE": "مثبت است",
+ "MATH_IS_NEGATIVE": "منفی است",
+ "MATH_IS_DIVISIBLE_BY": "تقسیم شده بر",
+ "MATH_IS_TOOLTIP": "بررسی می‌کند که آیا یک عدد زوج، فرد، اول، کامل، مثبت، منفی یا بخش‌پذیر عدد خاصی باشد را بررسی می‌کند. درست یا نادرست باز می‌گرداند.",
+ "MATH_CHANGE_HELPURL": "https://en.wikipedia.org/wiki/Programming_idiom#Incrementing_a_counter",
+ "MATH_CHANGE_TITLE": "تغییر %1 با %2",
+ "MATH_CHANGE_TOOLTIP": "افزودن یک عدد به متغیر '%1'.",
+ "MATH_ROUND_HELPURL": "https://en.wikipedia.org/wiki/Rounding",
+ "MATH_ROUND_TOOLTIP": "گردکردن یک عدد به بالا یا پایین.",
+ "MATH_ROUND_OPERATOR_ROUND": "گردکردن",
+ "MATH_ROUND_OPERATOR_ROUNDUP": "گرد به بالا",
+ "MATH_ROUND_OPERATOR_ROUNDDOWN": "گرد به پایین",
+ "MATH_ONLIST_OPERATOR_SUM": "جمع لیست",
+ "MATH_ONLIST_TOOLTIP_SUM": "جمع همهٔ عددهای فهرست را باز می‌گرداند.",
+ "MATH_ONLIST_OPERATOR_MIN": "گوجةرتةرین لیست",
+ "MATH_ONLIST_TOOLTIP_MIN": "کوچک‌ترین عدد در فهرست را باز می‌گرداند.",
+ "MATH_ONLIST_OPERATOR_MAX": "بزرگ‌ترین فهرست",
+ "MATH_ONLIST_TOOLTIP_MAX": "بزرگ‌ترین عدد در فهرست را باز می‌گرداند.",
+ "MATH_ONLIST_OPERATOR_AVERAGE": "میانگین فهرست",
+ "MATH_ONLIST_TOOLTIP_AVERAGE": "میانگین (میانگین ریاضی) مقادیر عددی فهرست را بر می‌گرداند.",
+ "MATH_ONLIST_OPERATOR_MEDIAN": "میانهٔ فهرست",
+ "MATH_ONLIST_TOOLTIP_MEDIAN": "میانهٔ عدد در فهرست را بر می‌گرداند.",
+ "MATH_ONLIST_OPERATOR_MODE": "مد فهرست",
+ "MATH_ONLIST_TOOLTIP_MODE": "شایع‌ترین قلم(های) در فهرست را بر می‌گرداند.",
+ "MATH_ONLIST_OPERATOR_STD_DEV": "انحراف معیار فهرست",
+ "MATH_ONLIST_TOOLTIP_STD_DEV": "انحراف معیار فهرست را بر می‌گرداند.",
+ "MATH_ONLIST_OPERATOR_RANDOM": "مورد تصادفی از فهرست",
+ "MATH_ONLIST_TOOLTIP_RANDOM": "موردی تصادفی از فهرست را بر می‌گرداند.",
+ "MATH_MODULO_HELPURL": "https://en.wikipedia.org/wiki/Modulo_operation",
+ "MATH_MODULO_TITLE": "باقی‌ماندهٔ %1 + %2",
+ "MATH_MODULO_TOOLTIP": "باقی‌ماندهٔ تقسیم دو عدد را بر می‌گرداند.",
+ "MATH_CONSTRAIN_TITLE": "محدودکردن %1 پایین %2 بالا %3",
+ "MATH_CONSTRAIN_TOOLTIP": "محدودکردن یک عدد بین محدودیت‌های مشخص‌شده (بسته).",
+ "MATH_RANDOM_INT_HELPURL": "https://en.wikipedia.org/wiki/Random_number_generation",
+ "MATH_RANDOM_INT_TITLE": "عدد صحیح تصادفی بین %1 تا %2",
+ "MATH_RANDOM_INT_TOOLTIP": "یک عدد تصادفی بین دو مقدار مشخص‌شده به صورت بسته باز می‌گرداند.",
+ "MATH_RANDOM_FLOAT_HELPURL": "https://en.wikipedia.org/wiki/Random_number_generation",
+ "MATH_RANDOM_FLOAT_TITLE_RANDOM": "کسر تصادفی",
+ "MATH_RANDOM_FLOAT_TOOLTIP": "بازگرداندن کسری تصادفی بین ۰٫۰ (بسته) تا ۱٫۰ (باز).",
+ "TEXT_TEXT_HELPURL": "https://en.wikipedia.org/wiki/String_(computer_science)",
+ "TEXT_TEXT_TOOLTIP": "یک حرف، کلمه یا خطی از متن.",
+ "TEXT_JOIN_TITLE_CREATEWITH": "ایجاد متن با",
+ "TEXT_JOIN_TOOLTIP": "یک تکه‌ای از متن را با چسپاندن همهٔ تعداد از موارد ایجاد می‌کند.",
+ "TEXT_CREATE_JOIN_TITLE_JOIN": "نام نؤیسی",
+ "TEXT_CREATE_JOIN_TOOLTIP": "اضافه‌کردن، حذف یا مرتب‌سازی بحش‌ها برای تنظیم مجدد این بلوک متنی.",
+ "TEXT_CREATE_JOIN_ITEM_TOOLTIP": "افزودن یک مورد به متن.",
+ "TEXT_APPEND_TO": "به",
+ "TEXT_APPEND_APPENDTEXT": "چسباندن متن",
+ "TEXT_APPEND_TOOLTIP": "الحاق متنی به متغیر «%1».",
+ "TEXT_LENGTH_TITLE": "طول %1",
+ "TEXT_LENGTH_TOOLTIP": "بازگرداندن عددی از حروف (شامل فاصله‌ها) در متن فراهم‌شده.",
+ "TEXT_ISEMPTY_TITLE": "%1 خالی است",
+ "TEXT_ISEMPTY_TOOLTIP": "اضافه‌کردن صحیح اگر متن فراهم‌شده خالی است.",
+ "TEXT_INDEXOF_TOOLTIP": "شاخصی از اولین آخرین رخ‌داد متن اول در متن دوم بر می‌گرداند. اگر متن یافت نشد %1 باز می‌گرداند.",
+ "TEXT_INDEXOF_INPUT_INTEXT": "در متن",
+ "TEXT_INDEXOF_OPERATOR_FIRST": "اولین رخداد متن را بیاب",
+ "TEXT_INDEXOF_OPERATOR_LAST": "آخرین رخداد متن را بیاب",
+ "TEXT_CHARAT_INPUT_INTEXT": "در متن",
+ "TEXT_CHARAT_FROM_START": "گرفتن حرف #",
+ "TEXT_CHARAT_FROM_END": "گرفتن حرف # از آخر",
+ "TEXT_CHARAT_FIRST": "گرفتن اولین حرف",
+ "TEXT_CHARAT_LAST": "گرفتن آخرین حرف",
+ "TEXT_CHARAT_RANDOM": "گرفتن حرف تصادفی",
+ "TEXT_CHARAT_TOOLTIP": "حرفی در موقعیت مشخص‌شده بر می‌گرداند.",
+ "TEXT_GET_SUBSTRING_TOOLTIP": "قسمت مشخصی‌شده‌ای از متن را بر می‌گرداند.",
+ "TEXT_GET_SUBSTRING_INPUT_IN_TEXT": "در متن",
+ "TEXT_GET_SUBSTRING_START_FROM_START": "گرفتن زیرمتن از حرف #",
+ "TEXT_GET_SUBSTRING_START_FROM_END": "گرفتن زیرمتن از حرف # به انتها",
+ "TEXT_GET_SUBSTRING_START_FIRST": "گرفتن زیرمتن از اولین حرف",
+ "TEXT_GET_SUBSTRING_END_FROM_START": "به حرف #",
+ "TEXT_GET_SUBSTRING_END_FROM_END": "به حرف # از انتها",
+ "TEXT_GET_SUBSTRING_END_LAST": "به آخرین حرف",
+ "TEXT_CHANGECASE_TOOLTIP": "بازگرداندن کپی متن در حالتی متفاوت.",
+ "TEXT_CHANGECASE_OPERATOR_UPPERCASE": "به حروف بزرگ",
+ "TEXT_CHANGECASE_OPERATOR_LOWERCASE": "به حروف کوچک",
+ "TEXT_CHANGECASE_OPERATOR_TITLECASE": "به حروف بزرگ عنوان",
+ "TEXT_TRIM_TOOLTIP": "کپی از متن با فاصله‌های حذف‌شده از یک یا هر دو پایان باز می‌گرداند.",
+ "TEXT_TRIM_OPERATOR_BOTH": "تراشیدن فاصله‌ها از هر دو طرف",
+ "TEXT_TRIM_OPERATOR_LEFT": "تراشیدن فاصله‌ها از طرف چپ",
+ "TEXT_TRIM_OPERATOR_RIGHT": "تراشیدن فاصله‌ها از طرف چپ",
+ "TEXT_PRINT_TITLE": "چاپ %1",
+ "TEXT_PRINT_TOOLTIP": "چاپ متن، عدد یا هر مقدار دیگر مشخص‌شده.",
+ "TEXT_PROMPT_TYPE_TEXT": "اعلان برای متن با پیام",
+ "TEXT_PROMPT_TYPE_NUMBER": "اعلان برای عدد با پیام",
+ "TEXT_PROMPT_TOOLTIP_NUMBER": "اعلان برای کاربر با یک عدد.",
+ "TEXT_PROMPT_TOOLTIP_TEXT": "اعلان برای کاربر برای یک متن.",
+ "LISTS_CREATE_EMPTY_TITLE": "ایجاد فهرست خالی",
+ "LISTS_CREATE_EMPTY_TOOLTIP": "فهرستی با طول صفر شامل هیچ رکورد داده‌ای بر می‌گرداند.",
+ "LISTS_CREATE_WITH_TOOLTIP": "فهرستی از هر عددی از موارد می‌سازد.",
+ "LISTS_CREATE_WITH_INPUT_WITH": "ایجاد فهرست با",
+ "LISTS_CREATE_WITH_CONTAINER_TITLE_ADD": "لیست",
+ "LISTS_CREATE_WITH_CONTAINER_TOOLTIP": "اضافه‌کردن، حذف‌کردن یا ترتیب‌سازی مجدد بخش‌ها این بلوک فهرستی.",
+ "LISTS_CREATE_WITH_ITEM_TOOLTIP": "اضافه‌کردن یک مورد به فهرست.",
+ "LISTS_REPEAT_TOOLTIP": "فهرستی شامل مقادیر داده‌شدهٔ تکرار شده عدد مشخص‌شده می‌سازد.",
+ "LISTS_REPEAT_TITLE": "فهرستی با %1 تکرارشده به اندازهٔ %2 می‌سازد",
+ "LISTS_LENGTH_TITLE": "طول %1",
+ "LISTS_LENGTH_TOOLTIP": "طول یک فهرست را برمی‌گرداند.",
+ "LISTS_ISEMPTY_TITLE": "%1 خالی است",
+ "LISTS_ISEMPTY_TOOLTIP": "اگر فهرست خالی است مقدار صجیج بر می‌گرداند.",
+ "LISTS_INLIST": "در فهرست",
+ "LISTS_INDEX_OF_FIRST": "یافتن اولین رخ‌داد مورد",
+ "LISTS_INDEX_OF_LAST": "یافتن آخرین رخ‌داد مورد",
+ "LISTS_INDEX_OF_TOOLTIP": "شاخصی از اولین/آخرین رخ‌داد مورد در فهرست را بر می‌گرداند. %1 بر می‌گرداند اگر آیتم موجود نبود.",
+ "LISTS_GET_INDEX_GET": "گِرتِن",
+ "LISTS_GET_INDEX_GET_REMOVE": "گِرتِن و حةذف کردن",
+ "LISTS_GET_INDEX_REMOVE": "حةذف کردن",
+ "LISTS_GET_INDEX_FROM_END": "# إژ دؤما آخر",
+ "LISTS_GET_INDEX_FIRST": "إژ أؤةل",
+ "LISTS_GET_INDEX_LAST": "دؤمائن/آخرین",
+ "LISTS_GET_INDEX_RANDOM": "بةختةکی",
+ "LISTS_INDEX_FROM_START_TOOLTIP": "%1 اولین مورد است.",
+ "LISTS_INDEX_FROM_END_TOOLTIP": "%1 آخرین مورد است.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_FROM": "موردی در محل مشخص‌شده بر می‌گرداند.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_FIRST": "اولین مورد یک فهرست را بر می‌گرداند.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_LAST": "آخرین مورد در یک فهرست را بر می‌گرداند.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_RANDOM": "یک مورد تصادفی در یک فهرست بر می‌گرداند.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM": "مورد در محل مشخص‌شده در فهرست را حذف و بر می‌گرداند.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST": "اولین مورد مشخص‌شده در فهرست را حذف و بر می‌گرداند.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST": "آخرین مورد مشخص‌شده در فهرست را حذف و بر می‌گرداند.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM": "مورد تصادفی‌ای را در فهرست حذف و بر می‌گرداند.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM": "مورد مشخص‌شده در موقعیت مشخص در یک فهرست را حذف و بر می‌گرداند.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST": "اولین مورد را در یک فهرست حذف می‌کند.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST": "آخرین مورد را در یک فهرست حذف می‌کند.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM": "یک مورد تصادفی را یک فهرست حذف می‌کند.",
+ "LISTS_SET_INDEX_SET": "مجموعه",
+ "LISTS_SET_INDEX_INSERT": "درج در",
+ "LISTS_SET_INDEX_INPUT_TO": "به عنوان",
+ "LISTS_SET_INDEX_TOOLTIP_SET_FROM": "مورد مشخص‌شده در یک فهرست را قرار می‌دهد.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_FIRST": "اولین مورد در یک فهرست را تعیین می‌کند.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_LAST": "آخرین مورد در یک فهرست را تعیین می‌کند.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_RANDOM": "یک مورد تصادفی در یک فهرست را تعیین می‌کند.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_FROM": "موردی در موقعیت مشخص‌شده در یک فهرست اضافه می‌کند.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST": "موردی به ته فهرست اضافه می‌کند.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_LAST": "موردی به ته فهرست الحاق می‌کند.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM": "مورد را به صورت تصادفی در یک فهرست می‌افزاید.",
+ "LISTS_GET_SUBLIST_START_FROM_START": "گرفتن زیرمجموعه‌ای از #",
+ "LISTS_GET_SUBLIST_START_FROM_END": "گرفتن زیرمجموعه‌ای از # از انتها",
+ "LISTS_GET_SUBLIST_START_FIRST": "گرفتن زیرمجموعه‌ای از ابتدا",
+ "LISTS_GET_SUBLIST_END_FROM_START": "به #",
+ "LISTS_GET_SUBLIST_END_FROM_END": "به # از انتها",
+ "LISTS_GET_SUBLIST_END_LAST": "به آخرین",
+ "LISTS_GET_SUBLIST_TOOLTIP": "کپی از قسمت مشخص‌شدهٔ لیست درست می‌کند.",
+ "LISTS_SPLIT_LIST_FROM_TEXT": "ساخت لیست إژ متن",
+ "LISTS_SPLIT_TEXT_FROM_LIST": "ساخت متن إژ لیست",
+ "LISTS_SPLIT_WITH_DELIMITER": "همراه جداساز",
+ "VARIABLES_GET_TOOLTIP": "مقدار این متغیر را بر می‌گرداند.",
+ "VARIABLES_GET_CREATE_SET": "درست‌کردن «تنظیم %1»",
+ "VARIABLES_SET": "مجموعه %1 به %2",
+ "VARIABLES_SET_TOOLTIP": "متغیر برابر با خروجی را مشخص می‌کند.",
+ "VARIABLES_SET_CREATE_GET": "درست‌کردن «گرفتن %1»",
+ "PROCEDURES_DEFNORETURN_TITLE": "به",
+ "PROCEDURES_DEFNORETURN_PROCEDURE": "انجام چیزی",
+ "PROCEDURES_BEFORE_PARAMS": "با:",
+ "PROCEDURES_CALL_BEFORE_PARAMS": "با:",
+ "PROCEDURES_DEFNORETURN_TOOLTIP": "تابعی می‌سازد بدون هیچ خروجی.",
+ "PROCEDURES_DEFRETURN_RETURN": "بازگشت",
+ "PROCEDURES_DEFRETURN_TOOLTIP": "تابعی با یک خروجی می‌سازد.",
+ "PROCEDURES_ALLOW_STATEMENTS": "اجازه اظهارات",
+ "PROCEDURES_DEF_DUPLICATE_WARNING": "اخطار: این تابعی پارامتر تکراری دارد.",
+ "PROCEDURES_CALLNORETURN_HELPURL": "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29",
+ "PROCEDURES_CALLNORETURN_TOOLTIP": "اجرای تابع تعریف‌شده توسط کاربر «%1».",
+ "PROCEDURES_CALLRETURN_HELPURL": "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29",
+ "PROCEDURES_CALLRETURN_TOOLTIP": "اجرای تابع تعریف‌شده توسط کاربر «%1» و استفاده از خروجی آن.",
+ "PROCEDURES_MUTATORCONTAINER_TITLE": "ورودی‌ها",
+ "PROCEDURES_MUTATORCONTAINER_TOOLTIP": "افزودن، حذف یا دوباره مرتب‌کردن ورودی این تابع.",
+ "PROCEDURES_MUTATORARG_TITLE": "نام ورودی:",
+ "PROCEDURES_MUTATORARG_TOOLTIP": "اضافه کردن ورودی به تابع.",
+ "PROCEDURES_HIGHLIGHT_DEF": "برجسته‌سازی تعریف تابع",
+ "PROCEDURES_CREATE_DO": "ساختن «%1»",
+ "PROCEDURES_IFRETURN_TOOLTIP": "اگر یک مقدار صحیح است، مقدار دوم را برگردان.",
+ "PROCEDURES_IFRETURN_WARNING": "اخطار: این بلوک احتمالاً فقط داخل یک تابع استفاده می‌شود."
+}
diff --git a/blockly/msg/json/lrc.json b/blockly/msg/json/lrc.json
new file mode 100644
index 0000000..6877555
--- /dev/null
+++ b/blockly/msg/json/lrc.json
@@ -0,0 +1,133 @@
+{
+ "@metadata": {
+ "authors": [
+ "Mogoeilor"
+ ]
+ },
+ "VARIABLES_DEFAULT_NAME": "قلم",
+ "TODAY": "ئمروٙ",
+ "DUPLICATE_BLOCK": "کپی کردن",
+ "ADD_COMMENT": "نظرتونه اضاف بکید",
+ "REMOVE_COMMENT": "نظر جا وه جا کو",
+ "EXTERNAL_INPUTS": "داده یا وه دری",
+ "INLINE_INPUTS": "داده یا مئنجا",
+ "DELETE_BLOCK": "پاکسا کردن برشت",
+ "DELETE_X_BLOCKS": "پاکسا کردن%1 د برشتیا",
+ "COLLAPSE_BLOCK": "کوچک کردن برشت",
+ "COLLAPSE_ALL": "کوچک کردن برشتیا",
+ "EXPAND_BLOCK": "گپ کردن برشت",
+ "EXPAND_ALL": "گپ کردن برشتیا",
+ "DISABLE_BLOCK": "ناکشتگر کردن برشت",
+ "ENABLE_BLOCK": "کنشتگر کردن برشت",
+ "HELP": "هومياری",
+ "CHANGE_VALUE_TITLE": "ارزشت آلشت کو:",
+ "RENAME_VARIABLE": "د نو نوم نیائن آلشتگر...",
+ "RENAME_VARIABLE_TITLE": "د نو نوم نیائن %1 د تموم آلشتگریا د:",
+ "NEW_VARIABLE": "آلشتگر تازه...",
+ "NEW_VARIABLE_TITLE": "نوم آلشتگر تازه:",
+ "COLOUR_PICKER_HELPURL": "https://en.wikipedia.org/wiki/Color",
+ "COLOUR_PICKER_TOOLTIP": "یه رن د رنگ دو انتخاو بکید",
+ "COLOUR_RANDOM_TITLE": "رن بختکی",
+ "COLOUR_RANDOM_TOOLTIP": "یه رنگ بختکی انتخاو بکید",
+ "COLOUR_RGB_TITLE": "رن وا",
+ "COLOUR_RGB_RED": "سور",
+ "COLOUR_RGB_GREEN": "سوز",
+ "COLOUR_RGB_BLUE": "آوی",
+ "COLOUR_BLEND_TITLE": "شیوسته",
+ "COLOUR_BLEND_COLOUR1": "رن 1",
+ "COLOUR_BLEND_COLOUR2": "رن 2",
+ "COLOUR_BLEND_RATIO": "نسوت",
+ "COLOUR_BLEND_TOOLTIP": "هر کوم د رنگیانه وا نسوت دائه بیه به شیون(0.0 - 1.0).",
+ "CONTROLS_REPEAT_HELPURL": "https://en.wikipedia.org/wiki/For_loop",
+ "CONTROLS_REPEAT_TITLE": "%1 تکرار کو چن بار",
+ "CONTROLS_REPEAT_INPUT_DO": "انجوم بئه",
+ "CONTROLS_WHILEUNTIL_OPERATOR_WHILE": "تا تکرار کو",
+ "CONTROLS_WHILEUNTIL_OPERATOR_UNTIL": "تا تکرار کو",
+ "CONTROLS_FOR_TITLE": "اشماردن وا %1 د %2 سی %3 وا %4",
+ "CONTROLS_FOREACH_TITLE": "سی هر قلم %1 د نوم گه %2",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK": "حلقه نه خراو کو",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK": "حلقه شومل بیه نه خراو کو",
+ "CONTROLS_IF_MSG_IF": "ار",
+ "CONTROLS_IF_MSG_ELSEIF": "هنی ار",
+ "CONTROLS_IF_MSG_ELSE": "هنی",
+ "LOGIC_OPERATION_AND": "و",
+ "LOGIC_OPERATION_OR": "یا",
+ "LOGIC_NEGATE_TITLE": "نه %1",
+ "LOGIC_BOOLEAN_TRUE": "راست و دوروست",
+ "LOGIC_BOOLEAN_FALSE": "غلط",
+ "LOGIC_BOOLEAN_TOOLTIP": "هم غلط و هم راس ورگن",
+ "LOGIC_NULL": "خمثی",
+ "LOGIC_TERNARY_CONDITION": "آزماشت کردن",
+ "LOGIC_TERNARY_IF_TRUE": "ار درس بی",
+ "LOGIC_TERNARY_IF_FALSE": "ار غلط بی",
+ "MATH_NUMBER_HELPURL": "https://en.wikipedia.org/wiki/Number",
+ "MATH_NUMBER_TOOLTIP": "یه شماره.",
+ "MATH_ARITHMETIC_HELPURL": "https://en.wikipedia.org/wiki/Arithmetic",
+ "MATH_ARITHMETIC_TOOLTIP_ADD": "وه انازه دو گل شماره ورگن.",
+ "MATH_SINGLE_HELPURL": "https://en.wikipedia.org/wiki/Square_root",
+ "MATH_SINGLE_OP_ROOT": "چارسوک ریشه",
+ "MATH_SINGLE_OP_ABSOLUTE": "تموم و کمال",
+ "MATH_TRIG_HELPURL": "https://en.wikipedia.org/wiki/Trigonometric_functions",
+ "MATH_CONSTANT_HELPURL": "https://en.wikipedia.org/wiki/Mathematical_constant",
+ "MATH_IS_EVEN": "همیشه هیئش",
+ "MATH_IS_ODD": "تهنائه",
+ "MATH_IS_PRIME": "وه اوله",
+ "MATH_IS_WHOLE": "همشه",
+ "MATH_IS_POSITIVE": "مثبته",
+ "MATH_IS_NEGATIVE": "منفیه",
+ "MATH_IS_DIVISIBLE_BY": "یه وا بهر بیه",
+ "MATH_CHANGE_HELPURL": "https://en.wikipedia.org/wiki/Programming_idiom#Incrementing_a_counter",
+ "MATH_CHANGE_TITLE": "آلشت بكيد %1 وا %2",
+ "MATH_ROUND_HELPURL": "https://en.wikipedia.org/wiki/Rounding",
+ "MATH_ROUND_OPERATOR_ROUND": "گرد کردن",
+ "MATH_ROUND_OPERATOR_ROUNDUP": "وه رو گرد کردن",
+ "MATH_ROUND_OPERATOR_ROUNDDOWN": "وه هار گرد کردن",
+ "MATH_ONLIST_OPERATOR_SUM": "جم کردن نومگه",
+ "MATH_ONLIST_OPERATOR_MIN": "کمترونه د نومگه",
+ "MATH_ONLIST_OPERATOR_MAX": "بیشترونه د نومگه",
+ "MATH_ONLIST_OPERATOR_AVERAGE": "مینجاگه نوم گه",
+ "MATH_ONLIST_OPERATOR_MEDIAN": "مینجا نوم گه",
+ "MATH_ONLIST_OPERATOR_MODE": "بیشری د نومگه",
+ "MATH_MODULO_HELPURL": "https://en.wikipedia.org/wiki/Modulo_operation",
+ "MATH_RANDOM_INT_HELPURL": "https://en.wikipedia.org/wiki/Random_number_generation",
+ "MATH_RANDOM_FLOAT_HELPURL": "https://en.wikipedia.org/wiki/Random_number_generation",
+ "TEXT_TEXT_HELPURL": "https://en.wikipedia.org/wiki/String_(computer_science)",
+ "TEXT_JOIN_TITLE_CREATEWITH": "راس کردن متن وا",
+ "TEXT_CREATE_JOIN_TITLE_JOIN": "پیوسن",
+ "TEXT_APPEND_TO": "سی",
+ "TEXT_ISEMPTY_TITLE": "%1 حالیه",
+ "TEXT_INDEXOF_INPUT_INTEXT": "د متن",
+ "TEXT_CHARAT_INPUT_INTEXT": "د متن",
+ "TEXT_GET_SUBSTRING_INPUT_IN_TEXT": "د متن",
+ "TEXT_GET_SUBSTRING_END_FROM_START": "سی واج#",
+ "TEXT_GET_SUBSTRING_END_FROM_END": "سی واج# تا آخر",
+ "TEXT_GET_SUBSTRING_END_LAST": "سی آخرین واج",
+ "TEXT_CHANGECASE_OPERATOR_UPPERCASE": "سی حرف گپ",
+ "TEXT_CHANGECASE_OPERATOR_LOWERCASE": "سی واج کؤچک",
+ "LISTS_CREATE_EMPTY_TITLE": "یه گل نوم گه حالی راس بکیت",
+ "LISTS_CREATE_WITH_CONTAINER_TITLE_ADD": "نوم گه",
+ "LISTS_ISEMPTY_TITLE": "%1 حالیه",
+ "LISTS_INLIST": "د نوم گه",
+ "LISTS_GET_INDEX_GET": "گرتن",
+ "LISTS_GET_INDEX_GET_REMOVE": "گرتن و جاوه جا بیئن",
+ "LISTS_GET_INDEX_REMOVE": "ؤرداشتن",
+ "LISTS_GET_INDEX_FROM_END": "# تا آخر",
+ "LISTS_GET_INDEX_FIRST": "اولی",
+ "LISTS_GET_INDEX_LAST": "آخر",
+ "LISTS_GET_INDEX_RANDOM": "بختكی",
+ "LISTS_SET_INDEX_INSERT": "بنه د",
+ "LISTS_SET_INDEX_INPUT_TO": "چی",
+ "LISTS_GET_SUBLIST_END_FROM_START": "سی#",
+ "LISTS_GET_SUBLIST_END_LAST": "سی آخر",
+ "VARIABLES_SET": "میزوکاری %1 سی %2",
+ "PROCEDURES_DEFNORETURN_TITLE": "سی",
+ "PROCEDURES_DEFNORETURN_PROCEDURE": "یه کار انجوم بیئت",
+ "PROCEDURES_BEFORE_PARAMS": "وا:",
+ "PROCEDURES_CALL_BEFORE_PARAMS": "وا:",
+ "PROCEDURES_DEFRETURN_RETURN": "ورگنیئن",
+ "PROCEDURES_CALLNORETURN_HELPURL": "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29",
+ "PROCEDURES_CALLRETURN_HELPURL": "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29",
+ "PROCEDURES_MUTATORCONTAINER_TITLE": "داده یا",
+ "PROCEDURES_MUTATORARG_TITLE": "نوم داده:",
+ "PROCEDURES_CREATE_DO": "راس کردن%1"
+}
diff --git a/blockly/msg/json/lt.json b/blockly/msg/json/lt.json
new file mode 100644
index 0000000..c4198f7
--- /dev/null
+++ b/blockly/msg/json/lt.json
@@ -0,0 +1,257 @@
+{
+ "@metadata": {
+ "authors": [
+ "Eitvys200",
+ "Jurgis",
+ "Zygimantus"
+ ]
+ },
+ "VARIABLES_DEFAULT_NAME": "elementas",
+ "TODAY": "Šiandien",
+ "DUPLICATE_BLOCK": "Kopijuoti",
+ "ADD_COMMENT": "Palikti komentarą",
+ "REMOVE_COMMENT": "Pašalinti komentarą",
+ "EXTERNAL_INPUTS": "Išdėstyti stulpeliu, kai daug parametrų",
+ "INLINE_INPUTS": "Išdėstyti vienoje eilutėje",
+ "DELETE_BLOCK": "Ištrinti bloką",
+ "DELETE_X_BLOCKS": "Ištrinti %1 blokus",
+ "DELETE_ALL_BLOCKS": "Ištrinti visus %1 blokus?",
+ "CLEAN_UP": "Išvalyti blokus",
+ "COLLAPSE_BLOCK": "Suskleisti bloką",
+ "COLLAPSE_ALL": "Suskleisti blokus",
+ "EXPAND_BLOCK": "Išskleisti bloką",
+ "EXPAND_ALL": "Išskleisti blokus",
+ "DISABLE_BLOCK": "Išjungti bloką",
+ "ENABLE_BLOCK": "Įjungti bloką",
+ "HELP": "Pagalba",
+ "UNDO": "Anuliuoti",
+ "REDO": "Atkurti",
+ "CHANGE_VALUE_TITLE": "Keisti reikšmę:",
+ "RENAME_VARIABLE": "Pervardyti kintamajį...",
+ "RENAME_VARIABLE_TITLE": "Pervadinti visus '%1' kintamuosius į:",
+ "NEW_VARIABLE": "Naujas kintamasis...",
+ "NEW_VARIABLE_TITLE": "Naujo kintamojo pavadinimas:",
+ "DELETE_VARIABLE": "Ištrinti '%1' kintamąjį",
+ "COLOUR_PICKER_HELPURL": "https://lt.wikipedia.org/wiki/Spalva",
+ "COLOUR_PICKER_TOOLTIP": "Pasirinkti spalvą iš paletės.",
+ "COLOUR_RANDOM_TITLE": "atsitiktinė spalva",
+ "COLOUR_RANDOM_TOOLTIP": "Pasirinkti spalvą atsitiktinai.",
+ "COLOUR_RGB_TITLE": "spalva su",
+ "COLOUR_RGB_RED": "raudona",
+ "COLOUR_RGB_GREEN": "žalia",
+ "COLOUR_RGB_BLUE": "mėlyna",
+ "COLOUR_RGB_TOOLTIP": "Spalvą galima sudaryti iš raudonos, žalios ir mėlynos dedamųjų. Kiekvienos intensyvumas nuo 0 iki 100.",
+ "COLOUR_BLEND_TITLE": "sumaišyk",
+ "COLOUR_BLEND_COLOUR1": "1 spalva",
+ "COLOUR_BLEND_COLOUR2": "2 spalva",
+ "COLOUR_BLEND_RATIO": "santykis",
+ "COLOUR_BLEND_TOOLTIP": "Sumaišo dvi spalvas su pateiktu santykiu (0.0 - 1.0).",
+ "CONTROLS_REPEAT_HELPURL": "https://en.wikipedia.org/wiki/For_loop",
+ "CONTROLS_REPEAT_TITLE": "pakartokite %1 kartus",
+ "CONTROLS_REPEAT_INPUT_DO": "daryti",
+ "CONTROLS_REPEAT_TOOLTIP": "Leidžia atlikti išvardintus veiksmus kelis kartus.",
+ "CONTROLS_WHILEUNTIL_OPERATOR_WHILE": "kartok kol",
+ "CONTROLS_WHILEUNTIL_OPERATOR_UNTIL": "kartok, kol pasieksi",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_WHILE": "Kartoja veiksmus, kol sąlyga tenkinama.",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL": "Kartoja veiksmus, kol bus pasiekta nurodyta sąlyga.",
+ "CONTROLS_FOR_TOOLTIP": "Kartoti veiksmus su kiekvienu sąrašo elementu, priskirtu kintamajam \"%1\".",
+ "CONTROLS_FOR_TITLE": "kartok, kai %1 kinta nuo %2 iki %3 po %4",
+ "CONTROLS_FOREACH_TITLE": "kartok su kiekvienu %1 iš sąrašo %2",
+ "CONTROLS_FOREACH_TOOLTIP": "Kartok veiksmus, kol kintamasis \"%1\" paeiliui gauna kiekvieną sąrašo reikšmę.",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK": "nutraukti kartojimą",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE": "šį kartą praleisti likusius veiksmus ir tęsti kartojimą",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK": "Nutraukia (artimiausią) vykstantį kartojimą.",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE": "Praleidžia žemiau išvardintus kartojimo veiksmus (ir tęsia darbą nuo kartojimo pradinio veiksmo).",
+ "CONTROLS_FLOW_STATEMENTS_WARNING": "Atsargiai: šis blokas gali būt naudojamas tik kartojimo bloko viduje.",
+ "CONTROLS_IF_TOOLTIP_1": "Jeigu sąlyga tenkinama, tai atlik veiksmus.",
+ "CONTROLS_IF_TOOLTIP_2": "Jei sąlyga tenkinama, atlikti jai priklausančius veiksmus, o jei ne -- atlikti kitus nurodytus veiksmus.",
+ "CONTROLS_IF_TOOLTIP_3": "Jei pirma sąlyga tenkinama, atlikti jai priklausančius veiksmus, O jei ne, tikrinti antrą sąlygą -- ir jei ši tenkinama, atlikti jos veiksmus.",
+ "CONTROLS_IF_TOOLTIP_4": "Jei pirma sąlyga tenkinama, atlikti jai priklausančius veiksmus, O jei ne, tikrinti antrą sąlygą -- ir jei ši tenkinama, atlikti jos veiksmus. Kitais atvejais -- atlikti paskutinio bloko veiksmus.",
+ "CONTROLS_IF_MSG_IF": "jei",
+ "CONTROLS_IF_MSG_ELSEIF": "arba jei",
+ "CONTROLS_IF_MSG_ELSE": "kitu atveju",
+ "CONTROLS_IF_IF_TOOLTIP": "Galite pridėt/pašalinti/pertvarkyti sąlygų \"šakas\".",
+ "CONTROLS_IF_ELSEIF_TOOLTIP": "Pridėti sąlygą „jei“ blokui.",
+ "CONTROLS_IF_ELSE_TOOLTIP": "Pridėti veiksmų vykdymo variantą/\"šaką\", kai netenkinama nė viena sąlyga.",
+ "LOGIC_COMPARE_HELPURL": "https://en.wikipedia.org/wiki/Inequality_(mathematics)",
+ "LOGIC_COMPARE_TOOLTIP_EQ": "Tenkinama, jei abu reiškiniai lygūs.",
+ "LOGIC_OPERATION_TOOLTIP_AND": "Bus teisinga, kai abi sąlygos bus tenkinamos.",
+ "LOGIC_OPERATION_AND": "ir",
+ "LOGIC_OPERATION_OR": "arba",
+ "LOGIC_NEGATE_TITLE": "ne %1",
+ "LOGIC_BOOLEAN_TRUE": "tiesa",
+ "LOGIC_BOOLEAN_FALSE": "klaidinga",
+ "LOGIC_BOOLEAN_TOOLTIP": "Reikšmė gali būti \"teisinga\"/\"Taip\" arba \"klaidinga\"/\"Ne\".",
+ "LOGIC_NULL": "nieko",
+ "LOGIC_NULL_TOOLTIP": "Reikšmė nebuvo nurodyta...",
+ "LOGIC_TERNARY_CONDITION": "sąlyga",
+ "LOGIC_TERNARY_IF_TRUE": "jei taip",
+ "LOGIC_TERNARY_IF_FALSE": "jei ne",
+ "LOGIC_TERNARY_TOOLTIP": "Jeigu sąlygą tenkinama, grąžina pirmą reikšmę, o jei ne - antrąją.",
+ "MATH_NUMBER_HELPURL": "https://lt.wikipedia.org/wiki/Skaičius",
+ "MATH_NUMBER_TOOLTIP": "Skaičius.",
+ "MATH_ARITHMETIC_HELPURL": "https://en.wikipedia.org/wiki/Arithmetic",
+ "MATH_ARITHMETIC_TOOLTIP_ADD": "Grąžina dviejų skaičių sumą.",
+ "MATH_ARITHMETIC_TOOLTIP_MINUS": "Grąžina dviejų skaičių skirtumą.",
+ "MATH_ARITHMETIC_TOOLTIP_MULTIPLY": "Grąžina dviejų skaičių sandaugą.",
+ "MATH_ARITHMETIC_TOOLTIP_DIVIDE": "Grąžina dviejų skaičių dalmenį.",
+ "MATH_ARITHMETIC_TOOLTIP_POWER": "Grąžina pirmą skaičių pakeltą laipsniu pagal antrą skaičių.",
+ "MATH_SINGLE_HELPURL": "https://en.wikipedia.org/wiki/Square_root",
+ "MATH_SINGLE_OP_ROOT": "kvadratinė šaknis",
+ "MATH_SINGLE_OP_ABSOLUTE": "modulis",
+ "MATH_SINGLE_TOOLTIP_ABS": "Skaičiaus modulis - reikšmė be ženklo (panaikina minusą).",
+ "MATH_SINGLE_TOOLTIP_NEG": "Grąžina skaičiui priešingą skaičių.",
+ "MATH_SINGLE_TOOLTIP_LN": "Grąžinti skaičiaus natūrinį logaritmą.",
+ "MATH_SINGLE_TOOLTIP_EXP": "Grąžinti skaičių laipsniu e.",
+ "MATH_SINGLE_TOOLTIP_POW10": "Grąžinti skaičių laipsniu 10.",
+ "MATH_TRIG_HELPURL": "https://lt.wikipedia.org/wiki/Trigonometrinės_funkcijos",
+ "MATH_TRIG_TOOLTIP_SIN": "Grąžinti laipsnio sinusą (ne radiano).",
+ "MATH_TRIG_TOOLTIP_COS": "Grąžinti laipsnio kosinusą (ne radiano).",
+ "MATH_TRIG_TOOLTIP_TAN": "Grąžinti laipsnio tangentą (ne radiano).",
+ "MATH_TRIG_TOOLTIP_ASIN": "Grąžinti skaičiaus arksinusą.",
+ "MATH_TRIG_TOOLTIP_ACOS": "Grąžinti skaičiaus arkkosinusą.",
+ "MATH_TRIG_TOOLTIP_ATAN": "Grąžinti skaičiaus arktangentą.",
+ "MATH_CONSTANT_HELPURL": "https://en.wikipedia.org/wiki/Mathematical_constant",
+ "MATH_IS_EVEN": "yra lyginis",
+ "MATH_IS_ODD": "yra nelyginis",
+ "MATH_IS_PRIME": "yra pirminis",
+ "MATH_IS_WHOLE": "yra sveikasis",
+ "MATH_IS_POSITIVE": "yra teigiamas",
+ "MATH_IS_NEGATIVE": "yra neigiamas",
+ "MATH_IS_DIVISIBLE_BY": "yra dalus iš",
+ "MATH_IS_TOOLTIP": "Patikrina skaičiaus savybę: (ne)lyginis/pirminis/sveikasis/teigiamas/neigiamas/dalus iš x.",
+ "MATH_CHANGE_HELPURL": "https://en.wikipedia.org/wiki/Programming_idiom#Incrementing_a_counter",
+ "MATH_CHANGE_TITLE": "padidink %1 (emptypage) %2",
+ "MATH_CHANGE_TOOLTIP": "Prideda skaičių prie kintamojo '%1'. Kai skaičius neigiamas - gaunasi atimtis.",
+ "MATH_ROUND_HELPURL": "https://lt.wikipedia.org/wiki/Apvalinimas",
+ "MATH_ROUND_TOOLTIP": "Suapvalinti skaičių į žemesnę ar aukštesnę reikšmę.",
+ "MATH_ROUND_OPERATOR_ROUND": "apvalink",
+ "MATH_ROUND_OPERATOR_ROUNDUP": "apvalink aukštyn",
+ "MATH_ROUND_OPERATOR_ROUNDDOWN": "apvalink žemyn",
+ "MATH_ONLIST_OPERATOR_SUM": "suma",
+ "MATH_ONLIST_TOOLTIP_SUM": "didžiausia reikšmė",
+ "MATH_ONLIST_OPERATOR_MIN": "mažiausia reikšmė sąraše",
+ "MATH_ONLIST_OPERATOR_MAX": "didžiausia reikšmė sąraše",
+ "MATH_ONLIST_OPERATOR_AVERAGE": "vidurkis",
+ "MATH_ONLIST_OPERATOR_MEDIAN": "mediana sąrašui",
+ "MATH_ONLIST_TOOLTIP_MEDIAN": "Grąžinti sąrašo medianą.",
+ "MATH_ONLIST_OPERATOR_MODE": "statistinė moda sąrašui",
+ "MATH_ONLIST_TOOLTIP_MODE": "Grąžinti sąrašą dažniausių elementų sąraše.",
+ "MATH_ONLIST_OPERATOR_STD_DEV": "standartinis nuokrypis sąraše",
+ "MATH_ONLIST_OPERATOR_RANDOM": "atsitiktinis elementas iš sąrašo",
+ "MATH_ONLIST_TOOLTIP_RANDOM": "Grąžinti atsitiktinį elementą iš sąrašo.",
+ "MATH_MODULO_HELPURL": "https://en.wikipedia.org/wiki/Modulo_operation",
+ "MATH_MODULO_TITLE": "dalybos liekana %1 ÷ %2",
+ "MATH_CONSTRAIN_TITLE": "apribok %1 tarp %2 ir %3",
+ "MATH_RANDOM_INT_HELPURL": "https://en.wikipedia.org/wiki/Random_number_generation",
+ "MATH_RANDOM_INT_TITLE": "atsitiktinis sveikas sk. nuo %1 iki %2",
+ "MATH_RANDOM_FLOAT_HELPURL": "https://en.wikipedia.org/wiki/Random_number_generation",
+ "MATH_RANDOM_FLOAT_TITLE_RANDOM": "atsitiktinė trupmena",
+ "MATH_RANDOM_FLOAT_TOOLTIP": "Atsitiktinė trupmena nuo 0 (imtinai) iki 1 (neimtinai).",
+ "TEXT_TEXT_TOOLTIP": "Tekstas (arba žodis, ar raidė)",
+ "TEXT_JOIN_TITLE_CREATEWITH": "sukurti tekstą su",
+ "TEXT_CREATE_JOIN_TITLE_JOIN": "sujunk",
+ "TEXT_CREATE_JOIN_ITEM_TOOLTIP": "Pridėti teksto elementą.",
+ "TEXT_APPEND_TO": "prie",
+ "TEXT_APPEND_APPENDTEXT": "pridėk tekstą",
+ "TEXT_LENGTH_TITLE": "teksto %1 ilgis",
+ "TEXT_LENGTH_TOOLTIP": "Suranda teksto simbolių kiekį (įskaitant ir tarpus)",
+ "TEXT_ISEMPTY_TITLE": "%1 yra tuščias",
+ "TEXT_INDEXOF_INPUT_INTEXT": "tekste",
+ "TEXT_INDEXOF_OPERATOR_FIRST": "rask,kur pirmą kartą paminėta",
+ "TEXT_INDEXOF_OPERATOR_LAST": "rask,kur paskutinį kartą paminėta",
+ "TEXT_CHARAT_INPUT_INTEXT": "tekste",
+ "TEXT_CHARAT_FROM_START": "gauti raidę #",
+ "TEXT_CHARAT_FROM_END": "raidė nuo galo #",
+ "TEXT_CHARAT_FIRST": "gauti pirmą raidę",
+ "TEXT_CHARAT_LAST": "gauti paskutinę raidę",
+ "TEXT_CHARAT_RANDOM": "gauti atsitiktinę raidę",
+ "TEXT_GET_SUBSTRING_INPUT_IN_TEXT": "tekste",
+ "TEXT_GET_SUBSTRING_START_FROM_START": "dalis nuo raidės #",
+ "TEXT_GET_SUBSTRING_START_FROM_END": "dalis nuo raidės #",
+ "TEXT_GET_SUBSTRING_START_FIRST": "dalis nuo pradžios",
+ "TEXT_GET_SUBSTRING_END_FROM_START": "iki raidės #",
+ "TEXT_GET_SUBSTRING_END_FROM_END": "iki raidės nuo galo #",
+ "TEXT_GET_SUBSTRING_END_LAST": "iki pabaigos",
+ "TEXT_CHANGECASE_OPERATOR_UPPERCASE": " DIDŽIOSIOM RAIDĖM",
+ "TEXT_CHANGECASE_OPERATOR_LOWERCASE": " mažosiom raidėm",
+ "TEXT_CHANGECASE_OPERATOR_TITLECASE": " Pavadinimo Raidėmis",
+ "TEXT_TRIM_OPERATOR_BOTH": "išvalyk tarpus šonuose",
+ "TEXT_TRIM_OPERATOR_LEFT": "išvalyk tarpus pradžioje",
+ "TEXT_TRIM_OPERATOR_RIGHT": "išvalyk tarpus pabaigoje",
+ "TEXT_PRINT_TITLE": "spausdinti %1",
+ "TEXT_PROMPT_TYPE_TEXT": "paprašyk įvesti tekstą :",
+ "TEXT_PROMPT_TYPE_NUMBER": "paprašyk įvesti skaičių :",
+ "TEXT_PROMPT_TOOLTIP_NUMBER": "Prašyti vartotoją įvesti skaičių.",
+ "TEXT_PROMPT_TOOLTIP_TEXT": "Prašyti vartotoją įvesti tekstą.",
+ "LISTS_CREATE_EMPTY_TITLE": "tuščias sąrašas",
+ "LISTS_CREATE_EMPTY_TOOLTIP": "Grąžina sąrašą, ilgio 0, neturintį duomenų",
+ "LISTS_CREATE_WITH_TOOLTIP": "Sukurti sąrašą iš bet kokio skaičiaus elementų.",
+ "LISTS_CREATE_WITH_INPUT_WITH": "sukurti sąrašą su",
+ "LISTS_CREATE_WITH_CONTAINER_TITLE_ADD": "sąrašas",
+ "LISTS_CREATE_WITH_ITEM_TOOLTIP": "Pridėti elementą į sąrašą.",
+ "LISTS_REPEAT_TITLE": "sukurk sąrašą, kuriame %1 bus %2 kartus",
+ "LISTS_LENGTH_TITLE": "ilgis %1",
+ "LISTS_LENGTH_TOOLTIP": "Grąžina sąrašo ilgį.",
+ "LISTS_ISEMPTY_TITLE": "%1 yra tuščias",
+ "LISTS_ISEMPTY_TOOLTIP": "Grąžina „true“, jeigu sąrašas tuščias.",
+ "LISTS_INLIST": "sąraše",
+ "LISTS_INDEX_OF_FIRST": "rask pirmą reikšmę",
+ "LISTS_INDEX_OF_LAST": "rask paskutinę reikšmę",
+ "LISTS_INDEX_OF_TOOLTIP": "Grąžina pirmos/paskutinės reikšmės eilės nr. sąraše. Grąžina %1, jei reikšmės neranda.",
+ "LISTS_GET_INDEX_GET": "paimk",
+ "LISTS_GET_INDEX_GET_REMOVE": "paimk ir ištrink",
+ "LISTS_GET_INDEX_REMOVE": "pašalinti",
+ "LISTS_GET_INDEX_FROM_END": "# nuo galo",
+ "LISTS_GET_INDEX_FIRST": "pirmas",
+ "LISTS_GET_INDEX_LAST": "paskutinis",
+ "LISTS_GET_INDEX_RANDOM": "atsitiktinis",
+ "LISTS_INDEX_FROM_START_TOOLTIP": "%1 yra pirmasis objektas.",
+ "LISTS_INDEX_FROM_END_TOOLTIP": "%1 yra paskutinis objektas.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_FROM": "Gražina objektą į nurodyta poziciją sąraše.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_FIRST": "Grąžina pirmąjį sąrašo elementą.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_LAST": "Grąžina paskutinį elementą iš sąrašo.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_RANDOM": "Grąžina atsitiktinį elementą iš sąrašo.",
+ "LISTS_SET_INDEX_SET": "priskirk elementui",
+ "LISTS_SET_INDEX_INSERT": "įterpk į vietą",
+ "LISTS_SET_INDEX_INPUT_TO": "kaip",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_FROM": "Įterpią objektą į nurodytą poziciją sąraše.",
+ "LISTS_GET_SUBLIST_START_FROM_START": "sąrašo dalis nuo #",
+ "LISTS_GET_SUBLIST_START_FROM_END": "sąrašo dalis nuo # nuo galo",
+ "LISTS_GET_SUBLIST_START_FIRST": "sąrašo dalis nuo pradžios",
+ "LISTS_GET_SUBLIST_END_FROM_START": "iki #",
+ "LISTS_GET_SUBLIST_END_FROM_END": "iki # nuo galo",
+ "LISTS_GET_SUBLIST_END_LAST": "iki galo",
+ "LISTS_SORT_HELPURL": "https://github.com/google/blockly/wiki/Lists#sorting-a-list",
+ "LISTS_SORT_TITLE": "rūšiuoti %1 %2 %3",
+ "LISTS_SORT_TOOLTIP": "Rūšiuoti sąrašo kopiją.",
+ "LISTS_SORT_ORDER_ASCENDING": "didėjančia tvarka",
+ "LISTS_SORT_ORDER_DESCENDING": "mažėjančia tvarka",
+ "LISTS_SORT_TYPE_NUMERIC": "skaitmeninis",
+ "LISTS_SORT_TYPE_TEXT": "abėcėlės",
+ "LISTS_SORT_TYPE_IGNORECASE": "abecėlės, ignoruoti raidžių dydį",
+ "LISTS_SPLIT_WITH_DELIMITER": "su dalikliu",
+ "VARIABLES_GET_CREATE_SET": "Sukurk \"priskirk %1\"",
+ "VARIABLES_SET": "priskirk %1 = %2",
+ "VARIABLES_SET_CREATE_GET": "Sukurti 'kintamasis %1'",
+ "PROCEDURES_DEFNORETURN_TITLE": "komanda:",
+ "PROCEDURES_DEFNORETURN_PROCEDURE": "daryk kažką",
+ "PROCEDURES_BEFORE_PARAMS": "pagal:",
+ "PROCEDURES_CALL_BEFORE_PARAMS": "su:",
+ "PROCEDURES_DEFNORETURN_TOOLTIP": "Sukuria procedūrą - komandą, kuri nepateikia jokio rezultato (tik atlieka veiksmus).",
+ "PROCEDURES_DEFRETURN_RETURN": "duok",
+ "PROCEDURES_DEFRETURN_TOOLTIP": "Sukuria funkciją - komandą, kuri ne tik atlieka veiksmus bet ir pateikia (grąžina/duoda) rezultatą.",
+ "PROCEDURES_ALLOW_STATEMENTS": "leisti vidinius veiksmus",
+ "PROCEDURES_DEF_DUPLICATE_WARNING": "Ši komanda turi du vienodus gaunamų duomenų pavadinimus.",
+ "PROCEDURES_CALLNORETURN_HELPURL": "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29",
+ "PROCEDURES_CALLNORETURN_TOOLTIP": "Vykdyti sukurtą komandą \"%1\".",
+ "PROCEDURES_CALLRETURN_HELPURL": "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29",
+ "PROCEDURES_CALLRETURN_TOOLTIP": "Įvykdyti komandą \"%1\" ir naudoti jos suskaičiuotą (atiduotą) reikšmę.",
+ "PROCEDURES_MUTATORCONTAINER_TITLE": "gaunami duomenys (parametrai)",
+ "PROCEDURES_MUTATORCONTAINER_TOOLTIP": "Tvarkyti komandos gaunamus duomenis (parametrus).",
+ "PROCEDURES_MUTATORARG_TITLE": "parametro pavadinimas:",
+ "PROCEDURES_MUTATORARG_TOOLTIP": "Pridėti funkcijos parametrą (gaunamų duomenų pavadinimą).",
+ "PROCEDURES_CREATE_DO": "Sukurti \"%1\"",
+ "PROCEDURES_IFRETURN_TOOLTIP": "Jeigu pirma reikšmė yra teisinga (sąlyga tenkinama), grąžina antrą reikšmę.",
+ "PROCEDURES_IFRETURN_WARNING": "Perspėjimas: šis blokas gali būti naudojamas tik aprašant funkciją."
+}
diff --git a/blockly/msg/json/mk.json b/blockly/msg/json/mk.json
new file mode 100644
index 0000000..c9f8a86
--- /dev/null
+++ b/blockly/msg/json/mk.json
@@ -0,0 +1,112 @@
+{
+ "@metadata": {
+ "authors": [
+ "Bjankuloski06"
+ ]
+ },
+ "VARIABLES_DEFAULT_NAME": "елемент",
+ "DUPLICATE_BLOCK": "Ископирај",
+ "ADD_COMMENT": "Додај коментар:",
+ "REMOVE_COMMENT": "Отстрани коментар",
+ "EXTERNAL_INPUTS": "Надворешен внос",
+ "INLINE_INPUTS": "Внатрешен внос",
+ "DELETE_BLOCK": "Избриши блок",
+ "DELETE_X_BLOCKS": "Избриши %1 блока",
+ "DELETE_ALL_BLOCKS": "Да ги избришам сите %1 блокчиња?",
+ "COLLAPSE_BLOCK": "Собери блок",
+ "COLLAPSE_ALL": "Собери блокови",
+ "EXPAND_BLOCK": "Рашири го блокови",
+ "EXPAND_ALL": "Рашири блокови",
+ "DISABLE_BLOCK": "Исклучи блок",
+ "ENABLE_BLOCK": "Вклучи блок",
+ "HELP": "Помош",
+ "CHANGE_VALUE_TITLE": "Смена на вредност:",
+ "NEW_VARIABLE": "Нова променлива...",
+ "NEW_VARIABLE_TITLE": "Назив на новата променлива:",
+ "RENAME_VARIABLE": "Преименувај променлива...",
+ "RENAME_VARIABLE_TITLE": "Преименувај ги сите променливи „%1“ во:",
+ "COLOUR_PICKER_HELPURL": "https://mk.wikipedia.org/wiki/Боја",
+ "COLOUR_PICKER_TOOLTIP": "Изберете боја од палетата.",
+ "COLOUR_RANDOM_TITLE": "случајна боја",
+ "COLOUR_RANDOM_TOOLTIP": "Избери боја на тепка.",
+ "COLOUR_RGB_TITLE": "боја со",
+ "COLOUR_RGB_RED": "црвена",
+ "COLOUR_RGB_GREEN": "зелена",
+ "COLOUR_RGB_BLUE": "сина",
+ "COLOUR_RGB_TOOLTIP": "Создајте боја со укажаните износи на црвена, зелена и сина. Сите вредности мора да бидат помеѓу 0 и 100.",
+ "COLOUR_BLEND_TITLE": "смешај",
+ "COLOUR_BLEND_COLOUR1": "боја 1",
+ "COLOUR_BLEND_COLOUR2": "боја 2",
+ "COLOUR_BLEND_RATIO": "сооднос",
+ "COLOUR_BLEND_TOOLTIP": "Меша две бои во даден сооднос (0.0 - 1.0).",
+ "CONTROLS_REPEAT_HELPURL": "https://mk.wikipedia.org/wiki/For-јамка",
+ "CONTROLS_REPEAT_TITLE": "повтори %1 пати",
+ "CONTROLS_REPEAT_INPUT_DO": "исполни",
+ "CONTROLS_REPEAT_TOOLTIP": "Исполнува наредби неколку пати.",
+ "CONTROLS_WHILEUNTIL_OPERATOR_WHILE": "повторувај додека",
+ "CONTROLS_WHILEUNTIL_OPERATOR_UNTIL": "повторувај сè до",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_WHILE": "Додека вредноста е вистинита, исполнува наредби.",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL": "Додека вредноста е невистинита, исполнува наредби.",
+ "CONTROLS_FOR_TOOLTIP": "Променливата \"%1\" да ги земе вредностите од почетниот до завршниот број, броејќи според укажаниот интервал и ги исполнува укажаните блокови.",
+ "CONTROLS_FOR_TITLE": "број со %1 од %2 до %3 со %4",
+ "CONTROLS_FOREACH_TITLE": "за секој елемент %1 на списокот %2",
+ "CONTROLS_FOREACH_TOOLTIP": "Му ја задава променливата „%1“ на секој елемент на списокот, а потоа исполнува наредби.",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK": "излези од јамката",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE": "продолжи со следното повторување на јамката",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK": "Излези од содржечката јамка.",
+ "CONTROLS_IF_MSG_IF": "ако",
+ "CONTROLS_IF_MSG_ELSEIF": "инаку ако",
+ "CONTROLS_IF_MSG_ELSE": "инаку",
+ "CONTROLS_IF_IF_TOOLTIP": "Додава, отстранува или прередува делови за прераспоредување на овој блок „ако“.",
+ "LOGIC_COMPARE_HELPURL": "https://mk.wikipedia.org/wiki/Неравенство",
+ "LOGIC_COMPARE_TOOLTIP_EQ": "Дава вистина ако обата вноса се еднакви.",
+ "LOGIC_COMPARE_TOOLTIP_NEQ": "Дава вистина ако обата вноса не се еднакви.",
+ "LOGIC_COMPARE_TOOLTIP_LT": "Дава вистина ако првиот внос е помал од вториот.",
+ "LOGIC_COMPARE_TOOLTIP_LTE": "Дава вистина ако првиот внос е помал или еднаков на вториот.",
+ "LOGIC_COMPARE_TOOLTIP_GT": "Дава вистина ако првиот внос е поголем од вториот.",
+ "LOGIC_COMPARE_TOOLTIP_GTE": "Дава вистина ако првиот внос е поголем или еднаков на вториот.",
+ "LOGIC_OPERATION_TOOLTIP_AND": "Дава вистина ако обата вноса се вистинити.",
+ "LOGIC_OPERATION_AND": "и",
+ "LOGIC_OPERATION_TOOLTIP_OR": "Дава вистина ако барем еден од вносовите е вистинит.",
+ "LOGIC_OPERATION_OR": "или",
+ "LOGIC_NEGATE_TITLE": "не %1",
+ "LOGIC_NEGATE_TOOLTIP": "Дава вистина ако вносот е невистинит. Дава невистина ако вносот е вистинит.",
+ "LOGIC_BOOLEAN_TRUE": "вистина",
+ "LOGIC_BOOLEAN_FALSE": "невистина",
+ "LOGIC_BOOLEAN_TOOLTIP": "Дава или вистина или невистина.",
+ "LOGIC_NULL": "ништо",
+ "LOGIC_NULL_TOOLTIP": "Дава ништо.",
+ "LOGIC_TERNARY_CONDITION": "испробај",
+ "LOGIC_TERNARY_IF_TRUE": "ако е вистинито",
+ "LOGIC_TERNARY_IF_FALSE": "ако е невистинито",
+ "MATH_CONSTANT_HELPURL": "https://mk.wikipedia.org/wiki/Математичка_константа",
+ "MATH_CONSTANT_TOOLTIP": "Дава една од вообичаените константи: π (3.141…), e (2.718…), φ (1.618…), sqrt(2) (1.414…), sqrt(½) (0.707…), или ∞ (бесконечност).",
+ "MATH_IS_EVEN": "е парен",
+ "MATH_IS_ODD": "е непарен",
+ "MATH_IS_PRIME": "е прост",
+ "MATH_IS_WHOLE": "е цел",
+ "MATH_IS_POSITIVE": "е позитивен",
+ "MATH_IS_NEGATIVE": "е негативен",
+ "MATH_IS_DIVISIBLE_BY": "е делив со",
+ "MATH_IS_TOOLTIP": "Проверува дали бројот е парен, непарен, прост, цел, позитивен, негативен или делив со некој број. Дава вистина или невистина.",
+ "MATH_CHANGE_HELPURL": "https://en.wikipedia.org/wiki/Programming_idiom#Incrementing_a_counter?uselang=mk",
+ "MATH_CHANGE_TITLE": "повиши %1 за %2",
+ "MATH_CHANGE_TOOLTIP": "Ѝ додава број на променливата „%1“.",
+ "MATH_ROUND_HELPURL": "https://mk.wikipedia.org/wiki/Заокружување",
+ "MATH_ROUND_TOOLTIP": "Го заокружува бројот на поголем или помал.",
+ "MATH_ROUND_OPERATOR_ROUND": "заокружи",
+ "MATH_ROUND_OPERATOR_ROUNDUP": "заокружи на поголемо",
+ "MATH_ROUND_OPERATOR_ROUNDDOWN": "заокружи на помало",
+ "MATH_ONLIST_OPERATOR_SUM": "збир од списокот",
+ "MATH_ONLIST_TOOLTIP_SUM": "Дава збир од сите броеви на списокот.",
+ "MATH_ONLIST_OPERATOR_MIN": "најмал на списокот",
+ "MATH_ONLIST_TOOLTIP_MIN": "Го дава најмалиот број на списокот.",
+ "MATH_ONLIST_OPERATOR_MAX": "најголем на списокот",
+ "MATH_ONLIST_TOOLTIP_MAX": "Го дава најголемиот број на списокот.",
+ "MATH_ONLIST_OPERATOR_AVERAGE": "просек на списокот",
+ "MATH_ONLIST_TOOLTIP_AVERAGE": "Дава просек (аритметичка средина) од броевите на списокот.",
+ "MATH_ONLIST_OPERATOR_MEDIAN": "медијана на списокот",
+ "MATH_ONLIST_TOOLTIP_MEDIAN": "Дава медијана од броевите на списокот.",
+ "MATH_ONLIST_OPERATOR_MODE": "модул на списокот",
+ "MATH_ONLIST_TOOLTIP_MODE": "Дава список на најзастапен(и) елемент(и) на списокот."
+}
diff --git a/blockly/msg/json/ms.json b/blockly/msg/json/ms.json
new file mode 100644
index 0000000..cd7d828
--- /dev/null
+++ b/blockly/msg/json/ms.json
@@ -0,0 +1,314 @@
+{
+ "@metadata": {
+ "authors": [
+ "Anakmalaysia",
+ "Espertus"
+ ]
+ },
+ "VARIABLES_DEFAULT_NAME": "Perkara",
+ "TODAY": "Hari ini",
+ "DUPLICATE_BLOCK": "Pendua",
+ "ADD_COMMENT": "Berikan Komen",
+ "REMOVE_COMMENT": "Padamkan Komen",
+ "EXTERNAL_INPUTS": "Input Luaran",
+ "INLINE_INPUTS": "Input Sebaris",
+ "DELETE_BLOCK": "Hapuskan Blok",
+ "DELETE_X_BLOCKS": "Hapuskan %1 Blok",
+ "DELETE_ALL_BLOCKS": "Hapuskan kesemua %1 blok?",
+ "CLEAN_UP": "Kemaskan Blok",
+ "COLLAPSE_BLOCK": "Lipat Blok",
+ "COLLAPSE_ALL": "Lipat Blok²",
+ "EXPAND_BLOCK": "Buka Blok",
+ "EXPAND_ALL": "Buka Blok²",
+ "DISABLE_BLOCK": "Matikan Blok",
+ "ENABLE_BLOCK": "Hidupkan Blok",
+ "HELP": "Bantuan",
+ "CHANGE_VALUE_TITLE": "Ubah nilai:",
+ "RENAME_VARIABLE": "Tukar nama pembolehubah...",
+ "RENAME_VARIABLE_TITLE": "Tukar nama semua pembolehubah '%1' kepada:",
+ "NEW_VARIABLE": "Pembolehubah baru...",
+ "NEW_VARIABLE_TITLE": "Nama pembolehubah baru:",
+ "COLOUR_PICKER_HELPURL": "https://ms.wikipedia.org/wiki/Warna",
+ "COLOUR_PICKER_TOOLTIP": "Pilih satu warna daripada palet.",
+ "COLOUR_RANDOM_TITLE": "warna rawak",
+ "COLOUR_RANDOM_TOOLTIP": "Pilih satu warna secara rawak.",
+ "COLOUR_RGB_TITLE": "warnakan",
+ "COLOUR_RGB_RED": "merah",
+ "COLOUR_RGB_GREEN": "hijau",
+ "COLOUR_RGB_BLUE": "biru",
+ "COLOUR_RGB_TOOLTIP": "Peroleh satu warna dengan menentukan amaun campuran merah, hijau dan biru. Kesemua nilai haruslah antara 0 hingga 100.",
+ "COLOUR_BLEND_TITLE": "adun",
+ "COLOUR_BLEND_COLOUR1": "warna 1",
+ "COLOUR_BLEND_COLOUR2": "warna 2",
+ "COLOUR_BLEND_RATIO": "nisbah",
+ "COLOUR_BLEND_TOOLTIP": "Campurkan dua warna sekali pada nisbah yang ditentukan (0.0 - 1.0).",
+ "CONTROLS_REPEAT_HELPURL": "https://en.wikipedia.org/wiki/For_loop",
+ "CONTROLS_REPEAT_TITLE": "ulang %1 kali",
+ "CONTROLS_REPEAT_INPUT_DO": "lakukan",
+ "CONTROLS_REPEAT_TOOLTIP": "Lakukan perintah berulang kali.",
+ "CONTROLS_WHILEUNTIL_OPERATOR_WHILE": "ulangi apabila",
+ "CONTROLS_WHILEUNTIL_OPERATOR_UNTIL": "ulangi sehingga",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_WHILE": "Lakukan beberapa perintah apabila nilainya benar (true).",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL": "Lakukan beberapa perintah apabila nilainya palsu (false).",
+ "CONTROLS_FOR_TOOLTIP": "Gunakan pembolehubah '%1' pada nilai-nilai dari nombor pangkal hingga nombor hujung, mengira mengikut selang yang ditentukan, dan lakukan blok-blok yang tertentu.",
+ "CONTROLS_FOR_TITLE": "kira dengan %1 dari %2 hingga %3 selang %4",
+ "CONTROLS_FOREACH_TITLE": "untuk setiap perkara %1 dalam senarai %2",
+ "CONTROLS_FOREACH_TOOLTIP": "Untuk setiap perkara dalam senarai, tetapkan pembolehubah '%1' pada perkara, kemudian lakukan beberapa perintah.",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK": "hentikan gelung",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE": "teruskan dengan lelaran gelung seterusnya",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK": "Keluar dari gelung pengandung.",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE": "Langkau seluruh gelung yang tinggal dan bersambung dengan lelaran seterusnya.",
+ "CONTROLS_FLOW_STATEMENTS_WARNING": "Amaran: Blok ini hanya boleh digunakan dalam satu gelung.",
+ "CONTROLS_IF_TOOLTIP_1": "Jika nilai yang benar, lakukan beberapa penyata.",
+ "CONTROLS_IF_TOOLTIP_2": "Jika suatu nilai benar, lakukan penyata blok pertama. Jika tidak, bina penyata blok kedua.",
+ "CONTROLS_IF_TOOLTIP_3": "Jika nilai yang pertama adalah benar, lakukan penyata pertama blok. Sebaliknya, jika nilai kedua adalah benar, lakukan penyata blok kedua.",
+ "CONTROLS_IF_TOOLTIP_4": "Jika nilai yang pertama adalah benar, lakukan penyata blok pertama. Sebaliknya, jika nilai kedua adalah benar, lakukan penyata blok kedua. Jika tiada nilai adalah benar, lakukan penyata blok terakhir.",
+ "CONTROLS_IF_MSG_IF": "jika",
+ "CONTROLS_IF_MSG_ELSEIF": "lain jika",
+ "CONTROLS_IF_MSG_ELSE": "lain",
+ "CONTROLS_IF_IF_TOOLTIP": "Tambah, alih keluar, atau susun semula bahagian-bahagian untuk menyusun semula blok jika.",
+ "CONTROLS_IF_ELSEIF_TOOLTIP": "Tambah satu syarat kepada blok jika.",
+ "CONTROLS_IF_ELSE_TOOLTIP": "Tambah yang terakhir, alihkan semua keadaan ke blok jika.",
+ "LOGIC_COMPARE_HELPURL": "https://id.wikipedia.org/wiki/Pertidaksamaan",
+ "LOGIC_COMPARE_TOOLTIP_EQ": "Kembali benar jika kedua-dua input benar antara satu sama lain.",
+ "LOGIC_COMPARE_TOOLTIP_NEQ": "Taip balik benar jika kedua-dua input tidak sama.",
+ "LOGIC_COMPARE_TOOLTIP_LT": "Kembali benar jika input pertama adalah lebih kecil daripada input kedua.",
+ "LOGIC_COMPARE_TOOLTIP_LTE": "Kembali benar jika input pertama adalah lebih kecil daripada atau sama dengan input kedua.",
+ "LOGIC_COMPARE_TOOLTIP_GT": "Kembali benar jika input pertama adalah lebih besar daripada input kedua.",
+ "LOGIC_COMPARE_TOOLTIP_GTE": "Kembali benar jika input pertama adalah lebih besar daripada atau sama dengan input kedua.",
+ "LOGIC_OPERATION_TOOLTIP_AND": "Return true if both inputs are true.",
+ "LOGIC_OPERATION_AND": "dan",
+ "LOGIC_OPERATION_TOOLTIP_OR": "Return true if at least one of the inputs is true.",
+ "LOGIC_OPERATION_OR": "atau",
+ "LOGIC_NEGATE_TITLE": "bukan %1",
+ "LOGIC_NEGATE_TOOLTIP": "'Benar' akan dibalas jika inputnya salah. 'Salah' akan dibalas jika inputnya benar.",
+ "LOGIC_BOOLEAN_TRUE": "benar",
+ "LOGIC_BOOLEAN_FALSE": "palsu",
+ "LOGIC_BOOLEAN_TOOLTIP": "Kembalikan samada benar atau palsu.",
+ "LOGIC_NULL": "null",
+ "LOGIC_NULL_TOOLTIP": "Returns null.",
+ "LOGIC_TERNARY_CONDITION": "test",
+ "LOGIC_TERNARY_IF_TRUE": "Jika benar",
+ "LOGIC_TERNARY_IF_FALSE": "Jika palsu",
+ "LOGIC_TERNARY_TOOLTIP": "Check the condition in 'test'. If the condition is true, returns the 'if true' value; otherwise returns the 'if false' value.",
+ "MATH_NUMBER_HELPURL": "https://ms.wikipedia.org/wiki/Nombor",
+ "MATH_NUMBER_TOOLTIP": "Suatu nombor.",
+ "MATH_ADDITION_SYMBOL": "+",
+ "MATH_SUBTRACTION_SYMBOL": "-",
+ "MATH_DIVISION_SYMBOL": "÷",
+ "MATH_MULTIPLICATION_SYMBOL": "×",
+ "MATH_POWER_SYMBOL": "^",
+ "MATH_TRIG_SIN": "sin",
+ "MATH_TRIG_COS": "cos",
+ "MATH_TRIG_TAN": "tan",
+ "MATH_TRIG_ASIN": "asin",
+ "MATH_TRIG_ACOS": "acos",
+ "MATH_TRIG_ATAN": "atan",
+ "MATH_ARITHMETIC_HELPURL": "https://ms.wikipedia.org/wiki/Aritmetik",
+ "MATH_ARITHMETIC_TOOLTIP_ADD": "Kembalikan jumlah kedua-dua bilangan.",
+ "MATH_ARITHMETIC_TOOLTIP_MINUS": "Taip balik hasil tolak dua nombor tersebut.",
+ "MATH_ARITHMETIC_TOOLTIP_MULTIPLY": "Taip balik hasil darab dua nombor tersebut.",
+ "MATH_ARITHMETIC_TOOLTIP_DIVIDE": "Taip balik hasil bahagi dua nombor tersebut.",
+ "MATH_ARITHMETIC_TOOLTIP_POWER": "Return the first number raised to the power of the second number.",
+ "MATH_SINGLE_HELPURL": "https://ms.wikipedia.org/wiki/Punca_kuasa_dua",
+ "MATH_SINGLE_OP_ROOT": "Punca kuasa dua",
+ "MATH_SINGLE_TOOLTIP_ROOT": "Kembalikan punca kuasa nombor.",
+ "MATH_SINGLE_OP_ABSOLUTE": "mutlak",
+ "MATH_SINGLE_TOOLTIP_ABS": "Kembalikan nilai mutlak suatu nombor.",
+ "MATH_SINGLE_TOOLTIP_NEG": "Kembalikan nombor yang songsang.",
+ "MATH_SINGLE_TOOLTIP_LN": "Kembali dalam logaritma nombor asli.",
+ "MATH_SINGLE_TOOLTIP_LOG10": "Kembali logarithm 10 asas nombor.",
+ "MATH_SINGLE_TOOLTIP_EXP": "Kembalikan e kepada kuasa nombor.",
+ "MATH_SINGLE_TOOLTIP_POW10": "Kembalikan 10 kepada kuasa nombor.",
+ "MATH_TRIG_HELPURL": "https://ms.wikipedia.org/wiki/Fungsi_trigonometri",
+ "MATH_TRIG_TOOLTIP_SIN": "Kembalikan darjah sine (bukan radian).",
+ "MATH_TRIG_TOOLTIP_COS": "Kembalikan darjah kosinus (bukan radian).",
+ "MATH_TRIG_TOOLTIP_TAN": "Kembalikan darjah tangen (bukan radian).",
+ "MATH_TRIG_TOOLTIP_ASIN": "Kembalikan arcsince beberapa nombor.",
+ "MATH_TRIG_TOOLTIP_ACOS": "Kembali arccosine beberapa nombor.",
+ "MATH_TRIG_TOOLTIP_ATAN": "Kembalikan beberapa nombor arctangent.",
+ "MATH_CONSTANT_HELPURL": "https://ms.wikipedia.org/wiki/Pemalar_matematik",
+ "MATH_CONSTANT_TOOLTIP": "Return one of the common constants: π (3.141…), e (2.718…), φ (1.618…), sqrt(2) (1.414…), sqrt(½) (0.707…), or ∞ (infinity).",
+ "MATH_IS_EVEN": "Adalah genap",
+ "MATH_IS_ODD": "aneh",
+ "MATH_IS_PRIME": "is prime",
+ "MATH_IS_WHOLE": "is whole",
+ "MATH_IS_POSITIVE": "adalah positif",
+ "MATH_IS_NEGATIVE": "negatif",
+ "MATH_IS_DIVISIBLE_BY": "Boleh dibahagikan dengan",
+ "MATH_IS_TOOLTIP": "Check if a number is an even, odd, prime, whole, positive, negative, or if it is divisible by certain number. Returns true or false.",
+ "MATH_CHANGE_HELPURL": "https://id.wikipedia.org/wiki/Perjumlahan",
+ "MATH_CHANGE_TITLE": "perubahan %1 oleh %2",
+ "MATH_CHANGE_TOOLTIP": "Tambah nombor kepada pembolehubah '%1'.",
+ "MATH_ROUND_HELPURL": "https://en.wikipedia.org/wiki/Rounding",
+ "MATH_ROUND_TOOLTIP": "Bulat nombor yang naik atau turun.",
+ "MATH_ROUND_OPERATOR_ROUND": "pusingan",
+ "MATH_ROUND_OPERATOR_ROUNDUP": "pusingan ke atas",
+ "MATH_ROUND_OPERATOR_ROUNDDOWN": "Pusingan ke bawah",
+ "MATH_ONLIST_OPERATOR_SUM": "Jumlah senarai",
+ "MATH_ONLIST_TOOLTIP_SUM": "Kembalikan jumlah semua nombor dalam senarai.",
+ "MATH_ONLIST_OPERATOR_MIN": "min dalam senarai",
+ "MATH_ONLIST_TOOLTIP_MIN": "Kembalikan nombor terkecil dalam senarai.",
+ "MATH_ONLIST_OPERATOR_MAX": "Max senarai",
+ "MATH_ONLIST_TOOLTIP_MAX": "Pulangkan jumlah terbesar dalam senarai.",
+ "MATH_ONLIST_OPERATOR_AVERAGE": "purata daripada senarai",
+ "MATH_ONLIST_TOOLTIP_AVERAGE": "Kembalikan purata (min aritmetik) nilai-nilai angka di dalam senarai.",
+ "MATH_ONLIST_OPERATOR_MEDIAN": "Median senarai",
+ "MATH_ONLIST_TOOLTIP_MEDIAN": "Kembalikan nombor median dalam senarai.",
+ "MATH_ONLIST_OPERATOR_MODE": "jenis senarai",
+ "MATH_ONLIST_TOOLTIP_MODE": "Kembali senarai item yang paling biasa dalam senarai.",
+ "MATH_ONLIST_OPERATOR_STD_DEV": "sisihan piawai bagi senarai",
+ "MATH_ONLIST_TOOLTIP_STD_DEV": "Kembali dengan sisihan piawai daripada senarai.",
+ "MATH_ONLIST_OPERATOR_RANDOM": "Item rawak daripada senarai",
+ "MATH_ONLIST_TOOLTIP_RANDOM": "Kembalikan elemen rawak daripada senarai.",
+ "MATH_MODULO_HELPURL": "https://id.wikipedia.org/wiki/Operasi_modulus",
+ "MATH_MODULO_TITLE": "remainder of %1 ÷ %2",
+ "MATH_MODULO_TOOLTIP": "Taip balik baki yang didapat daripada pembahagian dua nombor tersebut.",
+ "MATH_CONSTRAIN_TITLE": "constrain %1 low %2 high %3",
+ "MATH_CONSTRAIN_TOOLTIP": "Constrain a number to be between the specified limits (inclusive).",
+ "MATH_RANDOM_INT_HELPURL": "https://en.wikipedia.org/wiki/Random_number_generation",
+ "MATH_RANDOM_INT_TITLE": "integer rawak dari %1ke %2",
+ "MATH_RANDOM_INT_TOOLTIP": "Kembalikan integer rawak diantara dua had yang ditentukan, inklusif.",
+ "MATH_RANDOM_FLOAT_HELPURL": "https://en.wikipedia.org/wiki/Random_number_generation",
+ "MATH_RANDOM_FLOAT_TITLE_RANDOM": "pecahan rawak",
+ "MATH_RANDOM_FLOAT_TOOLTIP": "Kembali sebahagian kecil rawak antara 0.0 (inklusif) dan 1.0 (eksklusif).",
+ "TEXT_TEXT_HELPURL": "https://ms.wikipedia.org/wiki/Rentetan",
+ "TEXT_TEXT_TOOLTIP": "Huruf, perkataan, atau baris teks.",
+ "TEXT_JOIN_TITLE_CREATEWITH": "hasilkan teks dengan",
+ "TEXT_JOIN_TOOLTIP": "Hasilkan sebahagian teks dengan menghubungkan apa jua nombor item.",
+ "TEXT_CREATE_JOIN_TITLE_JOIN": "Sertai",
+ "TEXT_CREATE_JOIN_TOOLTIP": "Add, remove, or reorder sections to reconfigure this text block.",
+ "TEXT_CREATE_JOIN_ITEM_TOOLTIP": "Add an item to the text.",
+ "TEXT_APPEND_TO": "Untuk",
+ "TEXT_APPEND_APPENDTEXT": "append text",
+ "TEXT_APPEND_TOOLTIP": "Append some text to variable '%1'.",
+ "TEXT_LENGTH_TITLE": "panjang %1",
+ "TEXT_LENGTH_TOOLTIP": "Kembalikan jumlah huruf (termasuk ruang) dalam teks yang disediakan.",
+ "TEXT_ISEMPTY_TITLE": "%1 adalah kosong",
+ "TEXT_ISEMPTY_TOOLTIP": "Kembalikan benar jika teks yang disediakan adalah kosong.",
+ "TEXT_INDEXOF_TOOLTIP": "Kembalikan Indeks kejadian pertama/terakhir dari teks pertama ke dalam teks kedua. Kembalikan %1 Jika teks tidak ditemui.",
+ "TEXT_INDEXOF_INPUT_INTEXT": "dalam teks",
+ "TEXT_INDEXOF_OPERATOR_FIRST": "mencari kejadian pertama teks",
+ "TEXT_INDEXOF_OPERATOR_LAST": "mencari kejadian terakhir teks",
+ "TEXT_CHARAT_INPUT_INTEXT": "Dalam teks",
+ "TEXT_CHARAT_FROM_START": "get letter #",
+ "TEXT_CHARAT_FROM_END": "get letter # from end",
+ "TEXT_CHARAT_FIRST": "get first letter",
+ "TEXT_CHARAT_LAST": "Dapatkan abjad terakhir",
+ "TEXT_CHARAT_RANDOM": "Dapatkan abjad rawak",
+ "TEXT_CHARAT_TOOLTIP": "Returns the letter at the specified position.",
+ "TEXT_GET_SUBSTRING_TOOLTIP": "Returns a specified portion of the text.",
+ "TEXT_GET_SUBSTRING_INPUT_IN_TEXT": "dalam teks",
+ "TEXT_GET_SUBSTRING_START_FROM_START": "get substring from letter #",
+ "TEXT_GET_SUBSTRING_START_FROM_END": "get substring from letter # from end",
+ "TEXT_GET_SUBSTRING_START_FIRST": "get substring from first letter",
+ "TEXT_GET_SUBSTRING_END_FROM_START": "to letter #",
+ "TEXT_GET_SUBSTRING_END_FROM_END": "to letter # from end",
+ "TEXT_GET_SUBSTRING_END_LAST": "untuk huruf terakhir",
+ "TEXT_CHANGECASE_TOOLTIP": "Return a copy of the text in a different case.",
+ "TEXT_CHANGECASE_OPERATOR_UPPERCASE": "Kepada HURUF BESAR",
+ "TEXT_CHANGECASE_OPERATOR_LOWERCASE": "Kepada huruf kecil",
+ "TEXT_CHANGECASE_OPERATOR_TITLECASE": "to Title Case",
+ "TEXT_TRIM_TOOLTIP": "Kembali salinan teks dengan ruang yang dikeluarkan daripada satu atau hujung kedua belah.",
+ "TEXT_TRIM_OPERATOR_BOTH": "mengurangkan kawasan dari kedua-dua belah",
+ "TEXT_TRIM_OPERATOR_LEFT": "mengurangkan ruang dari sebelah kiri",
+ "TEXT_TRIM_OPERATOR_RIGHT": "mengurangkan kawasan dari sisi kanan",
+ "TEXT_PRINT_TITLE": "cetak %1",
+ "TEXT_PRINT_TOOLTIP": "Cetak teks yang ditentukan, nombor atau nilai lain.",
+ "TEXT_PROMPT_TYPE_TEXT": "Prom untuk teks dengan mesej",
+ "TEXT_PROMPT_TYPE_NUMBER": "Prom untuk nombor dengan mesej",
+ "TEXT_PROMPT_TOOLTIP_NUMBER": "Peringatan kepada pengguna untuk nombor.",
+ "TEXT_PROMPT_TOOLTIP_TEXT": "Peringatkan pengguna untuk sebahagian teks.",
+ "LISTS_CREATE_EMPTY_TITLE": "Wujudkan senarai kosong",
+ "LISTS_CREATE_EMPTY_TOOLTIP": "Kembalikan senarai panjang 0, yang tidak mengandungi rekod data",
+ "LISTS_CREATE_WITH_HELPURL": "https://github.com/google/blockly/wiki/Lists#create-list-with",
+ "LISTS_CREATE_WITH_TOOLTIP": "Wujudkan senarai dengan apa jua nombor item.",
+ "LISTS_CREATE_WITH_INPUT_WITH": "wujudkan senarai dengan",
+ "LISTS_CREATE_WITH_CONTAINER_TITLE_ADD": "senarai",
+ "LISTS_CREATE_WITH_CONTAINER_TOOLTIP": "Tambah, alih keluar, atau susun semula bahagian-bahagian untuk menyusun semula senarai blok.",
+ "LISTS_CREATE_WITH_ITEM_TOOLTIP": "Tambah item ke dalam senarai.",
+ "LISTS_REPEAT_TOOLTIP": "Wujudkan senarai yang terdiri daripada nilai berulang mengikut nombor yang ditentukan.",
+ "LISTS_REPEAT_TITLE": "wujudkan senarai dengan item %1 diulangi %2 kali",
+ "LISTS_LENGTH_TITLE": "panjang %1",
+ "LISTS_LENGTH_TOOLTIP": "Kembalikan panjang senarai",
+ "LISTS_ISEMPTY_TITLE": "%1 adalah kosong",
+ "LISTS_ISEMPTY_TOOLTIP": "Kembalikan benar jika senarai kosong.",
+ "LISTS_INLIST": "dalam senarai",
+ "LISTS_INDEX_OF_FIRST": "cari pertama item kejadian",
+ "LISTS_INDEX_OF_LAST": "cari kejadian akhir item",
+ "LISTS_INDEX_OF_TOOLTIP": "Menyatakan indeks kejadian pertama/terakhir item berkenaan dalam senarai. Menyatakan %1 jika item berkenaan tidak ditemui.",
+ "LISTS_GET_INDEX_GET": "dapatkan",
+ "LISTS_GET_INDEX_GET_REMOVE": "dapat dan alihkan",
+ "LISTS_GET_INDEX_REMOVE": "alihkan",
+ "LISTS_GET_INDEX_FROM_START": "#",
+ "LISTS_GET_INDEX_FROM_END": "# dari akhir",
+ "LISTS_GET_INDEX_FIRST": "pertama",
+ "LISTS_GET_INDEX_LAST": "terakhir",
+ "LISTS_GET_INDEX_RANDOM": "rawak",
+ "LISTS_INDEX_FROM_START_TOOLTIP": "%1 ialah item pertama.",
+ "LISTS_INDEX_FROM_END_TOOLTIP": "%1 ialah item terakhir.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_FROM": "Kembalikan item dalam kedudukan yang ditetapkan dalam senarai.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_FIRST": "Kembalikan item pertama dalam senarai.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_LAST": "Kembalikan item pertama dalam senarai.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_RANDOM": "Kembalikan item rawak dalam senarai.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM": "Alihkan dan kembalikan item mengikut spesifikasi posisi dalam senarai.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST": "Alihkan dan kembalikan item pertama dalam senarai.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST": "Alihkan dan kembalikan item terakhir dalam senarai.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM": "Alihkan dan kembalikan item rawak dalam senarai.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM": "Alihkan item pada posisi mengikut spesifikasi dalam senarai.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST": "Alihkan item pertama dalam senarai.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST": "Alihkan item terakhir dalam senarai.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM": "Alihkan item rawak dalam senarai.",
+ "LISTS_SET_INDEX_SET": "set",
+ "LISTS_SET_INDEX_INSERT": "masukkan pada",
+ "LISTS_SET_INDEX_INPUT_TO": "sebagai",
+ "LISTS_SET_INDEX_TOOLTIP_SET_FROM": "Masukkan item pada posisi yang ditentukan dalam senarai.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_FIRST": "Set item pertama dalam senarai.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_LAST": "Set item terakhir dalam senarai.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_RANDOM": "Set item rawak dalam senarai.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_FROM": "Masukkan item pada posisi yand ditentukan dalam senarai.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST": "Selit item pada permulaan senarai.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_LAST": "Tambahkan item dalam senarai akhir.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM": "Selit item secara rawak di dalam senarai.",
+ "LISTS_GET_SUBLIST_START_FROM_START": "dapatkan sub-senarai daripada #",
+ "LISTS_GET_SUBLIST_START_FROM_END": "dapatkan sub-senarai daripada # daripada terakhir",
+ "LISTS_GET_SUBLIST_START_FIRST": "dapatkan sub-senarai daripada pertama",
+ "LISTS_GET_SUBLIST_END_FROM_START": "ke #",
+ "LISTS_GET_SUBLIST_END_FROM_END": "ke # dari akhir",
+ "LISTS_GET_SUBLIST_END_LAST": "ke akhir",
+ "LISTS_GET_SUBLIST_TOOLTIP": "Wujudkan salinan bahagian yang ditentukan dari senarai.",
+ "LISTS_SPLIT_HELPURL": "https://github.com/google/blockly/wiki/Lists#splitting-strings-and-joining-lists",
+ "LISTS_SPLIT_LIST_FROM_TEXT": "buat senarai dgn teks",
+ "LISTS_SPLIT_TEXT_FROM_LIST": "buat teks drpd senarai",
+ "LISTS_SPLIT_WITH_DELIMITER": "dengan delimiter",
+ "LISTS_SPLIT_TOOLTIP_SPLIT": "Pecahkan teks kepada senarai teks, berpecah di setiap delimiter.",
+ "LISTS_SPLIT_TOOLTIP_JOIN": "Cantumkan senarai teks menjadi satu teks, dipecahkan oleh delimiter.",
+ "VARIABLES_GET_TOOLTIP": "Kembalikan nilai pemboleh ubah ini.",
+ "VARIABLES_GET_CREATE_SET": "Hasilkan 'set %1'",
+ "VARIABLES_SET": "set %1 ke %2",
+ "VARIABLES_SET_TOOLTIP": "Set pembolehubah ini supaya sama dengan input.",
+ "VARIABLES_SET_CREATE_GET": "Hasilkan 'set %1'",
+ "PROCEDURES_DEFNORETURN_TITLE": "Untuk",
+ "PROCEDURES_DEFNORETURN_PROCEDURE": "Buat sesuatu",
+ "PROCEDURES_BEFORE_PARAMS": "dengan:",
+ "PROCEDURES_CALL_BEFORE_PARAMS": "dengan:",
+ "PROCEDURES_DEFNORETURN_TOOLTIP": "Menghasilkan suatu fungsi tanpa output.",
+ "PROCEDURES_DEFNORETURN_COMMENT": "Terangkan fungsi ini...",
+ "PROCEDURES_DEFRETURN_RETURN": "kembali",
+ "PROCEDURES_DEFRETURN_TOOLTIP": "Mencipta satu fungsi dengan pengeluaran.",
+ "PROCEDURES_ALLOW_STATEMENTS": "bolehkan kenyataan",
+ "PROCEDURES_DEF_DUPLICATE_WARNING": "Amaran: Fungsi ini mempunyai parameter yang berganda.",
+ "PROCEDURES_CALLNORETURN_HELPURL": "https://ms.wikipedia.org/wiki/Fungsi",
+ "PROCEDURES_CALLNORETURN_TOOLTIP": "Run the user-defined function '%1'.",
+ "PROCEDURES_CALLRETURN_HELPURL": "https://ms.wikipedia.org/wiki/Fungsi",
+ "PROCEDURES_CALLRETURN_TOOLTIP": "Run the user-defined function '%1' and use its output.",
+ "PROCEDURES_MUTATORCONTAINER_TITLE": "Input-input",
+ "PROCEDURES_MUTATORCONTAINER_TOOLTIP": "Tambah, alih keluar atau susun semula input pada fungsi ini.",
+ "PROCEDURES_MUTATORARG_TITLE": "Nama input:",
+ "PROCEDURES_MUTATORARG_TOOLTIP": "Tambah satu input pada fungsi.",
+ "PROCEDURES_HIGHLIGHT_DEF": "Serlahkan definisi fungsi",
+ "PROCEDURES_CREATE_DO": "Hasilkan '%1'",
+ "PROCEDURES_IFRETURN_TOOLTIP": "If a value is true, then return a second value.",
+ "PROCEDURES_IFRETURN_HELPURL": "http://c2.com/cgi/wiki?GuardClause",
+ "PROCEDURES_IFRETURN_WARNING": "Amaran: Blok ini hanya boleh digunakan dalam fungsi definisi."
+}
diff --git a/blockly/msg/json/nb.json b/blockly/msg/json/nb.json
new file mode 100644
index 0000000..e6787fd
--- /dev/null
+++ b/blockly/msg/json/nb.json
@@ -0,0 +1,324 @@
+{
+ "@metadata": {
+ "authors": [
+ "Cocu",
+ "Kingu",
+ "아라",
+ "SuperPotato"
+ ]
+ },
+ "VARIABLES_DEFAULT_NAME": "element",
+ "TODAY": "I dag",
+ "DUPLICATE_BLOCK": "duplikat",
+ "ADD_COMMENT": "Legg til kommentar",
+ "REMOVE_COMMENT": "Fjern kommentar",
+ "EXTERNAL_INPUTS": "Eksterne kilder",
+ "INLINE_INPUTS": "Interne kilder",
+ "DELETE_BLOCK": "Slett blokk",
+ "DELETE_X_BLOCKS": "Slett %1 blokker",
+ "DELETE_ALL_BLOCKS": "Slett alle %1 blokker?",
+ "CLEAN_UP": "Rydd opp Blocks",
+ "COLLAPSE_BLOCK": "Skjul blokk",
+ "COLLAPSE_ALL": "Skjul blokker",
+ "EXPAND_BLOCK": "Utvid blokk",
+ "EXPAND_ALL": "Utvid blokker",
+ "DISABLE_BLOCK": "Deaktiver blokk",
+ "ENABLE_BLOCK": "Aktiver blokk",
+ "HELP": "Hjelp",
+ "CHANGE_VALUE_TITLE": "Bytt verdi:",
+ "RENAME_VARIABLE": "Gi nytt navn til variabel...",
+ "RENAME_VARIABLE_TITLE": "Endre navnet til alle '%1' variabler til:",
+ "NEW_VARIABLE": "Ny variabel...",
+ "NEW_VARIABLE_TITLE": "Nytt variabelnavn:",
+ "COLOUR_PICKER_HELPURL": "https://en.wikipedia.org/wiki/Color",
+ "COLOUR_PICKER_TOOLTIP": "Velg en farge fra paletten.",
+ "COLOUR_RANDOM_TITLE": "tilfeldig farge",
+ "COLOUR_RANDOM_TOOLTIP": "Velg en tilfeldig farge.",
+ "COLOUR_RGB_HELPURL": "http://www.december.com/html/spec/colorper.html",
+ "COLOUR_RGB_TITLE": "farge med",
+ "COLOUR_RGB_RED": "rød",
+ "COLOUR_RGB_GREEN": "grønn",
+ "COLOUR_RGB_BLUE": "blå",
+ "COLOUR_RGB_TOOLTIP": "Lag en farge med angitt verdi av rød, grønn og blå. Alle verdier må være mellom 0 og 100.",
+ "COLOUR_BLEND_HELPURL": "http://meyerweb.com/eric/tools/color-blend/",
+ "COLOUR_BLEND_TITLE": "blande",
+ "COLOUR_BLEND_COLOUR1": "farge 1",
+ "COLOUR_BLEND_COLOUR2": "farge 2",
+ "COLOUR_BLEND_RATIO": "forhold",
+ "COLOUR_BLEND_TOOLTIP": "Blander to farger sammen med et gitt forhold (0.0 - 1.0).",
+ "CONTROLS_REPEAT_HELPURL": "https://en.wikipedia.org/wiki/For_loop",
+ "CONTROLS_REPEAT_TITLE": "gjenta %1 ganger",
+ "CONTROLS_REPEAT_INPUT_DO": "gjør",
+ "CONTROLS_REPEAT_TOOLTIP": "Gjenta noen instruksjoner flere ganger.",
+ "CONTROLS_WHILEUNTIL_OPERATOR_WHILE": "gjenta mens",
+ "CONTROLS_WHILEUNTIL_OPERATOR_UNTIL": "gjenta til",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_WHILE": "Så lenge et utsagn stemmer, utfør noen instruksjoner.",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL": "Så lenge et utsagn ikke stemmer, gjør noen instruksjoner.",
+ "CONTROLS_FOR_TOOLTIP": "Ha variabel \"%1\" ta verdiene fra start nummer til slutt nummer, telle med spesifisert intervall og lag de spesifiserte blokkene.",
+ "CONTROLS_FOR_TITLE": "tell med %1 fra %2 til %3 med %4",
+ "CONTROLS_FOREACH_TITLE": "for hvert element %1 i listen %2",
+ "CONTROLS_FOREACH_TOOLTIP": "For hvert element i en liste, angi variabelen '%1' til elementet, og deretter lag noen setninger.",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK": "bryt ut av løkken",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE": "fortsett med neste gjentakelse av løkken",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK": "Bryt ut av den gjeldende løkken.",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE": "Hopp over resten av denne løkken og fortsett med neste gjentakelse.",
+ "CONTROLS_FLOW_STATEMENTS_WARNING": "Advarsel: Denne blokken kan kun brukes innenfor en løkke.",
+ "CONTROLS_IF_TOOLTIP_1": "Hvis dette er sant, så gjør følgende.",
+ "CONTROLS_IF_TOOLTIP_2": "Hvis dette er sant, så utfør den første blokken av instruksjoner. Hvis ikke, utfør den andre blokken.",
+ "CONTROLS_IF_TOOLTIP_3": "Hvis det første stemmer, så utfør den første blokken av instruksjoner. Ellers, hvis det andre stemmer, utfør den andre blokken av instruksjoner.",
+ "CONTROLS_IF_TOOLTIP_4": "Hvis den første verdien er sann, så utfør den første blokken med setninger. Ellers, hvis den andre verdien er sann, så utfør den andre blokken med setninger. Hvis ingen av verdiene er sanne, så utfør den siste blokken med setninger.",
+ "CONTROLS_IF_MSG_IF": "hvis",
+ "CONTROLS_IF_MSG_ELSEIF": "ellers hvis",
+ "CONTROLS_IF_MSG_ELSE": "ellers",
+ "CONTROLS_IF_IF_TOOLTIP": "Legg til, fjern eller flytt seksjoner i denne hvis-blokken.",
+ "CONTROLS_IF_ELSEIF_TOOLTIP": "Legg til en betingelse til hvis blokken.",
+ "CONTROLS_IF_ELSE_TOOLTIP": "Legg til hva som skal skje hvis de andre ikke slår til.",
+ "LOGIC_COMPARE_HELPURL": "https://en.wikipedia.org/wiki/Inequality_(mathematics)",
+ "LOGIC_COMPARE_TOOLTIP_EQ": "Returnerer sann hvis begge inputene er like hverandre.",
+ "LOGIC_COMPARE_TOOLTIP_NEQ": "Returnerer sant hvis begge argumentene er ulike hverandre.",
+ "LOGIC_COMPARE_TOOLTIP_LT": "Returnerer sant hvis det første argumentet er mindre enn det andre argumentet.",
+ "LOGIC_COMPARE_TOOLTIP_LTE": "Returnerer sant hvis det første argumentet er mindre enn eller likt det andre argumentet.",
+ "LOGIC_COMPARE_TOOLTIP_GT": "Returnerer sant hvis det første argumentet er større enn den andre argumentet.",
+ "LOGIC_COMPARE_TOOLTIP_GTE": "Returnerer sant hvis det første argumentet er større enn eller likt det andre argumentet.",
+ "LOGIC_OPERATION_TOOLTIP_AND": "Returnerer sant hvis begge argumentene er sanne.",
+ "LOGIC_OPERATION_AND": "og",
+ "LOGIC_OPERATION_TOOLTIP_OR": "Returnerer sant hvis minst ett av argumentene er sant.",
+ "LOGIC_OPERATION_OR": "eller",
+ "LOGIC_NEGATE_TITLE": "ikke %1",
+ "LOGIC_NEGATE_TOOLTIP": "Returnerer sant hvis argumentet er usant. Returnerer usant hvis argumentet er sant.",
+ "LOGIC_BOOLEAN_TRUE": "sann",
+ "LOGIC_BOOLEAN_FALSE": "usann",
+ "LOGIC_BOOLEAN_TOOLTIP": "Returnerer enten sann eller usann.",
+ "LOGIC_NULL_HELPURL": "https://en.wikipedia.org/wiki/Nullable_type",
+ "LOGIC_NULL": "null",
+ "LOGIC_NULL_TOOLTIP": "Returnerer null.",
+ "LOGIC_TERNARY_HELPURL": "https://en.wikipedia.org/wiki/%3F:",
+ "LOGIC_TERNARY_CONDITION": "test",
+ "LOGIC_TERNARY_IF_TRUE": "hvis sant",
+ "LOGIC_TERNARY_IF_FALSE": "hvis usant",
+ "LOGIC_TERNARY_TOOLTIP": "Sjekk betingelsen i 'test'. Hvis betingelsen er sann, da returneres 'hvis sant' verdien. Hvis ikke returneres 'hvis usant' verdien.",
+ "MATH_NUMBER_HELPURL": "https://en.wikipedia.org/wiki/Number",
+ "MATH_NUMBER_TOOLTIP": "Et tall.",
+ "MATH_ADDITION_SYMBOL": "+",
+ "MATH_SUBTRACTION_SYMBOL": "-",
+ "MATH_DIVISION_SYMBOL": "÷",
+ "MATH_MULTIPLICATION_SYMBOL": "x",
+ "MATH_POWER_SYMBOL": "^",
+ "MATH_TRIG_SIN": "sin",
+ "MATH_TRIG_COS": "cos",
+ "MATH_TRIG_TAN": "tan",
+ "MATH_TRIG_ASIN": "asin",
+ "MATH_TRIG_ACOS": "acos",
+ "MATH_TRIG_ATAN": "atan",
+ "MATH_ARITHMETIC_HELPURL": "https://no.wikipedia.org/wiki/Aritmetikk",
+ "MATH_ARITHMETIC_TOOLTIP_ADD": "Returnerer summen av to tall.",
+ "MATH_ARITHMETIC_TOOLTIP_MINUS": "Returner differansen mellom to tall.",
+ "MATH_ARITHMETIC_TOOLTIP_MULTIPLY": "Returner produktet av to tall.",
+ "MATH_ARITHMETIC_TOOLTIP_DIVIDE": "Returner kvotienten av to tall.",
+ "MATH_ARITHMETIC_TOOLTIP_POWER": "Returner det første tallet opphøyd i den andre tallet.",
+ "MATH_SINGLE_HELPURL": "https://en.wikipedia.org/wiki/Square_root",
+ "MATH_SINGLE_OP_ROOT": "kvadratrot",
+ "MATH_SINGLE_TOOLTIP_ROOT": "Returner kvadratroten av et tall.",
+ "MATH_SINGLE_OP_ABSOLUTE": "absoluttverdi",
+ "MATH_SINGLE_TOOLTIP_ABS": "Returner absoluttverdien av et tall.",
+ "MATH_SINGLE_TOOLTIP_NEG": "Returner det negative tallet.",
+ "MATH_SINGLE_TOOLTIP_LN": "Returner den naturlige logaritmen til et tall.",
+ "MATH_SINGLE_TOOLTIP_LOG10": "Returner base-10 logaritmen til et tall.",
+ "MATH_SINGLE_TOOLTIP_EXP": "Returner e opphøyd i et tall.",
+ "MATH_SINGLE_TOOLTIP_POW10": "Returner 10 opphøyd i et tall.",
+ "MATH_TRIG_HELPURL": "https://en.wikipedia.org/wiki/Trigonometric_functions",
+ "MATH_TRIG_TOOLTIP_SIN": "Returner sinus av en vinkel (ikke radian).",
+ "MATH_TRIG_TOOLTIP_COS": "Returner cosinus av en vinkel (ikke radian).",
+ "MATH_TRIG_TOOLTIP_TAN": "Returner tangenten av en vinkel (ikke radian).",
+ "MATH_TRIG_TOOLTIP_ASIN": "Returner arcsinus til et tall.",
+ "MATH_TRIG_TOOLTIP_ACOS": "Returner arccosinus til et tall.",
+ "MATH_TRIG_TOOLTIP_ATAN": "Returner arctangens til et tall.",
+ "MATH_CONSTANT_HELPURL": "https://en.wikipedia.org/wiki/Mathematical_constant",
+ "MATH_CONSTANT_TOOLTIP": "Returner en av felleskonstantene π (3.141…), e (2.718…), φ (1.618…), sqrt(2) (1.414…), sqrt(½) (0.707…), eller ∞ (uendelig).",
+ "MATH_IS_EVEN": "er et partall",
+ "MATH_IS_ODD": "er et oddetall",
+ "MATH_IS_PRIME": "er et primtall",
+ "MATH_IS_WHOLE": "er et heltall",
+ "MATH_IS_POSITIVE": "er positivt",
+ "MATH_IS_NEGATIVE": "er negativer negativt",
+ "MATH_IS_DIVISIBLE_BY": "er delelig med",
+ "MATH_IS_TOOLTIP": "Sjekk om et tall er et partall, oddetall, primtall, heltall, positivt, negativt, eller om det er delelig med et annet tall. Returnerer sant eller usant.",
+ "MATH_CHANGE_HELPURL": "https://en.wikipedia.org/wiki/Programming_idiom#Incrementing_a_counter",
+ "MATH_CHANGE_TITLE": "endre %1 ved %2",
+ "MATH_CHANGE_TOOLTIP": "Addere et tall til variabelen '%1'.",
+ "MATH_ROUND_HELPURL": "https://en.wikipedia.org/wiki/Rounding",
+ "MATH_ROUND_TOOLTIP": "Avrund et tall ned eller opp.",
+ "MATH_ROUND_OPERATOR_ROUND": "avrunding",
+ "MATH_ROUND_OPERATOR_ROUNDUP": "rund opp",
+ "MATH_ROUND_OPERATOR_ROUNDDOWN": "rund ned",
+ "MATH_ONLIST_HELPURL": "",
+ "MATH_ONLIST_OPERATOR_SUM": "summen av listen",
+ "MATH_ONLIST_TOOLTIP_SUM": "Returner summen av alle tallene i listen.",
+ "MATH_ONLIST_OPERATOR_MIN": "minimum av listen",
+ "MATH_ONLIST_TOOLTIP_MIN": "Returner det minste tallet i listen.",
+ "MATH_ONLIST_OPERATOR_MAX": "maksimum av liste",
+ "MATH_ONLIST_TOOLTIP_MAX": "Returner det største tallet i listen.",
+ "MATH_ONLIST_OPERATOR_AVERAGE": "gjennomsnittet av listen",
+ "MATH_ONLIST_TOOLTIP_AVERAGE": "Returner det aritmetiske gjennomsnittet av tallene i listen.",
+ "MATH_ONLIST_OPERATOR_MEDIAN": "medianen til listen",
+ "MATH_ONLIST_TOOLTIP_MEDIAN": "Returner listens median.",
+ "MATH_ONLIST_OPERATOR_MODE": "Listens typetall",
+ "MATH_ONLIST_TOOLTIP_MODE": "Returner en liste av de vanligste elementene i listen.",
+ "MATH_ONLIST_OPERATOR_STD_DEV": "standardavviket til listen",
+ "MATH_ONLIST_TOOLTIP_STD_DEV": "Returner listens standardavvik.",
+ "MATH_ONLIST_OPERATOR_RANDOM": "tilfeldig element i listen",
+ "MATH_ONLIST_TOOLTIP_RANDOM": "Returner et tilfeldig element fra listen.",
+ "MATH_MODULO_HELPURL": "https://en.wikipedia.org/wiki/Modulo_operation",
+ "MATH_MODULO_TITLE": "resten av %1 ÷ %2",
+ "MATH_MODULO_TOOLTIP": "Returner resten fra delingen av to tall.",
+ "MATH_CONSTRAIN_TITLE": "begrense %1 lav %2 høy %3",
+ "MATH_CONSTRAIN_TOOLTIP": "Begrens et tall til å være mellom de angitte grenseverdiene (inklusiv).",
+ "MATH_RANDOM_INT_HELPURL": "https://en.wikipedia.org/wiki/Random_number_generation",
+ "MATH_RANDOM_INT_TITLE": "Et tilfeldig heltall mellom %1 og %2",
+ "MATH_RANDOM_INT_TOOLTIP": "Returner et tilfeldig tall mellom de to spesifiserte grensene, inkludert de to.",
+ "MATH_RANDOM_FLOAT_HELPURL": "https://en.wikipedia.org/wiki/Random_number_generation",
+ "MATH_RANDOM_FLOAT_TITLE_RANDOM": "tilfeldig flyttall",
+ "MATH_RANDOM_FLOAT_TOOLTIP": "Returner et tilfeldig flyttall mellom 0.0 (inkludert) og 1.0 (ikke inkludert).",
+ "TEXT_TEXT_HELPURL": "https://en.wikipedia.org/wiki/String_(computer_science)",
+ "TEXT_TEXT_TOOLTIP": "En bokstav, ett ord eller en linje med tekst.",
+ "TEXT_JOIN_TITLE_CREATEWITH": "lage tekst med",
+ "TEXT_JOIN_TOOLTIP": "Opprett en tekst ved å sette sammen et antall elementer.",
+ "TEXT_CREATE_JOIN_TITLE_JOIN": "føy sammen",
+ "TEXT_CREATE_JOIN_TOOLTIP": "Legg til, fjern eller forandre rekkefølgen for å forandre på denne tekstblokken.",
+ "TEXT_CREATE_JOIN_ITEM_TOOLTIP": "Legg til et element til teksten.",
+ "TEXT_APPEND_TO": "til",
+ "TEXT_APPEND_APPENDTEXT": "tilføy tekst",
+ "TEXT_APPEND_TOOLTIP": "Tilføy tekst til variabelen '%1'.",
+ "TEXT_LENGTH_TITLE": "lengden av %1",
+ "TEXT_LENGTH_TOOLTIP": "Returnerer antall bokstaver (inkludert mellomrom) i den angitte teksten.",
+ "TEXT_ISEMPTY_TITLE": "%1 er tom",
+ "TEXT_ISEMPTY_TOOLTIP": "Returnerer sann hvis den angitte teksten er tom.",
+ "TEXT_INDEXOF_TOOLTIP": "Returnerer posisjonen for første/siste forekomsten av den første tekst i den andre teksten. Returnerer %1 hvis teksten ikke blir funnet.",
+ "TEXT_INDEXOF_INPUT_INTEXT": "i tekst",
+ "TEXT_INDEXOF_OPERATOR_FIRST": "finn første forekomst av tekst",
+ "TEXT_INDEXOF_OPERATOR_LAST": "finn siste forekomst av tekst",
+ "TEXT_INDEXOF_TAIL": "",
+ "TEXT_CHARAT_INPUT_INTEXT": "i tekst",
+ "TEXT_CHARAT_FROM_START": "hent bokstav #",
+ "TEXT_CHARAT_FROM_END": "hent bokstav # fra slutten",
+ "TEXT_CHARAT_FIRST": "hent første bokstav",
+ "TEXT_CHARAT_LAST": "hent den siste bokstaven",
+ "TEXT_CHARAT_RANDOM": "hent en tilfeldig bokstav",
+ "TEXT_CHARAT_TAIL": "",
+ "TEXT_CHARAT_TOOLTIP": "Returnerer bokstaven på angitt plassering.",
+ "TEXT_GET_SUBSTRING_TOOLTIP": "Returnerer den angitte delen av teksten.",
+ "TEXT_GET_SUBSTRING_INPUT_IN_TEXT": "i tekst",
+ "TEXT_GET_SUBSTRING_START_FROM_START": "hent delstreng fra bokstav #",
+ "TEXT_GET_SUBSTRING_START_FROM_END": "hent delstreng fra bokstav # fra slutten",
+ "TEXT_GET_SUBSTRING_START_FIRST": "hent delstreng fra første bokstav",
+ "TEXT_GET_SUBSTRING_END_FROM_START": "til bokstav #",
+ "TEXT_GET_SUBSTRING_END_FROM_END": "til bokstav # fra slutten",
+ "TEXT_GET_SUBSTRING_END_LAST": "til siste bokstav",
+ "TEXT_GET_SUBSTRING_TAIL": "",
+ "TEXT_CHANGECASE_TOOLTIP": "Returnerer en kopi av teksten der store og små bokstaver er byttet om.",
+ "TEXT_CHANGECASE_OPERATOR_UPPERCASE": "til STORE BOKSTAVER",
+ "TEXT_CHANGECASE_OPERATOR_LOWERCASE": "til små bokstaver",
+ "TEXT_CHANGECASE_OPERATOR_TITLECASE": "til store forbokstaver",
+ "TEXT_TRIM_TOOLTIP": "Returner en kopi av teksten med mellomrom fjernet fra en eller begge sidene.",
+ "TEXT_TRIM_OPERATOR_BOTH": "fjern mellomrom fra begge sider av",
+ "TEXT_TRIM_OPERATOR_LEFT": "fjern mellomrom fra venstre side av",
+ "TEXT_TRIM_OPERATOR_RIGHT": "fjern mellomrom fra høyre side av",
+ "TEXT_PRINT_TITLE": "skriv ut %1",
+ "TEXT_PRINT_TOOLTIP": "Skriv ut angitt tekst, tall eller annet innhold.",
+ "TEXT_PROMPT_TYPE_TEXT": "spør om tekst med en melding",
+ "TEXT_PROMPT_TYPE_NUMBER": "spør om et tall med en melding",
+ "TEXT_PROMPT_TOOLTIP_NUMBER": "Be brukeren om et tall.",
+ "TEXT_PROMPT_TOOLTIP_TEXT": "Spør brukeren om tekst.",
+ "LISTS_CREATE_EMPTY_HELPURL": "https://github.com/google/blockly/wiki/Lists#create-empty-list",
+ "LISTS_CREATE_EMPTY_TITLE": "opprett en tom liste",
+ "LISTS_CREATE_EMPTY_TOOLTIP": "Returnerer en tom liste, altså med lengde 0",
+ "LISTS_CREATE_WITH_TOOLTIP": "Lag en liste med et vilkårlig antall elementer.",
+ "LISTS_CREATE_WITH_INPUT_WITH": "lag en liste med",
+ "LISTS_CREATE_WITH_CONTAINER_TITLE_ADD": "liste",
+ "LISTS_CREATE_WITH_CONTAINER_TOOLTIP": "Legg til, fjern eller endre rekkefølgen for å endre på denne delen av listen.",
+ "LISTS_CREATE_WITH_ITEM_TOOLTIP": "Tilføy et element til listen.",
+ "LISTS_REPEAT_TOOLTIP": "Lager en liste hvor den gitte verdien gjentas et antall ganger.",
+ "LISTS_REPEAT_TITLE": "Lag en liste hvor elementet %1 forekommer %2 ganger",
+ "LISTS_LENGTH_TITLE": "lengden på %1",
+ "LISTS_LENGTH_TOOLTIP": "Returnerer lengden til en liste.",
+ "LISTS_ISEMPTY_TITLE": "%1 er tom",
+ "LISTS_ISEMPTY_TOOLTIP": "Returnerer sann hvis listen er tom.",
+ "LISTS_INLIST": "i listen",
+ "LISTS_INDEX_OF_FIRST": "finn første forekomst av elementet",
+ "LISTS_INDEX_OF_LAST": "finn siste forekomst av elementet",
+ "LISTS_INDEX_OF_TOOLTIP": "Returnerer indeksen av den første/siste forekomsten av elementet i lista. Returnerer %1 hvis ikke funnet.",
+ "LISTS_GET_INDEX_GET": "hent",
+ "LISTS_GET_INDEX_GET_REMOVE": "hent og fjern",
+ "LISTS_GET_INDEX_REMOVE": "fjern",
+ "LISTS_GET_INDEX_FROM_START": "#",
+ "LISTS_GET_INDEX_FROM_END": "# fra slutten",
+ "LISTS_GET_INDEX_FIRST": "først",
+ "LISTS_GET_INDEX_LAST": "siste",
+ "LISTS_GET_INDEX_RANDOM": "tilfeldig",
+ "LISTS_GET_INDEX_TAIL": "",
+ "LISTS_INDEX_FROM_START_TOOLTIP": "%1 er det første elementet.",
+ "LISTS_INDEX_FROM_END_TOOLTIP": "%1 er det siste elementet.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_FROM": "Returner elementet på den angitte posisjonen i en liste.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_FIRST": "Returnerer det første elementet i en liste.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_LAST": "Returnerer det siste elementet i en liste.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_RANDOM": "Returnerer et tilfeldig element i en liste.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM": "Fjerner og returnerer elementet ved en gitt posisjon i en liste.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST": "Fjerner og returnerer det første elementet i en liste.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST": "Fjerner og returnerer det siste elementet i en liste.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM": "Fjerner og returnerer et tilfeldig element i en liste.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM": "Fjerner et element ved en gitt posisjon i en liste.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST": "Fjerner det første elementet i en liste.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST": "Fjerner det siste elementet i en liste.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM": "Fjerner et tilfeldig element i en liste.",
+ "LISTS_SET_INDEX_SET": "sett",
+ "LISTS_SET_INDEX_INSERT": "sett inn ved",
+ "LISTS_SET_INDEX_INPUT_TO": "som",
+ "LISTS_SET_INDEX_TOOLTIP_SET_FROM": "Setter inn elementet ved den angitte posisjonen i en liste.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_FIRST": "Angir det første elementet i en liste.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_LAST": "Angir det siste elementet i en liste.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_RANDOM": "Angir et tilfeldig element i en liste.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_FROM": "Setter inn elementet ved den angitte posisjonen i en liste.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST": "Setter inn elementet i starten av en liste.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_LAST": "Tilføy elementet til slutten av en liste.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM": "Setter inn elementet ved en tilfeldig posisjon i en liste.",
+ "LISTS_GET_SUBLIST_START_FROM_START": "Hent del-listen fra #",
+ "LISTS_GET_SUBLIST_START_FROM_END": "Hent de siste # elementene",
+ "LISTS_GET_SUBLIST_START_FIRST": "Hent en del av listen",
+ "LISTS_GET_SUBLIST_END_FROM_START": "til #",
+ "LISTS_GET_SUBLIST_END_FROM_END": "til # fra slutten",
+ "LISTS_GET_SUBLIST_END_LAST": "til siste",
+ "LISTS_GET_SUBLIST_TAIL": "",
+ "LISTS_GET_SUBLIST_TOOLTIP": "Kopiérer en ønsket del av en liste.",
+ "LISTS_SPLIT_LIST_FROM_TEXT": "lag liste av tekst",
+ "LISTS_SPLIT_TEXT_FROM_LIST": "lag tekst av liste",
+ "ORDINAL_NUMBER_SUFFIX": "",
+ "VARIABLES_GET_TOOLTIP": "Returnerer verdien av denne variabelen.",
+ "VARIABLES_GET_CREATE_SET": "Opprett 'sett %1'",
+ "VARIABLES_SET": "sett %1 til %2",
+ "VARIABLES_SET_TOOLTIP": "Setter verdien av denne variablen lik parameteren.",
+ "VARIABLES_SET_CREATE_GET": "Opprett 'hent %1'",
+ "PROCEDURES_DEFNORETURN_HELPURL": "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29",
+ "PROCEDURES_DEFNORETURN_TITLE": "til",
+ "PROCEDURES_DEFNORETURN_PROCEDURE": "gjør noe",
+ "PROCEDURES_BEFORE_PARAMS": "med:",
+ "PROCEDURES_CALL_BEFORE_PARAMS": "med:",
+ "PROCEDURES_DEFNORETURN_DO": "",
+ "PROCEDURES_DEFNORETURN_TOOLTIP": "Opprett en funksjon som ikke har noe resultat.",
+ "PROCEDURES_DEFRETURN_HELPURL": "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29",
+ "PROCEDURES_DEFRETURN_RETURN": "returner",
+ "PROCEDURES_DEFRETURN_TOOLTIP": "Oppretter en funksjon som har et resultat.",
+ "PROCEDURES_ALLOW_STATEMENTS": "tillat uttalelser",
+ "PROCEDURES_DEF_DUPLICATE_WARNING": "Advarsel: Denne funksjonen har duplikate parametere.",
+ "PROCEDURES_CALLNORETURN_HELPURL": "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29",
+ "PROCEDURES_CALLNORETURN_TOOLTIP": "Kjør den brukerdefinerte funksjonen '%1'.",
+ "PROCEDURES_CALLRETURN_HELPURL": "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29",
+ "PROCEDURES_CALLRETURN_TOOLTIP": "Kjør den brukerdefinerte funksjonen'%1' og bruk resultatet av den.",
+ "PROCEDURES_MUTATORCONTAINER_TITLE": "parametere",
+ "PROCEDURES_MUTATORCONTAINER_TOOLTIP": "Legg til, fjern eller endre rekkefølgen på input til denne funksjonen.",
+ "PROCEDURES_MUTATORARG_TITLE": "Navn på parameter:",
+ "PROCEDURES_MUTATORARG_TOOLTIP": "Legg til en input til funksjonen.",
+ "PROCEDURES_HIGHLIGHT_DEF": "Marker funksjonsdefinisjonen",
+ "PROCEDURES_CREATE_DO": "Opprett '%1'",
+ "PROCEDURES_IFRETURN_TOOLTIP": "Hvis en verdi er sann, returner da en annen verdi.",
+ "PROCEDURES_IFRETURN_WARNING": "Advarsel: Denne blokken kan bare benyttes innenfor en funksjonsdefinisjon."
+}
diff --git a/blockly/msg/json/nl.json b/blockly/msg/json/nl.json
new file mode 100644
index 0000000..df43349
--- /dev/null
+++ b/blockly/msg/json/nl.json
@@ -0,0 +1,361 @@
+{
+ "@metadata": {
+ "authors": [
+ "Siebrand",
+ "McDutchie",
+ "Ribert",
+ "MedShot",
+ "아라",
+ "JaapDeKleine",
+ "Sjoerddebruin",
+ "Lemondoge",
+ "Jeleniccz"
+ ]
+ },
+ "VARIABLES_DEFAULT_NAME": "item",
+ "TODAY": "Vandaag",
+ "DUPLICATE_BLOCK": "Duplicaat",
+ "ADD_COMMENT": "Reactie toevoegen",
+ "REMOVE_COMMENT": "Opmerking verwijderen",
+ "EXTERNAL_INPUTS": "Externe invoer",
+ "INLINE_INPUTS": "Inline invoer",
+ "DELETE_BLOCK": "Blok verwijderen",
+ "DELETE_X_BLOCKS": "%1 blokken verwijderen",
+ "DELETE_ALL_BLOCKS": "Alle %1 blokken verwijderen?",
+ "CLEAN_UP": "Blokken opschonen",
+ "COLLAPSE_BLOCK": "Blok samenvouwen",
+ "COLLAPSE_ALL": "Blokken samenvouwen",
+ "EXPAND_BLOCK": "Blok uitvouwen",
+ "EXPAND_ALL": "Blokken uitvouwen",
+ "DISABLE_BLOCK": "Blok uitschakelen",
+ "ENABLE_BLOCK": "Blok inschakelen",
+ "HELP": "Hulp",
+ "UNDO": "Ongedaan maken",
+ "REDO": "Opnieuw",
+ "CHANGE_VALUE_TITLE": "Waarde wijzigen:",
+ "RENAME_VARIABLE": "Variabele hernoemen...",
+ "RENAME_VARIABLE_TITLE": "Alle variabelen \"%1\" hernoemen naar:",
+ "NEW_VARIABLE": "Nieuwe variabele...",
+ "NEW_VARIABLE_TITLE": "Nieuwe variabelenaam:",
+ "COLOUR_PICKER_HELPURL": "https://nl.wikipedia.org/wiki/Kleur",
+ "COLOUR_PICKER_TOOLTIP": "Kies een kleur in het palet.",
+ "COLOUR_RANDOM_TITLE": "willekeurige kleur",
+ "COLOUR_RANDOM_TOOLTIP": "Kies een willekeurige kleur.",
+ "COLOUR_RGB_HELPURL": "http://www.december.com/html/spec/colorper.html",
+ "COLOUR_RGB_TITLE": "kleuren met",
+ "COLOUR_RGB_RED": "rood",
+ "COLOUR_RGB_GREEN": "groen",
+ "COLOUR_RGB_BLUE": "blauw",
+ "COLOUR_RGB_TOOLTIP": "Maak een kleur met de opgegeven hoeveelheid rood, groen en blauw. Alle waarden moeten tussen 0 en 100 liggen.",
+ "COLOUR_BLEND_HELPURL": "http://meyerweb.com/eric/tools/color-blend/",
+ "COLOUR_BLEND_TITLE": "mengen",
+ "COLOUR_BLEND_COLOUR1": "kleur 1",
+ "COLOUR_BLEND_COLOUR2": "kleur 2",
+ "COLOUR_BLEND_RATIO": "verhouding",
+ "COLOUR_BLEND_TOOLTIP": "Mengt twee kleuren samen met een bepaalde verhouding (0.0 - 1.0).",
+ "CONTROLS_REPEAT_HELPURL": "https://nl.wikipedia.org/wiki/Repetitie_(informatica)#For_en_Foreach",
+ "CONTROLS_REPEAT_TITLE": "%1 keer herhalen",
+ "CONTROLS_REPEAT_INPUT_DO": "voer uit",
+ "CONTROLS_REPEAT_TOOLTIP": "Voer een aantal opdrachten meerdere keren uit.",
+ "CONTROLS_WHILEUNTIL_HELPURL": "https://github.com/google/blockly/wiki/Loops#repeat",
+ "CONTROLS_WHILEUNTIL_OPERATOR_WHILE": "herhalen zolang",
+ "CONTROLS_WHILEUNTIL_OPERATOR_UNTIL": "herhalen totdat",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_WHILE": "Terwijl een waarde waar is de volgende opdrachten uitvoeren.",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL": "Terwijl een waarde onwaar is de volgende opdrachten uitvoeren.",
+ "CONTROLS_FOR_HELPURL": "https://github.com/google/blockly/wiki/Loops#count-with",
+ "CONTROLS_FOR_TOOLTIP": "Laat de variabele \"%1\" de waarden aannemen van het beginnummer tot het laatste nummer, tellende met het opgegeven interval, en met uitvoering van de opgegeven blokken.",
+ "CONTROLS_FOR_TITLE": "rekenen met %1 van %2 tot %3 in stappen van %4",
+ "CONTROLS_FOREACH_TITLE": "voor ieder item %1 in lijst %2",
+ "CONTROLS_FOREACH_TOOLTIP": "Voor ieder item in een lijst, stel de variabele \"%1\" in op het item en voer daarna opdrachten uit.",
+ "CONTROLS_FLOW_STATEMENTS_HELPURL": "https://github.com/google/blockly/wiki/Loops#loop-termination-blocks",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK": "uit lus breken",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE": "doorgaan met de volgende iteratie van de lus",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK": "uit de bovenliggende lus breken",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE": "De rest van deze lus overslaan en doorgaan met de volgende herhaling.",
+ "CONTROLS_FLOW_STATEMENTS_WARNING": "Waarschuwing: dit blok mag alleen gebruikt worden in een lus.",
+ "CONTROLS_IF_HELPURL": "https://github.com/google/blockly/wiki/IfElse",
+ "CONTROLS_IF_TOOLTIP_1": "Als een waarde waar is, voer dan opdrachten uit.",
+ "CONTROLS_IF_TOOLTIP_2": "Als een waarde waar is, voert dan het eerste blok met opdrachten uit. Voer andere het tweede blok met opdrachten uit.",
+ "CONTROLS_IF_TOOLTIP_3": "Als de eerste waarde waar is, voer dan het eerste blok met opdrachten uit. Voer anders, als de tweede waarde waar is, het tweede blok met opdrachten uit.",
+ "CONTROLS_IF_TOOLTIP_4": "Als de eerste waarde \"waar\" is, voer dan het eerste blok uit. Voer anders wanneer de tweede waarde \"waar\" is, het tweede blok uit. Als geen van beide waarden waar zijn, voer dan het laatste blok uit.",
+ "CONTROLS_IF_MSG_IF": "als",
+ "CONTROLS_IF_MSG_ELSEIF": "anders als",
+ "CONTROLS_IF_MSG_ELSE": "anders",
+ "CONTROLS_IF_IF_TOOLTIP": "Voeg stukken toe, verwijder of wijzig de volgorde om dit \"als\"-blok te wijzigen.",
+ "CONTROLS_IF_ELSEIF_TOOLTIP": "Voeg een voorwaarde toe aan het als-blok.",
+ "CONTROLS_IF_ELSE_TOOLTIP": "Voeg een laatste, vang-alles conditie toe aan het als-statement.",
+ "LOGIC_COMPARE_HELPURL": "https://nl.wikipedia.org/wiki/Ongelijkheid_(wiskunde)",
+ "LOGIC_COMPARE_TOOLTIP_EQ": "Geeft \"waar\", als beide waarden gelijk aan elkaar zijn.",
+ "LOGIC_COMPARE_TOOLTIP_NEQ": "Geeft \"waar\" terug als de waarden niet gelijk zijn aan elkaar.",
+ "LOGIC_COMPARE_TOOLTIP_LT": "Geeft \"waar\" als de eerste invoer kleiner is dan de tweede invoer.",
+ "LOGIC_COMPARE_TOOLTIP_LTE": "Geeft \"waar\" terug als de eerste invoer kleiner of gelijk is aan de tweede invoer.",
+ "LOGIC_COMPARE_TOOLTIP_GT": "Geeft \"waar\" terug als de eerste invoer meer is dan de tweede invoer.",
+ "LOGIC_COMPARE_TOOLTIP_GTE": "Geeft \"waar\" terug als de eerste invoer groter is of gelijk aan de tweede invoer.",
+ "LOGIC_OPERATION_HELPURL": "https://github.com/google/blockly/wiki/Logic#logical-operations",
+ "LOGIC_OPERATION_TOOLTIP_AND": "Geeft waar als beide waarden waar zijn.",
+ "LOGIC_OPERATION_AND": "en",
+ "LOGIC_OPERATION_TOOLTIP_OR": "Geeft \"waar\" terug als in ieder geval één van de waarden waar is.",
+ "LOGIC_OPERATION_OR": "of",
+ "LOGIC_NEGATE_HELPURL": "https://github.com/google/blockly/wiki/Logic#not",
+ "LOGIC_NEGATE_TITLE": "niet %1",
+ "LOGIC_NEGATE_TOOLTIP": "Geeft \"waar\" terug als de invoer \"onwaar\" is. Geeft \"onwaar\" als de invoer \"waar\" is.",
+ "LOGIC_BOOLEAN_HELPURL": "https://github.com/google/blockly/wiki/Logic#values",
+ "LOGIC_BOOLEAN_TRUE": "waar",
+ "LOGIC_BOOLEAN_FALSE": "onwaar",
+ "LOGIC_BOOLEAN_TOOLTIP": "Geeft \"waar\" of \"onwaar\" terug.",
+ "LOGIC_NULL_HELPURL": "https://en.wikipedia.org/wiki/Nullable_type",
+ "LOGIC_NULL": "niets",
+ "LOGIC_NULL_TOOLTIP": "Geeft niets terug.",
+ "LOGIC_TERNARY_HELPURL": "https://en.wikipedia.org/wiki/%3F:",
+ "LOGIC_TERNARY_CONDITION": "test",
+ "LOGIC_TERNARY_IF_TRUE": "als waar",
+ "LOGIC_TERNARY_IF_FALSE": "als onwaar",
+ "LOGIC_TERNARY_TOOLTIP": "Test de voorwaarde in \"test\". Als de voorwaarde \"waar\" is, geef de waarde van \"als waar\" terug; geef anders de waarde van \"als onwaar\" terug.",
+ "MATH_NUMBER_HELPURL": "https://nl.wikipedia.org/wiki/Getal_%28wiskunde%29",
+ "MATH_NUMBER_TOOLTIP": "Een getal.",
+ "MATH_ADDITION_SYMBOL": "+",
+ "MATH_SUBTRACTION_SYMBOL": "-",
+ "MATH_DIVISION_SYMBOL": "÷",
+ "MATH_MULTIPLICATION_SYMBOL": "×",
+ "MATH_POWER_SYMBOL": "^",
+ "MATH_TRIG_SIN": "sin",
+ "MATH_TRIG_COS": "cos",
+ "MATH_TRIG_TAN": "tan",
+ "MATH_TRIG_ASIN": "asin",
+ "MATH_TRIG_ACOS": "acos",
+ "MATH_TRIG_ATAN": "arctan",
+ "MATH_ARITHMETIC_HELPURL": "https://nl.wikipedia.org/wiki/Rekenen",
+ "MATH_ARITHMETIC_TOOLTIP_ADD": "Geeft de som van 2 getallen.",
+ "MATH_ARITHMETIC_TOOLTIP_MINUS": "Geeft het verschil van de twee getallen.",
+ "MATH_ARITHMETIC_TOOLTIP_MULTIPLY": "Geeft het product terug van de twee getallen.",
+ "MATH_ARITHMETIC_TOOLTIP_DIVIDE": "Geeft de gedeelde waarde van twee getallen.",
+ "MATH_ARITHMETIC_TOOLTIP_POWER": "Geeft het eerste getal tot de macht van het tweede getal.",
+ "MATH_SINGLE_HELPURL": "https://nl.wikipedia.org/wiki/Vierkantswortel",
+ "MATH_SINGLE_OP_ROOT": "wortel",
+ "MATH_SINGLE_TOOLTIP_ROOT": "Geeft de wortel van een getal.",
+ "MATH_SINGLE_OP_ABSOLUTE": "absoluut",
+ "MATH_SINGLE_TOOLTIP_ABS": "Geeft de absolute waarde van een getal.",
+ "MATH_SINGLE_TOOLTIP_NEG": "Geeft de negatief van een getal.",
+ "MATH_SINGLE_TOOLTIP_LN": "Geeft het natuurlijk logaritme van een getal.",
+ "MATH_SINGLE_TOOLTIP_LOG10": "Geeft het logaritme basis 10 van een getal.",
+ "MATH_SINGLE_TOOLTIP_EXP": "Geeft e tot de macht van een getal.",
+ "MATH_SINGLE_TOOLTIP_POW10": "Geeft 10 tot de macht van een getal.",
+ "MATH_TRIG_HELPURL": "https://nl.wikipedia.org/wiki/Goniometrische_functie",
+ "MATH_TRIG_TOOLTIP_SIN": "Geeft de sinus van een graad (geen radialen).",
+ "MATH_TRIG_TOOLTIP_COS": "Geeft de cosinus van een graad (geen radialen).",
+ "MATH_TRIG_TOOLTIP_TAN": "Geeft de tangens van een graad (geen radialen).",
+ "MATH_TRIG_TOOLTIP_ASIN": "Geeft de arcsinus van een getal.",
+ "MATH_TRIG_TOOLTIP_ACOS": "Geeft de arccosinus van een getal.",
+ "MATH_TRIG_TOOLTIP_ATAN": "Geeft de arctangens van een getal.",
+ "MATH_CONSTANT_HELPURL": "https://nl.wikipedia.org/wiki/Wiskundige_constante",
+ "MATH_CONSTANT_TOOLTIP": "Geeft een van de vaak voorkomende constante waardes: π (3.141…), e (2.718…), φ (1.618…), √2 (1.414…), √½ (0.707…), of ∞ (oneindig).",
+ "MATH_IS_EVEN": "is even",
+ "MATH_IS_ODD": "is oneven",
+ "MATH_IS_PRIME": "is priemgetal",
+ "MATH_IS_WHOLE": "is geheel getal",
+ "MATH_IS_POSITIVE": "is positief",
+ "MATH_IS_NEGATIVE": "is negatief",
+ "MATH_IS_DIVISIBLE_BY": "is deelbaar door",
+ "MATH_IS_TOOLTIP": "Test of een getal even, oneven, een priemgetal, geheel, positief of negatief is, of deelbaar is door een bepaald getal. Geeft \"waar\" of \"onwaar\".",
+ "MATH_CHANGE_HELPURL": "https://en.wikipedia.org/wiki/Programming_idiom#Incrementing_a_counter",
+ "MATH_CHANGE_TITLE": "%1 wijzigen met %2",
+ "MATH_CHANGE_TOOLTIP": "Voegt een getal toe aan variabele \"%1\".",
+ "MATH_ROUND_HELPURL": "https://nl.wikipedia.org/wiki/Afronden",
+ "MATH_ROUND_TOOLTIP": "Rondt een getal af omhoog of naar beneden.",
+ "MATH_ROUND_OPERATOR_ROUND": "afronden",
+ "MATH_ROUND_OPERATOR_ROUNDUP": "omhoog afronden",
+ "MATH_ROUND_OPERATOR_ROUNDDOWN": "naar beneden afronden",
+ "MATH_ONLIST_OPERATOR_SUM": "som van lijst",
+ "MATH_ONLIST_TOOLTIP_SUM": "Geeft de som van alle getallen in de lijst.",
+ "MATH_ONLIST_OPERATOR_MIN": "laagste uit lijst",
+ "MATH_ONLIST_TOOLTIP_MIN": "Geeft het kleinste getal uit een lijst.",
+ "MATH_ONLIST_OPERATOR_MAX": "hoogste uit lijst",
+ "MATH_ONLIST_TOOLTIP_MAX": "Geeft het grootste getal in een lijst.",
+ "MATH_ONLIST_OPERATOR_AVERAGE": "gemiddelde van lijst",
+ "MATH_ONLIST_TOOLTIP_AVERAGE": "Geeft het gemiddelde terug van de numerieke waardes in een lijst.",
+ "MATH_ONLIST_OPERATOR_MEDIAN": "mediaan van lijst",
+ "MATH_ONLIST_TOOLTIP_MEDIAN": "Geeft de mediaan in de lijst.",
+ "MATH_ONLIST_OPERATOR_MODE": "modi van lijst",
+ "MATH_ONLIST_TOOLTIP_MODE": "Geeft een lijst van de meest voorkomende onderdelen in de lijst.",
+ "MATH_ONLIST_OPERATOR_STD_DEV": "standaarddeviatie van lijst",
+ "MATH_ONLIST_TOOLTIP_STD_DEV": "Geeft de standaardafwijking van de lijst.",
+ "MATH_ONLIST_OPERATOR_RANDOM": "willekeurige item van lijst",
+ "MATH_ONLIST_TOOLTIP_RANDOM": "Geeft een willekeurig item uit de lijst terug.",
+ "MATH_MODULO_HELPURL": "https://nl.wikipedia.org/wiki/Modulair_rekenen",
+ "MATH_MODULO_TITLE": "restgetal van %1 ÷ %2",
+ "MATH_MODULO_TOOLTIP": "Geeft het restgetal van het resultaat van de deling van de twee getallen.",
+ "MATH_CONSTRAIN_TITLE": "beperk %1 van minimaal %2 tot maximaal %3",
+ "MATH_CONSTRAIN_TOOLTIP": "Beperk een getal tussen de twee opgegeven limieten (inclusief).",
+ "MATH_RANDOM_INT_HELPURL": "https://nl.wikipedia.org/wiki/Toevalsgenerator",
+ "MATH_RANDOM_INT_TITLE": "willekeurig geheel getal van %1 tot %2",
+ "MATH_RANDOM_INT_TOOLTIP": "Geeft een willekeurig getal tussen de 2 opgegeven limieten in, inclusief.",
+ "MATH_RANDOM_FLOAT_HELPURL": "https://nl.wikipedia.org/wiki/Toevalsgenerator",
+ "MATH_RANDOM_FLOAT_TITLE_RANDOM": "willekeurige fractie",
+ "MATH_RANDOM_FLOAT_TOOLTIP": "Geeft een willekeurige fractie tussen 0.0 (inclusief) en 1.0 (exclusief).",
+ "TEXT_TEXT_HELPURL": "https://nl.wikipedia.org/wiki/String_%28informatica%29",
+ "TEXT_TEXT_TOOLTIP": "Een letter, woord of een regel tekst.",
+ "TEXT_JOIN_HELPURL": "https://github.com/google/blockly/wiki/Text#text-creation",
+ "TEXT_JOIN_TITLE_CREATEWITH": "maak tekst met",
+ "TEXT_JOIN_TOOLTIP": "Maakt een stuk tekst door één of meer items samen te voegen.",
+ "TEXT_CREATE_JOIN_TITLE_JOIN": "samenvoegen",
+ "TEXT_CREATE_JOIN_TOOLTIP": "Toevoegen, verwijderen of volgorde wijzigen van secties om dit tekstblok opnieuw in te stellen.",
+ "TEXT_CREATE_JOIN_ITEM_TOOLTIP": "Voegt een item aan de tekst toe.",
+ "TEXT_APPEND_HELPURL": "https://github.com/google/blockly/wiki/Text#text-modification",
+ "TEXT_APPEND_TO": "voeg toe aan",
+ "TEXT_APPEND_APPENDTEXT": "tekst",
+ "TEXT_APPEND_TOOLTIP": "Voeg tekst toe aan de variabele \"%1\".",
+ "TEXT_LENGTH_HELPURL": "https://github.com/google/blockly/wiki/Text#text-modification",
+ "TEXT_LENGTH_TITLE": "lengte van %1",
+ "TEXT_LENGTH_TOOLTIP": "Geeft het aantal tekens terug (inclusief spaties) in de opgegeven tekst.",
+ "TEXT_ISEMPTY_HELPURL": "https://github.com/google/blockly/wiki/Text#checking-for-empty-text",
+ "TEXT_ISEMPTY_TITLE": "%1 is leeg",
+ "TEXT_ISEMPTY_TOOLTIP": "Geeft \"waar\" terug, als de opgegeven tekst leeg is.",
+ "TEXT_INDEXOF_HELPURL": "https://github.com/google/blockly/wiki/Text#finding-text",
+ "TEXT_INDEXOF_TOOLTIP": "Geeft de index terug van de eerste/laatste aanwezigheid van de eerste tekst in de tweede tekst. Geeft %1 terug als de tekst niet gevonden is.",
+ "TEXT_INDEXOF_INPUT_INTEXT": "in tekst",
+ "TEXT_INDEXOF_OPERATOR_FIRST": "zoek eerste voorkomen van tekst",
+ "TEXT_INDEXOF_OPERATOR_LAST": "zoek het laatste voorkomen van tekst",
+ "TEXT_CHARAT_HELPURL": "https://github.com/google/blockly/wiki/Text#extracting-text",
+ "TEXT_CHARAT_INPUT_INTEXT": "in tekst",
+ "TEXT_CHARAT_FROM_START": "haal letter # op",
+ "TEXT_CHARAT_FROM_END": "haal letter # op vanaf einde",
+ "TEXT_CHARAT_FIRST": "haal eerste letter op",
+ "TEXT_CHARAT_LAST": "haal laatste letter op",
+ "TEXT_CHARAT_RANDOM": "haal willekeurige letter op",
+ "TEXT_CHARAT_TOOLTIP": "Geeft de letter op de opgegeven positie terug.",
+ "TEXT_GET_SUBSTRING_TOOLTIP": "Geeft het opgegeven onderdeel van de tekst terug.",
+ "TEXT_GET_SUBSTRING_HELPURL": "https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text",
+ "TEXT_GET_SUBSTRING_INPUT_IN_TEXT": "in tekst",
+ "TEXT_GET_SUBSTRING_START_FROM_START": "haal subtekst op vanaf letter #",
+ "TEXT_GET_SUBSTRING_START_FROM_END": "haal subtekst op vanaf letter # vanaf einde",
+ "TEXT_GET_SUBSTRING_START_FIRST": "haal subtekst op van eerste letter",
+ "TEXT_GET_SUBSTRING_END_FROM_START": "naar letter #",
+ "TEXT_GET_SUBSTRING_END_FROM_END": "van letter # tot einde",
+ "TEXT_GET_SUBSTRING_END_LAST": "naar laatste letter",
+ "TEXT_CHANGECASE_HELPURL": "https://github.com/google/blockly/wiki/Text#adjusting-text-case",
+ "TEXT_CHANGECASE_TOOLTIP": "Geef een kopie van de tekst met veranderde hoofdletters terug.",
+ "TEXT_CHANGECASE_OPERATOR_UPPERCASE": "naar HOOFDLETTERS",
+ "TEXT_CHANGECASE_OPERATOR_LOWERCASE": "naar kleine letters",
+ "TEXT_CHANGECASE_OPERATOR_TITLECASE": "naar Hoofdletter Per Woord",
+ "TEXT_TRIM_HELPURL": "https://github.com/google/blockly/wiki/Text#trimming-removing-spaces",
+ "TEXT_TRIM_TOOLTIP": "Geeft een kopie van de tekst met verwijderde spaties van één of beide kanten.",
+ "TEXT_TRIM_OPERATOR_BOTH": "spaties van beide kanten afhalen van",
+ "TEXT_TRIM_OPERATOR_LEFT": "spaties van de linkerkant verwijderen van",
+ "TEXT_TRIM_OPERATOR_RIGHT": "spaties van de rechterkant verwijderen van",
+ "TEXT_PRINT_HELPURL": "https://github.com/google/blockly/wiki/Text#printing-text",
+ "TEXT_PRINT_TITLE": "tekst weergeven: %1",
+ "TEXT_PRINT_TOOLTIP": "Drukt de opgegeven tekst, getal of een andere waarde af.",
+ "TEXT_PROMPT_HELPURL": "https://github.com/google/blockly/wiki/Text#getting-input-from-the-user",
+ "TEXT_PROMPT_TYPE_TEXT": "vraagt om invoer met bericht",
+ "TEXT_PROMPT_TYPE_NUMBER": "vraagt de gebruiker om een getal met de tekst",
+ "TEXT_PROMPT_TOOLTIP_NUMBER": "Vraagt de gebruiker om een getal in te voeren.",
+ "TEXT_PROMPT_TOOLTIP_TEXT": "Vraagt de gebruiker om invoer.",
+ "LISTS_CREATE_EMPTY_HELPURL": "https://github.com/google/blockly/wiki/Lists#create-empty-list",
+ "LISTS_CREATE_EMPTY_TITLE": "maak een lege lijst",
+ "LISTS_CREATE_EMPTY_TOOLTIP": "Geeft een lijst terug met lengte 0, zonder items",
+ "LISTS_CREATE_WITH_TOOLTIP": "Maak een lijst met een willekeurig aantal items.",
+ "LISTS_CREATE_WITH_INPUT_WITH": "maak een lijst met",
+ "LISTS_CREATE_WITH_CONTAINER_TITLE_ADD": "lijst",
+ "LISTS_CREATE_WITH_CONTAINER_TOOLTIP": "Voeg stukken toe, verwijder ze of wijzig de volgorde om dit lijstblok aan te passen.",
+ "LISTS_CREATE_WITH_ITEM_TOOLTIP": "Voeg iets toe aan de lijst.",
+ "LISTS_REPEAT_HELPURL": "https://github.com/google/blockly/wiki/Lists#create-list-with",
+ "LISTS_REPEAT_TOOLTIP": "Maakt een lijst die bestaat uit de opgegeven waarde, het opgegeven aantal keer herhaald.",
+ "LISTS_REPEAT_TITLE": "Maak lijst met item %1, %2 keer herhaald",
+ "LISTS_LENGTH_HELPURL": "https://github.com/google/blockly/wiki/Lists#length-of",
+ "LISTS_LENGTH_TITLE": "lengte van %1",
+ "LISTS_LENGTH_TOOLTIP": "Geeft de lengte van een lijst terug.",
+ "LISTS_ISEMPTY_TITLE": "%1 is leeg",
+ "LISTS_ISEMPTY_TOOLTIP": "Geeft waar terug als de lijst leeg is.",
+ "LISTS_INLIST": "in lijst",
+ "LISTS_INDEX_OF_HELPURL": "https://github.com/google/blockly/wiki/Lists#getting-items-from-a-list",
+ "LISTS_INDEX_OF_FIRST": "zoek eerste voorkomen van item",
+ "LISTS_INDEX_OF_LAST": "zoek laatste voorkomen van item",
+ "LISTS_INDEX_OF_TOOLTIP": "Geeft de index terug van het eerste of laatste voorkomen van een item in de lijst. Geeft %1 terug als het item niet is gevonden.",
+ "LISTS_GET_INDEX_GET": "haal op",
+ "LISTS_GET_INDEX_GET_REMOVE": "haal op en verwijder",
+ "LISTS_GET_INDEX_REMOVE": "verwijder",
+ "LISTS_GET_INDEX_FROM_START": "#",
+ "LISTS_GET_INDEX_FROM_END": "# van einde",
+ "LISTS_GET_INDEX_FIRST": "eerste",
+ "LISTS_GET_INDEX_LAST": "laatste",
+ "LISTS_GET_INDEX_RANDOM": "willekeurig",
+ "LISTS_INDEX_FROM_START_TOOLTIP": "Item %1 is het eerste item.",
+ "LISTS_INDEX_FROM_END_TOOLTIP": "Item %1 is het laatste item.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_FROM": "Geeft het item op de opgegeven positie in een lijst.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_FIRST": "Geeft het eerste item in een lijst terug.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_LAST": "Geeft het laatste item in een lijst terug.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_RANDOM": "Geeft een willekeurig item uit een lijst.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM": "Geeft het item op de opgegeven positie in een lijst terug en verwijdert het.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST": "Geeft het laatste item in een lijst terug en verwijdert het.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST": "Geeft het laatste item uit een lijst terug en verwijdert het.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM": "Geeft een willekeurig item in een lijst terug en verwijdert het.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM": "Verwijdert het item op de opgegeven positie in een lijst.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST": "Verwijdert het eerste item in een lijst.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST": "Verwijdert het laatste item uit een lijst.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM": "Verwijdert een willekeurig item uit een lijst.",
+ "LISTS_SET_INDEX_HELPURL": "https://github.com/google/blockly/wiki/Lists#in-list--set",
+ "LISTS_SET_INDEX_SET": "stel in",
+ "LISTS_SET_INDEX_INSERT": "tussenvoegen op",
+ "LISTS_SET_INDEX_INPUT_TO": "als",
+ "LISTS_SET_INDEX_TOOLTIP_SET_FROM": "Stelt het item op de opgegeven positie in de lijst in.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_FIRST": "Stelt het eerste item in een lijst in.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_LAST": "Stelt het laatste item van een lijst in.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_RANDOM": "Stelt een willekeurig item uit de lijst in.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_FROM": "Voegt het item op een opgegeven positie in een lijst in.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST": "Voegt het item toe aan het begin van de lijst.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_LAST": "Voeg het item aan het einde van een lijst toe.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM": "Voegt het item op een willekeurige positie in de lijst in.",
+ "LISTS_GET_SUBLIST_HELPURL": "https://github.com/google/blockly/wiki/Lists#getting-a-sublist",
+ "LISTS_GET_SUBLIST_START_FROM_START": "haal sublijst op vanaf positie",
+ "LISTS_GET_SUBLIST_START_FROM_END": "haal sublijst op van positie vanaf einde",
+ "LISTS_GET_SUBLIST_START_FIRST": "haal sublijst op vanaf eerste",
+ "LISTS_GET_SUBLIST_END_FROM_START": "naar item",
+ "LISTS_GET_SUBLIST_END_FROM_END": "naar # vanaf einde",
+ "LISTS_GET_SUBLIST_END_LAST": "naar laatste",
+ "LISTS_GET_SUBLIST_TOOLTIP": "Maakt een kopie van het opgegeven deel van de lijst.",
+ "LISTS_SORT_HELPURL": "https://github.com/google/blockly/wiki/Lists#sorting-a-list",
+ "LISTS_SORT_TITLE": "sorteer %1 %2 %3",
+ "LISTS_SORT_TOOLTIP": "Sorteer een kopie van een lijst.",
+ "LISTS_SORT_ORDER_ASCENDING": "oplopend",
+ "LISTS_SORT_ORDER_DESCENDING": "aflopend",
+ "LISTS_SORT_TYPE_NUMERIC": "numerieke",
+ "LISTS_SORT_TYPE_TEXT": "in alfabetische volgorde",
+ "LISTS_SORT_TYPE_IGNORECASE": "alfabetisch, negeer hoofd-/kleine letters",
+ "LISTS_SPLIT_LIST_FROM_TEXT": "lijst maken van tekst",
+ "LISTS_SPLIT_TEXT_FROM_LIST": "tekst maken van lijst",
+ "LISTS_SPLIT_WITH_DELIMITER": "met scheidingsteken",
+ "LISTS_SPLIT_TOOLTIP_SPLIT": "Tekst splitsen in een lijst van teksten op basis van een scheidingsteken.",
+ "LISTS_SPLIT_TOOLTIP_JOIN": "Lijst van tekstdelen samenvoegen in één stuk tekst, waarbij de tekstdelen gescheiden zijn door een scheidingsteken.",
+ "VARIABLES_GET_HELPURL": "https://github.com/google/blockly/wiki/Variables#get",
+ "VARIABLES_GET_TOOLTIP": "Geeft de waarde van deze variabele.",
+ "VARIABLES_GET_CREATE_SET": "Maak \"verander %1\"",
+ "VARIABLES_SET_HELPURL": "https://github.com/google/blockly/wiki/Variables#set",
+ "VARIABLES_SET": "stel %1 in op %2",
+ "VARIABLES_SET_TOOLTIP": "Verandert de waarde van de variabele naar de waarde van de invoer.",
+ "VARIABLES_SET_CREATE_GET": "Maak 'opvragen van %1'",
+ "PROCEDURES_DEFNORETURN_HELPURL": "https://nl.wikipedia.org/wiki/Subprogramma",
+ "PROCEDURES_DEFNORETURN_TITLE": "om",
+ "PROCEDURES_DEFNORETURN_PROCEDURE": "doe iets",
+ "PROCEDURES_BEFORE_PARAMS": "met:",
+ "PROCEDURES_CALL_BEFORE_PARAMS": "met:",
+ "PROCEDURES_DEFNORETURN_TOOLTIP": "Maakt een functie zonder uitvoer.",
+ "PROCEDURES_DEFNORETURN_COMMENT": "Deze functie beschrijven...",
+ "PROCEDURES_DEFRETURN_HELPURL": "https://nl.wikipedia.org/wiki/Subprogramma",
+ "PROCEDURES_DEFRETURN_RETURN": "uitvoeren",
+ "PROCEDURES_DEFRETURN_TOOLTIP": "Maakt een functie met een uitvoer.",
+ "PROCEDURES_ALLOW_STATEMENTS": "statements toestaan",
+ "PROCEDURES_DEF_DUPLICATE_WARNING": "Waarschuwing: deze functie heeft parameters met dezelfde naam.",
+ "PROCEDURES_CALLNORETURN_HELPURL": "https://nl.wikipedia.org/wiki/Subprogramma",
+ "PROCEDURES_CALLNORETURN_TOOLTIP": "Voer de door de gebruiker gedefinieerde functie \"%1\" uit.",
+ "PROCEDURES_CALLRETURN_HELPURL": "https://nl.wikipedia.org/wiki/Subprogramma",
+ "PROCEDURES_CALLRETURN_TOOLTIP": "Voer de door de gebruiker gedefinieerde functie \"%1\" uit en gebruik de uitvoer.",
+ "PROCEDURES_MUTATORCONTAINER_TITLE": "ingangen",
+ "PROCEDURES_MUTATORCONTAINER_TOOLTIP": "Invoer van deze functie toevoegen, verwijderen of herordenen.",
+ "PROCEDURES_MUTATORARG_TITLE": "invoernaam:",
+ "PROCEDURES_MUTATORARG_TOOLTIP": "Een invoer aan de functie toevoegen.",
+ "PROCEDURES_HIGHLIGHT_DEF": "Accentueer functiedefinitie",
+ "PROCEDURES_CREATE_DO": "Maak \"%1\"",
+ "PROCEDURES_IFRETURN_TOOLTIP": "Als de eerste waarde \"waar\" is, geef dan de tweede waarde terug.",
+ "PROCEDURES_IFRETURN_HELPURL": "http://c2.com/cgi/wiki?GuardClause",
+ "PROCEDURES_IFRETURN_WARNING": "Waarschuwing: dit blok mag alleen gebruikt worden binnen de definitie van een functie."
+}
diff --git a/blockly/msg/json/oc.json b/blockly/msg/json/oc.json
new file mode 100644
index 0000000..1abd506
--- /dev/null
+++ b/blockly/msg/json/oc.json
@@ -0,0 +1,122 @@
+{
+ "@metadata": {
+ "authors": [
+ "Cedric31"
+ ]
+ },
+ "VARIABLES_DEFAULT_NAME": "element",
+ "DUPLICATE_BLOCK": "Duplicar",
+ "ADD_COMMENT": "Apondre un comentari",
+ "REMOVE_COMMENT": "Suprimir un comentari",
+ "EXTERNAL_INPUTS": "Entradas extèrnas",
+ "INLINE_INPUTS": "Entradas en linha",
+ "DELETE_BLOCK": "Suprimir lo blòt",
+ "DELETE_X_BLOCKS": "Suprimir %1 blòts",
+ "DELETE_ALL_BLOCKS": "Suprimir totes los %1 blòts ?",
+ "COLLAPSE_BLOCK": "Redusir lo blòt",
+ "COLLAPSE_ALL": "Redusir los blòts",
+ "EXPAND_BLOCK": "Desvolopar lo blòt",
+ "EXPAND_ALL": "Desvolopar los blòts",
+ "DISABLE_BLOCK": "Desactivar lo blòt",
+ "ENABLE_BLOCK": "Activar lo blòt",
+ "HELP": "Ajuda",
+ "CHANGE_VALUE_TITLE": "Modificar la valor :",
+ "RENAME_VARIABLE": "Renomenar la variabla…",
+ "NEW_VARIABLE": "Variabla novèla…",
+ "NEW_VARIABLE_TITLE": "Nom de la novèla variabla :",
+ "COLOUR_PICKER_HELPURL": "https://oc.wikipedia.org/wiki/Color",
+ "COLOUR_RANDOM_TITLE": "color aleatòria",
+ "COLOUR_RANDOM_TOOLTIP": "Causir una color a l'azard.",
+ "COLOUR_RGB_TITLE": "colorar amb",
+ "COLOUR_RGB_RED": "roge",
+ "COLOUR_RGB_GREEN": "verd",
+ "COLOUR_RGB_BLUE": "blau",
+ "COLOUR_BLEND_TITLE": "mesclar",
+ "COLOUR_BLEND_COLOUR1": "color 1",
+ "COLOUR_BLEND_COLOUR2": "color 2",
+ "COLOUR_BLEND_RATIO": "ratio",
+ "CONTROLS_REPEAT_HELPURL": "https://oc.wikipedia.org/wiki/For_loop",
+ "CONTROLS_REPEAT_TITLE": "repetir %1 còps",
+ "CONTROLS_REPEAT_INPUT_DO": "far",
+ "CONTROLS_WHILEUNTIL_OPERATOR_WHILE": "repetir tant que",
+ "CONTROLS_WHILEUNTIL_OPERATOR_UNTIL": "repetir fins a",
+ "CONTROLS_FOR_TITLE": "comptar amb %1 de %2 a %3 per %4",
+ "CONTROLS_FOREACH_TITLE": "per cada element %1 dins la lista %2",
+ "CONTROLS_IF_MSG_IF": "se",
+ "CONTROLS_IF_MSG_ELSEIF": "siquenon se",
+ "CONTROLS_IF_MSG_ELSE": "siquenon",
+ "LOGIC_OPERATION_AND": "e",
+ "LOGIC_OPERATION_OR": "o",
+ "LOGIC_NEGATE_TITLE": "pas %1",
+ "LOGIC_BOOLEAN_TRUE": "verai",
+ "LOGIC_BOOLEAN_FALSE": "fals",
+ "LOGIC_NULL": "nul",
+ "LOGIC_NULL_TOOLTIP": "Renvia nul.",
+ "LOGIC_TERNARY_CONDITION": "tèst",
+ "LOGIC_TERNARY_IF_TRUE": "se verai",
+ "LOGIC_TERNARY_IF_FALSE": "se fals",
+ "MATH_NUMBER_HELPURL": "https://oc.wikipedia.org/wiki/Nombre",
+ "MATH_NUMBER_TOOLTIP": "Un nombre.",
+ "MATH_ARITHMETIC_HELPURL": "https://oc.wikipedia.org/wiki/Aritmetica",
+ "MATH_SINGLE_OP_ROOT": "raiç carrada",
+ "MATH_SINGLE_OP_ABSOLUTE": "absolut",
+ "MATH_IS_EVEN": "es par",
+ "MATH_IS_ODD": "es impar",
+ "MATH_IS_PRIME": "es primièr",
+ "MATH_IS_WHOLE": "es entièr",
+ "MATH_IS_POSITIVE": "es positiu",
+ "MATH_IS_NEGATIVE": "es negatiu",
+ "MATH_IS_DIVISIBLE_BY": "es devesible per",
+ "MATH_CHANGE_TITLE": "incrementar %1 per %2",
+ "MATH_ROUND_OPERATOR_ROUND": "arredondir",
+ "MATH_ROUND_OPERATOR_ROUNDUP": "arredondir al superior",
+ "MATH_ROUND_OPERATOR_ROUNDDOWN": "arredondir a l’inferior",
+ "MATH_ONLIST_OPERATOR_SUM": "soma de la lista",
+ "MATH_ONLIST_OPERATOR_MIN": "minimum de la lista",
+ "MATH_ONLIST_OPERATOR_MAX": "maximum de la lista",
+ "MATH_ONLIST_OPERATOR_AVERAGE": "mejana de la lista",
+ "MATH_ONLIST_OPERATOR_MEDIAN": "mediana de la lista",
+ "TEXT_APPEND_TO": "a",
+ "TEXT_APPEND_APPENDTEXT": "apondre lo tèxte",
+ "TEXT_LENGTH_TITLE": "longor de %1",
+ "TEXT_ISEMPTY_TITLE": "%1 es void",
+ "TEXT_INDEXOF_INPUT_INTEXT": "dins lo tèxte",
+ "TEXT_CHARAT_INPUT_INTEXT": "dins lo tèxte",
+ "TEXT_CHARAT_FROM_START": "obténer la letra #",
+ "TEXT_CHARAT_FROM_END": "obténer la letra # dempuèi la fin",
+ "TEXT_CHARAT_FIRST": "obténer la primièra letra",
+ "TEXT_CHARAT_LAST": "obténer la darrièra letra",
+ "TEXT_CHARAT_RANDOM": "obténer una letra a l'azard",
+ "TEXT_CHARAT_TOOLTIP": "Renvia la letra a la posicion indicada.",
+ "TEXT_GET_SUBSTRING_INPUT_IN_TEXT": "dins lo tèxte",
+ "TEXT_GET_SUBSTRING_END_FROM_START": "fins a la letra #",
+ "TEXT_CHANGECASE_OPERATOR_UPPERCASE": "en MAJUSCULAS",
+ "TEXT_CHANGECASE_OPERATOR_LOWERCASE": "en minusculas",
+ "TEXT_PRINT_TITLE": "afichar %1",
+ "LISTS_CREATE_WITH_INPUT_WITH": "crear una lista amb",
+ "LISTS_CREATE_WITH_CONTAINER_TITLE_ADD": "lista",
+ "LISTS_INLIST": "dins la lista",
+ "LISTS_GET_INDEX_GET": "obténer",
+ "LISTS_GET_INDEX_GET_REMOVE": "obténer e suprimir",
+ "LISTS_GET_INDEX_REMOVE": "suprimit",
+ "LISTS_GET_INDEX_FROM_END": "# dempuèi la fin",
+ "LISTS_GET_INDEX_FIRST": "primièr",
+ "LISTS_GET_INDEX_LAST": "darrièr",
+ "LISTS_GET_INDEX_RANDOM": "aleatòri",
+ "LISTS_SET_INDEX_SET": "metre",
+ "LISTS_SET_INDEX_INSERT": "inserir en",
+ "LISTS_SET_INDEX_INPUT_TO": "coma",
+ "LISTS_GET_SUBLIST_END_FROM_START": "fins a #",
+ "LISTS_GET_SUBLIST_END_FROM_END": "fins a # dempuèi la fin",
+ "LISTS_GET_SUBLIST_END_LAST": "fins a la fin",
+ "VARIABLES_GET_CREATE_SET": "Crear 'fixar %1'",
+ "VARIABLES_SET": "fixar %1 a %2",
+ "PROCEDURES_DEFNORETURN_TITLE": "a",
+ "PROCEDURES_DEFNORETURN_PROCEDURE": "far quicòm",
+ "PROCEDURES_BEFORE_PARAMS": "amb :",
+ "PROCEDURES_CALL_BEFORE_PARAMS": "amb :",
+ "PROCEDURES_DEFRETURN_RETURN": "retorn",
+ "PROCEDURES_MUTATORCONTAINER_TITLE": "entradas",
+ "PROCEDURES_MUTATORARG_TITLE": "nom de l’entrada :",
+ "PROCEDURES_CREATE_DO": "Crear '%1'"
+}
diff --git a/blockly/msg/json/pl.json b/blockly/msg/json/pl.json
new file mode 100644
index 0000000..709886e
--- /dev/null
+++ b/blockly/msg/json/pl.json
@@ -0,0 +1,345 @@
+{
+ "@metadata": {
+ "authors": [
+ "Cotidianis",
+ "Faren",
+ "Vengir",
+ "Pbz",
+ "Pio387",
+ "아라",
+ "Mateon1",
+ "Expert3222",
+ "Cirasean",
+ "Fringoo",
+ "Chrumps"
+ ]
+ },
+ "VARIABLES_DEFAULT_NAME": "element",
+ "TODAY": "Dzisiaj",
+ "DUPLICATE_BLOCK": "Duplikuj",
+ "ADD_COMMENT": "Dodaj komentarz",
+ "REMOVE_COMMENT": "Usuń komentarz",
+ "EXTERNAL_INPUTS": "Zewnętrzne wejścia",
+ "INLINE_INPUTS": "Wbudowane wejścia",
+ "DELETE_BLOCK": "Usuń blok",
+ "DELETE_X_BLOCKS": "Usuń %1 bloki(ów)",
+ "DELETE_ALL_BLOCKS": "Usunąć wszystkie %1 bloki(ów)?",
+ "CLEAN_UP": "Uporządkuj bloki",
+ "COLLAPSE_BLOCK": "Zwiń blok",
+ "COLLAPSE_ALL": "Zwiń bloki",
+ "EXPAND_BLOCK": "Rozwiń blok",
+ "EXPAND_ALL": "Rozwiń bloki",
+ "DISABLE_BLOCK": "Wyłącz blok",
+ "ENABLE_BLOCK": "Włącz blok",
+ "HELP": "Pomoc",
+ "UNDO": "Cofnij",
+ "REDO": "Ponów",
+ "CHANGE_VALUE_TITLE": "Zmień wartość:",
+ "RENAME_VARIABLE": "Zmień nazwę zmiennej...",
+ "RENAME_VARIABLE_TITLE": "Zmień nazwy wszystkich '%1' zmiennych na:",
+ "NEW_VARIABLE": "Nowa zmienna...",
+ "NEW_VARIABLE_TITLE": "Nowa nazwa zmiennej:",
+ "COLOUR_PICKER_HELPURL": "https://en.wikipedia.org/wiki/Color",
+ "COLOUR_PICKER_TOOLTIP": "Wybierz kolor z palety.",
+ "COLOUR_RANDOM_TITLE": "losowy kolor",
+ "COLOUR_RANDOM_TOOLTIP": "Wybierz kolor w sposób losowy.",
+ "COLOUR_RGB_HELPURL": "http://www.december.com/html/spec/colorper.html",
+ "COLOUR_RGB_TITLE": "kolor z",
+ "COLOUR_RGB_RED": "czerwony",
+ "COLOUR_RGB_GREEN": "zielony",
+ "COLOUR_RGB_BLUE": "niebieski",
+ "COLOUR_RGB_TOOLTIP": "Połącz czerwony, zielony i niebieski w odpowiednich proporcjach, tak aby powstał nowy kolor. Zawartość każdego z nich określa liczba z przedziału od 0 do 100.",
+ "COLOUR_BLEND_HELPURL": "http://meyerweb.com/eric/tools/color-blend/",
+ "COLOUR_BLEND_TITLE": "wymieszaj",
+ "COLOUR_BLEND_COLOUR1": "kolor 1",
+ "COLOUR_BLEND_COLOUR2": "kolor 2",
+ "COLOUR_BLEND_RATIO": "proporcja",
+ "COLOUR_BLEND_TOOLTIP": "Miesza dwa kolory w danej proporcji (0.0 - 1.0).",
+ "CONTROLS_REPEAT_HELPURL": "https://en.wikipedia.org/wiki/For_loop",
+ "CONTROLS_REPEAT_TITLE": "powtórz %1 razy",
+ "CONTROLS_REPEAT_INPUT_DO": "wykonaj",
+ "CONTROLS_REPEAT_TOOLTIP": "Wykonaj niektóre instrukcje kilka razy.",
+ "CONTROLS_WHILEUNTIL_OPERATOR_WHILE": "powtarzaj dopóki",
+ "CONTROLS_WHILEUNTIL_OPERATOR_UNTIL": "powtarzaj aż",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_WHILE": "Gdy wartość jest prawdziwa, wykonaj kilka instrukcji.",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL": "Gdy wartość jest nieprawdziwa, wykonaj kilka instrukcji.",
+ "CONTROLS_FOR_TOOLTIP": "Przypisuje zmiennej %1 wartości od numeru startowego do numeru końcowego, licząc co określony interwał, wykonując określone bloki.",
+ "CONTROLS_FOR_TITLE": "licz z %1 od %2 do %3 co %4 (wartość kroku)",
+ "CONTROLS_FOREACH_TITLE": "dla każdego elementu %1 na liście %2",
+ "CONTROLS_FOREACH_TOOLTIP": "Dla każdego elementu listy ustaw zmienną %1 na ten element, a następnie wykonaj kilka instrukcji.",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK": "wyjdź z pętli",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE": "przejdź do kolejnej iteracji pętli",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK": "Wyjdź z zawierającej pętli.",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE": "Pomiń resztę pętli i kontynuuj w kolejnej iteracji.",
+ "CONTROLS_FLOW_STATEMENTS_WARNING": "Uwaga: Ten blok może być użyty tylko w pętli.",
+ "CONTROLS_IF_TOOLTIP_1": "Jeśli wartość jest prawdziwa, to wykonaj kilka instrukcji.",
+ "CONTROLS_IF_TOOLTIP_2": "Jeśli wartość jest prawdziwa, to wykonaj pierwszy blok instrukcji. W przeciwnym razie, wykonaj drugi blok instrukcji.",
+ "CONTROLS_IF_TOOLTIP_3": "Jeśli pierwsza wartość jest prawdziwa, to wykonaj pierwszy blok instrukcji. W przeciwnym razie, jeśli druga wartość jest prawdziwa, to wykonaj drugi blok instrukcji.",
+ "CONTROLS_IF_TOOLTIP_4": "Jeśli pierwsza wartość jest prawdziwa, wykonaj pierwszy blok instrukcji. W przeciwnym razie jeśli druga wartość jest prawdziwa, wykonaj drugi blok instrukcji. Jeżeli żadna z wartości nie jest prawdziwa, wykonaj ostatni blok instrukcji.",
+ "CONTROLS_IF_MSG_IF": "jeśli",
+ "CONTROLS_IF_MSG_ELSEIF": "w przeciwnym razie, jeśli",
+ "CONTROLS_IF_MSG_ELSE": "w przeciwnym razie",
+ "CONTROLS_IF_IF_TOOLTIP": "Dodaj, usuń lub zmień kolejność bloków, żeby zmodyfikować ten blok „jeśli”.",
+ "CONTROLS_IF_ELSEIF_TOOLTIP": "Dodaj warunek do bloku „jeśli”.",
+ "CONTROLS_IF_ELSE_TOOLTIP": "Dodaj ostatni warunek do bloku „jeśli”, gdy żaden wcześniejszy nie był spełniony.",
+ "LOGIC_COMPARE_HELPURL": "https://pl.wikipedia.org/wiki/Nierówność",
+ "LOGIC_COMPARE_TOOLTIP_EQ": "Zwróć \"prawda\", jeśli oba wejścia są sobie równe.",
+ "LOGIC_COMPARE_TOOLTIP_NEQ": "Zwróć \"prawda\", jeśli oba wejścia są sobie nierówne.",
+ "LOGIC_COMPARE_TOOLTIP_LT": "Zwróć \"prawda\" jeśli pierwsze wejście jest większe od drugiego.",
+ "LOGIC_COMPARE_TOOLTIP_LTE": "Zwróć \"prawda\", jeśli pierwsze wejście jest większe lub równe drugiemu.",
+ "LOGIC_COMPARE_TOOLTIP_GT": "Zwróć \"prawda\" jeśli pierwsze wejście jest większe od drugiego.",
+ "LOGIC_COMPARE_TOOLTIP_GTE": "Zwróć \"prawda\", jeśli pierwsze wejście jest większe lub równe drugiemu.",
+ "LOGIC_OPERATION_TOOLTIP_AND": "Zwróć \"prawda\" jeśli oba dane elementy mają wartość \"prawda\".",
+ "LOGIC_OPERATION_AND": "i",
+ "LOGIC_OPERATION_TOOLTIP_OR": "Zwróć \"prawda\" jeśli co najmniej jeden dany element ma wartość \"prawda\".",
+ "LOGIC_OPERATION_OR": "lub",
+ "LOGIC_NEGATE_TITLE": "nie %1",
+ "LOGIC_NEGATE_TOOLTIP": "Zwraca \"prawda\", jeśli dane wejściowe są fałszywe. Zwraca \"fałsz\", jeśli dana wejściowa jest prawdziwa.",
+ "LOGIC_BOOLEAN_TRUE": "prawda",
+ "LOGIC_BOOLEAN_FALSE": "fałsz",
+ "LOGIC_BOOLEAN_TOOLTIP": "Zwraca 'prawda' lub 'fałsz'.",
+ "LOGIC_NULL_HELPURL": "https://en.wikipedia.org/wiki/Nullable_type",
+ "LOGIC_NULL": "nic",
+ "LOGIC_NULL_TOOLTIP": "Zwraca nic.",
+ "LOGIC_TERNARY_HELPURL": "https://en.wikipedia.org/wiki/%3F:",
+ "LOGIC_TERNARY_CONDITION": "test",
+ "LOGIC_TERNARY_IF_TRUE": "jeśli prawda",
+ "LOGIC_TERNARY_IF_FALSE": "jeśli fałsz",
+ "LOGIC_TERNARY_TOOLTIP": "Sprawdź warunek w „test”. Jeśli warunek jest prawdziwy, to zwróci „jeśli prawda”; jeśli nie jest prawdziwy to zwróci „jeśli fałsz”.",
+ "MATH_NUMBER_HELPURL": "https://en.wikipedia.org/wiki/Number",
+ "MATH_NUMBER_TOOLTIP": "Liczba.",
+ "MATH_ADDITION_SYMBOL": "+",
+ "MATH_SUBTRACTION_SYMBOL": "-",
+ "MATH_DIVISION_SYMBOL": "/",
+ "MATH_MULTIPLICATION_SYMBOL": "×",
+ "MATH_POWER_SYMBOL": "^",
+ "MATH_TRIG_SIN": "sin",
+ "MATH_TRIG_COS": "cos",
+ "MATH_TRIG_TAN": "tg",
+ "MATH_TRIG_ASIN": "arcsin",
+ "MATH_TRIG_ACOS": "arccos",
+ "MATH_TRIG_ATAN": "arctg",
+ "MATH_ARITHMETIC_HELPURL": "https://pl.wikipedia.org/wiki/Arytmetyka",
+ "MATH_ARITHMETIC_TOOLTIP_ADD": "Zwróć sumę dwóch liczb.",
+ "MATH_ARITHMETIC_TOOLTIP_MINUS": "Zwróć różnicę dwóch liczb.",
+ "MATH_ARITHMETIC_TOOLTIP_MULTIPLY": "Zwróć iloczyn dwóch liczb.",
+ "MATH_ARITHMETIC_TOOLTIP_DIVIDE": "Zwróć iloraz dwóch liczb.",
+ "MATH_ARITHMETIC_TOOLTIP_POWER": "Zwróć pierwszą liczbę podniesioną do potęgi o wykładniku drugiej liczby.",
+ "MATH_SINGLE_HELPURL": "https://pl.wikipedia.org/wiki/Pierwiastek_kwadratowy",
+ "MATH_SINGLE_OP_ROOT": "pierwiastek kwadratowy",
+ "MATH_SINGLE_TOOLTIP_ROOT": "Zwróć pierwiastek kwadratowy danej liczby.",
+ "MATH_SINGLE_OP_ABSOLUTE": "wartość bezwzględna",
+ "MATH_SINGLE_TOOLTIP_ABS": "Zwróć wartość bezwzględną danej liczby.",
+ "MATH_SINGLE_TOOLTIP_NEG": "Zwróć negację danej liczby.",
+ "MATH_SINGLE_TOOLTIP_LN": "Zwróć logarytm naturalny danej liczby.",
+ "MATH_SINGLE_TOOLTIP_LOG10": "Zwraca logarytm dziesiętny danej liczby.",
+ "MATH_SINGLE_TOOLTIP_EXP": "Zwróć e do potęgi danej liczby.",
+ "MATH_SINGLE_TOOLTIP_POW10": "Zwróć 10 do potęgi danej liczby.",
+ "MATH_TRIG_HELPURL": "https://pl.wikipedia.org/wiki/Funkcje_trygonometryczne",
+ "MATH_TRIG_TOOLTIP_SIN": "Zwróć wartość sinusa o stopniu (nie w radianach).",
+ "MATH_TRIG_TOOLTIP_COS": "Zwróć wartość cosinusa o stopniu (nie w radianach).",
+ "MATH_TRIG_TOOLTIP_TAN": "Zwróć tangens o stopniu (nie w radianach).",
+ "MATH_TRIG_TOOLTIP_ASIN": "Zwróć arcus sinus danej liczby.",
+ "MATH_TRIG_TOOLTIP_ACOS": "Zwróć arcus cosinus danej liczby.",
+ "MATH_TRIG_TOOLTIP_ATAN": "Zwróć arcus tangens danej liczby.",
+ "MATH_CONSTANT_HELPURL": "https://pl.wikipedia.org/wiki/Stała_(matematyka)",
+ "MATH_CONSTANT_TOOLTIP": "Zwróć jedną wspólną stałą: π (3.141), e (2.718...), φ (1.618...), sqrt(2) (1.414...), sqrt(½) (0.707...) lub ∞ (nieskończoność).",
+ "MATH_IS_EVEN": "jest parzysta",
+ "MATH_IS_ODD": "jest nieparzysta",
+ "MATH_IS_PRIME": "jest liczbą pierwszą",
+ "MATH_IS_WHOLE": "jest liczbą całkowitą",
+ "MATH_IS_POSITIVE": "jest dodatnia",
+ "MATH_IS_NEGATIVE": "jest ujemna",
+ "MATH_IS_DIVISIBLE_BY": "jest podzielna przez",
+ "MATH_IS_TOOLTIP": "Sprawdź, czy liczba jest parzysta, nieparzysta, pierwsza, całkowita, dodatnia, ujemna, lub czy jest podzielna przez podaną liczbę. Zwraca wartość \"prawda\" lub \"fałsz\".",
+ "MATH_CHANGE_HELPURL": "https://en.wikipedia.org/wiki/Programming_idiom#Incrementing_a_counter",
+ "MATH_CHANGE_TITLE": "zmień %1 o %2",
+ "MATH_CHANGE_TOOLTIP": "Dodaj liczbę do zmiennej '%1'.",
+ "MATH_ROUND_HELPURL": "https://pl.wikipedia.org/wiki/Zaokrąglanie",
+ "MATH_ROUND_TOOLTIP": "Zaokrąglij w górę lub w dół.",
+ "MATH_ROUND_OPERATOR_ROUND": "zaokrąglij",
+ "MATH_ROUND_OPERATOR_ROUNDUP": "zaokrąglij w górę",
+ "MATH_ROUND_OPERATOR_ROUNDDOWN": "zaokrąglij w dół",
+ "MATH_ONLIST_HELPURL": "",
+ "MATH_ONLIST_OPERATOR_SUM": "suma elementów listy",
+ "MATH_ONLIST_TOOLTIP_SUM": "Zwróć sumę wszystkich liczb z listy.",
+ "MATH_ONLIST_OPERATOR_MIN": "minimalna wartość z listy",
+ "MATH_ONLIST_TOOLTIP_MIN": "Zwróć najmniejszą liczbę w liście.",
+ "MATH_ONLIST_OPERATOR_MAX": "maksymalna wartość z listy",
+ "MATH_ONLIST_TOOLTIP_MAX": "Zwróć największą liczbę w liście.",
+ "MATH_ONLIST_OPERATOR_AVERAGE": "średnia elementów listy",
+ "MATH_ONLIST_TOOLTIP_AVERAGE": "Zwróć średnią (średnią arytmetyczną) wartości liczbowych z listy.",
+ "MATH_ONLIST_OPERATOR_MEDIAN": "mediana listy",
+ "MATH_ONLIST_TOOLTIP_MEDIAN": "Zwróć medianę listy.",
+ "MATH_ONLIST_OPERATOR_MODE": "dominanty listy",
+ "MATH_ONLIST_TOOLTIP_MODE": "Zwróć listę najczęściej występujących elementów w liście.",
+ "MATH_ONLIST_OPERATOR_STD_DEV": "odchylenie standardowe listy",
+ "MATH_ONLIST_TOOLTIP_STD_DEV": "Zwróć odchylenie standardowe listy.",
+ "MATH_ONLIST_OPERATOR_RANDOM": "losowy element z listy",
+ "MATH_ONLIST_TOOLTIP_RANDOM": "Zwróć losowy element z listy.",
+ "MATH_MODULO_HELPURL": "https://pl.wikipedia.org/wiki/Modulo",
+ "MATH_MODULO_TITLE": "reszta z dzielenia %1 przez %2",
+ "MATH_MODULO_TOOLTIP": "Zwróć resztę z dzielenia dwóch liczb przez siebie.",
+ "MATH_CONSTRAIN_TITLE": "ogranicz %1 z dołu %2 z góry %3",
+ "MATH_CONSTRAIN_TOOLTIP": "Ogranicz liczbę, aby była w określonych granicach (włącznie).",
+ "MATH_RANDOM_INT_HELPURL": "https://en.wikipedia.org/wiki/Random_number_generation",
+ "MATH_RANDOM_INT_TITLE": "losowa liczba całkowita od %1 do %2",
+ "MATH_RANDOM_INT_TOOLTIP": "Zwróć losową liczbę całkowitą w ramach dwóch wyznaczonych granic, włącznie.",
+ "MATH_RANDOM_FLOAT_HELPURL": "https://en.wikipedia.org/wiki/Random_number_generation",
+ "MATH_RANDOM_FLOAT_TITLE_RANDOM": "losowy ułamek",
+ "MATH_RANDOM_FLOAT_TOOLTIP": "Zwróć losowy ułamek między 0.0 (włącznie), a 1.0 (wyłącznie).",
+ "TEXT_TEXT_HELPURL": "https://pl.wikipedia.org/wiki/Tekstowy_typ_danych",
+ "TEXT_TEXT_TOOLTIP": "Litera, wyraz lub linia tekstu.",
+ "TEXT_JOIN_TITLE_CREATEWITH": "utwórz tekst z",
+ "TEXT_JOIN_TOOLTIP": "Tworzy fragment tekstu, łącząc ze sobą dowolną liczbę tekstów.",
+ "TEXT_CREATE_JOIN_TITLE_JOIN": "połącz",
+ "TEXT_CREATE_JOIN_TOOLTIP": "Dodaj, usuń lub zmień kolejność sekcji, aby zmodyfikować blok tekstowy.",
+ "TEXT_CREATE_JOIN_ITEM_TOOLTIP": "Dodaj element do tekstu.",
+ "TEXT_APPEND_TO": "do",
+ "TEXT_APPEND_APPENDTEXT": "dołącz tekst",
+ "TEXT_APPEND_TOOLTIP": "Dołącz tekst do zmiennej '%1'.",
+ "TEXT_LENGTH_TITLE": "długość %1",
+ "TEXT_LENGTH_TOOLTIP": "Zwraca liczbę liter (łącznie ze spacjami) w podanym tekście.",
+ "TEXT_ISEMPTY_TITLE": "%1 jest pusty",
+ "TEXT_ISEMPTY_TOOLTIP": "Zwraca prawda (true), jeśli podany tekst jest pusty.",
+ "TEXT_INDEXOF_TOOLTIP": "Zwraca indeks pierwszego/ostatniego wystąpienia pierwszego tekstu w drugim tekście. Zwraca wartość %1, jeśli tekst nie został znaleziony.",
+ "TEXT_INDEXOF_INPUT_INTEXT": "w tekście",
+ "TEXT_INDEXOF_OPERATOR_FIRST": "znajdź pierwsze wystąpienie tekstu",
+ "TEXT_INDEXOF_OPERATOR_LAST": "znajdź ostatnie wystąpienie tekstu",
+ "TEXT_INDEXOF_TAIL": "",
+ "TEXT_CHARAT_INPUT_INTEXT": "z tekstu",
+ "TEXT_CHARAT_FROM_START": "pobierz literę #",
+ "TEXT_CHARAT_FROM_END": "pobierz literę # od końca",
+ "TEXT_CHARAT_FIRST": "pobierz pierwszą literę",
+ "TEXT_CHARAT_LAST": "pobierz ostatnią literę",
+ "TEXT_CHARAT_RANDOM": "pobierz losową literę",
+ "TEXT_CHARAT_TAIL": "",
+ "TEXT_CHARAT_TOOLTIP": "Zwraca literę z określonej pozycji.",
+ "TEXT_GET_SUBSTRING_TOOLTIP": "Zwraca określoną część tekstu.",
+ "TEXT_GET_SUBSTRING_INPUT_IN_TEXT": "w tekście",
+ "TEXT_GET_SUBSTRING_START_FROM_START": "pobierz podciąg od # litery",
+ "TEXT_GET_SUBSTRING_START_FROM_END": "pobierz podciąg od # litery od końca",
+ "TEXT_GET_SUBSTRING_START_FIRST": "pobierz podciąg od pierwszej litery",
+ "TEXT_GET_SUBSTRING_END_FROM_START": "do # litery",
+ "TEXT_GET_SUBSTRING_END_FROM_END": "do # litery od końca",
+ "TEXT_GET_SUBSTRING_END_LAST": "do ostatniej litery",
+ "TEXT_GET_SUBSTRING_TAIL": "",
+ "TEXT_CHANGECASE_TOOLTIP": "Zwraca kopię tekstu z inną wielkością liter.",
+ "TEXT_CHANGECASE_OPERATOR_UPPERCASE": "zmień na WIELKIE LITERY",
+ "TEXT_CHANGECASE_OPERATOR_LOWERCASE": "zmień na małe litery",
+ "TEXT_CHANGECASE_OPERATOR_TITLECASE": "zmień na od Wielkich Liter",
+ "TEXT_TRIM_TOOLTIP": "Zwraca kopię tekstu z usuniętymi spacjami z jednego lub z obu końców tekstu.",
+ "TEXT_TRIM_OPERATOR_BOTH": "usuń spacje po obu stronach",
+ "TEXT_TRIM_OPERATOR_LEFT": "usuń spacje z lewej strony",
+ "TEXT_TRIM_OPERATOR_RIGHT": "usuń spacje z prawej strony",
+ "TEXT_PRINT_TITLE": "wydrukuj %1",
+ "TEXT_PRINT_TOOLTIP": "Drukuj określony tekst, liczbę lub inną wartość.",
+ "TEXT_PROMPT_TYPE_TEXT": "poproś o tekst z tą wiadomością",
+ "TEXT_PROMPT_TYPE_NUMBER": "poproś o liczbę z tą wiadomością",
+ "TEXT_PROMPT_TOOLTIP_NUMBER": "Zapytaj użytkownika o liczbę.",
+ "TEXT_PROMPT_TOOLTIP_TEXT": "Zapytaj użytkownika o jakiś tekst.",
+ "LISTS_CREATE_EMPTY_HELPURL": "https://github.com/google/blockly/wiki/Lists#create-empty-list",
+ "LISTS_CREATE_EMPTY_TITLE": "utwórz pustą listę",
+ "LISTS_CREATE_EMPTY_TOOLTIP": "Zwraca listę, o długości 0, nie zawierającą rekordów z danymi",
+ "LISTS_CREATE_WITH_TOOLTIP": "Utwórz listę z dowolną ilością elementów.",
+ "LISTS_CREATE_WITH_INPUT_WITH": "Tworzenie listy z",
+ "LISTS_CREATE_WITH_CONTAINER_TITLE_ADD": "lista",
+ "LISTS_CREATE_WITH_CONTAINER_TOOLTIP": "Dodaj, usuń lub zmień kolejność sekcji żeby skonfigurować ten blok listy.",
+ "LISTS_CREATE_WITH_ITEM_TOOLTIP": "Dodaj element do listy.",
+ "LISTS_REPEAT_TOOLTIP": "Tworzy listę składającą się z podanej wartości powtórzonej odpowiednią liczbę razy.",
+ "LISTS_REPEAT_TITLE": "stwórz listę, powtarzając element %1 %2 razy",
+ "LISTS_LENGTH_TITLE": "długość %1",
+ "LISTS_LENGTH_TOOLTIP": "Zwraca długość listy.",
+ "LISTS_ISEMPTY_TITLE": "%1 jest pusty",
+ "LISTS_ISEMPTY_TOOLTIP": "Zwraca \"prawda\" jeśli lista jest pusta.",
+ "LISTS_INLIST": "na liście",
+ "LISTS_INDEX_OF_FIRST": "znaleźć pierwsze wystąpienie elementu",
+ "LISTS_INDEX_OF_LAST": "znajduje ostatanie wystąpienie elementu",
+ "LISTS_INDEX_OF_TOOLTIP": "Zwraca indeks pierwszego/ostatniego wystąpienia elementu na liście. Zwraca wartość %1, jeśli tekst nie zostanie znaleziony.",
+ "LISTS_GET_INDEX_GET": "pobierz",
+ "LISTS_GET_INDEX_GET_REMOVE": "Pobierz i usuń",
+ "LISTS_GET_INDEX_REMOVE": "usuń",
+ "LISTS_GET_INDEX_FROM_START": "#",
+ "LISTS_GET_INDEX_FROM_END": "# od końca",
+ "LISTS_GET_INDEX_FIRST": "pierwszy",
+ "LISTS_GET_INDEX_LAST": "ostatni",
+ "LISTS_GET_INDEX_RANDOM": "losowy",
+ "LISTS_GET_INDEX_TAIL": "",
+ "LISTS_INDEX_FROM_START_TOOLTIP": "%1 to pierwszy element.",
+ "LISTS_INDEX_FROM_END_TOOLTIP": "%1 to ostatni element.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_FROM": "Zwraca element z konkretnej pozycji na liście.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_FIRST": "Zwraca pierwszy element z listy.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_LAST": "Zwraca ostatni element z listy.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_RANDOM": "Zwraca losowy element z listy.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM": "Usuwa i zwraca element z określonej pozycji na liście.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST": "Usuwa i zwraca pierwszy element z listy.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST": "Usuwa i zwraca ostatni element z listy.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM": "Usuwa i zwraca losowy element z listy.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM": "Usuwa element z określonej pozycji na liście.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST": "Usuwa pierwszy element z listy.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST": "Usuwa ostatni element z listy.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM": "Usuwa losowy element z listy.",
+ "LISTS_SET_INDEX_SET": "ustaw",
+ "LISTS_SET_INDEX_INSERT": "wstaw w",
+ "LISTS_SET_INDEX_INPUT_TO": "jako",
+ "LISTS_SET_INDEX_TOOLTIP_SET_FROM": "Ustawia element w określonym miejscu na liście.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_FIRST": "Ustawia pierwszy element na liście.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_LAST": "Ustawia ostatni element na liście.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_RANDOM": "Ustawia losowy element na liście.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_FROM": "Wstawia element w odpowiednim miejscu na liście.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST": "Wstawia element na początku listy.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_LAST": "Dodaj element na koniec listy.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM": "Wstawia element w losowym miejscu na liście.",
+ "LISTS_GET_SUBLIST_START_FROM_START": "Pobierz listę podrzędną z #",
+ "LISTS_GET_SUBLIST_START_FROM_END": "Pobierz listę podrzędną z # od końca",
+ "LISTS_GET_SUBLIST_START_FIRST": "Pobierz listę podrzędną z pierwszego",
+ "LISTS_GET_SUBLIST_END_FROM_START": "do #",
+ "LISTS_GET_SUBLIST_END_FROM_END": "do # od końca",
+ "LISTS_GET_SUBLIST_END_LAST": "do ostatniego",
+ "LISTS_GET_SUBLIST_TAIL": "",
+ "LISTS_GET_SUBLIST_TOOLTIP": "Tworzy kopię z określoną część listy.",
+ "LISTS_SORT_HELPURL": "https://github.com/google/blockly/wiki/Lists#sorting-a-list",
+ "LISTS_SORT_TITLE": "sortuj %1 %2 %3",
+ "LISTS_SORT_TOOLTIP": "Sortuj kopię listy.",
+ "LISTS_SORT_ORDER_ASCENDING": "rosnąco",
+ "LISTS_SORT_ORDER_DESCENDING": "malejąco",
+ "LISTS_SORT_TYPE_NUMERIC": "numerycznie",
+ "LISTS_SORT_TYPE_TEXT": "alfabetycznie",
+ "LISTS_SORT_TYPE_IGNORECASE": "alfabetycznie, bez uwzględniania wielkości liter",
+ "LISTS_SPLIT_LIST_FROM_TEXT": "stwórz listę z tekstu",
+ "LISTS_SPLIT_TEXT_FROM_LIST": "stwórz tekst z listy",
+ "LISTS_SPLIT_WITH_DELIMITER": "z separatorem",
+ "LISTS_SPLIT_TOOLTIP_SPLIT": "Rozdziela tekst na listę mniejszych tekstów, dzieląc na każdym separatorze.",
+ "LISTS_SPLIT_TOOLTIP_JOIN": "Łączy listę tekstów w jeden tekst, rozdzielany separatorem.",
+ "ORDINAL_NUMBER_SUFFIX": "",
+ "VARIABLES_GET_TOOLTIP": "Zwraca wartość tej zmiennej.",
+ "VARIABLES_GET_CREATE_SET": "Utwórz blok 'ustaw %1'",
+ "VARIABLES_SET": "przypisz %1 wartość %2",
+ "VARIABLES_SET_TOOLTIP": "Nadaj tej zmiennej wartość.",
+ "VARIABLES_SET_CREATE_GET": "Utwórz blok 'pobierz %1'",
+ "PROCEDURES_DEFNORETURN_HELPURL": "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29",
+ "PROCEDURES_DEFNORETURN_TITLE": "do",
+ "PROCEDURES_DEFNORETURN_PROCEDURE": "zrób coś",
+ "PROCEDURES_BEFORE_PARAMS": "z:",
+ "PROCEDURES_CALL_BEFORE_PARAMS": "z:",
+ "PROCEDURES_DEFNORETURN_DO": "",
+ "PROCEDURES_DEFNORETURN_TOOLTIP": "Tworzy funkcję bez wyniku.",
+ "PROCEDURES_DEFNORETURN_COMMENT": "Opisz tę funkcję...",
+ "PROCEDURES_DEFRETURN_HELPURL": "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29",
+ "PROCEDURES_DEFRETURN_RETURN": "zwróć",
+ "PROCEDURES_DEFRETURN_TOOLTIP": "Tworzy funkcję z wynikiem.",
+ "PROCEDURES_ALLOW_STATEMENTS": "zezwól na instrukcje",
+ "PROCEDURES_DEF_DUPLICATE_WARNING": "Uwaga: Ta funkcja ma powtórzone parametry.",
+ "PROCEDURES_CALLNORETURN_HELPURL": "https://pl.wikipedia.org/wiki/Podprogram",
+ "PROCEDURES_CALLNORETURN_TOOLTIP": "Uruchom funkcję zdefiniowaną przez użytkownika '%1'.",
+ "PROCEDURES_CALLRETURN_HELPURL": "https://pl.wikipedia.org/wiki/Podprogram",
+ "PROCEDURES_CALLRETURN_TOOLTIP": "Uruchom funkcję zdefiniowaną przez użytkownika '%1' i skorzystaj z jej wyniku.",
+ "PROCEDURES_MUTATORCONTAINER_TITLE": "wejścia",
+ "PROCEDURES_MUTATORCONTAINER_TOOLTIP": "Dodaj, usuń lub zmień kolejność danych wejściowych dla tej funkcji.",
+ "PROCEDURES_MUTATORARG_TITLE": "nazwa wejścia:",
+ "PROCEDURES_MUTATORARG_TOOLTIP": "Dodaj dane wejściowe do funkcji.",
+ "PROCEDURES_HIGHLIGHT_DEF": "Podświetl definicję funkcji",
+ "PROCEDURES_CREATE_DO": "Stwórz '%1'",
+ "PROCEDURES_IFRETURN_TOOLTIP": "Jeśli wartość jest prawdziwa, zwróć drugą wartość.",
+ "PROCEDURES_IFRETURN_WARNING": "Uwaga: Ten blok może być używany tylko w definicji funkcji."
+}
diff --git a/blockly/msg/json/pms.json b/blockly/msg/json/pms.json
new file mode 100644
index 0000000..1147dfb
--- /dev/null
+++ b/blockly/msg/json/pms.json
@@ -0,0 +1,314 @@
+{
+ "@metadata": {
+ "authors": [
+ "Borichèt"
+ ]
+ },
+ "VARIABLES_DEFAULT_NAME": "element",
+ "TODAY": "Ancheuj",
+ "DUPLICATE_BLOCK": "Dupliché",
+ "ADD_COMMENT": "Gionté un coment",
+ "REMOVE_COMMENT": "Scancelé un coment",
+ "EXTERNAL_INPUTS": "Imission esterne",
+ "INLINE_INPUTS": "Imission an linia",
+ "DELETE_BLOCK": "Scancelé ël blòch",
+ "DELETE_X_BLOCKS": "Scancelé %1 blòch",
+ "DELETE_ALL_BLOCKS": "Scancelé tuti ij %1 blòch?",
+ "CLEAN_UP": "Dëscancelé ij blòch",
+ "COLLAPSE_BLOCK": "Arduve ël blòch",
+ "COLLAPSE_ALL": "Arduve ij blòch",
+ "EXPAND_BLOCK": "Dësvlupé ël blòch",
+ "EXPAND_ALL": "Dësvlupé ij blòch",
+ "DISABLE_BLOCK": "Disativé ël blòch",
+ "ENABLE_BLOCK": "Ativé ël blòch",
+ "HELP": "Agiut",
+ "UNDO": "Anulé",
+ "REDO": "Fé torna",
+ "CHANGE_VALUE_TITLE": "Modifiché ël valor:",
+ "RENAME_VARIABLE": "Arnomé la variàbil...",
+ "RENAME_VARIABLE_TITLE": "Arnomé tute le variàbij '%1' 'me:",
+ "NEW_VARIABLE": "Creé na variàbil...",
+ "NEW_VARIABLE_TITLE": "Nòm ëd la neuva variàbil:",
+ "VARIABLE_ALREADY_EXISTS": "Na variàbil con ël nòm '%1' a esist già.",
+ "DELETE_VARIABLE_CONFIRMATION": "Eliminé %1 utilisassion ëd la variàbil '%2'?",
+ "DELETE_VARIABLE": "Eliminé la variàbil '%1'",
+ "COLOUR_PICKER_HELPURL": "https://en.wikipedia.org/wiki/Color",
+ "COLOUR_PICKER_TOOLTIP": "Serne un color ant la taulòssa.",
+ "COLOUR_RANDOM_TITLE": "color a asar",
+ "COLOUR_RANDOM_TOOLTIP": "Serne un color a asar.",
+ "COLOUR_RGB_TITLE": "coloré con",
+ "COLOUR_RGB_RED": "ross",
+ "COLOUR_RGB_GREEN": "verd",
+ "COLOUR_RGB_BLUE": "bleu",
+ "COLOUR_RGB_TOOLTIP": "Creé un color con la quantità spessificà ëd ross, verd e bleu. Tuti ij valor a devo esse antra 0 e 100.",
+ "COLOUR_BLEND_TITLE": "mës-cé",
+ "COLOUR_BLEND_COLOUR1": "color 1",
+ "COLOUR_BLEND_COLOUR2": "color 2",
+ "COLOUR_BLEND_RATIO": "rapòrt",
+ "COLOUR_BLEND_TOOLTIP": "A mës-cia doi color ansema con un rapòrt dàit (0,0 - 1,0).",
+ "CONTROLS_REPEAT_HELPURL": "https://en.wikipedia.org/wiki/For_loop",
+ "CONTROLS_REPEAT_TITLE": "arpete %1 vire",
+ "CONTROLS_REPEAT_INPUT_DO": "fé",
+ "CONTROLS_REPEAT_TOOLTIP": "Eseguì chèiche anstrussion vàire vire.",
+ "CONTROLS_WHILEUNTIL_OPERATOR_WHILE": "arpete antramentre che",
+ "CONTROLS_WHILEUNTIL_OPERATOR_UNTIL": "arpete fin-a a",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_WHILE": "Cand un valor a l'é ver, eseguì chèiche anstrussion.",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL": "Cand un valor a l'é fàuss, eseguì chèiche anstrussion.",
+ "CONTROLS_FOR_TOOLTIP": "Fé an manera che la variàbil \"%1\" a pija ij valor dal nùmer inissial fin-a al nùmer final, an contand për l'antërval ëspessificà, e eseguì ij bloch ëspessificà.",
+ "CONTROLS_FOR_TITLE": "conté con %1 da %2 a %3 për %4",
+ "CONTROLS_FOREACH_TITLE": "për minca n'element %1 ant la lista %2",
+ "CONTROLS_FOREACH_TOOLTIP": "Për minca element an na lista, dé ël valor ëd l'element a la variàbil '%1', peui eseguì chèiche anstrussion.",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK": "seurte da la liassa",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE": "continué con l'iterassion sucessiva dla liassa",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK": "Seurte da la liassa anglobanta.",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE": "Sauté ël rest ëd sa liassa, e continué con l'iterassion apress.",
+ "CONTROLS_FLOW_STATEMENTS_WARNING": "Atension: Ës blòch a peul mach esse dovrà andrinta a na liassa.",
+ "CONTROLS_IF_TOOLTIP_1": "Si un valor a l'é ver, antlora eseguì chèiche anstrussion.",
+ "CONTROLS_IF_TOOLTIP_2": "Si un valor a l'é ver, antlora eseguì ël prim blòch d'anstrussion. Dësnò, eseguì ël second blòch d'anstrussion.",
+ "CONTROLS_IF_TOOLTIP_3": "Si ël prim valor a l'é ver, antlora fé andé ël prim blòch d'anstrussion. Dësnò, si ël second valor a l'é ver, fé andé ël second blòch d'anstrussion.",
+ "CONTROLS_IF_TOOLTIP_4": "Si ël prim valor a l'é ver, antlora fé andé ël prim blòch d'anstrussion. Dësnò, si ël second valor a l'é ver, fé andé ël second blòcj d'anstrussion. Si gnun dij valor a l'é ver, fé andé l'ùltim blòch d'anstrussion.",
+ "CONTROLS_IF_MSG_IF": "si",
+ "CONTROLS_IF_MSG_ELSEIF": "dësnò si",
+ "CONTROLS_IF_MSG_ELSE": "dësnò",
+ "CONTROLS_IF_IF_TOOLTIP": "Gionté, gavé o riordiné le session për cinfiguré torna ës blòch si.",
+ "CONTROLS_IF_ELSEIF_TOOLTIP": "Gionté na condission al blòch si.",
+ "CONTROLS_IF_ELSE_TOOLTIP": "Gionté na condission final ch'a cheuj tut al blòch si.",
+ "LOGIC_COMPARE_HELPURL": "https://en.wikipedia.org/wiki/Inequality_(mathematics)",
+ "LOGIC_COMPARE_TOOLTIP_EQ": "Rësponde ver si le doe imission a son uguaj.",
+ "LOGIC_COMPARE_TOOLTIP_NEQ": "Rësponde ver si le doe imission a son nen uguaj.",
+ "LOGIC_COMPARE_TOOLTIP_LT": "Rësponde ver si la prima imission a l'é pi cita dla sconda.",
+ "LOGIC_COMPARE_TOOLTIP_LTE": "Rësponde ver si la prima imission a l'é pi cita o ugual a la sconda.",
+ "LOGIC_COMPARE_TOOLTIP_GT": "Rësponde ver si la prima imission a l'é pi granda che la sconda.",
+ "LOGIC_COMPARE_TOOLTIP_GTE": "Rësponde ver si la prima imission a l'é pi granda o ugual a la sconda.",
+ "LOGIC_OPERATION_TOOLTIP_AND": "Rësponde ver se tute doe j'imission a son vere.",
+ "LOGIC_OPERATION_AND": "e",
+ "LOGIC_OPERATION_TOOLTIP_OR": "Rësponde ver se almanch un-a d'imission a l'é vera.",
+ "LOGIC_OPERATION_OR": "o",
+ "LOGIC_NEGATE_TITLE": "nen %1",
+ "LOGIC_NEGATE_TOOLTIP": "A rëspond ver se l'imission a l'é fàussa. A rëspond fàuss se l'imission a l'é vera.",
+ "LOGIC_BOOLEAN_TRUE": "ver",
+ "LOGIC_BOOLEAN_FALSE": "fàuss",
+ "LOGIC_BOOLEAN_TOOLTIP": "A rëspond ver o fàuss.",
+ "LOGIC_NULL": "gnente",
+ "LOGIC_NULL_TOOLTIP": "A rëspond gnente.",
+ "LOGIC_TERNARY_CONDITION": "preuva",
+ "LOGIC_TERNARY_IF_TRUE": "se ver",
+ "LOGIC_TERNARY_IF_FALSE": "se fàuss",
+ "LOGIC_TERNARY_TOOLTIP": "Controlé la condission an 'preuva'. Se la condission a l'é vera, a rëspond con ël valor 'se ver'; dësnò a rëspond con ël valor 'se fàuss'.",
+ "MATH_NUMBER_HELPURL": "https://en.wikipedia.org/wiki/Number",
+ "MATH_NUMBER_TOOLTIP": "Un nùmer.",
+ "MATH_ARITHMETIC_HELPURL": "https://en.wikipedia.org/wiki/Arithmetic",
+ "MATH_ARITHMETIC_TOOLTIP_ADD": "A smon la soma ëd doi nùmer.",
+ "MATH_ARITHMETIC_TOOLTIP_MINUS": "A smon la diferensa dij doi nùmer.",
+ "MATH_ARITHMETIC_TOOLTIP_MULTIPLY": "A smon ël prodot dij doi nùmer.",
+ "MATH_ARITHMETIC_TOOLTIP_DIVIDE": "A smon ël cossient dij doi nùmer.",
+ "MATH_ARITHMETIC_TOOLTIP_POWER": "A smon ël prim nùmer alvà a la potensa dël second.",
+ "MATH_SINGLE_HELPURL": "https://en.wikipedia.org/wiki/Square_root",
+ "MATH_SINGLE_OP_ROOT": "rèis quadra",
+ "MATH_SINGLE_TOOLTIP_ROOT": "A smon la rèis quadra d'un nùmer.",
+ "MATH_SINGLE_OP_ABSOLUTE": "assolù",
+ "MATH_SINGLE_TOOLTIP_ABS": "A smon ël valor assolù d'un nùmer.",
+ "MATH_SINGLE_TOOLTIP_NEG": "A smon l'opòst d'un nùmer.",
+ "MATH_SINGLE_TOOLTIP_LN": "A smon ël logaritm natural d'un nùmer.",
+ "MATH_SINGLE_TOOLTIP_LOG10": "A smon ël logaritm an base 10 d'un nùmer.",
+ "MATH_SINGLE_TOOLTIP_EXP": "A smon e a la potensa d'un nùmer.",
+ "MATH_SINGLE_TOOLTIP_POW10": "A smon 10 a la potensa d'un nùmer.",
+ "MATH_TRIG_HELPURL": "https://en.wikipedia.org/wiki/Trigonometric_functions",
+ "MATH_TRIG_TOOLTIP_SIN": "A smon ël sen ëd n'àngol an gré (pa an radiant).",
+ "MATH_TRIG_TOOLTIP_COS": "A smon ël cosen ëd n'àngol an gré (pa an radiant).",
+ "MATH_TRIG_TOOLTIP_TAN": "A smon la tangenta ëd n'àngol an gré (pa an radiant).",
+ "MATH_TRIG_TOOLTIP_ASIN": "A smon l'arch-sen d'un nùmer.",
+ "MATH_TRIG_TOOLTIP_ACOS": "A smon l'arch-cosen d'un nùmer.",
+ "MATH_TRIG_TOOLTIP_ATAN": "A smon l'arch-tangenta d'un nùmer.",
+ "MATH_CONSTANT_HELPURL": "https://en.wikipedia.org/wiki/Mathematical_constant",
+ "MATH_CONSTANT_TOOLTIP": "A smon un-a dle costante comun-e π (3.141…), e (2.718…), φ (1.618…), sqrt(2) (1.414…), sqrt(½) (0.707…) o ∞ (infinì).",
+ "MATH_IS_EVEN": "a l'é cobi",
+ "MATH_IS_ODD": "a l'é dëscobi",
+ "MATH_IS_PRIME": "a l'é prim",
+ "MATH_IS_WHOLE": "a l'é antregh",
+ "MATH_IS_POSITIVE": "a l'é positiv",
+ "MATH_IS_NEGATIVE": "a l'é negativ",
+ "MATH_IS_DIVISIBLE_BY": "a l'é divisìbil për",
+ "MATH_IS_TOOLTIP": "A contròla si un nùmer a l'é cobi, dëscobi, prim, antreghm positiv, negativ, o s'a l'é divisìbil për un nùmer dàit. A rëspond ver o fàuss.",
+ "MATH_CHANGE_HELPURL": "https://en.wikipedia.org/wiki/Programming_idiom#Incrementing_a_counter",
+ "MATH_CHANGE_TITLE": "ancrementé %1 për %2",
+ "MATH_CHANGE_TOOLTIP": "Gionté un nùmer a la variàbil '%1'.",
+ "MATH_ROUND_HELPURL": "https://en.wikipedia.org/wiki/Rounding",
+ "MATH_ROUND_TOOLTIP": "A arionda un nùmer për difet o ecess.",
+ "MATH_ROUND_OPERATOR_ROUND": "ariondé",
+ "MATH_ROUND_OPERATOR_ROUNDUP": "ariondé për ecess",
+ "MATH_ROUND_OPERATOR_ROUNDDOWN": "ariondé për difet",
+ "MATH_ONLIST_OPERATOR_SUM": "soma dla lista",
+ "MATH_ONLIST_TOOLTIP_SUM": "A smon la soma ëd tuti ij nùmer ant la lista.",
+ "MATH_ONLIST_OPERATOR_MIN": "mìnim ëd la lista",
+ "MATH_ONLIST_TOOLTIP_MIN": "A smon ël pi cit nùmer ëd la lista.",
+ "MATH_ONLIST_OPERATOR_MAX": "màssim ëd la lista",
+ "MATH_ONLIST_TOOLTIP_MAX": "A smon ël pi gròss nùmer ëd la lista.",
+ "MATH_ONLIST_OPERATOR_AVERAGE": "media dla lista",
+ "MATH_ONLIST_TOOLTIP_AVERAGE": "A smon la media (aritmética) dij valor numérich ant la lista.",
+ "MATH_ONLIST_OPERATOR_MEDIAN": "mesan-a dla lista",
+ "MATH_ONLIST_TOOLTIP_MEDIAN": "A smon ël nùmer mesan ëd la lista.",
+ "MATH_ONLIST_OPERATOR_MODE": "mòde dla lista",
+ "MATH_ONLIST_TOOLTIP_MODE": "A smon na lista dj'element pi frequent ëd la lista.",
+ "MATH_ONLIST_OPERATOR_STD_DEV": "deviassion ëstàndard ëd la lista",
+ "MATH_ONLIST_TOOLTIP_STD_DEV": "A smon la deviassion ëstàndard ëd la lista.",
+ "MATH_ONLIST_OPERATOR_RANDOM": "element a l'ancàpit ëd la lista",
+ "MATH_ONLIST_TOOLTIP_RANDOM": "A smon n'element a l'ancàpit da la lista.",
+ "MATH_MODULO_HELPURL": "https://en.wikipedia.org/wiki/Modulo_operation",
+ "MATH_MODULO_TITLE": "resta ëd %1:%2",
+ "MATH_MODULO_TOOLTIP": "A smon la resta ëd la division dij doi nùmer.",
+ "MATH_CONSTRAIN_TITLE": "limité %1 antra %2 e %3",
+ "MATH_CONSTRAIN_TOOLTIP": "Limité un nùmer a esse antra le limitassion ëspessificà (comprèise).",
+ "MATH_RANDOM_INT_HELPURL": "https://en.wikipedia.org/wiki/Random_number_generation",
+ "MATH_RANDOM_INT_TITLE": "antregh aleatòri antra %1 e %2",
+ "MATH_RANDOM_INT_TOOLTIP": "A smon n'antregh aleatòri antra ij doi lìmit ëspessificà, comprèis.",
+ "MATH_RANDOM_FLOAT_HELPURL": "https://en.wikipedia.org/wiki/Random_number_generation",
+ "MATH_RANDOM_FLOAT_TITLE_RANDOM": "frassion aleatòria",
+ "MATH_RANDOM_FLOAT_TOOLTIP": "A smon na frassion aleatòria antra 0,0 (comprèis) e 1,0 (esclus).",
+ "TEXT_TEXT_HELPURL": "https://en.wikipedia.org/wiki/String_(computer_science)",
+ "TEXT_TEXT_TOOLTIP": "Na litra, na paròla o na linia ëd test.",
+ "TEXT_JOIN_TITLE_CREATEWITH": "creé ël test con",
+ "TEXT_JOIN_TOOLTIP": "Creé un tòch ëd test an gionzend un nùmer qualsëssìa d'element.",
+ "TEXT_CREATE_JOIN_TITLE_JOIN": "gionze",
+ "TEXT_CREATE_JOIN_TOOLTIP": "Gionté, gavé o riordiné le session për configuré torna ës blòch ëd test.",
+ "TEXT_CREATE_JOIN_ITEM_TOOLTIP": "Gionté n'element al test.",
+ "TEXT_APPEND_TO": "a",
+ "TEXT_APPEND_APPENDTEXT": "taché ël test",
+ "TEXT_APPEND_TOOLTIP": "Taché dël test a la variàbil '%1'.",
+ "TEXT_LENGTH_TITLE": "longheur ëd %1",
+ "TEXT_LENGTH_TOOLTIP": "A smon ël nùmer ëd litre (spassi comprèis) ant ël test fornì.",
+ "TEXT_ISEMPTY_TITLE": "%1 a l'é veuid",
+ "TEXT_ISEMPTY_TOOLTIP": "A smon ver se ël test fornì a l'é veuid.",
+ "TEXT_INDEXOF_TOOLTIP": "A smon l'ìndes dla prima/ùltima ocorensa dël prim test ant ël second test. A smon %1 se ël test a l'é nen trovà.",
+ "TEXT_INDEXOF_INPUT_INTEXT": "ant ël test",
+ "TEXT_INDEXOF_OPERATOR_FIRST": "trové la prima ocorensa dël test",
+ "TEXT_INDEXOF_OPERATOR_LAST": "trové l'ùltima ocorensa dël test",
+ "TEXT_CHARAT_INPUT_INTEXT": "ant ël test",
+ "TEXT_CHARAT_FROM_START": "oten-e la litra #",
+ "TEXT_CHARAT_FROM_END": "oten-e la litra # da la fin",
+ "TEXT_CHARAT_FIRST": "oten-e la prima litra",
+ "TEXT_CHARAT_LAST": "oten-e l'ùltima litra",
+ "TEXT_CHARAT_RANDOM": "oten-e na litra a l'ancàpit",
+ "TEXT_CHARAT_TOOLTIP": "A smon la litra ant la posission ëspessificà.",
+ "TEXT_GET_SUBSTRING_TOOLTIP": "A smon un tòch ëspessificà dël test.",
+ "TEXT_GET_SUBSTRING_INPUT_IN_TEXT": "ant ël test",
+ "TEXT_GET_SUBSTRING_START_FROM_START": "oten-e la sota-stringa da la litra #",
+ "TEXT_GET_SUBSTRING_START_FROM_END": "oten-e la sota-stringa da la litra # da la fin",
+ "TEXT_GET_SUBSTRING_START_FIRST": "oten-e la sota-stringa da la prima litra",
+ "TEXT_GET_SUBSTRING_END_FROM_START": "fin-a a la litra #",
+ "TEXT_GET_SUBSTRING_END_FROM_END": "fin-a a la litra # da la fin",
+ "TEXT_GET_SUBSTRING_END_LAST": "fin-a a l'ùltima litra",
+ "TEXT_CHANGECASE_TOOLTIP": "A smon na còpia dël test ant un caràter diferent.",
+ "TEXT_CHANGECASE_OPERATOR_UPPERCASE": "an MAJÙSCOL",
+ "TEXT_CHANGECASE_OPERATOR_LOWERCASE": "an minùscul",
+ "TEXT_CHANGECASE_OPERATOR_TITLECASE": "an Majùscol A L'Ancamin Ëd Minca Paròla",
+ "TEXT_TRIM_TOOLTIP": "A smon na còpia dël test con jë spassi gavà da n'estremità o da tute doe.",
+ "TEXT_TRIM_OPERATOR_BOTH": "gavé jë spassi da le doe bande ëd",
+ "TEXT_TRIM_OPERATOR_LEFT": "gavé jë spassi da la banda snistra ëd",
+ "TEXT_TRIM_OPERATOR_RIGHT": "gavé jë spassi da la banda drita ëd",
+ "TEXT_PRINT_TITLE": "smon-e %1",
+ "TEXT_PRINT_TOOLTIP": "Smon-e ël test, ël nùmer o n'àutr valor ëspessificà.",
+ "TEXT_PROMPT_TYPE_TEXT": "anvit për un test con un mëssagi",
+ "TEXT_PROMPT_TYPE_NUMBER": "anvit për un nùmer con un mëssagi",
+ "TEXT_PROMPT_TOOLTIP_NUMBER": "Ciamé un nùmer a l'utent.",
+ "TEXT_PROMPT_TOOLTIP_TEXT": "Ciamé un test a l'utent.",
+ "LISTS_CREATE_EMPTY_TITLE": "creé na lista veuida",
+ "LISTS_CREATE_EMPTY_TOOLTIP": "Smon-e na lista, ëd longheur 0, ch'a conten gnun-a argistrassion",
+ "LISTS_CREATE_WITH_HELPURL": "https://github.com/google/blockly/wiki/Lists#create-list-with",
+ "LISTS_CREATE_WITH_TOOLTIP": "Creé na lista con un nùmer qualsëssìa d'element.",
+ "LISTS_CREATE_WITH_INPUT_WITH": "creé na lista con",
+ "LISTS_CREATE_WITH_CONTAINER_TITLE_ADD": "lista",
+ "LISTS_CREATE_WITH_CONTAINER_TOOLTIP": "Gionté, gavé o riordiné le session për configuré torna cost blòch ëd lista.",
+ "LISTS_CREATE_WITH_ITEM_TOOLTIP": "Gionté n'element a la lista.",
+ "LISTS_REPEAT_TOOLTIP": "A crea na lista ch'a consist dël valor dàit arpetù ël nùmer ëspessificà ëd vire.",
+ "LISTS_REPEAT_TITLE": "creé na lista con l'element %1 arpetù %2 vire",
+ "LISTS_LENGTH_TITLE": "longheur ëd %1",
+ "LISTS_LENGTH_TOOLTIP": "A smon la longheur ¨d na lista.",
+ "LISTS_ISEMPTY_TITLE": "%1 a l'é veuid",
+ "LISTS_ISEMPTY_TOOLTIP": "A smon ver se la lista a l'é veuida.",
+ "LISTS_INLIST": "ant la lista",
+ "LISTS_INDEX_OF_FIRST": "trové la prima ocorensa dl'element",
+ "LISTS_INDEX_OF_LAST": "trové l'ùltima ocorensa dl'element",
+ "LISTS_INDEX_OF_TOOLTIP": "A smon l'ìndes ëd la prima/ùltima ocorensa dl'element ant la lista. A smon %1 se l'element a l'é nen trovà.",
+ "LISTS_GET_INDEX_GET": "oten-e",
+ "LISTS_GET_INDEX_GET_REMOVE": "oten-e e eliminé",
+ "LISTS_GET_INDEX_REMOVE": "eliminé",
+ "LISTS_GET_INDEX_FROM_END": "# da la fin",
+ "LISTS_GET_INDEX_FIRST": "prim",
+ "LISTS_GET_INDEX_LAST": "ùltim",
+ "LISTS_GET_INDEX_RANDOM": "a l'ancàpit",
+ "LISTS_INDEX_FROM_START_TOOLTIP": "%1 a l'é ël prim element.",
+ "LISTS_INDEX_FROM_END_TOOLTIP": "%1 a l'é l'ùltim element.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_FROM": "A smon l'element a la posission ëspessificà an na lista.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_FIRST": "A smon ël prim element an na lista.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_LAST": "A smon l'ùltim element an na lista.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_RANDOM": "A smon n'element a l'ancàpit an na lista.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM": "A gava e a smon l'element a la posission ëspessificà an na lista.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST": "A gava e a smon ël prim element an na lista.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST": "A gava e a smon l'ùltim element an na lista.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM": "A gava e a smon n'element a l'ancàpit an na lista.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM": "A gava l'element a la posission ëspessificà an na lista.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST": "A gava ël prim element an na lista.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST": "A gava l'ùltim element an na lista.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM": "A gava n'element a l'ancàpit da na lista.",
+ "LISTS_SET_INDEX_SET": "buté",
+ "LISTS_SET_INDEX_INSERT": "anserì an",
+ "LISTS_SET_INDEX_INPUT_TO": "tanme",
+ "LISTS_SET_INDEX_TOOLTIP_SET_FROM": "A fissa l'element a la posission ëspessificà an na lista.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_FIRST": "A fissa ël prim element an na lista.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_LAST": "A fissa l'ùltim element an na lista.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_RANDOM": "A fissa n'element a l'ancàpit an na lista.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_FROM": "A anseriss l'element a la posission ëspessificà an na lista.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST": "A anseriss l'element al prinsipi ëd na lista.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_LAST": "Gionté l'element a la fin ëd na lista.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM": "A anseriss l'element a l'ancàpit an na lista.",
+ "LISTS_GET_SUBLIST_START_FROM_START": "oten-e la sot-lista da #",
+ "LISTS_GET_SUBLIST_START_FROM_END": "oten-e la sot-lista da # da la fin",
+ "LISTS_GET_SUBLIST_START_FIRST": "oten-e la sot-lista dal prim",
+ "LISTS_GET_SUBLIST_END_FROM_START": "fin-a a #",
+ "LISTS_GET_SUBLIST_END_FROM_END": "fin-a a # da la fin",
+ "LISTS_GET_SUBLIST_END_LAST": "fin-a a l'ùltim",
+ "LISTS_GET_SUBLIST_TOOLTIP": "A crea na còpia dël tòch ëspessificà ëd na lista.",
+ "LISTS_SORT_HELPURL": "https://github.com/google/blockly/wiki/Lists#sorting-a-list",
+ "LISTS_SORT_TITLE": "ordiné %1 %2 %3",
+ "LISTS_SORT_TOOLTIP": "Ordiné na còpia ëd na lista.",
+ "LISTS_SORT_ORDER_ASCENDING": "chërsent",
+ "LISTS_SORT_ORDER_DESCENDING": "calant",
+ "LISTS_SORT_TYPE_NUMERIC": "numérich",
+ "LISTS_SORT_TYPE_TEXT": "alfabétich",
+ "LISTS_SORT_TYPE_IGNORECASE": "alfabétich, ignorand ël caràter minùscol o majùscol",
+ "LISTS_SPLIT_HELPURL": "https://github.com/google/blockly/wiki/Lists#splitting-strings-and-joining-lists",
+ "LISTS_SPLIT_LIST_FROM_TEXT": "fé na lista da 'n test",
+ "LISTS_SPLIT_TEXT_FROM_LIST": "fé 'n test da na lista",
+ "LISTS_SPLIT_WITH_DELIMITER": "con ël separator",
+ "LISTS_SPLIT_TOOLTIP_SPLIT": "Divide un test an na lista ëd test, tajand a minca 'n separator.",
+ "LISTS_SPLIT_TOOLTIP_JOIN": "Gionze na lista ëd test ant un test sol, separandje con un separator.",
+ "VARIABLES_GET_TOOLTIP": "A smon ël valor ëd sa variàbil.",
+ "VARIABLES_GET_CREATE_SET": "Creé 'fissé %1'",
+ "VARIABLES_SET": "fissé %1 a %2",
+ "VARIABLES_SET_TOOLTIP": "Fissé costa variàbil ugual al valor d'imission.",
+ "VARIABLES_SET_CREATE_GET": "Creé 'oten-e %1'",
+ "PROCEDURES_DEFNORETURN_TITLE": "a",
+ "PROCEDURES_DEFNORETURN_PROCEDURE": "fé cheicòs",
+ "PROCEDURES_BEFORE_PARAMS": "con:",
+ "PROCEDURES_CALL_BEFORE_PARAMS": "con:",
+ "PROCEDURES_DEFNORETURN_TOOLTIP": "A crea na fonsion sensa surtìa.",
+ "PROCEDURES_DEFNORETURN_COMMENT": "Descrive sa fonsion...",
+ "PROCEDURES_DEFRETURN_RETURN": "artorn",
+ "PROCEDURES_DEFRETURN_TOOLTIP": "A crea na fonsion con na surtìa.",
+ "PROCEDURES_ALLOW_STATEMENTS": "përmëtte le diciairassion",
+ "PROCEDURES_DEF_DUPLICATE_WARNING": "Atension: Costa fonsion a l'ha dij paràmeter duplicà.",
+ "PROCEDURES_CALLNORETURN_HELPURL": "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29",
+ "PROCEDURES_CALLNORETURN_TOOLTIP": "Eseguì la fonsion '%1' definìa da l'utent.",
+ "PROCEDURES_CALLRETURN_HELPURL": "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29",
+ "PROCEDURES_CALLRETURN_TOOLTIP": "Eseguì la fonsion '%1' definìa da l'utent e dovré sò arzultà.",
+ "PROCEDURES_MUTATORCONTAINER_TITLE": "imission",
+ "PROCEDURES_MUTATORCONTAINER_TOOLTIP": "Gionté, gavé o riordiné j'imission ëd sa fonsion.",
+ "PROCEDURES_MUTATORARG_TITLE": "nòm ëd l'imission:",
+ "PROCEDURES_MUTATORARG_TOOLTIP": "Gionté n'imission a la fonsion.",
+ "PROCEDURES_HIGHLIGHT_DEF": "Sot-ligné la definission dla fonsion",
+ "PROCEDURES_CREATE_DO": "Creé '%1'",
+ "PROCEDURES_IFRETURN_TOOLTIP": "Se un valor a l'é ver, antlora smon-e un second valor.",
+ "PROCEDURES_IFRETURN_HELPURL": "http://c2.com/cgi/wiki?GuardClause",
+ "PROCEDURES_IFRETURN_WARNING": "Atension: Ës blòch a podria esse dovrà mach an na definission ëd fonsion."
+}
diff --git a/blockly/msg/json/pt-br.json b/blockly/msg/json/pt-br.json
new file mode 100644
index 0000000..a871e43
--- /dev/null
+++ b/blockly/msg/json/pt-br.json
@@ -0,0 +1,327 @@
+{
+ "@metadata": {
+ "authors": [
+ "Espertus",
+ "Prilopes",
+ "Mordecaista",
+ "Amgauna",
+ "TheGabrielZaum",
+ "Cainamarques",
+ "Tuliouel",
+ "Rodrigo codignoli",
+ "Webysther",
+ "Fasouzafreitas",
+ "Almondega",
+ "Rogerio Melfi",
+ "Caçador de Palavras",
+ "Luk3",
+ "Cristofer Alves"
+ ]
+ },
+ "VARIABLES_DEFAULT_NAME": "item",
+ "TODAY": "Hoje",
+ "DUPLICATE_BLOCK": "Duplicar",
+ "ADD_COMMENT": "Adicionar comentário",
+ "REMOVE_COMMENT": "Remover comentário",
+ "EXTERNAL_INPUTS": "Entradas externas",
+ "INLINE_INPUTS": "Entradas incorporadas",
+ "DELETE_BLOCK": "Deletar bloco",
+ "DELETE_X_BLOCKS": "Deletar %1 blocos",
+ "DELETE_ALL_BLOCKS": "Deletar todos os blocos %1?",
+ "CLEAN_UP": "Limpar blocos",
+ "COLLAPSE_BLOCK": "Colapsar Bloco",
+ "COLLAPSE_ALL": "Colapsar Bloco",
+ "EXPAND_BLOCK": "Expandir bloco",
+ "EXPAND_ALL": "Expandir blocos",
+ "DISABLE_BLOCK": "Desabilitar bloco",
+ "ENABLE_BLOCK": "Habilitar bloco",
+ "HELP": "Ajuda",
+ "UNDO": "Desfazer",
+ "REDO": "Refazer",
+ "CHANGE_VALUE_TITLE": "Mudar valor:",
+ "RENAME_VARIABLE": "Renomear variável...",
+ "RENAME_VARIABLE_TITLE": "Renomear todas as variáveis '%1' para:",
+ "NEW_VARIABLE": "Criar variável...",
+ "NEW_VARIABLE_TITLE": "Nome da nova variável:",
+ "VARIABLE_ALREADY_EXISTS": "A variável chamada '%1' já existe.",
+ "DELETE_VARIABLE_CONFIRMATION": "Deletar %1 usos da variável '%2'?",
+ "DELETE_VARIABLE": "Deletar a variável '%1'",
+ "COLOUR_PICKER_HELPURL": "https://pt.wikipedia.org/wiki/Cor",
+ "COLOUR_PICKER_TOOLTIP": "Escolher uma cor da palheta de cores.",
+ "COLOUR_RANDOM_TITLE": "cor aleatória",
+ "COLOUR_RANDOM_TOOLTIP": "Escolher cor de forma aleatória.",
+ "COLOUR_RGB_TITLE": "colorir com",
+ "COLOUR_RGB_RED": "vermelho",
+ "COLOUR_RGB_GREEN": "verde",
+ "COLOUR_RGB_BLUE": "azul",
+ "COLOUR_RGB_TOOLTIP": "Criar uma cor com a quantidade especificada de vermelho, verde e azul. Todos os valores devem estar entre 0 e 100.",
+ "COLOUR_BLEND_TITLE": "misturar",
+ "COLOUR_BLEND_COLOUR1": "cor 1",
+ "COLOUR_BLEND_COLOUR2": "cor 2",
+ "COLOUR_BLEND_RATIO": "proporção",
+ "COLOUR_BLEND_TOOLTIP": "Mistura duas cores em uma dada proporção (0,0 - 1,0).",
+ "CONTROLS_REPEAT_HELPURL": "https://pt.wikipedia.org/wiki/Estrutura_de_repeti%C3%A7%C3%A3o#Repeti.C3.A7.C3.A3o_com_vari.C3.A1vel_de_controle",
+ "CONTROLS_REPEAT_TITLE": "repita %1 vezes",
+ "CONTROLS_REPEAT_INPUT_DO": "faça",
+ "CONTROLS_REPEAT_TOOLTIP": "Faça algumas instruções várias vezes.",
+ "CONTROLS_WHILEUNTIL_OPERATOR_WHILE": "repita enquanto",
+ "CONTROLS_WHILEUNTIL_OPERATOR_UNTIL": "repita até",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_WHILE": "Enquanto um valor for verdadeiro, então faça algumas instruções.",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL": "Enquanto um valor for falso, então faça algumas instruções.",
+ "CONTROLS_FOR_TOOLTIP": "Faz com que a variável '%1' assuma os valores do número inicial ao número final, contando de acordo com o intervalo especificado e executa os blocos especificados.",
+ "CONTROLS_FOR_TITLE": "contar com %1 de %2 até %3 por %4",
+ "CONTROLS_FOREACH_TITLE": "para cada item %1 na lista %2",
+ "CONTROLS_FOREACH_TOOLTIP": "Para cada item em uma lista, atribuir o item à variável '%1' e então realiza algumas instruções.",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK": "encerra o laço",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE": "continua com a próxima iteração do laço",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK": "Encerra o laço.",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE": "Ignora o resto deste laço, e continua com a próxima iteração.",
+ "CONTROLS_FLOW_STATEMENTS_WARNING": "Atenção: Este bloco só pode ser usado dentro de um laço.",
+ "CONTROLS_IF_TOOLTIP_1": "Se um valor for verdadeiro, então realize algumas instruções.",
+ "CONTROLS_IF_TOOLTIP_2": "Se um valor for verdadeiro, então realize o primeiro bloco de instruções. Senão, realize o segundo bloco de instruções.",
+ "CONTROLS_IF_TOOLTIP_3": "Se o primeiro valor é verdadeiro, então realize o primeiro bloco de instruções. Senão, se o segundo valor é verdadeiro, realize o segundo bloco de instruções.",
+ "CONTROLS_IF_TOOLTIP_4": "Se o primeiro valor for verdadeiro, então realize o primeiro bloco de instruções. Senão, se o segundo valor é verdadeiro, realize o segundo bloco de instruções. Se nenhum dos blocos for verdadeiro, realize o último bloco de instruções.",
+ "CONTROLS_IF_MSG_IF": "se",
+ "CONTROLS_IF_MSG_ELSEIF": "senão se",
+ "CONTROLS_IF_MSG_ELSE": "senão",
+ "CONTROLS_IF_IF_TOOLTIP": "Acrescente, remova ou reordene seções para reconfigurar este bloco.",
+ "CONTROLS_IF_ELSEIF_TOOLTIP": "Acrescente uma condição para o bloco se.",
+ "CONTROLS_IF_ELSE_TOOLTIP": "Acrescente uma condição final para o bloco se.",
+ "LOGIC_COMPARE_HELPURL": "https://pt.wikipedia.org/wiki/Inequa%C3%A7%C3%A3o",
+ "LOGIC_COMPARE_TOOLTIP_EQ": "Retorna verdadeiro se ambas as entradas forem iguais.",
+ "LOGIC_COMPARE_TOOLTIP_NEQ": "Retorna verdadeiro se ambas as entradas forem diferentes.",
+ "LOGIC_COMPARE_TOOLTIP_LT": "Retorna verdadeiro se a primeira entrada for menor que a segunda entrada.",
+ "LOGIC_COMPARE_TOOLTIP_LTE": "Retorna verdadeiro se a primeira entrada for menor ou igual à segunda entrada.",
+ "LOGIC_COMPARE_TOOLTIP_GT": "Retorna verdadeiro se a primeira entrada for maior que a segunda entrada.",
+ "LOGIC_COMPARE_TOOLTIP_GTE": "Retorna verdadeiro se a primeira entrada for maior ou igual à segunda entrada.",
+ "LOGIC_OPERATION_TOOLTIP_AND": "Retorna verdadeiro se ambas as entradas forem verdadeiras.",
+ "LOGIC_OPERATION_AND": "e",
+ "LOGIC_OPERATION_TOOLTIP_OR": "Retorna verdadeiro se uma das estradas for verdadeira.",
+ "LOGIC_OPERATION_OR": "ou",
+ "LOGIC_NEGATE_TITLE": "não %1",
+ "LOGIC_NEGATE_TOOLTIP": "Retorna verdadeiro se a entrada for falsa. Retorna falsa se a entrada for verdadeira.",
+ "LOGIC_BOOLEAN_TRUE": "verdadeiro",
+ "LOGIC_BOOLEAN_FALSE": "falso",
+ "LOGIC_BOOLEAN_TOOLTIP": "Retorna verdadeiro ou falso.",
+ "LOGIC_NULL": "nulo",
+ "LOGIC_NULL_TOOLTIP": "Retorna nulo.",
+ "LOGIC_TERNARY_CONDITION": "teste",
+ "LOGIC_TERNARY_IF_TRUE": "se verdadeiro",
+ "LOGIC_TERNARY_IF_FALSE": "se falso",
+ "LOGIC_TERNARY_TOOLTIP": "Avalia a condição em \"teste\". Se a condição for verdadeira retorna o valor \"se verdadeiro\", senão retorna o valor \"se falso\".",
+ "MATH_NUMBER_HELPURL": "https://pt.wikipedia.org/wiki/N%C3%BAmero",
+ "MATH_NUMBER_TOOLTIP": "Um número.",
+ "MATH_ARITHMETIC_HELPURL": "https://pt.wikipedia.org/wiki/Aritm%C3%A9tica",
+ "MATH_ARITHMETIC_TOOLTIP_ADD": "Retorna a soma dos dois números.",
+ "MATH_ARITHMETIC_TOOLTIP_MINUS": "Retorna a diferença entre os dois números.",
+ "MATH_ARITHMETIC_TOOLTIP_MULTIPLY": "Retorna o produto dos dois números.",
+ "MATH_ARITHMETIC_TOOLTIP_DIVIDE": "Retorna o quociente da divisão dos dois números.",
+ "MATH_ARITHMETIC_TOOLTIP_POWER": "Retorna o primeiro número elevado à potência do segundo número.",
+ "MATH_SINGLE_HELPURL": "https://pt.wikipedia.org/wiki/Raiz_quadrada",
+ "MATH_SINGLE_OP_ROOT": "raiz quadrada",
+ "MATH_SINGLE_TOOLTIP_ROOT": "Retorna a raiz quadrada de um número.",
+ "MATH_SINGLE_OP_ABSOLUTE": "absoluto",
+ "MATH_SINGLE_TOOLTIP_ABS": "Retorna o valor absoluto de um número.",
+ "MATH_SINGLE_TOOLTIP_NEG": "Retorna o oposto de um número.",
+ "MATH_SINGLE_TOOLTIP_LN": "Retorna o logaritmo natural de um número.",
+ "MATH_SINGLE_TOOLTIP_LOG10": "Retorna o logaritmo em base 10 de um número.",
+ "MATH_SINGLE_TOOLTIP_EXP": "Retorna o número e elevado à potência de um número.",
+ "MATH_SINGLE_TOOLTIP_POW10": "Retorna 10 elevado à potência de um número.",
+ "MATH_TRIG_HELPURL": "https://pt.wikipedia.org/wiki/Fun%C3%A7%C3%A3o_trigonom%C3%A9trica",
+ "MATH_TRIG_TOOLTIP_SIN": "Retorna o seno de um grau (não radiano).",
+ "MATH_TRIG_TOOLTIP_COS": "Retorna o cosseno de um grau (não radiano).",
+ "MATH_TRIG_TOOLTIP_TAN": "Retorna a tangente de um grau (não radiano).",
+ "MATH_TRIG_TOOLTIP_ASIN": "Retorna o arco seno de um número.",
+ "MATH_TRIG_TOOLTIP_ACOS": "Retorna o arco cosseno de um número.",
+ "MATH_TRIG_TOOLTIP_ATAN": "Retorna o arco tangente de um número.",
+ "MATH_CONSTANT_HELPURL": "https://pt.wikipedia.org/wiki/Anexo:Lista_de_constantes_matem%C3%A1ticas",
+ "MATH_CONSTANT_TOOLTIP": "Retorna uma das constantes comuns: π (3.141…), e (2.718…), φ (1.618…), sqrt(2) (1.414…), sqrt(½) (0.707…), ou ∞ (infinito).",
+ "MATH_IS_EVEN": "é par",
+ "MATH_IS_ODD": "é ímpar",
+ "MATH_IS_PRIME": "é primo",
+ "MATH_IS_WHOLE": "é inteiro",
+ "MATH_IS_POSITIVE": "é positivo",
+ "MATH_IS_NEGATIVE": "é negativo",
+ "MATH_IS_DIVISIBLE_BY": "é divisível por",
+ "MATH_IS_TOOLTIP": "Verifica se um número é par, ímpar, inteiro, positivo, negativo, ou se é divisível por outro número. Retorna verdadeiro ou falso.",
+ "MATH_CHANGE_HELPURL": "https://pt.wikipedia.org/wiki/Adi%C3%A7%C3%A3o",
+ "MATH_CHANGE_TITLE": "alterar %1 por %2",
+ "MATH_CHANGE_TOOLTIP": "Soma um número à variável \"%1\".",
+ "MATH_ROUND_HELPURL": "https://pt.wikipedia.org/wiki/Arredondamento",
+ "MATH_ROUND_TOOLTIP": "Arredonda um número para cima ou para baixo.",
+ "MATH_ROUND_OPERATOR_ROUND": "arredonda",
+ "MATH_ROUND_OPERATOR_ROUNDUP": "arredonda para cima",
+ "MATH_ROUND_OPERATOR_ROUNDDOWN": "arredonda para baixo",
+ "MATH_ONLIST_OPERATOR_SUM": "soma de uma lista",
+ "MATH_ONLIST_TOOLTIP_SUM": "Retorna a soma de todos os números na lista.",
+ "MATH_ONLIST_OPERATOR_MIN": "menor da lista",
+ "MATH_ONLIST_TOOLTIP_MIN": "Retorna o menor número da lista.",
+ "MATH_ONLIST_OPERATOR_MAX": "maior da lista",
+ "MATH_ONLIST_TOOLTIP_MAX": "Retorna o maior número da lista.",
+ "MATH_ONLIST_OPERATOR_AVERAGE": "média da lista",
+ "MATH_ONLIST_TOOLTIP_AVERAGE": "Retorna a média aritmética dos números da lista.",
+ "MATH_ONLIST_OPERATOR_MEDIAN": "mediana da lista",
+ "MATH_ONLIST_TOOLTIP_MEDIAN": "Retorna a mediana dos números da lista.",
+ "MATH_ONLIST_OPERATOR_MODE": "moda da lista",
+ "MATH_ONLIST_TOOLTIP_MODE": "Retorna uma lista do(s) item(ns) mais comum(ns) da lista.",
+ "MATH_ONLIST_OPERATOR_STD_DEV": "desvio padrão da lista",
+ "MATH_ONLIST_TOOLTIP_STD_DEV": "Retorna o desvio padrão dos números da lista.",
+ "MATH_ONLIST_OPERATOR_RANDOM": "item aleatório da lista",
+ "MATH_ONLIST_TOOLTIP_RANDOM": "Retorna um elemento aleatório da lista.",
+ "MATH_MODULO_HELPURL": "https://pt.wikipedia.org/wiki/Opera%C3%A7%C3%A3o_m%C3%B3dulo",
+ "MATH_MODULO_TITLE": "resto da divisão de %1 ÷ %2",
+ "MATH_MODULO_TOOLTIP": "Retorna o resto da divisão de dois números.",
+ "MATH_CONSTRAIN_TITLE": "restringe %1 inferior %2 superior %3",
+ "MATH_CONSTRAIN_TOOLTIP": "Restringe um número entre os limites especificados (inclusivo).",
+ "MATH_RANDOM_INT_HELPURL": "https://pt.wikipedia.org/wiki/Gerador_de_n%C3%BAmeros_pseudoaleat%C3%B3rios",
+ "MATH_RANDOM_INT_TITLE": "inteiro aleatório entre %1 e %2",
+ "MATH_RANDOM_INT_TOOLTIP": "Retorna um número inteiro entre os dois limites informados, inclusivo.",
+ "MATH_RANDOM_FLOAT_HELPURL": "https://pt.wikipedia.org/wiki/Gerador_de_n%C3%BAmeros_pseudoaleat%C3%B3rios",
+ "MATH_RANDOM_FLOAT_TITLE_RANDOM": "fração aleatória",
+ "MATH_RANDOM_FLOAT_TOOLTIP": "Retorna uma fração aleatória entre 0.0 (inclusivo) e 1.0 (exclusivo).",
+ "TEXT_TEXT_HELPURL": "https://pt.wikipedia.org/wiki/Cadeia_de_caracteres",
+ "TEXT_TEXT_TOOLTIP": "Uma letra, palavra ou linha de texto.",
+ "TEXT_JOIN_TITLE_CREATEWITH": "criar texto com",
+ "TEXT_JOIN_TOOLTIP": "Criar um pedaço de texto juntando qualquer número de itens.",
+ "TEXT_CREATE_JOIN_TITLE_JOIN": "unir",
+ "TEXT_CREATE_JOIN_TOOLTIP": "Acrescenta, remove ou reordena seções para reconfigurar este bloco de texto.",
+ "TEXT_CREATE_JOIN_ITEM_TOOLTIP": "Acrescentar um item ao texto.",
+ "TEXT_APPEND_TO": "para",
+ "TEXT_APPEND_APPENDTEXT": "acrescentar texto",
+ "TEXT_APPEND_TOOLTIP": "Acrescentar um pedaço de texto à variável \"%1\".",
+ "TEXT_LENGTH_TITLE": "tamanho de %1",
+ "TEXT_LENGTH_TOOLTIP": "Retorna o número de letras (incluindo espaços) no texto fornecido.",
+ "TEXT_ISEMPTY_TITLE": "%1 é vazio",
+ "TEXT_ISEMPTY_TOOLTIP": "Retorna verdadeiro se o texto fornecido for vazio.",
+ "TEXT_INDEXOF_TOOLTIP": "Retorna a posição da primeira/última ocorrência do primeiro texto no segundo texto. Retorna %1 se o texto não for encontrado.",
+ "TEXT_INDEXOF_INPUT_INTEXT": "no texto",
+ "TEXT_INDEXOF_OPERATOR_FIRST": "encontre a primeira ocorrência do item",
+ "TEXT_INDEXOF_OPERATOR_LAST": "encontre a última ocorrência do texto",
+ "TEXT_CHARAT_INPUT_INTEXT": "no texto",
+ "TEXT_CHARAT_FROM_START": "obter letra nº",
+ "TEXT_CHARAT_FROM_END": "obter letra # a partir do final",
+ "TEXT_CHARAT_FIRST": "obter primeira letra",
+ "TEXT_CHARAT_LAST": "obter última letra",
+ "TEXT_CHARAT_RANDOM": "obter letra aleatória",
+ "TEXT_CHARAT_TOOLTIP": "Retorna a letra na posição especificada.",
+ "TEXT_GET_SUBSTRING_TOOLTIP": "Retorna o trecho de texto especificado.",
+ "TEXT_GET_SUBSTRING_INPUT_IN_TEXT": "no texto",
+ "TEXT_GET_SUBSTRING_START_FROM_START": "obter trecho de letra nº",
+ "TEXT_GET_SUBSTRING_START_FROM_END": "obter trecho de letra nº a partir do final",
+ "TEXT_GET_SUBSTRING_START_FIRST": "obter trecho de primeira letra",
+ "TEXT_GET_SUBSTRING_END_FROM_START": "até letra nº",
+ "TEXT_GET_SUBSTRING_END_FROM_END": "até letra nº a partir do final",
+ "TEXT_GET_SUBSTRING_END_LAST": "até última letra",
+ "TEXT_CHANGECASE_TOOLTIP": "Retorna uma cópia do texto em um formato diferente.",
+ "TEXT_CHANGECASE_OPERATOR_UPPERCASE": "para MAIÚSCULAS",
+ "TEXT_CHANGECASE_OPERATOR_LOWERCASE": "para minúsculas",
+ "TEXT_CHANGECASE_OPERATOR_TITLECASE": "para Nomes Próprios",
+ "TEXT_TRIM_TOOLTIP": "Retorna uma cópia do texto com os espaços removidos de uma ou ambas extremidades.",
+ "TEXT_TRIM_OPERATOR_BOTH": "remover espaços de ambos os lados de",
+ "TEXT_TRIM_OPERATOR_LEFT": "remover espaços à esquerda de",
+ "TEXT_TRIM_OPERATOR_RIGHT": "remover espaços à direita de",
+ "TEXT_PRINT_TITLE": "imprime %1",
+ "TEXT_PRINT_TOOLTIP": "Imprime o texto, número ou valor especificado.",
+ "TEXT_PROMPT_TYPE_TEXT": "Pede um texto com uma mensagem",
+ "TEXT_PROMPT_TYPE_NUMBER": "Pede um número com uma mensagem",
+ "TEXT_PROMPT_TOOLTIP_NUMBER": "Pede ao usuário um número.",
+ "TEXT_PROMPT_TOOLTIP_TEXT": "Pede ao usuário um texto.",
+ "LISTS_CREATE_EMPTY_TITLE": "criar lista vazia",
+ "LISTS_CREATE_EMPTY_TOOLTIP": "Retorna uma lista, de tamanho 0, contendo nenhum registro",
+ "LISTS_CREATE_WITH_TOOLTIP": "Cria uma lista com a quantidade de itens informada.",
+ "LISTS_CREATE_WITH_INPUT_WITH": "criar lista com",
+ "LISTS_CREATE_WITH_CONTAINER_TITLE_ADD": "lista",
+ "LISTS_CREATE_WITH_CONTAINER_TOOLTIP": "Acrescenta, remove ou reordena seções para reconfigurar este bloco de lista.",
+ "LISTS_CREATE_WITH_ITEM_TOOLTIP": "Acrescenta um item à lista.",
+ "LISTS_REPEAT_TOOLTIP": "Cria uma lista consistindo no valor informado repetido o número de vezes especificado.",
+ "LISTS_REPEAT_TITLE": "criar lista com item %1 repetido %2 vezes",
+ "LISTS_LENGTH_TITLE": "tamanho de %1",
+ "LISTS_LENGTH_TOOLTIP": "Retorna o tamanho de uma lista.",
+ "LISTS_ISEMPTY_TITLE": "%1 é vazia",
+ "LISTS_ISEMPTY_TOOLTIP": "Retorna ao verdadeiro se a lista estiver vazia.",
+ "LISTS_INLIST": "na lista",
+ "LISTS_INDEX_OF_FIRST": "encontre a primeira ocorrência do item",
+ "LISTS_INDEX_OF_LAST": "encontre a última ocorrência do item",
+ "LISTS_INDEX_OF_TOOLTIP": "Retorna o índice da primeira/última ocorrência do item na lista. Retorna %1 se o item não for encontrado.",
+ "LISTS_GET_INDEX_GET": "obter",
+ "LISTS_GET_INDEX_GET_REMOVE": "obter e remover",
+ "LISTS_GET_INDEX_REMOVE": "remover",
+ "LISTS_GET_INDEX_FROM_START": "nº",
+ "LISTS_GET_INDEX_FROM_END": "nº a partir do final",
+ "LISTS_GET_INDEX_FIRST": "primeiro",
+ "LISTS_GET_INDEX_LAST": "último",
+ "LISTS_GET_INDEX_RANDOM": "aleatório",
+ "LISTS_INDEX_FROM_START_TOOLTIP": "%1 é o primeiro item.",
+ "LISTS_INDEX_FROM_END_TOOLTIP": "%1 é o último item.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_FROM": "Retorna o item da lista na posição especificada.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_FIRST": "Retorna o primeiro item em uma lista.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_LAST": "Retorna o último item em uma lista.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_RANDOM": "Retorna um item aleatório de uma lista.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM": "Remove e retorna o item na posição especificada em uma lista.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST": "Remove e retorna o primeiro item de uma lista.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST": "Remove e retorna o último item de uma lista.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM": "Remove e retorna um item aleatório de uma lista.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM": "Remove o item na posição especificada em uma lista.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST": "Remove o primeiro item de uma lista.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST": "Remove o último item de uma lista.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM": "Remove um item aleatório de uma lista.",
+ "LISTS_SET_INDEX_SET": "definir",
+ "LISTS_SET_INDEX_INSERT": "inserir em",
+ "LISTS_SET_INDEX_INPUT_TO": "como",
+ "LISTS_SET_INDEX_TOOLTIP_SET_FROM": "Define o item da posição especificada de uma lista.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_FIRST": "Define o primeiro item de uma lista.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_LAST": "Define o último item de uma lista.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_RANDOM": "Define um item aleatório de uma lista.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_FROM": "Insere o item na posição especificada em uma lista.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST": "Insere o item no início de uma lista.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_LAST": "Insere o item no final de uma lista.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM": "Insere o item em uma posição qualquer de uma lista.",
+ "LISTS_GET_SUBLIST_START_FROM_START": "obtém sublista de nº",
+ "LISTS_GET_SUBLIST_START_FROM_END": "obtém sublista de nº a partir do final",
+ "LISTS_GET_SUBLIST_START_FIRST": "obtém sublista a partir do primeiro",
+ "LISTS_GET_SUBLIST_END_FROM_START": "até nº",
+ "LISTS_GET_SUBLIST_END_FROM_END": "até nº a partir do final",
+ "LISTS_GET_SUBLIST_END_LAST": "até último",
+ "LISTS_GET_SUBLIST_TOOLTIP": "Cria uma cópia da porção especificada de uma lista.",
+ "LISTS_SORT_HELPURL": "https://github.com/google/blockly/wiki/Lists#sorting-a-list",
+ "LISTS_SORT_TITLE": "ordenar %1 %2 %3",
+ "LISTS_SORT_TOOLTIP": "Ordenar uma cópia de uma lista.",
+ "LISTS_SORT_ORDER_ASCENDING": "ascendente",
+ "LISTS_SORT_ORDER_DESCENDING": "descendente",
+ "LISTS_SORT_TYPE_NUMERIC": "numérico",
+ "LISTS_SORT_TYPE_TEXT": "alfabético",
+ "LISTS_SORT_TYPE_IGNORECASE": "alfabético, ignorar maiúscula/minúscula",
+ "LISTS_SPLIT_LIST_FROM_TEXT": "Fazer uma lista a partir do texto",
+ "LISTS_SPLIT_TEXT_FROM_LIST": "fazer um texto a partir da lista",
+ "LISTS_SPLIT_WITH_DELIMITER": "com delimitador",
+ "LISTS_SPLIT_TOOLTIP_SPLIT": "Dividir o texto em uma lista de textos, separando-o em cada delimitador.",
+ "LISTS_SPLIT_TOOLTIP_JOIN": "Juntar uma lista de textos em um único texto, separado por um delimitador.",
+ "VARIABLES_GET_TOOLTIP": "Retorna o valor desta variável.",
+ "VARIABLES_GET_CREATE_SET": "Criar \"definir %1\"",
+ "VARIABLES_SET": "definir %1 para %2",
+ "VARIABLES_SET_TOOLTIP": "Define esta variável para o valor da entrada.",
+ "VARIABLES_SET_CREATE_GET": "Criar \"obter %1\"",
+ "PROCEDURES_DEFNORETURN_TITLE": "para",
+ "PROCEDURES_DEFNORETURN_PROCEDURE": "faça algo",
+ "PROCEDURES_BEFORE_PARAMS": "com:",
+ "PROCEDURES_CALL_BEFORE_PARAMS": "com:",
+ "PROCEDURES_DEFNORETURN_TOOLTIP": "Cria uma função que não tem retorno.",
+ "PROCEDURES_DEFNORETURN_COMMENT": "Descreva esta função...",
+ "PROCEDURES_DEFRETURN_RETURN": "retorna",
+ "PROCEDURES_DEFRETURN_TOOLTIP": "Cria uma função que possui um valor de retorno.",
+ "PROCEDURES_ALLOW_STATEMENTS": "permitir declarações",
+ "PROCEDURES_DEF_DUPLICATE_WARNING": "Atenção: Esta função tem parâmetros duplicados.",
+ "PROCEDURES_CALLNORETURN_HELPURL": "https://pt.wikipedia.org/wiki/Sub-rotina",
+ "PROCEDURES_CALLNORETURN_TOOLTIP": "Executa a função definida pelo usuário \"%1\".",
+ "PROCEDURES_CALLRETURN_HELPURL": "https://pt.wikipedia.org/wiki/Sub-rotina",
+ "PROCEDURES_CALLRETURN_TOOLTIP": "Executa a função definida pelo usuário \"%1\" e usa seu retorno.",
+ "PROCEDURES_MUTATORCONTAINER_TITLE": "entradas",
+ "PROCEDURES_MUTATORCONTAINER_TOOLTIP": "Adiciona, remove, ou reordena as entradas para esta função.",
+ "PROCEDURES_MUTATORARG_TITLE": "nome da entrada:",
+ "PROCEDURES_MUTATORARG_TOOLTIP": "Adiciona uma entrada para esta função",
+ "PROCEDURES_HIGHLIGHT_DEF": "Destacar definição da função",
+ "PROCEDURES_CREATE_DO": "Criar \"%1\"",
+ "PROCEDURES_IFRETURN_TOOLTIP": "Se um valor é verdadeiro, então retorna um valor.",
+ "PROCEDURES_IFRETURN_HELPURL": "http://c2.com/cgi/wiki?GuardClause",
+ "PROCEDURES_IFRETURN_WARNING": "Atenção: Este bloco só pode ser utilizado dentro da definição de uma função."
+}
diff --git a/blockly/msg/json/pt.json b/blockly/msg/json/pt.json
new file mode 100644
index 0000000..fd402c4
--- /dev/null
+++ b/blockly/msg/json/pt.json
@@ -0,0 +1,326 @@
+{
+ "@metadata": {
+ "authors": [
+ "Imperadeiro98",
+ "Waldir",
+ "Vitorvicentevalente",
+ "아라",
+ "Nicola Nascimento",
+ "Önni",
+ "Diniscoelho",
+ "Fúlvio"
+ ]
+ },
+ "VARIABLES_DEFAULT_NAME": "item",
+ "TODAY": "Hoje",
+ "DUPLICATE_BLOCK": "Duplicar",
+ "ADD_COMMENT": "Adicionar Comentário",
+ "REMOVE_COMMENT": "Remover Comentário",
+ "EXTERNAL_INPUTS": "Entradas externas",
+ "INLINE_INPUTS": "Entradas Internas",
+ "DELETE_BLOCK": "Remover Bloco",
+ "DELETE_X_BLOCKS": "Remover %1 Blocos",
+ "DELETE_ALL_BLOCKS": "Apagar todos os %1 blocos?",
+ "CLEAN_UP": "Limpar os blocos",
+ "COLLAPSE_BLOCK": "Colapsar Bloco",
+ "COLLAPSE_ALL": "Recolher Blocos",
+ "EXPAND_BLOCK": "Expandir Bloco",
+ "EXPAND_ALL": "Expandir Blocos",
+ "DISABLE_BLOCK": "Desabilitar Bloco",
+ "ENABLE_BLOCK": "Habilitar Bloco",
+ "HELP": "Ajuda",
+ "UNDO": "Desfazer",
+ "REDO": "Refazer",
+ "CHANGE_VALUE_TITLE": "Alterar valor:",
+ "RENAME_VARIABLE": "Renomear variável...",
+ "RENAME_VARIABLE_TITLE": "Renomear todas as variáveis '%1' para:",
+ "NEW_VARIABLE": "Nova variável...",
+ "NEW_VARIABLE_TITLE": "Nome da nova variável:",
+ "COLOUR_PICKER_HELPURL": "http://pt.wikipedia.org/wiki/Cor",
+ "COLOUR_PICKER_TOOLTIP": "Escolhe uma cor da paleta de cores.",
+ "COLOUR_RANDOM_TITLE": "cor aleatória",
+ "COLOUR_RANDOM_TOOLTIP": "Escolher cor de forma aleatória.",
+ "COLOUR_RGB_HELPURL": "http://www.december.com/html/spec/colorper.html",
+ "COLOUR_RGB_TITLE": "pinte com",
+ "COLOUR_RGB_RED": "vermelho",
+ "COLOUR_RGB_GREEN": "verde",
+ "COLOUR_RGB_BLUE": "azul",
+ "COLOUR_RGB_TOOLTIP": "Cria uma cor de acordo com a quantidade especificada de vermelho, verde e azul. Todos os valores devem estar entre 0 e 100.",
+ "COLOUR_BLEND_HELPURL": "http://meyerweb.com/eric/tools/color-blend/",
+ "COLOUR_BLEND_TITLE": "misturar",
+ "COLOUR_BLEND_COLOUR1": "cor 1",
+ "COLOUR_BLEND_COLOUR2": "cor 2",
+ "COLOUR_BLEND_RATIO": "proporção",
+ "COLOUR_BLEND_TOOLTIP": "Mistura duas cores dada uma proporção (0.0 - 1.0).",
+ "CONTROLS_REPEAT_HELPURL": "http://pt.wikipedia.org/wiki/Estrutura_de_repeti%C3%A7%C3%A3o#Repeti.C3.A7.C3.A3o_com_vari.C3.A1vel_de_controle",
+ "CONTROLS_REPEAT_TITLE": "repita %1 vez",
+ "CONTROLS_REPEAT_INPUT_DO": "faça",
+ "CONTROLS_REPEAT_TOOLTIP": "Faça algumas instruções várias vezes.",
+ "CONTROLS_WHILEUNTIL_OPERATOR_WHILE": "repita enquanto",
+ "CONTROLS_WHILEUNTIL_OPERATOR_UNTIL": "repita até",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_WHILE": "Enquanto um valor for verdadeiro, então faça algumas instruções.",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL": "Enquanto um valor for falso, então faça algumas instruções.",
+ "CONTROLS_FOR_TOOLTIP": "Faz com que a variável \"%1\" assuma os valores desde o número inicial até ao número final, contando de acordo com o intervalo especificado e executa os blocos especificados.",
+ "CONTROLS_FOR_TITLE": "contar com %1 de %2 até %3 de %3 em %4",
+ "CONTROLS_FOREACH_TITLE": "para cada item %1 na lista %2",
+ "CONTROLS_FOREACH_TOOLTIP": "Para cada item numa lista, define a variável \"%1\" para o item e então faz algumas instruções.",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK": "sair do ciclo",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE": "continuar com a próxima iteração do ciclo",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK": "Sair do ciclo que está contido.",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE": "Ignora o resto deste ciclo e continua na próxima iteração.",
+ "CONTROLS_FLOW_STATEMENTS_WARNING": "Atenção: Este bloco só pode ser usado dentro de um ciclo.",
+ "CONTROLS_IF_TOOLTIP_1": "Se um valor é verdadeiro, então realize alguns passos.",
+ "CONTROLS_IF_TOOLTIP_2": "Se um valor é verdadeiro, então realize o primeiro bloco de instruções. Senão, realize o segundo bloco de instruções",
+ "CONTROLS_IF_TOOLTIP_3": "Se o primeiro valor é verdadeiro, então realize o primeiro bloco de instruções. Senão, se o segundo valor é verdadeiro, realize o segundo bloco de instruções.",
+ "CONTROLS_IF_TOOLTIP_4": "Se o primeiro valor é verdadeiro, então realize o primeiro bloco de instruções. Senão, se o segundo valor é verdadeiro, realize o segundo bloco de instruções. Se nenhum dos blocos for verdadeiro, realize o último bloco de instruções.",
+ "CONTROLS_IF_MSG_IF": "se",
+ "CONTROLS_IF_MSG_ELSEIF": "senão se",
+ "CONTROLS_IF_MSG_ELSE": "senão",
+ "CONTROLS_IF_IF_TOOLTIP": "Acrescente, remova ou reordene secções para reconfigurar este bloco se.",
+ "CONTROLS_IF_ELSEIF_TOOLTIP": "Acrescente uma condição ao bloco se.",
+ "CONTROLS_IF_ELSE_TOOLTIP": "Acrescente uma condição de excepação final para o bloco se.",
+ "LOGIC_COMPARE_HELPURL": "http://pt.wikipedia.org/wiki/Inequa%C3%A7%C3%A3o",
+ "LOGIC_COMPARE_TOOLTIP_EQ": "Retorna verdadeiro se ambas as entradas forem iguais entre si.",
+ "LOGIC_COMPARE_TOOLTIP_NEQ": "Retorna verdadeiro se ambas as entradas forem diferentes entre si.",
+ "LOGIC_COMPARE_TOOLTIP_LT": "Retorna verdadeiro se a primeira entrada for menor que a segunda entrada.",
+ "LOGIC_COMPARE_TOOLTIP_LTE": "Retorna verdadeiro se a primeira entrada for menor ou igual à segunda entrada.",
+ "LOGIC_COMPARE_TOOLTIP_GT": "Retorna verdadeiro se a primeira entrada for maior que a segunda entrada.",
+ "LOGIC_COMPARE_TOOLTIP_GTE": "Retorna verdadeiro se a primeira entrada for maior ou igual à segunda entrada.",
+ "LOGIC_OPERATION_TOOLTIP_AND": "Retorna verdadeiro se ambas as entradas forem verdadeiras.",
+ "LOGIC_OPERATION_AND": "e",
+ "LOGIC_OPERATION_TOOLTIP_OR": "Retorna verdadeiro se pelo menos uma das estradas for verdadeira.",
+ "LOGIC_OPERATION_OR": "ou",
+ "LOGIC_NEGATE_TITLE": "não %1",
+ "LOGIC_NEGATE_TOOLTIP": "Retorna verdadeiro se a entrada for falsa. Retorna falso se a entrada for verdadeira.",
+ "LOGIC_BOOLEAN_TRUE": "verdadeiro",
+ "LOGIC_BOOLEAN_FALSE": "falso",
+ "LOGIC_BOOLEAN_TOOLTIP": "Retorna verdadeiro ou falso.",
+ "LOGIC_NULL_HELPURL": "http://en.wikipedia.org/wiki/Nullable_type",
+ "LOGIC_NULL": "nulo",
+ "LOGIC_NULL_TOOLTIP": "Retorna nulo.",
+ "LOGIC_TERNARY_HELPURL": "http://en.wikipedia.org/wiki/%3F:",
+ "LOGIC_TERNARY_CONDITION": "teste",
+ "LOGIC_TERNARY_IF_TRUE": "se verdadeiro",
+ "LOGIC_TERNARY_IF_FALSE": "se falso",
+ "LOGIC_TERNARY_TOOLTIP": "Avalia a condição em \"teste\". Se a condição for verdadeira retorna o valor \"se verdadeiro\", senão retorna o valor \"se falso\".",
+ "MATH_NUMBER_HELPURL": "http://pt.wikipedia.org/wiki/N%C3%BAmero",
+ "MATH_NUMBER_TOOLTIP": "Um número.",
+ "MATH_ADDITION_SYMBOL": "+",
+ "MATH_SUBTRACTION_SYMBOL": "-",
+ "MATH_DIVISION_SYMBOL": "÷",
+ "MATH_MULTIPLICATION_SYMBOL": "×",
+ "MATH_POWER_SYMBOL": "^",
+ "MATH_TRIG_SIN": "sin",
+ "MATH_TRIG_COS": "cos",
+ "MATH_TRIG_TAN": "tan",
+ "MATH_TRIG_ASIN": "asin",
+ "MATH_TRIG_ACOS": "acos",
+ "MATH_TRIG_ATAN": "atan",
+ "MATH_ARITHMETIC_HELPURL": "http://pt.wikipedia.org/wiki/Aritm%C3%A9tica",
+ "MATH_ARITHMETIC_TOOLTIP_ADD": "Retorna a soma de dois números.",
+ "MATH_ARITHMETIC_TOOLTIP_MINUS": "Retorna a diferença de dois números.",
+ "MATH_ARITHMETIC_TOOLTIP_MULTIPLY": "Retorna o produto de dois números.",
+ "MATH_ARITHMETIC_TOOLTIP_DIVIDE": "Retorna o quociente da divisão de dois números.",
+ "MATH_ARITHMETIC_TOOLTIP_POWER": "Retorna o primeiro número elevado à potência do segundo número.",
+ "MATH_SINGLE_HELPURL": "http://pt.wikipedia.org/wiki/Raiz_quadrada",
+ "MATH_SINGLE_OP_ROOT": "raíz quadrada",
+ "MATH_SINGLE_TOOLTIP_ROOT": "Retorna a raiz quadrada de um número.",
+ "MATH_SINGLE_OP_ABSOLUTE": "absoluto",
+ "MATH_SINGLE_TOOLTIP_ABS": "Retorna o valor absoluto de um número.",
+ "MATH_SINGLE_TOOLTIP_NEG": "Retorna o oposto de um número.",
+ "MATH_SINGLE_TOOLTIP_LN": "Retorna o logarítmo natural de um número.",
+ "MATH_SINGLE_TOOLTIP_LOG10": "Retorna o logarítmo em base 10 de um número.",
+ "MATH_SINGLE_TOOLTIP_EXP": "Retorna o número e elevado à potência de um número.",
+ "MATH_SINGLE_TOOLTIP_POW10": "Retorna 10 elevado à potência de um número.",
+ "MATH_TRIG_HELPURL": "http://pt.wikipedia.org/wiki/Fun%C3%A7%C3%A3o_trigonom%C3%A9trica",
+ "MATH_TRIG_TOOLTIP_SIN": "Retorna o seno de um grau (não radiano).",
+ "MATH_TRIG_TOOLTIP_COS": "Retorna o cosseno de um grau (não radiano).",
+ "MATH_TRIG_TOOLTIP_TAN": "Retorna a tangente de um grau (não radiano).",
+ "MATH_TRIG_TOOLTIP_ASIN": "Retorna o arco seno de um número.",
+ "MATH_TRIG_TOOLTIP_ACOS": "Retorna o arco cosseno de um número.",
+ "MATH_TRIG_TOOLTIP_ATAN": "Retorna o arco tangente de um número.",
+ "MATH_CONSTANT_HELPURL": "http://pt.wikipedia.org/wiki/Anexo:Lista_de_constantes_matem%C3%A1ticas",
+ "MATH_CONSTANT_TOOLTIP": "Retorna uma das constantes comuns: π (3.141…), e (2.718…), φ (1.618…), sqrt(2) (1.414…), sqrt(½) (0.707…), ou ∞ (infinito).",
+ "MATH_IS_EVEN": "é par",
+ "MATH_IS_ODD": "é impar",
+ "MATH_IS_PRIME": "é primo",
+ "MATH_IS_WHOLE": "é inteiro",
+ "MATH_IS_POSITIVE": "é positivo",
+ "MATH_IS_NEGATIVE": "é negativo",
+ "MATH_IS_DIVISIBLE_BY": "é divisível por",
+ "MATH_IS_TOOLTIP": "Verifica se um número é par, impar, primo, inteiro, positivo, negativo, ou se é divisível por outro número. Retorna verdadeiro ou falso.",
+ "MATH_CHANGE_HELPURL": "http://pt.wikipedia.org/wiki/Adi%C3%A7%C3%A3o",
+ "MATH_CHANGE_TITLE": "alterar %1 por %2",
+ "MATH_CHANGE_TOOLTIP": "Soma um número à variável \"%1\".",
+ "MATH_ROUND_HELPURL": "http://pt.wikipedia.org/wiki/Arredondamento",
+ "MATH_ROUND_TOOLTIP": "Arredonda um número para cima ou para baixo.",
+ "MATH_ROUND_OPERATOR_ROUND": "arredonda",
+ "MATH_ROUND_OPERATOR_ROUNDUP": "arredonda para cima",
+ "MATH_ROUND_OPERATOR_ROUNDDOWN": "arredonda para baixo",
+ "MATH_ONLIST_OPERATOR_SUM": "soma da lista",
+ "MATH_ONLIST_TOOLTIP_SUM": "Retorna a soma de todos os números da lista.",
+ "MATH_ONLIST_OPERATOR_MIN": "menor de uma lista",
+ "MATH_ONLIST_TOOLTIP_MIN": "Retorna o menor número da lista.",
+ "MATH_ONLIST_OPERATOR_MAX": "maior de uma lista",
+ "MATH_ONLIST_TOOLTIP_MAX": "Retorna o maior número da lista.",
+ "MATH_ONLIST_OPERATOR_AVERAGE": "média de uma lista",
+ "MATH_ONLIST_TOOLTIP_AVERAGE": "Retorna a média aritmética dos valores números da lista.",
+ "MATH_ONLIST_OPERATOR_MEDIAN": "mediana de uma lista",
+ "MATH_ONLIST_TOOLTIP_MEDIAN": "Retorna a mediana da lista.",
+ "MATH_ONLIST_OPERATOR_MODE": "moda de uma lista",
+ "MATH_ONLIST_TOOLTIP_MODE": "Retorna a lista de item(ns) mais comum(ns) da lista.",
+ "MATH_ONLIST_OPERATOR_STD_DEV": "desvio padrão de uma lista",
+ "MATH_ONLIST_TOOLTIP_STD_DEV": "Retorna o desvio padrão dos números da lista.",
+ "MATH_ONLIST_OPERATOR_RANDOM": "item aleatório de uma lista",
+ "MATH_ONLIST_TOOLTIP_RANDOM": "Retorna um elemento aleatório da lista.",
+ "MATH_MODULO_HELPURL": "http://pt.wikipedia.org/wiki/Opera%C3%A7%C3%A3o_m%C3%B3dulo",
+ "MATH_MODULO_TITLE": "resto da divisão de %1 ÷ %2",
+ "MATH_MODULO_TOOLTIP": "Retorna o resto da divisão de dois números.",
+ "MATH_CONSTRAIN_TITLE": "restringe %1 inferior %2 superior %3",
+ "MATH_CONSTRAIN_TOOLTIP": "Restringe um número entre os limites especificados (inclusive).",
+ "MATH_RANDOM_INT_HELPURL": "http://pt.wikipedia.org/wiki/N%C3%BAmero_aleat%C3%B3rio",
+ "MATH_RANDOM_INT_TITLE": "inteiro aleatório entre %1 e %2",
+ "MATH_RANDOM_INT_TOOLTIP": "Retorna um número inteiro entre os dois limites especificados, inclusive.",
+ "MATH_RANDOM_FLOAT_HELPURL": "http://pt.wikipedia.org/wiki/N%C3%BAmero_aleat%C3%B3rio",
+ "MATH_RANDOM_FLOAT_TITLE_RANDOM": "fração aleatória",
+ "MATH_RANDOM_FLOAT_TOOLTIP": "Insere uma fração aleatória entre 0.0 (inclusive) e 1.0 (exclusive).",
+ "TEXT_TEXT_HELPURL": "http://pt.wikipedia.org/wiki/Cadeia_de_caracteres",
+ "TEXT_TEXT_TOOLTIP": "Uma letra, palavra ou linha de texto.",
+ "TEXT_JOIN_TITLE_CREATEWITH": "criar texto com",
+ "TEXT_JOIN_TOOLTIP": "Criar um pedaço de texto juntando qualquer número de itens.",
+ "TEXT_CREATE_JOIN_TITLE_JOIN": "unir",
+ "TEXT_CREATE_JOIN_TOOLTIP": "Acrescenta, remove ou reordena seções para reconfigurar este bloco de texto.",
+ "TEXT_CREATE_JOIN_ITEM_TOOLTIP": "Acrescentar um item ao texto.",
+ "TEXT_APPEND_TO": "para",
+ "TEXT_APPEND_APPENDTEXT": "acrescentar texto",
+ "TEXT_APPEND_TOOLTIP": "Acrescentar um pedaço de texto à variável \"%1\".",
+ "TEXT_LENGTH_TITLE": "tamanho de %1",
+ "TEXT_LENGTH_TOOLTIP": "Devolve o número de letras (incluindo espaços) do texto fornecido.",
+ "TEXT_ISEMPTY_TITLE": "%1 está vazio",
+ "TEXT_ISEMPTY_TOOLTIP": "Retorna verdadeiro se o texto fornecido estiver vazio.",
+ "TEXT_INDEXOF_TOOLTIP": "Retorna a posição da primeira/última ocorrência do primeiro texto no segundo texto. Retorna %1 se o texto não for encontrado.",
+ "TEXT_INDEXOF_INPUT_INTEXT": "no texto",
+ "TEXT_INDEXOF_OPERATOR_FIRST": "primeira ocorrência do texto",
+ "TEXT_INDEXOF_OPERATOR_LAST": "última ocorrência do texto",
+ "TEXT_CHARAT_INPUT_INTEXT": "no texto",
+ "TEXT_CHARAT_FROM_START": "obter letra nº",
+ "TEXT_CHARAT_FROM_END": "obter letra nº a partir do final",
+ "TEXT_CHARAT_FIRST": "obter primeira letra",
+ "TEXT_CHARAT_LAST": "obter última letra",
+ "TEXT_CHARAT_RANDOM": "obter letra aleatória",
+ "TEXT_CHARAT_TOOLTIP": "Retorna a letra na posição especificada.",
+ "TEXT_GET_SUBSTRING_TOOLTIP": "Retorna a parte especificada do texto.",
+ "TEXT_GET_SUBSTRING_INPUT_IN_TEXT": "no texto",
+ "TEXT_GET_SUBSTRING_START_FROM_START": "obter subsequência de tamanho #",
+ "TEXT_GET_SUBSTRING_START_FROM_END": "obter subsequência de tamanho # a partir do final",
+ "TEXT_GET_SUBSTRING_START_FIRST": "obter subsequência a partir da primeira letra",
+ "TEXT_GET_SUBSTRING_END_FROM_START": "até letra nº",
+ "TEXT_GET_SUBSTRING_END_FROM_END": "até letra nº a partir do final",
+ "TEXT_GET_SUBSTRING_END_LAST": "até última letra",
+ "TEXT_CHANGECASE_TOOLTIP": "Retorna uma cópia do texto em formato diferente.",
+ "TEXT_CHANGECASE_OPERATOR_UPPERCASE": "para MAIÚSCULAS",
+ "TEXT_CHANGECASE_OPERATOR_LOWERCASE": "para minúsculas",
+ "TEXT_CHANGECASE_OPERATOR_TITLECASE": "para Iniciais Maiúsculas",
+ "TEXT_TRIM_TOOLTIP": "Retorna uma cópia do texto com os espaços removidos de uma ou ambas as extremidades.",
+ "TEXT_TRIM_OPERATOR_BOTH": "remover espaços de ambos os lados",
+ "TEXT_TRIM_OPERATOR_LEFT": "remover espaços à esquerda de",
+ "TEXT_TRIM_OPERATOR_RIGHT": "remover espaços à direita",
+ "TEXT_PRINT_TITLE": "imprime %1",
+ "TEXT_PRINT_TOOLTIP": "Imprime o texto, número ou outro valor especificado.",
+ "TEXT_PROMPT_TYPE_TEXT": "Pede um texto com a mensagem",
+ "TEXT_PROMPT_TYPE_NUMBER": "pede um número com a mensagem",
+ "TEXT_PROMPT_TOOLTIP_NUMBER": "Pede ao utilizador um número.",
+ "TEXT_PROMPT_TOOLTIP_TEXT": "Pede ao utilizador um texto.",
+ "LISTS_CREATE_EMPTY_HELPURL": "https://github.com/google/blockly/wiki/Lists#create-empty-list",
+ "LISTS_CREATE_EMPTY_TITLE": "criar lista vazia",
+ "LISTS_CREATE_EMPTY_TOOLTIP": "Retorna uma lista, de tamanho 0, contendo nenhum registo",
+ "LISTS_CREATE_WITH_TOOLTIP": "Cria uma lista com qualquer número de itens.",
+ "LISTS_CREATE_WITH_INPUT_WITH": "criar lista com",
+ "LISTS_CREATE_WITH_CONTAINER_TITLE_ADD": "lista",
+ "LISTS_CREATE_WITH_CONTAINER_TOOLTIP": "Acrescente, remova ou reordene as seções para reconfigurar este bloco lista.",
+ "LISTS_CREATE_WITH_ITEM_TOOLTIP": "Acrescenta um item à lista.",
+ "LISTS_REPEAT_TOOLTIP": "Cria uma lista constituída por um dado valor repetido o número de vezes especificado.",
+ "LISTS_REPEAT_TITLE": "criar lista com o item %1 repetido %2 vezes",
+ "LISTS_LENGTH_TITLE": "tamanho de %1",
+ "LISTS_LENGTH_TOOLTIP": "Retorna o tamanho de uma lista.",
+ "LISTS_ISEMPTY_TITLE": "%1 está vazia",
+ "LISTS_ISEMPTY_TOOLTIP": "Retona verdadeiro se a lista estiver vazia.",
+ "LISTS_INLIST": "na lista",
+ "LISTS_INDEX_OF_FIRST": "encontre a primeira ocorrência do item",
+ "LISTS_INDEX_OF_LAST": "encontre a última ocorrência do item",
+ "LISTS_INDEX_OF_TOOLTIP": "Retorna a posição da primeira/última ocorrência do item na lista. Retorna %1 se o item não for encontrado.",
+ "LISTS_GET_INDEX_GET": "obter",
+ "LISTS_GET_INDEX_GET_REMOVE": "obter e remover",
+ "LISTS_GET_INDEX_REMOVE": "remover",
+ "LISTS_GET_INDEX_FROM_START": "#",
+ "LISTS_GET_INDEX_FROM_END": "# a partir do final",
+ "LISTS_GET_INDEX_FIRST": "primeiro",
+ "LISTS_GET_INDEX_LAST": "último",
+ "LISTS_GET_INDEX_RANDOM": "aleatório",
+ "LISTS_INDEX_FROM_START_TOOLTIP": "%1 é o primeiro item.",
+ "LISTS_INDEX_FROM_END_TOOLTIP": "%1 é o último item.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_FROM": "Retorna o item na posição especificada da lista.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_FIRST": "Retorna o primeiro item de uma lista.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_LAST": "Retorna o último item de uma lista.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_RANDOM": "Retorna um item aleatório de uma lista.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM": "Remove e retorna o item na posição especificada de uma lista.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST": "Remove e retorna o primeiro item de uma lista.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST": "Remove e retorna o último item de uma lista.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM": "Remove e retorna um item aleatório de uma lista.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM": "Remove o item de uma posição especifica da lista.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST": "Remove o primeiro item de uma lista.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST": "Remove o último item de uma lista.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM": "Remove um item aleatório de uma lista.",
+ "LISTS_SET_INDEX_SET": "definir",
+ "LISTS_SET_INDEX_INSERT": "inserir em",
+ "LISTS_SET_INDEX_INPUT_TO": "como",
+ "LISTS_SET_INDEX_TOOLTIP_SET_FROM": "Define o item na posição especificada de uma lista.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_FIRST": "Define o primeiro item de uma lista.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_LAST": "Define o último item de uma lista.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_RANDOM": "Define um item aleatório de uma lista.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_FROM": "Insere o item numa posição especificada numa lista.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST": "Insere o item no início da lista.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_LAST": "Insere o item no final da lista.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM": "Insere o item numa posição aleatória de uma lista.",
+ "LISTS_GET_SUBLIST_START_FROM_START": "obtem sublista de #",
+ "LISTS_GET_SUBLIST_START_FROM_END": "obtem sublista de # a partir do final",
+ "LISTS_GET_SUBLIST_START_FIRST": "obtem sublista da primeira lista",
+ "LISTS_GET_SUBLIST_END_FROM_START": "até #",
+ "LISTS_GET_SUBLIST_END_FROM_END": "até #, a partir do final",
+ "LISTS_GET_SUBLIST_END_LAST": "para o último",
+ "LISTS_GET_SUBLIST_TOOLTIP": "Cria uma cópia da porção especificada de uma lista.",
+ "LISTS_SPLIT_LIST_FROM_TEXT": "fazer lista a partir de texto",
+ "LISTS_SPLIT_TEXT_FROM_LIST": "fazer texto a partir da lista",
+ "LISTS_SPLIT_WITH_DELIMITER": "com delimitador",
+ "LISTS_SPLIT_TOOLTIP_SPLIT": "Dividir o texto numa lista de textos, separando-o em cada delimitador.",
+ "LISTS_SPLIT_TOOLTIP_JOIN": "Juntar uma lista de textos num único texto, separado por um delimitador.",
+ "VARIABLES_GET_TOOLTIP": "Retorna o valor desta variável.",
+ "VARIABLES_GET_CREATE_SET": "Criar \"definir %1\"",
+ "VARIABLES_SET": "definir %1 para %2",
+ "VARIABLES_SET_TOOLTIP": "Define esta variável para o valor inserido.",
+ "VARIABLES_SET_CREATE_GET": "Criar \"obter %1\"",
+ "PROCEDURES_DEFNORETURN_HELPURL": "http://en.wikipedia.org/wiki/Procedure_%28computer_science%29",
+ "PROCEDURES_DEFNORETURN_TITLE": "para",
+ "PROCEDURES_DEFNORETURN_PROCEDURE": "faz algo",
+ "PROCEDURES_BEFORE_PARAMS": "com:",
+ "PROCEDURES_CALL_BEFORE_PARAMS": "com:",
+ "PROCEDURES_DEFNORETURN_TOOLTIP": "Cria uma função que não tem retorno.",
+ "PROCEDURES_DEFNORETURN_COMMENT": "Descreva esta função...",
+ "PROCEDURES_DEFRETURN_HELPURL": "http://en.wikipedia.org/wiki/Procedure_%28computer_science%29",
+ "PROCEDURES_DEFRETURN_RETURN": "retorna",
+ "PROCEDURES_DEFRETURN_TOOLTIP": "Cria uma função que possui um valor de retorno.",
+ "PROCEDURES_ALLOW_STATEMENTS": "permitir declarações",
+ "PROCEDURES_DEF_DUPLICATE_WARNING": "Atenção: Esta função tem parâmetros duplicados.",
+ "PROCEDURES_CALLNORETURN_HELPURL": "http://pt.wikipedia.org/wiki/Sub-rotina",
+ "PROCEDURES_CALLNORETURN_TOOLTIP": "Executa a função \"%1\".",
+ "PROCEDURES_CALLRETURN_HELPURL": "http://pt.wikipedia.org/wiki/Sub-rotina",
+ "PROCEDURES_CALLRETURN_TOOLTIP": "Executa a função \"%1\" e usa o seu retorno.",
+ "PROCEDURES_MUTATORCONTAINER_TITLE": "entradas",
+ "PROCEDURES_MUTATORCONTAINER_TOOLTIP": "Adicionar, remover ou reordenar as entradas para esta função.",
+ "PROCEDURES_MUTATORARG_TITLE": "nome da entrada:",
+ "PROCEDURES_MUTATORARG_TOOLTIP": "Adicionar uma entrada para a função.",
+ "PROCEDURES_HIGHLIGHT_DEF": "Destacar definição da função",
+ "PROCEDURES_CREATE_DO": "Criar \"%1\"",
+ "PROCEDURES_IFRETURN_TOOLTIP": "se o valor é verdadeiro, então retorna um segundo valor.",
+ "PROCEDURES_IFRETURN_WARNING": "Atenção: Este bloco só pode ser utilizado dentro da definição de uma função."
+}
diff --git a/blockly/msg/json/qqq.json b/blockly/msg/json/qqq.json
new file mode 100644
index 0000000..43f34f6
--- /dev/null
+++ b/blockly/msg/json/qqq.json
@@ -0,0 +1,372 @@
+{
+ "@metadata": {
+ "authors": [
+ "Espertus",
+ "Liuxinyu970226",
+ "Shirayuki"
+ ]
+ },
+ "VARIABLES_DEFAULT_NAME": "default name - A simple, general default name for a variable, preferably short. For more context, see [[Translating:Blockly#infrequent_message_types]].\n{{Identical|Item}}",
+ "TODAY": "button text - Button that sets a calendar to today's date.\n{{Identical|Today}}",
+ "DUPLICATE_BLOCK": "context menu - Make a copy of the selected block (and any blocks it contains).\n{{Identical|Duplicate}}",
+ "ADD_COMMENT": "context menu - Add a descriptive comment to the selected block.",
+ "REMOVE_COMMENT": "context menu - Remove the descriptive comment from the selected block.",
+ "EXTERNAL_INPUTS": "context menu - Change from 'external' to 'inline' mode for displaying blocks used as inputs to the selected block. See [[Translating:Blockly#context_menus]].",
+ "INLINE_INPUTS": "context menu - Change from 'internal' to 'external' mode for displaying blocks used as inputs to the selected block. See [[Translating:Blockly#context_menus]].",
+ "DELETE_BLOCK": "context menu - Permanently delete the selected block.",
+ "DELETE_X_BLOCKS": "context menu - Permanently delete the %1 selected blocks.\n\nParameters:\n* %1 - an integer greater than 1.",
+ "DELETE_ALL_BLOCKS": "confirmation prompt - Question the user if they really wanted to permanently delete all %1 blocks.\n\nParameters:\n* %1 - an integer greater than 1.",
+ "CLEAN_UP": "context menu - Reposition all the blocks so that they form a neat line.",
+ "COLLAPSE_BLOCK": "context menu - Make the appearance of the selected block smaller by hiding some information about it.",
+ "COLLAPSE_ALL": "context menu - Make the appearance of all blocks smaller by hiding some information about it. Use the same terminology as in the previous message.",
+ "EXPAND_BLOCK": "context menu - Restore the appearance of the selected block by showing information about it that was hidden (collapsed) earlier.",
+ "EXPAND_ALL": "context menu - Restore the appearance of all blocks by showing information about it that was hidden (collapsed) earlier. Use the same terminology as in the previous message.",
+ "DISABLE_BLOCK": "context menu - Make the selected block have no effect (unless reenabled).",
+ "ENABLE_BLOCK": "context menu - Make the selected block have effect (after having been disabled earlier).",
+ "HELP": "context menu - Provide helpful information about the selected block.\n{{Identical|Help}}",
+ "UNDO": "context menu - Undo the previous action.\n{{Identical|Undo}}",
+ "REDO": "context menu - Undo the previous undo action.\n{{Identical|Redo}}",
+ "CHANGE_VALUE_TITLE": "prompt - This message is only seen in the Opera browser. With most browsers, users can edit numeric values in blocks by just clicking and typing. Opera does not allows this, so we have to open a new window and prompt users with this message to chanage a value.",
+ "RENAME_VARIABLE": "dropdown choice - When the user clicks on a variable block, this is one of the dropdown menu choices. It is used to rename the current variable. See [https://github.com/google/blockly/wiki/Variables#dropdown-menu https://github.com/google/blockly/wiki/Variables#dropdown-menu].",
+ "RENAME_VARIABLE_TITLE": "prompt - Prompts the user to enter the new name for the selected variable. See [https://github.com/google/blockly/wiki/Variables#dropdown-menu https://github.com/google/blockly/wiki/Variables#dropdown-menu].\n\nParameters:\n* %1 - the name of the variable to be renamed.",
+ "NEW_VARIABLE": "button text - Text on the button used to launch the variable creation dialogue.",
+ "NEW_VARIABLE_TITLE": "prompt - Prompts the user to enter the name for a new variable. See [https://github.com/google/blockly/wiki/Variables#dropdown-menu https://github.com/google/blockly/wiki/Variables#dropdown-menu].",
+ "VARIABLE_ALREADY_EXISTS": "alert - Tells the user that the name they entered is already in use.",
+ "DELETE_VARIABLE_CONFIRMATION": "confirm - Ask the user to confirm their deletion of multiple uses of a variable.",
+ "DELETE_VARIABLE": "alert - Tell the user that they can't delete a variable because it's part of the definition of a procedure. dropdown choice - Delete the currently selected variable.",
+ "COLOUR_PICKER_HELPURL": "url - Information about colour.",
+ "COLOUR_PICKER_TOOLTIP": "tooltip - See [https://github.com/google/blockly/wiki/Colour#picking-a-colour-from-a-palette https://github.com/google/blockly/wiki/Colour#picking-a-colour-from-a-palette].",
+ "COLOUR_RANDOM_HELPURL": "url - A link that displays a random colour each time you visit it.",
+ "COLOUR_RANDOM_TITLE": "block text - Title of block that generates a colour at random.",
+ "COLOUR_RANDOM_TOOLTIP": "tooltip - See [https://github.com/google/blockly/wiki/Colour#generating-a-random-colour https://github.com/google/blockly/wiki/Colour#generating-a-random-colour].",
+ "COLOUR_RGB_HELPURL": "url - A link for color codes with percentages (0-100%) for each component, instead of the more common 0-255, which may be more difficult for beginners.",
+ "COLOUR_RGB_TITLE": "block text - Title of block for [https://github.com/google/blockly/wiki/Colour#creating-a-colour-from-red-green-and-blue-components https://github.com/google/blockly/wiki/Colour#creating-a-colour-from-red-green-and-blue-components].",
+ "COLOUR_RGB_RED": "block input text - The amount of red (from 0 to 100) to use when [https://github.com/google/blockly/wiki/Colour#creating-a-colour-from-red-green-and-blue-components https://github.com/google/blockly/wiki/Colour#creating-a-colour-from-red-green-and-blue-components].\n{{Identical|Red}}",
+ "COLOUR_RGB_GREEN": "block input text - The amount of green (from 0 to 100) to use when [https://github.com/google/blockly/wiki/Colour#creating-a-colour-from-red-green-and-blue-components https://github.com/google/blockly/wiki/Colour#creating-a-colour-from-red-green-and-blue-components].",
+ "COLOUR_RGB_BLUE": "block input text - The amount of blue (from 0 to 100) to use when [https://github.com/google/blockly/wiki/Colour#creating-a-colour-from-red-green-and-blue-components https://github.com/google/blockly/wiki/Colour#creating-a-colour-from-red-green-and-blue-components].\n{{Identical|Blue}}",
+ "COLOUR_RGB_TOOLTIP": "tooltip - See [https://github.com/google/blockly/wiki/Colour#creating-a-colour-from-red-green-and-blue-components https://github.com/google/blockly/wiki/Colour#creating-a-colour-from-red-green-and-blue-components].",
+ "COLOUR_BLEND_HELPURL": "url - A useful link that displays blending of two colors.",
+ "COLOUR_BLEND_TITLE": "block text - A verb for blending two shades of paint.",
+ "COLOUR_BLEND_COLOUR1": "block input text - The first of two colours to [https://github.com/google/blockly/wiki/Colour#blending-colours blend].",
+ "COLOUR_BLEND_COLOUR2": "block input text - The second of two colours to [https://github.com/google/blockly/wiki/Colour#blending-colours blend].",
+ "COLOUR_BLEND_RATIO": "block input text - The proportion of the [https://github.com/google/blockly/wiki/Colour#blending-colours blend] containing the first color; the remaining proportion is of the second colour. For example, if the first colour is red and the second color blue, a ratio of 1 would yield pure red, a ratio of .5 would yield purple (equal amounts of red and blue), and a ratio of 0 would yield pure blue.\n{{Identical|Ratio}}",
+ "COLOUR_BLEND_TOOLTIP": "tooltip - See [https://github.com/google/blockly/wiki/Colour#blending-colours https://github.com/google/blockly/wiki/Colour#blending-colours].",
+ "CONTROLS_REPEAT_HELPURL": "url - Describes 'repeat loops' in computer programs; consider using the translation of the page [https://en.wikipedia.org/wiki/Control_flow http://en.wikipedia.org/wiki/Control_flow].",
+ "CONTROLS_REPEAT_TITLE": "block input text - Title of [https://github.com/google/blockly/wiki/Loops#repeat repeat block].\n\nParameters:\n* %1 - the number of times the body of the loop should be repeated.",
+ "CONTROLS_REPEAT_INPUT_DO": "block text - Preceding the blocks in the body of the loop. See [https://github.com/google/blockly/wiki/Loops https://github.com/google/blockly/wiki/Loops].\n{{Identical|Do}}",
+ "CONTROLS_REPEAT_TOOLTIP": "tooltip - See [https://github.com/google/blockly/wiki/Loops#repeat https://github.com/google/blockly/wiki/Loops#repeat].",
+ "CONTROLS_WHILEUNTIL_HELPURL": "url - Describes 'while loops' in computer programs; consider using the translation of [https://en.wikipedia.org/wiki/While_loop https://en.wikipedia.org/wiki/While_loop], if present, or [https://en.wikipedia.org/wiki/Control_flow https://en.wikipedia.org/wiki/Control_flow].",
+ "CONTROLS_WHILEUNTIL_OPERATOR_WHILE": "dropdown - Specifies that a loop should [https://github.com/google/blockly/wiki/Loops#repeat-while repeat while] the following condition is true.",
+ "CONTROLS_WHILEUNTIL_OPERATOR_UNTIL": "dropdown - Specifies that a loop should [https://github.com/google/blockly/wiki/Loops#repeat-until repeat until] the following condition becomes true.",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_WHILE": "tooltip - See [https://github.com/google/blockly/wiki/Loops#repeat-while Loops#repeat-while https://github.com/google/blockly/wiki/Loops#repeat-while Loops#repeat-while].",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL": "tooltip - See [https://github.com/google/blockly/wiki/Loops#repeat-until https://github.com/google/blockly/wiki/Loops#repeat-until].",
+ "CONTROLS_FOR_HELPURL": "url - Describes 'for loops' in computer programs. Consider using your language's translation of [https://en.wikipedia.org/wiki/For_loop https://en.wikipedia.org/wiki/For_loop], if present.",
+ "CONTROLS_FOR_TOOLTIP": "tooltip - See [https://github.com/google/blockly/wiki/Loops#count-with https://github.com/google/blockly/wiki/Loops#count-with].\n\nParameters:\n* %1 - the name of the loop variable.",
+ "CONTROLS_FOR_TITLE": "block text - Repeatedly counts a variable (%1) starting with a (usually lower) number in a range (%2), ending with a (usually higher) number in a range (%3), and counting the iterations by a number of steps (%4). As in [https://github.com/google/blockly/wiki/Loops#count-with https://github.com/google/blockly/wiki/Loops#count-with]. [[File:Blockly-count-with.png]]",
+ "CONTROLS_FOREACH_HELPURL": "url - Describes 'for-each loops' in computer programs. Consider using your language's translation of [https://en.wikipedia.org/wiki/Foreach https://en.wikipedia.org/wiki/Foreach] if present.",
+ "CONTROLS_FOREACH_TITLE": "block text - Title of [https://github.com/google/blockly/wiki/Loops#for-each for each block]. Sequentially assigns every item in array %2 to the valiable %1.",
+ "CONTROLS_FOREACH_TOOLTIP": "block text - Description of [https://github.com/google/blockly/wiki/Loops#for-each for each blocks].\n\nParameters:\n* %1 - the name of the loop variable.",
+ "CONTROLS_FLOW_STATEMENTS_HELPURL": "url - Describes control flow in computer programs. Consider using your language's translation of [https://en.wikipedia.org/wiki/Control_flow https://en.wikipedia.org/wiki/Control_flow], if it exists.",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK": "dropdown - The current loop should be exited. See [https://github.com/google/blockly/wiki/Loops#break https://github.com/google/blockly/wiki/Loops#break].",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE": "dropdown - The current iteration of the loop should be ended and the next should begin. See [https://github.com/google/blockly/wiki/Loops#continue-with-next-iteration https://github.com/google/blockly/wiki/Loops#continue-with-next-iteration].",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK": "tooltip - See [https://github.com/google/blockly/wiki/Loops#break-out-of-loop https://github.com/google/blockly/wiki/Loops#break-out-of-loop].",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE": "tooltip - See [https://github.com/google/blockly/wiki/Loops#continue-with-next-iteration https://github.com/google/blockly/wiki/Loops#continue-with-next-iteration].",
+ "CONTROLS_FLOW_STATEMENTS_WARNING": "warning - The user has tried placing a block outside of a loop (for each, while, repeat, etc.), but this type of block may only be used within a loop. See [https://github.com/google/blockly/wiki/Loops#loop-termination-blocks https://github.com/google/blockly/wiki/Loops#loop-termination-blocks].",
+ "CONTROLS_IF_HELPURL": "url - Describes conditional statements (if-then-else) in computer programs. Consider using your language's translation of [https://en.wikipedia.org/wiki/If_else https://en.wikipedia.org/wiki/If_else], if present.",
+ "CONTROLS_IF_TOOLTIP_1": "tooltip - Describes [https://github.com/google/blockly/wiki/IfElse#if-blocks 'if' blocks]. Consider using your language's translation of [https://en.wikipedia.org/wiki/If_statement https://en.wikipedia.org/wiki/If_statement], if present.",
+ "CONTROLS_IF_TOOLTIP_2": "tooltip - Describes [https://github.com/google/blockly/wiki/IfElse#if-else-blocks if-else blocks]. Consider using your language's translation of [https://en.wikipedia.org/wiki/If_statement https://en.wikipedia.org/wiki/If_statement], if present.",
+ "CONTROLS_IF_TOOLTIP_3": "tooltip - Describes [https://github.com/google/blockly/wiki/IfElse#if-else-if-blocks if-else-if blocks]. Consider using your language's translation of [https://en.wikipedia.org/wiki/If_statement https://en.wikipedia.org/wiki/If_statement], if present.",
+ "CONTROLS_IF_TOOLTIP_4": "tooltip - Describes [https://github.com/google/blockly/wiki/IfElse#if-else-if-else-blocks if-else-if-else blocks]. Consider using your language's translation of [https://en.wikipedia.org/wiki/If_statement https://en.wikipedia.org/wiki/If_statement], if present.",
+ "CONTROLS_IF_MSG_IF": "block text - See [https://github.com/google/blockly/wiki/IfElse https://github.com/google/blockly/wiki/IfElse]. It is recommended, but not essential, that this have text in common with the translation of 'else if'",
+ "CONTROLS_IF_MSG_ELSEIF": "block text - See [https://github.com/google/blockly/wiki/IfElse https://github.com/google/blockly/wiki/IfElse]. The English words 'otherwise if' would probably be clearer than 'else if', but the latter is used because it is traditional and shorter.",
+ "CONTROLS_IF_MSG_ELSE": "block text - See [https://github.com/google/blockly/wiki/IfElse https://github.com/google/blockly/wiki/IfElse]. The English word 'otherwise' would probably be superior to 'else', but the latter is used because it is traditional and shorter.",
+ "CONTROLS_IF_IF_TOOLTIP": "tooltip - Describes [https://github.com/google/blockly/wiki/IfElse#block-modification if block modification].",
+ "CONTROLS_IF_ELSEIF_TOOLTIP": "tooltip - Describes the 'else if' subblock during [https://github.com/google/blockly/wiki/IfElse#block-modification if block modification].",
+ "CONTROLS_IF_ELSE_TOOLTIP": "tooltip - Describes the 'else' subblock during [https://github.com/google/blockly/wiki/IfElse#block-modification if block modification].",
+ "LOGIC_COMPARE_HELPURL": "url - Information about comparisons.",
+ "LOGIC_COMPARE_TOOLTIP_EQ": "tooltip - Describes the equals (=) block.",
+ "LOGIC_COMPARE_TOOLTIP_NEQ": "tooltip - Describes the not equals (≠) block.",
+ "LOGIC_COMPARE_TOOLTIP_LT": "tooltip - Describes the less than (<) block.",
+ "LOGIC_COMPARE_TOOLTIP_LTE": "tooltip - Describes the less than or equals (≤) block.",
+ "LOGIC_COMPARE_TOOLTIP_GT": "tooltip - Describes the greater than (>) block.",
+ "LOGIC_COMPARE_TOOLTIP_GTE": "tooltip - Describes the greater than or equals (≥) block.",
+ "LOGIC_OPERATION_HELPURL": "url - Information about the Boolean conjunction ('and') and disjunction ('or') operators. Consider using the translation of [https://en.wikipedia.org/wiki/Boolean_logic https://en.wikipedia.org/wiki/Boolean_logic], if it exists in your language.",
+ "LOGIC_OPERATION_TOOLTIP_AND": "tooltip - See [https://en.wikipedia.org/wiki/Logical_conjunction https://en.wikipedia.org/wiki/Logical_conjunction].",
+ "LOGIC_OPERATION_AND": "block text - See [https://en.wikipedia.org/wiki/Logical_conjunction https://en.wikipedia.org/wiki/Logical_conjunction].\n{{Identical|And}}",
+ "LOGIC_OPERATION_TOOLTIP_OR": "block text - See [https://en.wikipedia.org/wiki/Disjunction https://en.wikipedia.org/wiki/Disjunction].",
+ "LOGIC_OPERATION_OR": "block text - See [https://en.wikipedia.org/wiki/Disjunction https://en.wikipedia.org/wiki/Disjunction].\n{{Identical|Or}}",
+ "LOGIC_NEGATE_HELPURL": "url - Information about logical negation. The translation of [https://en.wikipedia.org/wiki/Logical_negation https://en.wikipedia.org/wiki/Logical_negation] is recommended if it exists in the target language.",
+ "LOGIC_NEGATE_TITLE": "block text - This is a unary operator that returns ''false'' when the input is ''true'', and ''true'' when the input is ''false''. \n\nParameters:\n* %1 - the input (which should be either the value 'true' or 'false')",
+ "LOGIC_NEGATE_TOOLTIP": "tooltip - See [https://en.wikipedia.org/wiki/Logical_negation https://en.wikipedia.org/wiki/Logical_negation].",
+ "LOGIC_BOOLEAN_HELPURL": "url - Information about the logic values ''true'' and ''false''. Consider using the translation of [https://en.wikipedia.org/wiki/Truth_value https://en.wikipedia.org/wiki/Truth_value] if it exists in your language.",
+ "LOGIC_BOOLEAN_TRUE": "block text - The word for the [https://en.wikipedia.org/wiki/Truth_value logical value] ''true''.\n{{Identical|True}}",
+ "LOGIC_BOOLEAN_FALSE": "block text - The word for the [https://en.wikipedia.org/wiki/Truth_value logical value] ''false''.\n{{Identical|False}}",
+ "LOGIC_BOOLEAN_TOOLTIP": "tooltip - Indicates that the block returns either of the two possible [https://en.wikipedia.org/wiki/Truth_value logical values].",
+ "LOGIC_NULL_HELPURL": "url - Provide a link to the translation of [https://en.wikipedia.org/wiki/Nullable_type https://en.wikipedia.org/wiki/Nullable_type], if it exists in your language; otherwise, do not worry about translating this advanced concept.",
+ "LOGIC_NULL": "block text - In computer languages, ''null'' is a special value that indicates that no value has been set. You may use your language's word for 'nothing' or 'invalid'.\n{{Identical|Null}}",
+ "LOGIC_NULL_TOOLTIP": "tooltip - This should use the word from the previous message.",
+ "LOGIC_TERNARY_HELPURL": "url - Describes the programming language operator known as the ''ternary'' or ''conditional'' operator. It is recommended that you use the translation of [https://en.wikipedia.org/wiki/%3F: https://en.wikipedia.org/wiki/%3F:] if it exists.",
+ "LOGIC_TERNARY_CONDITION": "block input text - Label for the input whose value determines which of the other two inputs is returned. In some programming languages, this is called a ''''predicate''''.",
+ "LOGIC_TERNARY_IF_TRUE": "block input text - Indicates that the following input should be returned (used as output) if the test input is true. Remember to try to keep block text terse (short).",
+ "LOGIC_TERNARY_IF_FALSE": "block input text - Indicates that the following input should be returned (used as output) if the test input is false.",
+ "LOGIC_TERNARY_TOOLTIP": "tooltip - See [https://en.wikipedia.org/wiki/%3F: https://en.wikipedia.org/wiki/%3F:].",
+ "MATH_NUMBER_HELPURL": "url - Information about (real) numbers.",
+ "MATH_NUMBER_TOOLTIP": "tooltip - Any positive or negative number, not necessarily an integer.",
+ "MATH_ADDITION_SYMBOL": "{{optional}}\nmath - The symbol for the binary operation addition.",
+ "MATH_SUBTRACTION_SYMBOL": "{{optional}}\nmath - The symbol for the binary operation indicating that the right operand should be subtracted from the left operand.",
+ "MATH_DIVISION_SYMBOL": "{{optional}}\nmath - The binary operation indicating that the left operand should be divided by the right operand.",
+ "MATH_MULTIPLICATION_SYMBOL": "{{optional}}\nmath - The symbol for the binary operation multiplication.",
+ "MATH_POWER_SYMBOL": "{{optional}}\nmath - The symbol for the binary operation exponentiation. Specifically, if the value of the left operand is L and the value of the right operand (the exponent) is R, multiply L by itself R times. (Fractional and negative exponents are also legal.)",
+ "MATH_TRIG_SIN": "math - The short name of the trigonometric function [https://en.wikipedia.org/wiki/Trigonometric_functions#Sine.2C_cosine_and_tangent sine].",
+ "MATH_TRIG_COS": "math - The short name of the trigonometric function [https://en.wikipedia.org/wiki/Trigonometric_functions#Sine.2C_cosine_and_tangent cosine].",
+ "MATH_TRIG_TAN": "math - The short name of the trigonometric function [https://en.wikipedia.org/wiki/Trigonometric_functions#Sine.2C_cosine_and_tangent tangent].",
+ "MATH_TRIG_ASIN": "math - The short name of the ''inverse of'' the trigonometric function [https://en.wikipedia.org/wiki/Trigonometric_functions#Sine.2C_cosine_and_tangent sine].",
+ "MATH_TRIG_ACOS": "math - The short name of the ''inverse of'' the trigonometric function [https://en.wikipedia.org/wiki/Trigonometric_functions#Sine.2C_cosine_and_tangent cosine].",
+ "MATH_TRIG_ATAN": "math - The short name of the ''inverse of'' the trigonometric function [https://en.wikipedia.org/wiki/Trigonometric_functions#Sine.2C_cosine_and_tangent tangent].",
+ "MATH_ARITHMETIC_HELPURL": "url - Information about addition, subtraction, multiplication, division, and exponentiation.",
+ "MATH_ARITHMETIC_TOOLTIP_ADD": "tooltip - See [https://en.wikipedia.org/wiki/Addition https://en.wikipedia.org/wiki/Addition].",
+ "MATH_ARITHMETIC_TOOLTIP_MINUS": "tooltip - See [https://en.wikipedia.org/wiki/Subtraction https://en.wikipedia.org/wiki/Subtraction].",
+ "MATH_ARITHMETIC_TOOLTIP_MULTIPLY": "tooltip - See [https://en.wikipedia.org/wiki/Multiplication https://en.wikipedia.org/wiki/Multiplication].",
+ "MATH_ARITHMETIC_TOOLTIP_DIVIDE": "tooltip - See [https://en.wikipedia.org/wiki/Division_(mathematics) https://en.wikipedia.org/wiki/Division_(mathematics)].",
+ "MATH_ARITHMETIC_TOOLTIP_POWER": "tooltip - See [https://en.wikipedia.org/wiki/Exponentiation https://en.wikipedia.org/wiki/Exponentiation].",
+ "MATH_SINGLE_HELPURL": "url - Information about the square root operation.",
+ "MATH_SINGLE_OP_ROOT": "dropdown - This computes the positive [https://en.wikipedia.org/wiki/Square_root square root] of its input. For example, the square root of 16 is 4.",
+ "MATH_SINGLE_TOOLTIP_ROOT": "tooltip - Please use the same term as in the previous message.",
+ "MATH_SINGLE_OP_ABSOLUTE": "dropdown - This leaves positive numeric inputs changed and inverts negative inputs. For example, the absolute value of 5 is 5; the absolute value of -5 is also 5. For more information, see [https://en.wikipedia.org/wiki/Absolute_value https://en.wikipedia.org/wiki/Absolute_value].",
+ "MATH_SINGLE_TOOLTIP_ABS": "tooltip - Please use the same term as in the previous message.",
+ "MATH_SINGLE_TOOLTIP_NEG": "tooltip - Calculates '''0-n''', where '''n''' is the single numeric input.",
+ "MATH_SINGLE_TOOLTIP_LN": "tooltip - Calculates the [https://en.wikipedia.org/wiki/Natural_logarithm|natural logarithm] of its single numeric input.",
+ "MATH_SINGLE_TOOLTIP_LOG10": "tooltip - Calculates the [https://en.wikipedia.org/wiki/Common_logarithm common logarithm] of its single numeric input.",
+ "MATH_SINGLE_TOOLTIP_EXP": "tooltip - Multiplies [https://en.wikipedia.org/wiki/E_%28mathematical_constant%29 e] by itself n times, where n is the single numeric input.",
+ "MATH_SINGLE_TOOLTIP_POW10": "tooltip - Multiplies 10 by itself n times, where n is the single numeric input.",
+ "MATH_TRIG_HELPURL": "url - Information about the trigonometric functions sine, cosine, tangent, and their inverses (ideally using degrees, not radians).",
+ "MATH_TRIG_TOOLTIP_SIN": "tooltip - Return the [https://en.wikipedia.org/wiki/Trigonometric_functions#Sine.2C_cosine_and_tangent sine] of an [https://en.wikipedia.org/wiki/Degree_(angle) angle in degrees], not radians.",
+ "MATH_TRIG_TOOLTIP_COS": "tooltip - Return the [https://en.wikipedia.org/wiki/Trigonometric_functions#Sine.2C_cosine_and_tangent cosine] of an [https://en.wikipedia.org/wiki/Degree_(angle) angle in degrees], not radians.",
+ "MATH_TRIG_TOOLTIP_TAN": "tooltip - Return the [https://en.wikipedia.org/wiki/Trigonometric_functions#Sine.2C_cosine_and_tangent tangent] of an [https://en.wikipedia.org/wiki/Degree_(angle) angle in degrees], not radians.",
+ "MATH_TRIG_TOOLTIP_ASIN": "tooltip - The [https://en.wikipedia.org/wiki/Inverse_trigonometric_functions inverse] of the [https://en.wikipedia.org/wiki/Cosine#Sine.2C_cosine_and_tangent sine function], using [https://en.wikipedia.org/wiki/Degree_(angle) degrees], not radians.",
+ "MATH_TRIG_TOOLTIP_ACOS": "tooltip - The [https://en.wikipedia.org/wiki/Inverse_trigonometric_functions inverse] of the [https://en.wikipedia.org/wiki/Cosine#Sine.2C_cosine_and_tangent cosine] function, using [https://en.wikipedia.org/wiki/Degree_(angle) degrees], not radians.",
+ "MATH_TRIG_TOOLTIP_ATAN": "tooltip - The [https://en.wikipedia.org/wiki/Inverse_trigonometric_functions inverse] of the [https://en.wikipedia.org/wiki/Cosine#Sine.2C_cosine_and_tangent tangent] function, using [https://en.wikipedia.org/wiki/Degree_(angle) degrees], not radians.",
+ "MATH_CONSTANT_HELPURL": "url - Information about the mathematical constants Pi (π), e, the golden ratio (φ), √ 2, √ 1/2, and infinity (∞).",
+ "MATH_CONSTANT_TOOLTIP": "tooltip - Provides the specified [https://en.wikipedia.org/wiki/Mathematical_constant mathematical constant].",
+ "MATH_IS_EVEN": "dropdown - A number is '''even''' if it is a multiple of 2. For example, 4 is even (yielding true), but 3 is not (false).",
+ "MATH_IS_ODD": "dropdown - A number is '''odd''' if it is not a multiple of 2. For example, 3 is odd (yielding true), but 4 is not (false). The opposite of 'odd' is 'even'.",
+ "MATH_IS_PRIME": "dropdown - A number is [https://en.wikipedia.org/wiki/Prime prime] if it cannot be evenly divided by any positive integers except for 1 and itself. For example, 5 is prime, but 6 is not because 2 × 3 = 6.",
+ "MATH_IS_WHOLE": "dropdown - A number is '''whole''' if it is an [https://en.wikipedia.org/wiki/Integer integer]. For example, 5 is whole, but 5.1 is not.",
+ "MATH_IS_POSITIVE": "dropdown - A number is '''positive''' if it is greater than 0. (0 is neither negative nor positive.)",
+ "MATH_IS_NEGATIVE": "dropdown - A number is '''negative''' if it is less than 0. (0 is neither negative nor positive.)",
+ "MATH_IS_DIVISIBLE_BY": "dropdown - A number x is divisible by y if y goes into x evenly. For example, 10 is divisible by 5, but 10 is not divisible by 3.",
+ "MATH_IS_TOOLTIP": "tooltip - This block lets the user specify via a dropdown menu whether to check if the numeric input is even, odd, prime, whole, positive, negative, or divisible by a given value.",
+ "MATH_CHANGE_HELPURL": "url - Information about incrementing (increasing the value of) a variable. For other languages, just use the translation of the Wikipedia page about addition ([https://en.wikipedia.org/wiki/Addition https://en.wikipedia.org/wiki/Addition]).",
+ "MATH_CHANGE_TITLE": "- As in: ''change'' [the value of variable] ''item'' ''by'' 1 (e.g., if the variable named 'item' had the value 5, change it to 6). %1 is a variable name. %2 is the amount of change.",
+ "MATH_CHANGE_TOOLTIP": "tooltip - This updates the value of the variable by adding to it the following numeric input.\n\nParameters:\n* %1 - the name of the variable whose value should be increased.",
+ "MATH_ROUND_HELPURL": "url - Information about how numbers are rounded to the nearest integer",
+ "MATH_ROUND_TOOLTIP": "tooltip - See [https://en.wikipedia.org/wiki/Rounding https://en.wikipedia.org/wiki/Rounding].",
+ "MATH_ROUND_OPERATOR_ROUND": "dropdown - This rounds its input to the nearest whole number. For example, 3.4 is rounded to 3.",
+ "MATH_ROUND_OPERATOR_ROUNDUP": "dropdown - This rounds its input up to the nearest whole number. For example, if the input was 2.2, the result would be 3.",
+ "MATH_ROUND_OPERATOR_ROUNDDOWN": "dropdown - This rounds its input down to the nearest whole number. For example, if the input was 3.8, the result would be 3.",
+ "MATH_ONLIST_HELPURL": "url - Information about applying a function to a list of numbers. (We were unable to find such information in English. Feel free to skip this and any other URLs that are difficult.)",
+ "MATH_ONLIST_OPERATOR_SUM": "dropdown - This computes the sum of the numeric elements in the list. For example, the sum of the list {1, 4} is 5.",
+ "MATH_ONLIST_TOOLTIP_SUM": "tooltip - Please use the same term for 'sum' as in the previous message.",
+ "MATH_ONLIST_OPERATOR_MIN": "dropdown - This finds the smallest (minimum) number in a list. For example, the smallest number in the list [-5, 0, 3] is -5.",
+ "MATH_ONLIST_TOOLTIP_MIN": "tooltip - Please use the same term for 'min' or 'minimum' as in the previous message.",
+ "MATH_ONLIST_OPERATOR_MAX": "dropdown - This finds the largest (maximum) number in a list. For example, the largest number in the list [-5, 0, 3] is 3.",
+ "MATH_ONLIST_TOOLTIP_MAX": "tooltip",
+ "MATH_ONLIST_OPERATOR_AVERAGE": "dropdown - This adds up all of the numbers in a list and divides the sum by the number of elements in the list. For example, the [https://en.wikipedia.org/wiki/Arithmetic_mean average] of the list [1, 2, 3, 4] is 2.5 (10/4).",
+ "MATH_ONLIST_TOOLTIP_AVERAGE": "tooltip - See [https://en.wikipedia.org/wiki/Arithmetic_mean https://en.wikipedia.org/wiki/Arithmetic_mean] for more informatin.",
+ "MATH_ONLIST_OPERATOR_MEDIAN": "dropdown - This finds the [https://en.wikipedia.org/wiki/Median median] of the numeric values in a list. For example, the median of the list {1, 2, 7, 12, 13} is 7.",
+ "MATH_ONLIST_TOOLTIP_MEDIAN": "tooltip - See [https://en.wikipedia.org/wiki/Median median https://en.wikipedia.org/wiki/Median median] for more information.",
+ "MATH_ONLIST_OPERATOR_MODE": "dropdown - This finds the most common numbers ([https://en.wikipedia.org/wiki/Mode_(statistics) modes]) in a list. For example, the modes of the list {1, 3, 9, 3, 9} are {3, 9}.",
+ "MATH_ONLIST_TOOLTIP_MODE": "tooltip - See [https://en.wikipedia.org/wiki/Mode_(statistics) https://en.wikipedia.org/wiki/Mode_(statistics)] for more information.",
+ "MATH_ONLIST_OPERATOR_STD_DEV": "dropdown - This finds the [https://en.wikipedia.org/wiki/Standard_deviation standard deviation] of the numeric values in a list.",
+ "MATH_ONLIST_TOOLTIP_STD_DEV": "tooltip - See [https://en.wikipedia.org/wiki/Standard_deviation https://en.wikipedia.org/wiki/Standard_deviation] for more information.",
+ "MATH_ONLIST_OPERATOR_RANDOM": "dropdown - This choose an element at random from a list. Each element is chosen with equal probability.",
+ "MATH_ONLIST_TOOLTIP_RANDOM": "tooltip - Please use same term for 'random' as in previous entry.",
+ "MATH_MODULO_HELPURL": "url - information about the modulo (remainder) operation.",
+ "MATH_MODULO_TITLE": "block text - Title of block providing the remainder when dividing the first numerical input by the second. For example, the remainder of 10 divided by 3 is 1.\n\nParameters:\n* %1 - the dividend (10, in our example)\n* %2 - the divisor (3 in our example).",
+ "MATH_MODULO_TOOLTIP": "tooltip - For example, the remainder of 10 divided by 3 is 1.",
+ "MATH_CONSTRAIN_HELPURL": "url - Information about constraining a numeric value to be in a specific range. (The English URL is not ideal. Recall that translating URLs is the lowest priority.)",
+ "MATH_CONSTRAIN_TITLE": "block text - The title of the block that '''constrain'''s (forces) a number to be in a given range. For example, if the number 150 is constrained to be between 5 and 100, the result will be 100. \n\nParameters:\n* %1 - the value to constrain (e.g., 150)\n* %2 - the minimum value (e.g., 5)\n* %3 - the maximum value (e.g., 100).",
+ "MATH_CONSTRAIN_TOOLTIP": "tooltip - This compares a number ''x'' to a low value ''L'' and a high value ''H''. If ''x'' is less then ''L'', the result is ''L''. If ''x'' is greater than ''H'', the result is ''H''. Otherwise, the result is ''x''.",
+ "MATH_RANDOM_INT_HELPURL": "url - Information about how computers generate random numbers.",
+ "MATH_RANDOM_INT_TITLE": "block text - The title of the block that generates a random integer (whole number) in the specified range. For example, if the range is from 5 to 7, this returns 5, 6, or 7 with equal likelihood. %1 is a placeholder for the lower number, %2 is the placeholder for the larger number.",
+ "MATH_RANDOM_INT_TOOLTIP": "tooltip - Return a random integer between two values specified as inputs. For example, if one input was 7 and another 9, any of the numbers 7, 8, or 9 could be produced.",
+ "MATH_RANDOM_FLOAT_HELPURL": "url - Information about how computers generate random numbers (specifically, numbers in the range from 0 to just below 1).",
+ "MATH_RANDOM_FLOAT_TITLE_RANDOM": "block text - The title of the block that generates a random number greater than or equal to 0 and less than 1.",
+ "MATH_RANDOM_FLOAT_TOOLTIP": "tooltip - Return a random fraction between 0 and 1. The value may be equal to 0 but must be less than 1.",
+ "TEXT_TEXT_HELPURL": "url - Information about how computers represent text (sometimes referred to as ''string''s).",
+ "TEXT_TEXT_TOOLTIP": "tooltip - See [https://github.com/google/blockly/wiki/Text https://github.com/google/blockly/wiki/Text].",
+ "TEXT_JOIN_HELPURL": "url - Information on concatenating/appending pieces of text.",
+ "TEXT_JOIN_TITLE_CREATEWITH": "block text - See [https://github.com/google/blockly/wiki/Text#text-creation https://github.com/google/blockly/wiki/Text#text-creation].",
+ "TEXT_JOIN_TOOLTIP": "tooltip - See [https://github.com/google/blockly/wiki/Text#text-creation create text with] for more information.",
+ "TEXT_CREATE_JOIN_TITLE_JOIN": "block text - This is shown when the programmer wants to change the number of pieces of text being joined together. See [https://github.com/google/blockly/wiki/Text#text-creation https://github.com/google/blockly/wiki/Text#text-creation], specifically the last picture in the 'Text creation' section.\n{{Identical|Join}}",
+ "TEXT_CREATE_JOIN_TOOLTIP": "tooltip - See [https://github.com/google/blockly/wiki/Text#text-creation https://github.com/google/blockly/wiki/Text#text-creation], specifically the last picture in the 'Text creation' section.",
+ "TEXT_CREATE_JOIN_ITEM_TOOLTIP": "block text - See [https://github.com/google/blockly/wiki/Text#text-creation https://github.com/google/blockly/wiki/Text#text-creation], specifically the last picture in the 'Text creation' section.",
+ "TEXT_APPEND_HELPURL": "url - This and the other text-related URLs are going to be hard to translate. As always, it is okay to leave untranslated or paste in the English-language URL. For these URLs, you might also consider a general URL about how computers represent text (such as the translation of [https://en.wikipedia.org/wiki/String_(computer_science) this Wikipedia page]).",
+ "TEXT_APPEND_TO": "block input text - Message preceding the name of a variable to which text should be appended. [[File:blockly-append-text.png]]",
+ "TEXT_APPEND_APPENDTEXT": "block input text - Message following the variable and preceding the piece of text that should be appended, as shown below. [[File:blockly-append-text.png]]",
+ "TEXT_APPEND_TOOLTIP": "tooltip - See [https://github.com/google/blockly/wiki/Text#text-modification https://github.com/google/blockly/wiki/Text#text-modification] for more information.\n\nParameters:\n* %1 - the name of the variable to which text should be appended",
+ "TEXT_LENGTH_HELPURL": "url - Information about text on computers (usually referred to as 'strings').",
+ "TEXT_LENGTH_TITLE": "block text - See [https://github.com/google/blockly/wiki/Text#text-length https://github.com/google/blockly/wiki/Text#text-length]. \n\nParameters:\n* %1 - the piece of text to take the length of",
+ "TEXT_LENGTH_TOOLTIP": "tooltip - See [https://github.com/google/blockly/wiki/Text#text-length https://github.com/google/blockly/wiki/Text#text-length].",
+ "TEXT_ISEMPTY_HELPURL": "url - Information about empty pieces of text on computers (usually referred to as 'empty strings').",
+ "TEXT_ISEMPTY_TITLE": "block text - See [https://github.com/google/blockly/wiki/Text#checking-for-empty-text https://github.com/google/blockly/wiki/Text#checking-for-empty-text]. \n\nParameters:\n* %1 - the piece of text to test for emptiness",
+ "TEXT_ISEMPTY_TOOLTIP": "tooltip - See [https://github.com/google/blockly/wiki/Text#checking-for-empty-text https://github.com/google/blockly/wiki/Text#checking-for-empty-text].",
+ "TEXT_INDEXOF_HELPURL": "url - Information about finding a character in a piece of text.",
+ "TEXT_INDEXOF_TOOLTIP": "tooltip - %1 will be replaced by either the number 0 or -1 depending on the indexing mode. See [https://github.com/google/blockly/wiki/Text#finding-text https://github.com/google/blockly/wiki/Text#finding-text].",
+ "TEXT_INDEXOF_INPUT_INTEXT": "block text - Title of blocks allowing users to find text. See [https://github.com/google/blockly/wiki/Text#finding-text https://github.com/google/blockly/wiki/Text#finding-text]. [[File:Blockly-find-text.png]].",
+ "TEXT_INDEXOF_OPERATOR_FIRST": "dropdown - See [https://github.com/google/blockly/wiki/Text#finding-text https://github.com/google/blockly/wiki/Text#finding-text]. [[File:Blockly-find-text.png]].",
+ "TEXT_INDEXOF_OPERATOR_LAST": "dropdown - See [https://github.com/google/blockly/wiki/Text#finding-text https://github.com/google/blockly/wiki/Text#finding-text]. This would replace 'find first occurrence of text' below. (For more information on how common text is factored out of dropdown menus, see [https://translatewiki.net/wiki/Translating:Blockly#Drop-Down_Menus https://translatewiki.net/wiki/Translating:Blockly#Drop-Down_Menus)].) [[File:Blockly-find-text.png]].",
+ "TEXT_INDEXOF_TAIL": "block text - Optional text to follow the rightmost block in a [https://github.com/google/blockly/wiki/Text#finding-text https://github.com/google/blockly/wiki/Text#finding-text in text ... find block] (after the 'a' in the below picture). This will be the empty string in most languages. [[File:Blockly-find-text.png]].",
+ "TEXT_CHARAT_HELPURL": "url - Information about extracting characters (letters, number, symbols, etc.) from text.",
+ "TEXT_CHARAT_INPUT_INTEXT": "block text - Appears before the piece of text from which a letter (or number, punctuation character, etc.) should be extracted, as shown below. See [https://github.com/google/blockly/wiki/Text#extracting-a-single-character https://github.com/google/blockly/wiki/Text#extracting-a-single-character]. [[File:Blockly-text-get.png]]",
+ "TEXT_CHARAT_FROM_START": "dropdown - Indicates that the letter (or number, punctuation character, etc.) with the specified index should be obtained from the preceding piece of text. See [https://github.com/google/blockly/wiki/Text#extracting-a-single-character https://github.com/google/blockly/wiki/Text#extracting-a-single-character]. [[File:Blockly-text-get.png]]",
+ "TEXT_CHARAT_FROM_END": "block text - Indicates that the letter (or number, punctuation character, etc.) with the specified index from the end of a given piece of text should be obtained. See [https://github.com/google/blockly/wiki/Text#extracting-a-single-character https://github.com/google/blockly/wiki/Text#extracting-a-single-character]. [[File:Blockly-text-get.png]]",
+ "TEXT_CHARAT_FIRST": "block text - Indicates that the first letter of the following piece of text should be retrieved. See [https://github.com/google/blockly/wiki/Text#extracting-a-single-character https://github.com/google/blockly/wiki/Text#extracting-a-single-character]. [[File:Blockly-text-get.png]]",
+ "TEXT_CHARAT_LAST": "block text - Indicates that the last letter (or number, punctuation mark, etc.) of the following piece of text should be retrieved. See [https://github.com/google/blockly/wiki/Text#extracting-a-single-character https://github.com/google/blockly/wiki/Text#extracting-a-single-character]. [[File:Blockly-text-get.png]]",
+ "TEXT_CHARAT_RANDOM": "block text - Indicates that any letter (or number, punctuation mark, etc.) in the following piece of text should be randomly selected. See [https://github.com/google/blockly/wiki/Text#extracting-a-single-character https://github.com/google/blockly/wiki/Text#extracting-a-single-character]. [[File:Blockly-text-get.png]]",
+ "TEXT_CHARAT_TAIL": "block text - Text that goes after the rightmost block/dropdown when getting a single letter from a piece of text, as in [https://blockly-demo.appspot.com/static/apps/code/index.html#3m23km these blocks] or shown below. For most languages, this will be blank. [[File:Blockly-text-get.png]]",
+ "TEXT_CHARAT_TOOLTIP": "tooltip - See [https://github.com/google/blockly/wiki/Text#extracting-a-single-character https://github.com/google/blockly/wiki/Text#extracting-a-single-character]. [[File:Blockly-text-get.png]]",
+ "TEXT_GET_SUBSTRING_TOOLTIP": "See [https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text].",
+ "TEXT_GET_SUBSTRING_HELPURL": "url - Information about extracting characters from text. Reminder: urls are the lowest priority translations. Feel free to skip.",
+ "TEXT_GET_SUBSTRING_INPUT_IN_TEXT": "block text - Precedes a piece of text from which a portion should be extracted. [[File:Blockly-get-substring.png]]",
+ "TEXT_GET_SUBSTRING_START_FROM_START": "dropdown - Indicates that the following number specifies the position (relative to the start position) of the beginning of the region of text that should be obtained from the preceding piece of text. See [https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text]. [[File:Blockly-get-substring.png]]",
+ "TEXT_GET_SUBSTRING_START_FROM_END": "dropdown - Indicates that the following number specifies the position (relative to the end position) of the beginning of the region of text that should be obtained from the preceding piece of text. See [https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text]. Note: If {{msg-Blockly|ORDINAL_NUMBER_SUFFIX}} is defined, it will automatically appear ''after'' this and any other [https://translatewiki.net/wiki/Translating:Blockly#Ordinal_numbers ordinal numbers] on this block. [[File:Blockly-get-substring.png]]",
+ "TEXT_GET_SUBSTRING_START_FIRST": "block text - Indicates that a region starting with the first letter of the preceding piece of text should be extracted. See [https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text]. [[File:Blockly-get-substring.png]]",
+ "TEXT_GET_SUBSTRING_END_FROM_START": "dropdown - Indicates that the following number specifies the position (relative to the start position) of the end of the region of text that should be obtained from the preceding piece of text. See [https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text]. [[File:Blockly-get-substring.png]]",
+ "TEXT_GET_SUBSTRING_END_FROM_END": "dropdown - Indicates that the following number specifies the position (relative to the end position) of the end of the region of text that should be obtained from the preceding piece of text. See [https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text]. [[File:Blockly-get-substring.png]]",
+ "TEXT_GET_SUBSTRING_END_LAST": "block text - Indicates that a region ending with the last letter of the preceding piece of text should be extracted. See [https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text]. [[File:Blockly-get-substring.png]]",
+ "TEXT_GET_SUBSTRING_TAIL": "block text - Text that should go after the rightmost block/dropdown when [https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text extracting a region of text]. In most languages, this will be the empty string. [[File:Blockly-get-substring.png]]",
+ "TEXT_CHANGECASE_HELPURL": "url - Information about the case of letters (upper-case and lower-case).",
+ "TEXT_CHANGECASE_TOOLTIP": "tooltip - Describes a block to adjust the case of letters. For more information on this block, see [https://github.com/google/blockly/wiki/Text#adjusting-text-case https://github.com/google/blockly/wiki/Text#adjusting-text-case].",
+ "TEXT_CHANGECASE_OPERATOR_UPPERCASE": "block text - Indicates that all of the letters in the following piece of text should be capitalized. If your language does not use case, you may indicate that this is not applicable to your language. For more information on this block, see [https://github.com/google/blockly/wiki/Text#adjusting-text-case https://github.com/google/blockly/wiki/Text#adjusting-text-case].",
+ "TEXT_CHANGECASE_OPERATOR_LOWERCASE": "block text - Indicates that all of the letters in the following piece of text should be converted to lower-case. If your language does not use case, you may indicate that this is not applicable to your language. For more information on this block, see [https://github.com/google/blockly/wiki/Text#adjusting-text-case https://github.com/google/blockly/wiki/Text#adjusting-text-case].",
+ "TEXT_CHANGECASE_OPERATOR_TITLECASE": "block text - Indicates that the first letter of each of the following words should be capitalized and the rest converted to lower-case. If your language does not use case, you may indicate that this is not applicable to your language. For more information on this block, see [https://github.com/google/blockly/wiki/Text#adjusting-text-case https://github.com/google/blockly/wiki/Text#adjusting-text-case].",
+ "TEXT_TRIM_HELPURL": "url - Information about trimming (removing) text off the beginning and ends of pieces of text.",
+ "TEXT_TRIM_TOOLTIP": "tooltip - See [https://github.com/google/blockly/wiki/Text#trimming-removing-spaces https://github.com/google/blockly/wiki/Text#trimming-removing-spaces].",
+ "TEXT_TRIM_OPERATOR_BOTH": "dropdown - Removes spaces from the beginning and end of a piece of text. See [https://github.com/google/blockly/wiki/Text#trimming-removing-spaces https://github.com/google/blockly/wiki/Text#trimming-removing-spaces]. Note that neither this nor the other options modify the original piece of text (that follows); the block just returns a version of the text without the specified spaces.",
+ "TEXT_TRIM_OPERATOR_LEFT": "dropdown - Removes spaces from the beginning of a piece of text. See [https://github.com/google/blockly/wiki/Text#trimming-removing-spaces https://github.com/google/blockly/wiki/Text#trimming-removing-spaces]. Note that in right-to-left scripts, this will remove spaces from the right side.",
+ "TEXT_TRIM_OPERATOR_RIGHT": "dropdown - Removes spaces from the end of a piece of text. See [https://github.com/google/blockly/wiki/Text#trimming-removing-spaces https://github.com/google/blockly/wiki/Text#trimming-removing-spaces]. Note that in right-to-left scripts, this will remove spaces from the left side.",
+ "TEXT_PRINT_HELPURL": "url - Information about displaying text on computers.",
+ "TEXT_PRINT_TITLE": "block text - Display the input on the screen. See [https://github.com/google/blockly/wiki/Text#printing-text https://github.com/google/blockly/wiki/Text#printing-text]. \n\nParameters:\n* %1 - the value to print",
+ "TEXT_PRINT_TOOLTIP": "tooltip - See [https://github.com/google/blockly/wiki/Text#printing-text https://github.com/google/blockly/wiki/Text#printing-text].",
+ "TEXT_PROMPT_HELPURL": "url - Information about getting text from users.",
+ "TEXT_PROMPT_TYPE_TEXT": "dropdown - Specifies that a piece of text should be requested from the user with the following message. See [https://github.com/google/blockly/wiki/Text#printing-text https://github.com/google/blockly/wiki/Text#printing-text].",
+ "TEXT_PROMPT_TYPE_NUMBER": "dropdown - Specifies that a number should be requested from the user with the following message. See [https://github.com/google/blockly/wiki/Text#printing-text https://github.com/google/blockly/wiki/Text#printing-text].",
+ "TEXT_PROMPT_TOOLTIP_NUMBER": "dropdown - Precedes the message with which the user should be prompted for a number. See [https://github.com/google/blockly/wiki/Text#printing-text https://github.com/google/blockly/wiki/Text#printing-text].",
+ "TEXT_PROMPT_TOOLTIP_TEXT": "dropdown - Precedes the message with which the user should be prompted for some text. See [https://github.com/google/blockly/wiki/Text#printing-text https://github.com/google/blockly/wiki/Text#printing-text].",
+ "LISTS_CREATE_EMPTY_HELPURL": "url - Information on empty lists.",
+ "LISTS_CREATE_EMPTY_TITLE": "block text - See [https://github.com/google/blockly/wiki/Lists#create-empty-list https://github.com/google/blockly/wiki/Lists#create-empty-list].",
+ "LISTS_CREATE_EMPTY_TOOLTIP": "block text - See [https://github.com/google/blockly/wiki/Lists#create-empty-list https://github.com/google/blockly/wiki/Lists#create-empty-list].",
+ "LISTS_CREATE_WITH_HELPURL": "url - Information on building lists.",
+ "LISTS_CREATE_WITH_TOOLTIP": "tooltip - See [https://github.com/google/blockly/wiki/Lists#create-list-with https://github.com/google/blockly/wiki/Lists#create-list-with].",
+ "LISTS_CREATE_WITH_INPUT_WITH": "block text - See [https://github.com/google/blockly/wiki/Lists#create-list-with https://github.com/google/blockly/wiki/Lists#create-list-with].",
+ "LISTS_CREATE_WITH_CONTAINER_TITLE_ADD": "block text - This appears in a sub-block when [https://github.com/google/blockly/wiki/Lists#changing-number-of-inputs changing the number of inputs in a ''''create list with'''' block].\n{{Identical|List}}",
+ "LISTS_CREATE_WITH_CONTAINER_TOOLTIP": "tooltip - See [https://github.com/google/blockly/wiki/Lists#changing-number-of-inputs https://github.com/google/blockly/wiki/Lists#changing-number-of-inputs].",
+ "LISTS_CREATE_WITH_ITEM_TOOLTIP": "tooltip - See [https://github.com/google/blockly/wiki/Lists#changing-number-of-inputs https://github.com/google/blockly/wiki/Lists#changing-number-of-inputs].",
+ "LISTS_REPEAT_HELPURL": "url - Information about [https://github.com/google/blockly/wiki/Lists#create-list-with creating a list with multiple copies of a single item].",
+ "LISTS_REPEAT_TOOLTIP": "url - See [https://github.com/google/blockly/wiki/Lists#create-list-with creating a list with multiple copies of a single item].",
+ "LISTS_REPEAT_TITLE": "block text - See [https://github.com/google/blockly/wiki/Lists#create-list-with https://github.com/google/blockly/wiki/Lists#create-list-with]. \n\nParameters:\n* %1 - the item (text) to be repeated\n* %2 - the number of times to repeat it",
+ "LISTS_LENGTH_HELPURL": "url - Information about how the length of a list is computed (i.e., by the total number of elements, not the number of different elements).",
+ "LISTS_LENGTH_TITLE": "block text - See [https://github.com/google/blockly/wiki/Lists#length-of https://github.com/google/blockly/wiki/Lists#length-of]. \n\nParameters:\n* %1 - the list whose length is desired",
+ "LISTS_LENGTH_TOOLTIP": "tooltip - See [https://github.com/google/blockly/wiki/Lists#length-of https://github.com/google/blockly/wiki/Lists#length-of Blockly:Lists:length of].",
+ "LISTS_ISEMPTY_HELPURL": "url - See [https://github.com/google/blockly/wiki/Lists#is-empty https://github.com/google/blockly/wiki/Lists#is-empty].",
+ "LISTS_ISEMPTY_TITLE": "block text - See [https://github.com/google/blockly/wiki/Lists#is-empty https://github.com/google/blockly/wiki/Lists#is-empty]. \n\nParameters:\n* %1 - the list to test",
+ "LISTS_ISEMPTY_TOOLTIP": "block tooltip - See [https://github.com/google/blockly/wiki/Lists#is-empty https://github.com/google/blockly/wiki/Lists#is-empty].",
+ "LISTS_INLIST": "block text - Title of blocks operating on [https://github.com/google/blockly/wiki/Lists lists].",
+ "LISTS_INDEX_OF_HELPURL": "url - See [https://github.com/google/blockly/wiki/Lists#getting-items-from-a-list https://github.com/google/blockly/wiki/Lists#getting-items-from-a-list].",
+ "LISTS_INDEX_OF_FIRST": "dropdown - See [https://github.com/google/blockly/wiki/Lists#finding-items-in-a-list Lists#finding-items-in-a-list]. [[File:Blockly-list-find.png]]",
+ "LISTS_INDEX_OF_LAST": "dropdown - See [https://github.com/google/blockly/wiki/Lists#finding-items-in-a-list https://github.com/google/blockly/wiki/Lists#finding-items-in-a-list]. [[File:Blockly-list-find.png]]",
+ "LISTS_INDEX_OF_TOOLTIP": "tooltip - %1 will be replaced by either the number 0 or -1 depending on the indexing mode. See [https://github.com/google/blockly/wiki/Lists#finding-items-in-a-list https://github.com/google/blockly/wiki/Lists#finding-items-in-a-list]. [[File:Blockly-list-find.png]]",
+ "LISTS_GET_INDEX_GET": "dropdown - Indicates that the user wishes to [https://github.com/google/blockly/wiki/Lists#getting-a-single-item get an item from a list] without removing it from the list.",
+ "LISTS_GET_INDEX_GET_REMOVE": "dropdown - Indicates that the user wishes to [https://github.com/google/blockly/wiki/Lists#getting-a-single-item get and remove an item from a list], as opposed to merely getting it without modifying the list.",
+ "LISTS_GET_INDEX_REMOVE": "dropdown - Indicates that the user wishes to [https://github.com/google/blockly/wiki/Lists#removing-an-item remove an item from a list].\n{{Identical|Remove}}",
+ "LISTS_GET_INDEX_FROM_START": "dropdown - Indicates that an index relative to the front of the list should be used to [https://github.com/google/blockly/wiki/Lists#getting-a-single-item get and/or remove an item from a list]. Note: If {{msg-Blockly|ORDINAL_NUMBER_SUFFIX}} is defined, it will automatically appear ''after'' this number (and any other ordinal numbers on this block). See [[Translating:Blockly#Ordinal_numbers]] for more information on ordinal numbers in Blockly. [[File:Blockly-list-get-item.png]]",
+ "LISTS_GET_INDEX_FROM_END": "dropdown - Indicates that an index relative to the end of the list should be used to [https://github.com/google/blockly/wiki/Lists#getting-a-single-item access an item in a list]. [[File:Blockly-list-get-item.png]]",
+ "LISTS_GET_INDEX_FIRST": "dropdown - Indicates that the '''first''' item should be [https://github.com/google/blockly/wiki/Lists#getting-a-single-item accessed in a list]. [[File:Blockly-list-get-item.png]]",
+ "LISTS_GET_INDEX_LAST": "dropdown - Indicates that the '''last''' item should be [https://github.com/google/blockly/wiki/Lists#getting-a-single-item accessed in a list]. [[File:Blockly-list-get-item.png]]",
+ "LISTS_GET_INDEX_RANDOM": "dropdown - Indicates that a '''random''' item should be [https://github.com/google/blockly/wiki/Lists#getting-a-single-item accessed in a list]. [[File:Blockly-list-get-item.png]]",
+ "LISTS_GET_INDEX_TAIL": "block text - Text that should go after the rightmost block/dropdown when [https://github.com/google/blockly/wiki/Lists#getting-a-single-item accessing an item from a list]. In most languages, this will be the empty string. [[File:Blockly-list-get-item.png]]",
+ "LISTS_INDEX_FROM_START_TOOLTIP": "tooltip - Indicates the ordinal number that the first item in a list is referenced by. %1 will be replaced by either '#0' or '#1' depending on the indexing mode.",
+ "LISTS_INDEX_FROM_END_TOOLTIP": "tooltip - Indicates the ordinal number that the last item in a list is referenced by. %1 will be replaced by either '#0' or '#1' depending on the indexing mode.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_FROM": "tooltip - See [https://github.com/google/blockly/wiki/Lists#getting-a-single-item https://github.com/google/blockly/wiki/Lists#getting-a-single-item] for more information.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_FIRST": "tooltip - See [https://github.com/google/blockly/wiki/Lists#getting-a-single-item https://github.com/google/blockly/wiki/Lists#getting-a-single-item] for more information.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_LAST": "tooltip - See [https://github.com/google/blockly/wiki/Lists#getting-a-single-item https://github.com/google/blockly/wiki/Lists#getting-a-single-item] for more information.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_RANDOM": "tooltip - See [https://github.com/google/blockly/wiki/Lists#getting-a-single-item https://github.com/google/blockly/wiki/Lists#getting-a-single-item] for more information.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM": "tooltip - See [https://github.com/google/blockly/wiki/Lists#getting-and-removing-an-item] (for remove and return) and [https://github.com/google/blockly/wiki/Lists#getting-a-single-item] for '#' or '# from end'.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST": "tooltip - See [https://github.com/google/blockly/wiki/Lists#getting-and-removing-an-item] (for remove and return) and [https://github.com/google/blockly/wiki/Lists#getting-a-single-item] for 'first'.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST": "tooltip - See [https://github.com/google/blockly/wiki/Lists#getting-and-removing-an-item] (for remove and return) and [https://github.com/google/blockly/wiki/Lists#getting-a-single-item] for 'last'.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM": "tooltip - See [https://github.com/google/blockly/wiki/Lists#getting-and-removing-an-item] (for remove and return) and [https://github.com/google/blockly/wiki/Lists#getting-a-single-item] for 'random'.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM": "tooltip - See [https://github.com/google/blockly/wiki/Lists#getting-and-removing-an-item] (for remove and return) and [https://github.com/google/blockly/wiki/Lists#getting-a-single-item] for '#' or '# from end'.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST": "tooltip - See [https://github.com/google/blockly/wiki/Lists#getting-and-removing-an-item] (for remove and return) and [https://github.com/google/blockly/wiki/Lists#getting-a-single-item] for 'first'.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST": "tooltip - See [https://github.com/google/blockly/wiki/Lists#getting-and-removing-an-item] (for remove and return) and [https://github.com/google/blockly/wiki/Lists#getting-a-single-item] for 'last'.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM": "tooltip - See [https://github.com/google/blockly/wiki/Lists#getting-and-removing-an-item] (for remove and return) and [https://github.com/google/blockly/wiki/Lists#getting-a-single-item] for 'random'.",
+ "LISTS_SET_INDEX_HELPURL": "url - Information about putting items in lists.",
+ "LISTS_SET_INDEX_SET": "block text - [https://github.com/google/blockly/wiki/Lists#in-list--set Replaces an item in a list]. [[File:Blockly-in-list-set-insert.png]]",
+ "LISTS_SET_INDEX_INSERT": "block text - [https://github.com/google/blockly/wiki/Lists#in-list--insert-at Inserts an item into a list]. [[File:Blockly-in-list-set-insert.png]]",
+ "LISTS_SET_INDEX_INPUT_TO": "block text - The word(s) after the position in the list and before the item to be set/inserted. [[File:Blockly-in-list-set-insert.png]]",
+ "LISTS_SET_INDEX_TOOLTIP_SET_FROM": "tooltip - See [https://github.com/google/blockly/wiki/Lists#getting-a-single-item} (even though the page describes the 'get' block, the idea is the same for the 'set' block).",
+ "LISTS_SET_INDEX_TOOLTIP_SET_FIRST": "tooltip - See [https://github.com/google/blockly/wiki/Lists#getting-a-single-item} (even though the page describes the 'get' block, the idea is the same for the 'set' block).",
+ "LISTS_SET_INDEX_TOOLTIP_SET_LAST": "tooltip - See [https://github.com/google/blockly/wiki/Lists#getting-a-single-item} (even though the page describes the 'get' block, the idea is the same for the 'set' block).",
+ "LISTS_SET_INDEX_TOOLTIP_SET_RANDOM": "tooltip - See [https://github.com/google/blockly/wiki/Lists#getting-a-single-item} (even though the page describes the 'get' block, the idea is the same for the 'set' block).",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_FROM": "tooltip - See [https://github.com/google/blockly/wiki/Lists#getting-a-single-item} (even though the page describes the 'get' block, the idea is the same for the 'insert' block).",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST": "tooltip - See [https://github.com/google/blockly/wiki/Lists#getting-a-single-item} (even though the page describes the 'get' block, the idea is the same for the 'insert' block).",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_LAST": "tooltip - See [https://github.com/google/blockly/wiki/Lists#getting-a-single-item} (even though the page describes the 'get' block, the idea is the same for the 'insert' block).",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM": "tooltip - See [https://github.com/google/blockly/wiki/Lists#getting-a-single-item} (even though the page describes the 'get' block, the idea is the same for the 'insert' block).",
+ "LISTS_GET_SUBLIST_HELPURL": "url - Information describing extracting a sublist from an existing list.",
+ "LISTS_GET_SUBLIST_START_FROM_START": "dropdown - Indicates that an index relative to the front of the list should be used to specify the beginning of the range from which to [https://github.com/google/blockly/wiki/Lists#getting-a-sublist get a sublist]. [[File:Blockly-get-sublist.png]] Note: If {{msg-Blockly|ORDINAL_NUMBER_SUFFIX}} is defined, it will automatically appear ''after'' this number (and any other ordinal numbers on this block). See [[Translating:Blockly#Ordinal_numbers]] for more information on ordinal numbers in Blockly.",
+ "LISTS_GET_SUBLIST_START_FROM_END": "dropdown - Indicates that an index relative to the end of the list should be used to specify the beginning of the range from which to [https://github.com/google/blockly/wiki/Lists#getting-a-sublist get a sublist].",
+ "LISTS_GET_SUBLIST_START_FIRST": "dropdown - Indicates that the [https://github.com/google/blockly/wiki/Lists#getting-a-sublist sublist to extract] should begin with the list's first item.",
+ "LISTS_GET_SUBLIST_END_FROM_START": "dropdown - Indicates that an index relative to the front of the list should be used to specify the end of the range from which to [https://github.com/google/blockly/wiki/Lists#getting-a-sublist get a sublist]. [[File:Blockly-get-sublist.png]]",
+ "LISTS_GET_SUBLIST_END_FROM_END": "dropdown - Indicates that an index relative to the end of the list should be used to specify the end of the range from which to [https://github.com/google/blockly/wiki/Lists#getting-a-sublist get a sublist]. [[File:Blockly-get-sublist.png]]",
+ "LISTS_GET_SUBLIST_END_LAST": "dropdown - Indicates that the '''last''' item in the given list should be [https://github.com/google/blockly/wiki/Lists#getting-a-sublist the end of the selected sublist]. [[File:Blockly-get-sublist.png]]",
+ "LISTS_GET_SUBLIST_TAIL": "block text - This appears in the rightmost position ('tail') of the sublist block, as described at [https://github.com/google/blockly/wiki/Lists#getting-a-sublist https://github.com/google/blockly/wiki/Lists#getting-a-sublist]. In English and most other languages, this is the empty string. [[File:Blockly-get-sublist.png]]",
+ "LISTS_GET_SUBLIST_TOOLTIP": "tooltip - See [https://github.com/google/blockly/wiki/Lists#getting-a-sublist https://github.com/google/blockly/wiki/Lists#getting-a-sublist] for more information. [[File:Blockly-get-sublist.png]]",
+ "LISTS_SORT_HELPURL": "url - Information describing sorting a list.",
+ "LISTS_SORT_TITLE": "Sort as type %1 (numeric or alphabetic) in order %2 (ascending or descending) a list of items %3.\n{{Identical|Sort}}",
+ "LISTS_SORT_TOOLTIP": "tooltip - See [https://github.com/google/blockly/wiki/Lists#sorting-a-list].",
+ "LISTS_SORT_ORDER_ASCENDING": "sorting order or direction from low to high value for numeric, or A-Z for alphabetic.\n{{Identical|Ascending}}",
+ "LISTS_SORT_ORDER_DESCENDING": "sorting order or direction from high to low value for numeric, or Z-A for alphabetic.\n{{Identical|Descending}}",
+ "LISTS_SORT_TYPE_NUMERIC": "sort by treating each item as a number.",
+ "LISTS_SORT_TYPE_TEXT": "sort by treating each item alphabetically, case-sensitive.",
+ "LISTS_SORT_TYPE_IGNORECASE": "sort by treating each item alphabetically, ignoring differences in case.",
+ "LISTS_SPLIT_HELPURL": "url - Information describing splitting text into a list, or joining a list into text.",
+ "LISTS_SPLIT_LIST_FROM_TEXT": "dropdown - Indicates that text will be split up into a list (e.g. 'a-b-c' -> ['a', 'b', 'c']).",
+ "LISTS_SPLIT_TEXT_FROM_LIST": "dropdown - Indicates that a list will be joined together to form text (e.g. ['a', 'b', 'c'] -> 'a-b-c').",
+ "LISTS_SPLIT_WITH_DELIMITER": "block text - Prompts for a letter to be used as a separator when splitting or joining text.",
+ "LISTS_SPLIT_TOOLTIP_SPLIT": "tooltip - See [https://github.com/google/blockly/wiki/Lists#make-list-from-text https://github.com/google/blockly/wiki/Lists#make-list-from-text] for more information.",
+ "LISTS_SPLIT_TOOLTIP_JOIN": "tooltip - See [https://github.com/google/blockly/wiki/Lists#make-text-from-list https://github.com/google/blockly/wiki/Lists#make-text-from-list] for more information.",
+ "ORDINAL_NUMBER_SUFFIX": "grammar - Text that follows an ordinal number (a number that indicates position relative to other numbers). In most languages, such text appears before the number, so this should be blank. An exception is Hungarian. See [[Translating:Blockly#Ordinal_numbers]] for more information.",
+ "VARIABLES_GET_HELPURL": "url - Information about ''variables'' in computer programming. Consider using your language's translation of [https://en.wikipedia.org/wiki/Variable_(computer_science) https://en.wikipedia.org/wiki/Variable_(computer_science)], if it exists.",
+ "VARIABLES_GET_TOOLTIP": "tooltip - This gets the value of the named variable without modifying it.",
+ "VARIABLES_GET_CREATE_SET": "context menu - Selecting this creates a block to set (change) the value of this variable. \n\nParameters:\n* %1 - the name of the variable.",
+ "VARIABLES_SET_HELPURL": "url - Information about ''variables'' in computer programming. Consider using your language's translation of [https://en.wikipedia.org/wiki/Variable_(computer_science) https://en.wikipedia.org/wiki/Variable_(computer_science)], if it exists.",
+ "VARIABLES_SET": "block text - Change the value of a mathematical variable: '''set [the value of] x to 7'''.\n\nParameters:\n* %1 - the name of the variable.\n* %2 - the value to be assigned.",
+ "VARIABLES_SET_TOOLTIP": "tooltip - This initializes or changes the value of the named variable.",
+ "VARIABLES_SET_CREATE_GET": "context menu - Selecting this creates a block to get (change) the value of this variable.\n\nParameters:\n* %1 - the name of the variable.",
+ "PROCEDURES_DEFNORETURN_HELPURL": "url - Information about defining [https://en.wikipedia.org/wiki/Procedure_(computer_science) functions] that do not have return values.",
+ "PROCEDURES_DEFNORETURN_TITLE": "block text - This precedes the name of the function when defining it. See [https://blockly-demo.appspot.com/static/apps/code/index.html?lang=en#c84aoc this sample function definition].",
+ "PROCEDURES_DEFNORETURN_PROCEDURE": "default name - This acts as a placeholder for the name of a function on a function definition block, as shown on [https://blockly-demo.appspot.com/static/apps/code/index.html?lang=en#w7cfju this block]. The user will replace it with the function's name.",
+ "PROCEDURES_BEFORE_PARAMS": "block text - This precedes the list of parameters on a function's defiition block. See [https://blockly-demo.appspot.com/static/apps/code/index.html?lang=en#voztpd this sample function with parameters].",
+ "PROCEDURES_CALL_BEFORE_PARAMS": "block text - This precedes the list of parameters on a function's caller block. See [https://blockly-demo.appspot.com/static/apps/code/index.html?lang=en#voztpd this sample function with parameters].",
+ "PROCEDURES_DEFNORETURN_DO": "block text - This appears next to the function's 'body', the blocks that should be run when the function is called, as shown in [https://blockly-demo.appspot.com/static/apps/code/index.html?lang=en#voztpd this sample function definition].",
+ "PROCEDURES_DEFNORETURN_TOOLTIP": "tooltip",
+ "PROCEDURES_DEFNORETURN_COMMENT": "Placeholder text that the user is encouraged to replace with a description of what their function does.",
+ "PROCEDURES_DEFRETURN_HELPURL": "url - Information about defining [https://en.wikipedia.org/wiki/Procedure_(computer_science) functions] that have return values.",
+ "PROCEDURES_DEFRETURN_RETURN": "block text - This imperative or infinite verb precedes the value that is used as the return value (output) of this function. See [https://blockly-demo.appspot.com/static/apps/code/index.html?lang=en#6ot5y5 this sample function that returns a value].",
+ "PROCEDURES_DEFRETURN_TOOLTIP": "tooltip",
+ "PROCEDURES_ALLOW_STATEMENTS": "Label for a checkbox that controls if statements are allowed in a function.",
+ "PROCEDURES_DEF_DUPLICATE_WARNING": "alert - The user has created a function with two parameters that have the same name. Every parameter must have a different name.",
+ "PROCEDURES_CALLNORETURN_HELPURL": "url - Information about calling [https://en.wikipedia.org/wiki/Procedure_(computer_science) functions] that do not return values.",
+ "PROCEDURES_CALLNORETURN_TOOLTIP": "tooltip - This block causes the body (blocks inside) of the named function definition to be run.",
+ "PROCEDURES_CALLRETURN_HELPURL": "url - Information about calling [https://en.wikipedia.org/wiki/Procedure_(computer_science) functions] that return values.",
+ "PROCEDURES_CALLRETURN_TOOLTIP": "tooltip - This block causes the body (blocks inside) of the named function definition to be run.\n\nParameters:\n* %1 - the name of the function.",
+ "PROCEDURES_MUTATORCONTAINER_TITLE": "block text - This text appears on a block in a window that appears when the user clicks on the plus sign or star on a function definition block. It refers to the set of parameters (referred to by the simpler term 'inputs') to the function. See [[Translating:Blockly#function_definitions]].",
+ "PROCEDURES_MUTATORCONTAINER_TOOLTIP": "tooltip",
+ "PROCEDURES_MUTATORARG_TITLE": "block text - This text appears on a block in a window that appears when the user clicks on the plus sign or star on a function definition block]. It appears on the block for adding an individual parameter (referred to by the simpler term 'inputs') to the function. See [[Translating:Blockly#function_definitions]].",
+ "PROCEDURES_MUTATORARG_TOOLTIP": "tooltip",
+ "PROCEDURES_HIGHLIGHT_DEF": "context menu - This appears on the context menu for function calls. Selecting it causes the corresponding function definition to be highlighted (as shown at [[Translating:Blockly#context_menus]].",
+ "PROCEDURES_CREATE_DO": "context menu - This appears on the context menu for function definitions. Selecting it creates a block to call the function.\n\nParameters:\n* %1 - the name of the function.\n{{Identical|Create}}",
+ "PROCEDURES_IFRETURN_TOOLTIP": "tooltip - If the first value is true, this causes the second value to be returned immediately from the enclosing function.",
+ "PROCEDURES_IFRETURN_HELPURL": "url - Information about guard clauses.",
+ "PROCEDURES_IFRETURN_WARNING": "warning - This appears if the user tries to use this block outside of a function definition."
+}
diff --git a/blockly/msg/json/ro.json b/blockly/msg/json/ro.json
new file mode 100644
index 0000000..f85ee98
--- /dev/null
+++ b/blockly/msg/json/ro.json
@@ -0,0 +1,318 @@
+{
+ "@metadata": {
+ "authors": [
+ "Minisarm",
+ "Ely en",
+ "Hugbear",
+ "아라"
+ ]
+ },
+ "VARIABLES_DEFAULT_NAME": "element",
+ "TODAY": "Astăzi",
+ "DUPLICATE_BLOCK": "Duplicati",
+ "ADD_COMMENT": "Adaugă un comentariu",
+ "REMOVE_COMMENT": "Elimină comentariu",
+ "EXTERNAL_INPUTS": "Intrări externe",
+ "INLINE_INPUTS": "Intrări în linie",
+ "DELETE_BLOCK": "Șterge Bloc",
+ "DELETE_X_BLOCKS": "Ștergeți %1 Blocuri",
+ "DELETE_ALL_BLOCKS": "Ștergi toate cele %1 (de) blocuri?",
+ "COLLAPSE_BLOCK": "Restrange blocul",
+ "COLLAPSE_ALL": "Restrange blocurile",
+ "EXPAND_BLOCK": "Extinde bloc",
+ "EXPAND_ALL": "Extinde blocuri",
+ "DISABLE_BLOCK": "Dezactivaţi bloc",
+ "ENABLE_BLOCK": "Permite bloc",
+ "HELP": "Ajutor",
+ "CHANGE_VALUE_TITLE": "Schimbaţi valoarea:",
+ "RENAME_VARIABLE": "Redenumirea variabilei...",
+ "RENAME_VARIABLE_TITLE": "Redenumeşte toate variabilele '%1' în:",
+ "NEW_VARIABLE": "Variabilă nouă...",
+ "NEW_VARIABLE_TITLE": "Noul nume de variabilă:",
+ "COLOUR_PICKER_HELPURL": "https://ro.wikipedia.org/wiki/Culoare",
+ "COLOUR_PICKER_TOOLTIP": "Alege o culoare din paleta de culori.",
+ "COLOUR_RANDOM_TITLE": "culoare aleatorie",
+ "COLOUR_RANDOM_TOOLTIP": "Alege o culoare la întâmplare.",
+ "COLOUR_RGB_HELPURL": "http://www.december.com/html/spec/colorper.html",
+ "COLOUR_RGB_TITLE": "colorează cu",
+ "COLOUR_RGB_RED": "roşu",
+ "COLOUR_RGB_GREEN": "verde",
+ "COLOUR_RGB_BLUE": "albastru",
+ "COLOUR_RGB_TOOLTIP": "Creează o culoare cu suma specificată de roşu, verde şi albastru. Toate valorile trebuie să fie între 0 şi 100.",
+ "COLOUR_BLEND_HELPURL": "http://meyerweb.com/eric/tools/color-blend/",
+ "COLOUR_BLEND_TITLE": "amestec",
+ "COLOUR_BLEND_COLOUR1": "culoare 1",
+ "COLOUR_BLEND_COLOUR2": "culoare 2",
+ "COLOUR_BLEND_RATIO": "Raport",
+ "COLOUR_BLEND_TOOLTIP": "Amestecă două culori cu un raport dat (0.0 - 1.0).",
+ "CONTROLS_REPEAT_HELPURL": "https://en.wikipedia.org/wiki/For_loop",
+ "CONTROLS_REPEAT_TITLE": "repetă de %1 ori",
+ "CONTROLS_REPEAT_INPUT_DO": "fă",
+ "CONTROLS_REPEAT_TOOLTIP": "Face unele afirmaţii de mai multe ori.",
+ "CONTROLS_WHILEUNTIL_OPERATOR_WHILE": "repetă în timp ce",
+ "CONTROLS_WHILEUNTIL_OPERATOR_UNTIL": "Repetaţi până când",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_WHILE": "În timp ce o valoare este adevărat, atunci face unele declaraţii.",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL": "În timp ce o valoare este adevărat, atunci face unele declaraţii.",
+ "CONTROLS_FOR_TOOLTIP": "Cu variablia \"%1\" ia o valoare din numărul început la numărul final, numara in intervalul specificat, apoi face blocurile specificate.",
+ "CONTROLS_FOR_TITLE": "numără cu %1 de la %2 la %3 prin %4",
+ "CONTROLS_FOREACH_TITLE": "pentru fiecare element %1 în listă %2",
+ "CONTROLS_FOREACH_TOOLTIP": "Pentru fiecare element din listă, setaţi variabila '%1' ca valoarea elementului, şi apoi faceţi unele declaraţii.",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK": "ieşi din bucla",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE": "continuă cu următoarea iterație a buclei",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK": "Ieși din bucla care conţine.",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE": "Sari peste restul aceastei bucle, şi continuă cu urmatoarea iteratie.",
+ "CONTROLS_FLOW_STATEMENTS_WARNING": "Avertisment: Acest bloc pote fi utilizat numai în interiorul unei bucle.",
+ "CONTROLS_IF_TOOLTIP_1": "Dacă o valoare este adevărată, atunci fa unele declaraţii.",
+ "CONTROLS_IF_TOOLTIP_2": "Dacă o valoare este adevărat, atunci face primul bloc de declaraţii. Altfel, face al doilea bloc de declaraţii.",
+ "CONTROLS_IF_TOOLTIP_3": "Dacă prima valoare este adevărat, atunci face primul bloc de declaraţii. Altfel, dacă a doua valoare este adevărat, face al doilea bloc de declaraţii.",
+ "CONTROLS_IF_TOOLTIP_4": "Dacă prima valoare este adevărat, atunci face primul bloc de declaraţii. Altfel, dacă a doua valoare este adevărat, face al doilea bloc de declaraţii. În cazul în care niciuna din valorilor nu este adevărat, face ultimul bloc de declaraţii.",
+ "CONTROLS_IF_MSG_IF": "dacă",
+ "CONTROLS_IF_MSG_ELSEIF": "altfel dacă",
+ "CONTROLS_IF_MSG_ELSE": "altfel",
+ "CONTROLS_IF_IF_TOOLTIP": "Adaugă, elimină sau reordonează secţiuni pentru a reconfigura acest bloc if.",
+ "CONTROLS_IF_ELSEIF_TOOLTIP": "Adăugaţi o condiţie in blocul if.",
+ "CONTROLS_IF_ELSE_TOOLTIP": "Adauga o stare finala, cuprinde toata conditia din blocul if.",
+ "LOGIC_COMPARE_HELPURL": "https://en.wikipedia.org/wiki/Inequality_(mathematics)",
+ "LOGIC_COMPARE_TOOLTIP_EQ": "Returnează adevărat dacă ambele intrări sunt egale.",
+ "LOGIC_COMPARE_TOOLTIP_NEQ": "Returnează adevărat daca cele două intrări nu sunt egale.",
+ "LOGIC_COMPARE_TOOLTIP_LT": "Returnează adevărat dacă prima intrare este mai mică decât a doua intrare.",
+ "LOGIC_COMPARE_TOOLTIP_LTE": "Returnează adevărat dacă prima intrare este mai mică sau egală cu a doua intrare.",
+ "LOGIC_COMPARE_TOOLTIP_GT": "Returnează adevărat dacă prima intrare este mai mare decât a doua intrare.",
+ "LOGIC_COMPARE_TOOLTIP_GTE": "Returnează adevărat dacă prima intrare este mai mare sau egală cu a doua intrare.",
+ "LOGIC_OPERATION_TOOLTIP_AND": "Returnează adevărat daca ambele intrări sunt adevărate.",
+ "LOGIC_OPERATION_AND": "şi",
+ "LOGIC_OPERATION_TOOLTIP_OR": "Returnează adevărat dacă cel puţin una din intrări este adevărată.",
+ "LOGIC_OPERATION_OR": "sau",
+ "LOGIC_NEGATE_TITLE": "non %1",
+ "LOGIC_NEGATE_TOOLTIP": "Returnează adevărat dacă intrarea este falsă. Returnează fals dacă intrarea este adevărată.",
+ "LOGIC_BOOLEAN_TRUE": "adevărat",
+ "LOGIC_BOOLEAN_FALSE": "fals",
+ "LOGIC_BOOLEAN_TOOLTIP": "Returnează adevărat sau fals.",
+ "LOGIC_NULL_HELPURL": "https://en.wikipedia.org/wiki/Nullable_type",
+ "LOGIC_NULL": "nul",
+ "LOGIC_NULL_TOOLTIP": "returnează nul.",
+ "LOGIC_TERNARY_HELPURL": "https://en.wikipedia.org/wiki/%3F:",
+ "LOGIC_TERNARY_CONDITION": "test",
+ "LOGIC_TERNARY_IF_TRUE": "dacă este adevărat",
+ "LOGIC_TERNARY_IF_FALSE": "dacă este fals",
+ "LOGIC_TERNARY_TOOLTIP": "Verifică condiţia din \"test\". Dacă condiţia este adevărată, returnează valoarea \"în cazul în care adevărat\"; în caz contrar întoarce valoarea \"în cazul în care e fals\".",
+ "MATH_NUMBER_HELPURL": "https://en.wikipedia.org/wiki/Number",
+ "MATH_NUMBER_TOOLTIP": "Un număr.",
+ "MATH_ADDITION_SYMBOL": "+",
+ "MATH_SUBTRACTION_SYMBOL": "-",
+ "MATH_DIVISION_SYMBOL": "÷",
+ "MATH_MULTIPLICATION_SYMBOL": "×",
+ "MATH_POWER_SYMBOL": "^",
+ "MATH_TRIG_SIN": "sin",
+ "MATH_TRIG_COS": "cos",
+ "MATH_TRIG_TAN": "tg",
+ "MATH_TRIG_ASIN": "arcsin",
+ "MATH_TRIG_ACOS": "arccos",
+ "MATH_TRIG_ATAN": "arctg",
+ "MATH_ARITHMETIC_HELPURL": "https://ro.wikipedia.org/wiki/Aritmetic%C4%83",
+ "MATH_ARITHMETIC_TOOLTIP_ADD": "Returnează suma a două numere.",
+ "MATH_ARITHMETIC_TOOLTIP_MINUS": "Returneaza diferenţa dintre cele două numere.",
+ "MATH_ARITHMETIC_TOOLTIP_MULTIPLY": "Returnează produsul celor două numere.",
+ "MATH_ARITHMETIC_TOOLTIP_DIVIDE": "Returnează câtul celor două numere.",
+ "MATH_ARITHMETIC_TOOLTIP_POWER": "Returneaza numărul rezultat prin ridicarea primului număr la puterea celui de-al doilea.",
+ "MATH_SINGLE_HELPURL": "https://en.wikipedia.org/wiki/Square_root",
+ "MATH_SINGLE_OP_ROOT": "rădăcina pătrată",
+ "MATH_SINGLE_TOOLTIP_ROOT": "Returnează rădăcina pătrată a unui număr.",
+ "MATH_SINGLE_OP_ABSOLUTE": "absolută",
+ "MATH_SINGLE_TOOLTIP_ABS": "Returnează valoarea absolută a unui număr.",
+ "MATH_SINGLE_TOOLTIP_NEG": "Returnează negaţia unui număr.",
+ "MATH_SINGLE_TOOLTIP_LN": "Întoarce logaritmul natural al unui număr.",
+ "MATH_SINGLE_TOOLTIP_LOG10": "Returnează logaritmul în baza 10 a unui număr.",
+ "MATH_SINGLE_TOOLTIP_EXP": "Returnează e la puterea unui număr.",
+ "MATH_SINGLE_TOOLTIP_POW10": "Returnează 10 la puterea unui număr.",
+ "MATH_TRIG_HELPURL": "https://en.wikipedia.org/wiki/Trigonometric_functions",
+ "MATH_TRIG_TOOLTIP_SIN": "Întoarce cosinusul unui grad (nu radianul).",
+ "MATH_TRIG_TOOLTIP_COS": "Întoarce cosinusul unui grad (nu radianul).",
+ "MATH_TRIG_TOOLTIP_TAN": "Întoarce tangenta unui grad (nu radianul).",
+ "MATH_TRIG_TOOLTIP_ASIN": "Returnează arcsinusul unui număr.",
+ "MATH_TRIG_TOOLTIP_ACOS": "Returnează arccosinusul unui număr.",
+ "MATH_TRIG_TOOLTIP_ATAN": "Returnează arctangenta unui număr.",
+ "MATH_CONSTANT_HELPURL": "https://ro.wikipedia.org/wiki/Constant%C4%83_matematic%C4%83",
+ "MATH_CONSTANT_TOOLTIP": "Întoarcă una din constantele comune: π (3.141...), e (2.718...), φ (1,618...), sqrt(2) (1.414...), sqrt(½) (0.707...) sau ∞ (infinitate).",
+ "MATH_IS_EVEN": "este par",
+ "MATH_IS_ODD": "este impar",
+ "MATH_IS_PRIME": "este prim",
+ "MATH_IS_WHOLE": "este întreg",
+ "MATH_IS_POSITIVE": "este pozitiv",
+ "MATH_IS_NEGATIVE": "este negativ",
+ "MATH_IS_DIVISIBLE_BY": "este divizibil cu",
+ "MATH_IS_TOOLTIP": "Verifică dacă un număr este un par, impar, prim, întreg, pozitiv, negativ, sau dacă este divizibil cu un anumit număr. Returnează true sau false.",
+ "MATH_CHANGE_HELPURL": "https://en.wikipedia.org/wiki/Programming_idiom#Incrementing_a_counter",
+ "MATH_CHANGE_TITLE": "schimbă %1 de %2",
+ "MATH_CHANGE_TOOLTIP": "Adaugă un număr variabilei '%1'.",
+ "MATH_ROUND_HELPURL": "https://en.wikipedia.org/wiki/Rounding",
+ "MATH_ROUND_TOOLTIP": "Rotunjirea unui număr în sus sau în jos.",
+ "MATH_ROUND_OPERATOR_ROUND": "rotund",
+ "MATH_ROUND_OPERATOR_ROUNDUP": "rotunjește în sus",
+ "MATH_ROUND_OPERATOR_ROUNDDOWN": "rotunjit",
+ "MATH_ONLIST_OPERATOR_SUM": "suma listei",
+ "MATH_ONLIST_TOOLTIP_SUM": "Returnează suma tuturor numerelor din lista.",
+ "MATH_ONLIST_OPERATOR_MIN": "minimul listei",
+ "MATH_ONLIST_TOOLTIP_MIN": "Returnează cel mai mic număr din listă.",
+ "MATH_ONLIST_OPERATOR_MAX": "maximul listei",
+ "MATH_ONLIST_TOOLTIP_MAX": "Întoarce cel mai mare număr din listă.",
+ "MATH_ONLIST_OPERATOR_AVERAGE": "media listei",
+ "MATH_ONLIST_TOOLTIP_AVERAGE": "Întoarce media (aritmetică) a valorilor numerice în listă.",
+ "MATH_ONLIST_OPERATOR_MEDIAN": "media listei",
+ "MATH_ONLIST_TOOLTIP_MEDIAN": "Întoarce numărul median în listă.",
+ "MATH_ONLIST_OPERATOR_MODE": "moduri de listă",
+ "MATH_ONLIST_TOOLTIP_MODE": "Returnează o listă cu cel(e) mai frecvent(e) element(e) din listă.",
+ "MATH_ONLIST_OPERATOR_STD_DEV": "deviația standard a listei",
+ "MATH_ONLIST_TOOLTIP_STD_DEV": "Întoarce deviația standard a listei.",
+ "MATH_ONLIST_OPERATOR_RANDOM": "element aleatoriu din lista",
+ "MATH_ONLIST_TOOLTIP_RANDOM": "Returnează un element aleatoriu din listă.",
+ "MATH_MODULO_HELPURL": "https://en.wikipedia.org/wiki/Modulo_operation",
+ "MATH_MODULO_TITLE": "restul la %1 ÷ %2",
+ "MATH_MODULO_TOOLTIP": "Întoarce restul din împărţirea celor două numere.",
+ "MATH_CONSTRAIN_TITLE": "constrânge %1 redus %2 ridicat %3",
+ "MATH_CONSTRAIN_TOOLTIP": "Constrânge un număr să fie între limitele specificate (inclusiv).",
+ "MATH_RANDOM_INT_HELPURL": "https://en.wikipedia.org/wiki/Random_number_generation",
+ "MATH_RANDOM_INT_TITLE": "un număr întreg aleator de la %1 la %2",
+ "MATH_RANDOM_INT_TOOLTIP": "Returnează un număr întreg aleator aflat între cele două limite specificate, inclusiv.",
+ "MATH_RANDOM_FLOAT_HELPURL": "https://en.wikipedia.org/wiki/Random_number_generation",
+ "MATH_RANDOM_FLOAT_TITLE_RANDOM": "fracții aleatorii",
+ "MATH_RANDOM_FLOAT_TOOLTIP": "Returnează o fracţie aleatoare între 0.0 (inclusiv) si 1.0 (exclusiv).",
+ "TEXT_TEXT_HELPURL": "https://en.wikipedia.org/wiki/String_(computer_science)",
+ "TEXT_TEXT_TOOLTIP": "O literă, cuvânt sau linie de text.",
+ "TEXT_JOIN_TITLE_CREATEWITH": "crează text cu",
+ "TEXT_JOIN_TOOLTIP": "Creaţi o bucată de text prin unirea oricărui număr de elemente.",
+ "TEXT_CREATE_JOIN_TITLE_JOIN": "alăturaţi-vă",
+ "TEXT_CREATE_JOIN_TOOLTIP": "Adaugă, elimină sau reordonează secțiuni ca să reconfigureze blocul text.",
+ "TEXT_CREATE_JOIN_ITEM_TOOLTIP": "Adaugă un element în text.",
+ "TEXT_APPEND_TO": "la",
+ "TEXT_APPEND_APPENDTEXT": "Adăugaţi text",
+ "TEXT_APPEND_TOOLTIP": "Adăugaţi text la variabila '%1'.",
+ "TEXT_LENGTH_TITLE": "lungime de %1",
+ "TEXT_LENGTH_TOOLTIP": "Returnează numărul de litere (inclusiv spaţiile) în textul furnizat.",
+ "TEXT_ISEMPTY_TITLE": "%1 este gol",
+ "TEXT_ISEMPTY_TOOLTIP": "Returnează adevărat dacă textul furnizat este gol.",
+ "TEXT_INDEXOF_TOOLTIP": "Returnează indicele primei/ultimei apariţii din primul text în al doilea text. Returnează %1 dacă textul nu este găsit.",
+ "TEXT_INDEXOF_INPUT_INTEXT": "în text",
+ "TEXT_INDEXOF_OPERATOR_FIRST": "găseşte prima apariţie a textului",
+ "TEXT_INDEXOF_OPERATOR_LAST": "găseşte ultima apariţie a textului",
+ "TEXT_CHARAT_INPUT_INTEXT": "în text",
+ "TEXT_CHARAT_FROM_START": "obtine litera #",
+ "TEXT_CHARAT_FROM_END": "obţine litera # de la sfârșit",
+ "TEXT_CHARAT_FIRST": "obţine prima litera",
+ "TEXT_CHARAT_LAST": "obţine o litera oarecare",
+ "TEXT_CHARAT_RANDOM": "obtine o litera oarecare",
+ "TEXT_CHARAT_TOOLTIP": "Returnează litera la poziția specificată.",
+ "TEXT_GET_SUBSTRING_TOOLTIP": "Returnează o anumită parte din text.",
+ "TEXT_GET_SUBSTRING_INPUT_IN_TEXT": "în text",
+ "TEXT_GET_SUBSTRING_START_FROM_START": "obține subșir de la litera #",
+ "TEXT_GET_SUBSTRING_START_FROM_END": "obține un subșir de la litera # de la sfârșit",
+ "TEXT_GET_SUBSTRING_START_FIRST": "obţine un subșir de la prima literă",
+ "TEXT_GET_SUBSTRING_END_FROM_START": "la litera #",
+ "TEXT_GET_SUBSTRING_END_FROM_END": "la litera # de la sfarsit",
+ "TEXT_GET_SUBSTRING_END_LAST": "la ultima literă",
+ "TEXT_CHANGECASE_TOOLTIP": "Întoarce o copie a textului într-un caz diferit.",
+ "TEXT_CHANGECASE_OPERATOR_UPPERCASE": "la MAJUSCULE",
+ "TEXT_CHANGECASE_OPERATOR_LOWERCASE": "la litere mici",
+ "TEXT_CHANGECASE_OPERATOR_TITLECASE": "către Titlul de caz",
+ "TEXT_TRIM_TOOLTIP": "Returnează o copie a textului fără spațiile de la unul sau ambele capete.",
+ "TEXT_TRIM_OPERATOR_BOTH": "taie spațiile de pe ambele părți ale",
+ "TEXT_TRIM_OPERATOR_LEFT": "tăiaţi spațiile din partea stângă a",
+ "TEXT_TRIM_OPERATOR_RIGHT": "taie spațiile din partea dreaptă a",
+ "TEXT_PRINT_TITLE": "imprimare %1",
+ "TEXT_PRINT_TOOLTIP": "Afișează textul specificat, numărul sau altă valoare.",
+ "TEXT_PROMPT_TYPE_TEXT": "solicită pentru text cu mesaj",
+ "TEXT_PROMPT_TYPE_NUMBER": "solicită pentru număr cu mesaj",
+ "TEXT_PROMPT_TOOLTIP_NUMBER": "Solicită utilizatorul pentru un număr.",
+ "TEXT_PROMPT_TOOLTIP_TEXT": "Solicită utilizatorul pentru text.",
+ "LISTS_CREATE_EMPTY_HELPURL": "https://github.com/google/blockly/wiki/Lists#create-empty-list",
+ "LISTS_CREATE_EMPTY_TITLE": "creează listă goală",
+ "LISTS_CREATE_EMPTY_TOOLTIP": "Returnează o listă, de lungime 0, care nu conţine înregistrări de date",
+ "LISTS_CREATE_WITH_TOOLTIP": "Creaţi o listă cu orice număr de elemente.",
+ "LISTS_CREATE_WITH_INPUT_WITH": "creează listă cu",
+ "LISTS_CREATE_WITH_CONTAINER_TITLE_ADD": "listă",
+ "LISTS_CREATE_WITH_CONTAINER_TOOLTIP": "Adaugă, elimină sau reordonează secţiuni ca să reconfiguraţi aceste blocuri de listă.",
+ "LISTS_CREATE_WITH_ITEM_TOOLTIP": "Adăugaţi un element la listă.",
+ "LISTS_REPEAT_TOOLTIP": "Creează o listă alcătuită dintr-o anumită valoare repetată de numărul specificat de ori.",
+ "LISTS_REPEAT_TITLE": "creaza lista cu %1 elemente repetate de %2 ori",
+ "LISTS_LENGTH_TITLE": "lungime de %1",
+ "LISTS_LENGTH_TOOLTIP": "Returnează lungimea unei liste.",
+ "LISTS_ISEMPTY_TITLE": "%1 este gol",
+ "LISTS_ISEMPTY_TOOLTIP": "Returnează adevărat dacă lista este goală.",
+ "LISTS_INLIST": "în listă",
+ "LISTS_INDEX_OF_FIRST": "Găseşte prima apariţie a elementului",
+ "LISTS_INDEX_OF_LAST": "găseşte ultima apariţie a elementului",
+ "LISTS_INDEX_OF_TOOLTIP": "Revine la indexul de la prima/ultima apariție a elementului din listă. Returnează %1 dacă elementul nu este găsit.",
+ "LISTS_GET_INDEX_GET": "obţine",
+ "LISTS_GET_INDEX_GET_REMOVE": "obţine şi elimină",
+ "LISTS_GET_INDEX_REMOVE": "elimină",
+ "LISTS_GET_INDEX_FROM_START": "#",
+ "LISTS_GET_INDEX_FROM_END": "# de la sfârșit",
+ "LISTS_GET_INDEX_FIRST": "primul",
+ "LISTS_GET_INDEX_LAST": "ultimul",
+ "LISTS_GET_INDEX_RANDOM": "aleator",
+ "LISTS_INDEX_FROM_START_TOOLTIP": "%1 este primul element.",
+ "LISTS_INDEX_FROM_END_TOOLTIP": "%1 este ultimul element.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_FROM": "Returneaza elementul la poziţia specificată într-o listă.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_FIRST": "Returnează primul element dintr-o listă.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_LAST": "Returnează ultimul element într-o listă.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_RANDOM": "Returneaza un element aleatoriu într-o listă.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM": "Elimină şi returneaza elementul la poziţia specificată într-o listă.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST": "Elimină şi returnează primul element într-o listă.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST": "Elimină şi returnează ultimul element într-o listă.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM": "Elimină şi returnează un element aleatoriu într-o listă.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM": "Elimină elementul la poziţia specificată într-o listă.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST": "Elimină primul element într-o listă.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST": "Elimină ultimul element într-o listă.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM": "Elimină un element aleatoriu într-o listă.",
+ "LISTS_SET_INDEX_SET": "seteaza",
+ "LISTS_SET_INDEX_INSERT": "introduceţi la",
+ "LISTS_SET_INDEX_INPUT_TO": "ca",
+ "LISTS_SET_INDEX_TOOLTIP_SET_FROM": "Setează elementul la poziţia specificată într-o listă.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_FIRST": "Setează primul element într-o listă.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_LAST": "Setează ultimul element într-o listă.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_RANDOM": "Setează un element aleator într-o listă.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_FROM": "Inserează elementul la poziţia specificată într-o listă.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST": "Inserează elementul la începutul unei liste.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_LAST": "Adăugă elementul la sfârşitul unei liste.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM": "Inserează elementul aleatoriu într-o listă.",
+ "LISTS_GET_SUBLIST_START_FROM_START": "obţine sub-lista de la #",
+ "LISTS_GET_SUBLIST_START_FROM_END": "obţine sub-lista de la # de la sfârşitul",
+ "LISTS_GET_SUBLIST_START_FIRST": "obţine sub-lista de la primul",
+ "LISTS_GET_SUBLIST_END_FROM_START": "la #",
+ "LISTS_GET_SUBLIST_END_FROM_END": "la # de la sfarsit",
+ "LISTS_GET_SUBLIST_END_LAST": "la ultima",
+ "LISTS_GET_SUBLIST_TOOLTIP": "Creează o copie a porţiunii specificate dintr-o listă.",
+ "LISTS_SPLIT_LIST_FROM_TEXT": "convertește textul în listă",
+ "LISTS_SPLIT_TEXT_FROM_LIST": "convertește lista în text",
+ "LISTS_SPLIT_WITH_DELIMITER": "cu separatorul",
+ "LISTS_SPLIT_TOOLTIP_SPLIT": "Împarte textul într-o listă de texte, despărțite prin fiecare separator",
+ "LISTS_SPLIT_TOOLTIP_JOIN": "Concatenează o listă de texte (alternate cu separatorul) într-un text unic",
+ "VARIABLES_GET_TOOLTIP": "Returnează valoarea acestei variabile.",
+ "VARIABLES_GET_CREATE_SET": "Crează 'set %1'",
+ "VARIABLES_SET": "seteaza %1 la %2",
+ "VARIABLES_SET_TOOLTIP": "Setează această variabilă sa fie egală la intrare.",
+ "VARIABLES_SET_CREATE_GET": "Crează 'get %1'",
+ "PROCEDURES_DEFNORETURN_HELPURL": "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29",
+ "PROCEDURES_DEFNORETURN_TITLE": "la",
+ "PROCEDURES_DEFNORETURN_PROCEDURE": "fă ceva",
+ "PROCEDURES_BEFORE_PARAMS": "cu:",
+ "PROCEDURES_CALL_BEFORE_PARAMS": "cu:",
+ "PROCEDURES_DEFNORETURN_TOOLTIP": "Crează o funcţie cu nici o ieşire.",
+ "PROCEDURES_DEFRETURN_HELPURL": "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29",
+ "PROCEDURES_DEFRETURN_RETURN": "returnează",
+ "PROCEDURES_DEFRETURN_TOOLTIP": "Creează o funcţie cu o ieşire.",
+ "PROCEDURES_ALLOW_STATEMENTS": "permite declarațiile",
+ "PROCEDURES_DEF_DUPLICATE_WARNING": "Atenţie: Această funcţie are parametri duplicaţi.",
+ "PROCEDURES_CALLNORETURN_HELPURL": "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29",
+ "PROCEDURES_CALLNORETURN_TOOLTIP": "Executați funcția '%1 'definită de utilizator.",
+ "PROCEDURES_CALLRETURN_HELPURL": "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29",
+ "PROCEDURES_CALLRETURN_TOOLTIP": "Executați funcția '%1 'definită de utilizator şi folosiţi producţia sa.",
+ "PROCEDURES_MUTATORCONTAINER_TITLE": "intrări",
+ "PROCEDURES_MUTATORCONTAINER_TOOLTIP": "Adăugă, șterge sau reordonează parametrii de intrare ai acestei funcții.",
+ "PROCEDURES_MUTATORARG_TITLE": "nume de intrare:",
+ "PROCEDURES_MUTATORARG_TOOLTIP": "Adaugă un parametru de intrare pentru funcție.",
+ "PROCEDURES_HIGHLIGHT_DEF": "Evidenţiază definiţia funcţiei",
+ "PROCEDURES_CREATE_DO": "Creaţi '%1'",
+ "PROCEDURES_IFRETURN_TOOLTIP": "Dacă o valoare este adevărată, atunci returnează valoarea a doua.",
+ "PROCEDURES_IFRETURN_WARNING": "Avertisment: Acest bloc poate fi utilizat numai în definiţia unei funcţii."
+}
diff --git a/blockly/msg/json/ru.json b/blockly/msg/json/ru.json
new file mode 100644
index 0000000..1dd176e
--- /dev/null
+++ b/blockly/msg/json/ru.json
@@ -0,0 +1,320 @@
+{
+ "@metadata": {
+ "authors": [
+ "Espertus",
+ "MS",
+ "Okras",
+ "RedFox",
+ "Mailman"
+ ]
+ },
+ "VARIABLES_DEFAULT_NAME": "элемент",
+ "TODAY": "Сегодня",
+ "DUPLICATE_BLOCK": "Скопировать",
+ "ADD_COMMENT": "Добавить комментарий",
+ "REMOVE_COMMENT": "Удалить комментарий",
+ "EXTERNAL_INPUTS": "Вставки снаружи",
+ "INLINE_INPUTS": "Вставки внутри",
+ "DELETE_BLOCK": "Удалить блок",
+ "DELETE_X_BLOCKS": "Удалить %1 блоков",
+ "DELETE_ALL_BLOCKS": "Удалить все блоки (%1)?",
+ "CLEAN_UP": "Убрать блоки",
+ "COLLAPSE_BLOCK": "Свернуть блок",
+ "COLLAPSE_ALL": "Свернуть блоки",
+ "EXPAND_BLOCK": "Развернуть блок",
+ "EXPAND_ALL": "Развернуть блоки",
+ "DISABLE_BLOCK": "Отключить блок",
+ "ENABLE_BLOCK": "Включить блок",
+ "HELP": "Справка",
+ "UNDO": "Отменить",
+ "REDO": "Повторить",
+ "CHANGE_VALUE_TITLE": "Измените значение:",
+ "RENAME_VARIABLE": "Переименовать переменную…",
+ "RENAME_VARIABLE_TITLE": "Переименовать все переменные '%1' в:",
+ "NEW_VARIABLE": "Создать переменную…",
+ "NEW_VARIABLE_TITLE": "Имя новой переменной:",
+ "VARIABLE_ALREADY_EXISTS": "Переменная с именем '%1' уже существует.",
+ "DELETE_VARIABLE_CONFIRMATION": "Удалить %1 использований переменной '%2'?",
+ "DELETE_VARIABLE": "Удалить переменную '%1'",
+ "COLOUR_PICKER_HELPURL": "https://ru.wikipedia.org/wiki/Цвет",
+ "COLOUR_PICKER_TOOLTIP": "Выберите цвет из палитры.",
+ "COLOUR_RANDOM_TITLE": "случайный цвет",
+ "COLOUR_RANDOM_TOOLTIP": "Выбирает цвет случайным образом.",
+ "COLOUR_RGB_TITLE": "цвет из",
+ "COLOUR_RGB_RED": "красного",
+ "COLOUR_RGB_GREEN": "зелёного",
+ "COLOUR_RGB_BLUE": "синего",
+ "COLOUR_RGB_TOOLTIP": "Создаёт цвет с указанной пропорцией красного, зеленого и синего. Все значения должны быть между 0 и 100.",
+ "COLOUR_BLEND_TITLE": "смешать",
+ "COLOUR_BLEND_COLOUR1": "цвет 1",
+ "COLOUR_BLEND_COLOUR2": "цвет 2",
+ "COLOUR_BLEND_RATIO": "доля цвета 1",
+ "COLOUR_BLEND_TOOLTIP": "Смешивает два цвета в заданном соотношении (0.0 - 1.0).",
+ "CONTROLS_REPEAT_HELPURL": "https://ru.wikipedia.org/wiki/Цикл_(программирование)",
+ "CONTROLS_REPEAT_TITLE": "повторить %1 раз",
+ "CONTROLS_REPEAT_INPUT_DO": "выполнить",
+ "CONTROLS_REPEAT_TOOLTIP": "Выполняет некоторые команды несколько раз.",
+ "CONTROLS_WHILEUNTIL_OPERATOR_WHILE": "повторять, пока",
+ "CONTROLS_WHILEUNTIL_OPERATOR_UNTIL": "повторять, пока не",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_WHILE": "Пока значение истинно, выполняет команды.",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL": "Пока значение ложно, выполняет команды",
+ "CONTROLS_FOR_TOOLTIP": "Присваивает переменной '%1' значения от начального до конечного с заданным шагом и выполняет указанные команды.",
+ "CONTROLS_FOR_TITLE": "цикл по %1 от %2 до %3 с шагом %4",
+ "CONTROLS_FOREACH_TITLE": "для каждого элемента %1 в списке %2",
+ "CONTROLS_FOREACH_TOOLTIP": "Для каждого элемента в списке, присваивает переменной '%1' значение элемента и выполняет указанные команды.",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK": "выйти из цикла",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE": "перейти к следующему шагу цикла",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK": "Прерывает этот цикл.",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE": "Пропускает остаток цикла и переходит к следующему шагу.",
+ "CONTROLS_FLOW_STATEMENTS_WARNING": "Предупреждение: этот блок может использоваться только внутри цикла.",
+ "CONTROLS_IF_TOOLTIP_1": "Если условие истинно, выполняет команды.",
+ "CONTROLS_IF_TOOLTIP_2": "Если условие истинно, выполняет первый блок команд. Иначе выполняется второй блок команд.",
+ "CONTROLS_IF_TOOLTIP_3": "Если первое условие истинно, то выполняет первый блок команд. Иначе, если второе условие истинно, выполняет второй блок команд.",
+ "CONTROLS_IF_TOOLTIP_4": "Если первое условие истинно, то выполняет первый блок команд. В противном случае, если второе условие истинно, выполняет второй блок команд. Если ни одно из условий не истинно, выполняет последний блок команд.",
+ "CONTROLS_IF_MSG_IF": "если",
+ "CONTROLS_IF_MSG_ELSEIF": "иначе если",
+ "CONTROLS_IF_MSG_ELSE": "иначе",
+ "CONTROLS_IF_IF_TOOLTIP": "Добавьте, удалите, переставьте фрагменты для переделки блока \"если\".",
+ "CONTROLS_IF_ELSEIF_TOOLTIP": "Добавляет условие к блоку \"если\"",
+ "CONTROLS_IF_ELSE_TOOLTIP": "Добавить заключительный подблок для случая, когда все условия ложны.",
+ "LOGIC_COMPARE_HELPURL": "https://ru.wikipedia.org/wiki/Неравенство",
+ "LOGIC_COMPARE_TOOLTIP_EQ": "Возвращает положительное значение, если вводы равны.",
+ "LOGIC_COMPARE_TOOLTIP_NEQ": "Возвращает положительное значение, если вводы не равны.",
+ "LOGIC_COMPARE_TOOLTIP_LT": "Возвращает положительное значение, если первый ввод меньше второго.",
+ "LOGIC_COMPARE_TOOLTIP_LTE": "Возвращает значение истина, если первая вставка меньше или равна второй.",
+ "LOGIC_COMPARE_TOOLTIP_GT": "Возвращает значение истина, если первая вставка больше второй.",
+ "LOGIC_COMPARE_TOOLTIP_GTE": "Возвращает значение истина, если первая вставка больше или равна второй.",
+ "LOGIC_OPERATION_TOOLTIP_AND": "Возвращает значение истина, если обе вставки истинны.",
+ "LOGIC_OPERATION_AND": "и",
+ "LOGIC_OPERATION_TOOLTIP_OR": "Возвращает значение истина, если хотя бы одна из вставок истинна.",
+ "LOGIC_OPERATION_OR": "или",
+ "LOGIC_NEGATE_TITLE": "не %1",
+ "LOGIC_NEGATE_TOOLTIP": "Возвращает значение истина, если вставка ложна. Возвращает значение ложь, если вставка истинна.",
+ "LOGIC_BOOLEAN_TRUE": "истина",
+ "LOGIC_BOOLEAN_FALSE": "ложь",
+ "LOGIC_BOOLEAN_TOOLTIP": "Возвращает значение истина или ложь.",
+ "LOGIC_NULL_HELPURL": "https://en.wikipedia.org/wiki/Nullable_type",
+ "LOGIC_NULL": "ничто",
+ "LOGIC_NULL_TOOLTIP": "Возвращает ничто.",
+ "LOGIC_TERNARY_HELPURL": "https://ru.wikipedia.org/wiki/Тернарная_условная_операция",
+ "LOGIC_TERNARY_CONDITION": "выбрать по",
+ "LOGIC_TERNARY_IF_TRUE": "если истина",
+ "LOGIC_TERNARY_IF_FALSE": "если ложь",
+ "LOGIC_TERNARY_TOOLTIP": "Проверяет условие выбора. Если условие истинно, возвращает первое значение, в противном случае возвращает второе значение.",
+ "MATH_NUMBER_HELPURL": "https://ru.wikipedia.org/wiki/Число",
+ "MATH_NUMBER_TOOLTIP": "Число.",
+ "MATH_ARITHMETIC_HELPURL": "https://ru.wikipedia.org/wiki/Арифметика",
+ "MATH_ARITHMETIC_TOOLTIP_ADD": "Возвращает сумму двух чисел.",
+ "MATH_ARITHMETIC_TOOLTIP_MINUS": "Возвращает разность двух чисел.",
+ "MATH_ARITHMETIC_TOOLTIP_MULTIPLY": "Возвращает произведение двух чисел.",
+ "MATH_ARITHMETIC_TOOLTIP_DIVIDE": "Возвращает частное от деления первого числа на второе.",
+ "MATH_ARITHMETIC_TOOLTIP_POWER": "Возвращает первое число, возведённое в степень второго числа.",
+ "MATH_SINGLE_HELPURL": "https://ru.wikipedia.org/wiki/Квадратный_корень",
+ "MATH_SINGLE_OP_ROOT": "квадратный корень",
+ "MATH_SINGLE_TOOLTIP_ROOT": "Возвращает квадратный корень числа.",
+ "MATH_SINGLE_OP_ABSOLUTE": "модуль",
+ "MATH_SINGLE_TOOLTIP_ABS": "Возвращает модуль числа",
+ "MATH_SINGLE_TOOLTIP_NEG": "Возвращает противоположное число.",
+ "MATH_SINGLE_TOOLTIP_LN": "Возвращает натуральный логарифм числа.",
+ "MATH_SINGLE_TOOLTIP_LOG10": "Возвращает десятичный логарифм числа.",
+ "MATH_SINGLE_TOOLTIP_EXP": "Возвращает е в указанной степени.",
+ "MATH_SINGLE_TOOLTIP_POW10": "Возвращает 10 в указанной степени.",
+ "MATH_TRIG_HELPURL": "https://ru.wikipedia.org/wiki/Тригонометрические_функции",
+ "MATH_TRIG_TOOLTIP_SIN": "Возвращает синус угла в градусах.",
+ "MATH_TRIG_TOOLTIP_COS": "Возвращает косинус угла в градусах.",
+ "MATH_TRIG_TOOLTIP_TAN": "Возвращает тангенс угла в градусах.",
+ "MATH_TRIG_TOOLTIP_ASIN": "Возвращает арксинус (в градусах).",
+ "MATH_TRIG_TOOLTIP_ACOS": "Возвращает арккосинус (в градусах).",
+ "MATH_TRIG_TOOLTIP_ATAN": "Возвращает арктангенс (в градусах)",
+ "MATH_CONSTANT_HELPURL": "https://ru.wikipedia.org/wiki/Математическая_константа",
+ "MATH_CONSTANT_TOOLTIP": "Возвращает одну из распространённых констант: π (3.141...), e (2.718...), φ (1.618...), sqrt(2) (1.414...), sqrt(½) (0.707...) или ∞ (бесконечность).",
+ "MATH_IS_EVEN": "чётное",
+ "MATH_IS_ODD": "нечётное",
+ "MATH_IS_PRIME": "простое",
+ "MATH_IS_WHOLE": "целое",
+ "MATH_IS_POSITIVE": "положительное",
+ "MATH_IS_NEGATIVE": "отрицательное",
+ "MATH_IS_DIVISIBLE_BY": "делится на",
+ "MATH_IS_TOOLTIP": "Проверяет, является ли число чётным, нечётным, простым, целым, положительным, отрицательным или оно кратно определённому числу. Возвращает значение истина или ложь.",
+ "MATH_CHANGE_HELPURL": "https://ru.wikipedia.org/wiki/%D0%98%D0%B4%D0%B8%D0%BE%D0%BC%D0%B0_%28%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5%29#.D0.98.D0.BD.D0.BA.D1.80.D0.B5.D0.BC.D0.B5.D0.BD.D1.82",
+ "MATH_CHANGE_TITLE": "увеличить %1 на %2",
+ "MATH_CHANGE_TOOLTIP": "Добавляет число к переменной '%1'.",
+ "MATH_ROUND_HELPURL": "https://ru.wikipedia.org/wiki/Округление",
+ "MATH_ROUND_TOOLTIP": "Округляет число до большего или меньшего.",
+ "MATH_ROUND_OPERATOR_ROUND": "округлить",
+ "MATH_ROUND_OPERATOR_ROUNDUP": "округлить к большему",
+ "MATH_ROUND_OPERATOR_ROUNDDOWN": "округлить к меньшему",
+ "MATH_ONLIST_OPERATOR_SUM": "сумма списка",
+ "MATH_ONLIST_TOOLTIP_SUM": "Возвращает сумму всех чисел в списке.",
+ "MATH_ONLIST_OPERATOR_MIN": "наименьшее в списке",
+ "MATH_ONLIST_TOOLTIP_MIN": "Возвращает наименьшее число списка.",
+ "MATH_ONLIST_OPERATOR_MAX": "наибольшее в списке",
+ "MATH_ONLIST_TOOLTIP_MAX": "Возвращает наибольшее число списка.",
+ "MATH_ONLIST_OPERATOR_AVERAGE": "среднее арифметическое списка",
+ "MATH_ONLIST_TOOLTIP_AVERAGE": "Возвращает среднее арифметическое списка.",
+ "MATH_ONLIST_OPERATOR_MEDIAN": "медиана списка",
+ "MATH_ONLIST_TOOLTIP_MEDIAN": "Возвращает медиану списка.",
+ "MATH_ONLIST_OPERATOR_MODE": "моды списка",
+ "MATH_ONLIST_TOOLTIP_MODE": "Возвращает список наиболее часто встречающихся элементов списка.",
+ "MATH_ONLIST_OPERATOR_STD_DEV": "стандартное отклонение списка",
+ "MATH_ONLIST_TOOLTIP_STD_DEV": "Возвращает стандартное отклонение списка.",
+ "MATH_ONLIST_OPERATOR_RANDOM": "случайный элемент списка",
+ "MATH_ONLIST_TOOLTIP_RANDOM": "Возвращает случайный элемент списка.",
+ "MATH_MODULO_HELPURL": "https://ru.wikipedia.org/wiki/Деление_с_остатком",
+ "MATH_MODULO_TITLE": "остаток от %1 : %2",
+ "MATH_MODULO_TOOLTIP": "Возвращает остаток от деления двух чисел.",
+ "MATH_CONSTRAIN_TITLE": "ограничить %1 снизу %2 сверху %3",
+ "MATH_CONSTRAIN_TOOLTIP": "Ограничивает число нижней и верхней границами (включительно).",
+ "MATH_RANDOM_INT_HELPURL": "https://ru.wikipedia.org/wiki/Генератор_псевдослучайных_чисел",
+ "MATH_RANDOM_INT_TITLE": "случайное целое число от %1 для %2",
+ "MATH_RANDOM_INT_TOOLTIP": "Возвращает случайное число между двумя заданными пределами (включая и их).",
+ "MATH_RANDOM_FLOAT_HELPURL": "https://ru.wikipedia.org/wiki/Генератор_псевдослучайных_чисел",
+ "MATH_RANDOM_FLOAT_TITLE_RANDOM": "случайное число от 0 (включительно) до 1",
+ "MATH_RANDOM_FLOAT_TOOLTIP": "Возвращает случайное число от 0.0 (включительно) до 1.0.",
+ "TEXT_TEXT_HELPURL": "https://ru.wikipedia.org/wiki/Строковый_тип",
+ "TEXT_TEXT_TOOLTIP": "Буква, слово или строка текста.",
+ "TEXT_JOIN_TITLE_CREATEWITH": "создать текст из",
+ "TEXT_JOIN_TOOLTIP": "Создаёт фрагмент текста, объединяя любое число элементов",
+ "TEXT_CREATE_JOIN_TITLE_JOIN": "соединить",
+ "TEXT_CREATE_JOIN_TOOLTIP": "Добавьте, удалите, переставьте фрагменты для переделки текстового блока.",
+ "TEXT_CREATE_JOIN_ITEM_TOOLTIP": "Добавить элемент к тексту.",
+ "TEXT_APPEND_TO": "к",
+ "TEXT_APPEND_APPENDTEXT": "добавить текст",
+ "TEXT_APPEND_TOOLTIP": "Добавить текст к переменной «%1».",
+ "TEXT_LENGTH_TITLE": "длина %1",
+ "TEXT_LENGTH_TOOLTIP": "Возвращает число символов (включая пробелы) в заданном тексте.",
+ "TEXT_ISEMPTY_TITLE": "%1 пуст",
+ "TEXT_ISEMPTY_TOOLTIP": "Возвращает значение истина, если предоставленный текст пуст.",
+ "TEXT_INDEXOF_TOOLTIP": "Возвращает номер позиции первого/последнего вхождения первого текста во втором. Возвращает %1, если текст не найден.",
+ "TEXT_INDEXOF_INPUT_INTEXT": "в тексте",
+ "TEXT_INDEXOF_OPERATOR_FIRST": "найти первое вхождение текста",
+ "TEXT_INDEXOF_OPERATOR_LAST": "найти последнее вхождение текста",
+ "TEXT_CHARAT_INPUT_INTEXT": "в тексте",
+ "TEXT_CHARAT_FROM_START": "взять букву №",
+ "TEXT_CHARAT_FROM_END": "взять букву № с конца",
+ "TEXT_CHARAT_FIRST": "взять первую букву",
+ "TEXT_CHARAT_LAST": "взять последнюю букву",
+ "TEXT_CHARAT_RANDOM": "взять случайную букву",
+ "TEXT_CHARAT_TOOLTIP": "Возвращает букву в указанной позиции.",
+ "TEXT_GET_SUBSTRING_TOOLTIP": "Возвращает указанную часть текста.",
+ "TEXT_GET_SUBSTRING_INPUT_IN_TEXT": "в тексте",
+ "TEXT_GET_SUBSTRING_START_FROM_START": "взять подстроку с буквы №",
+ "TEXT_GET_SUBSTRING_START_FROM_END": "взять подстроку с буквы № с конца",
+ "TEXT_GET_SUBSTRING_START_FIRST": "взять подстроку с первой буквы",
+ "TEXT_GET_SUBSTRING_END_FROM_START": "по букву №",
+ "TEXT_GET_SUBSTRING_END_FROM_END": "по букву № с конца",
+ "TEXT_GET_SUBSTRING_END_LAST": "по последнюю букву",
+ "TEXT_CHANGECASE_TOOLTIP": "Возвращает копию текста с ЗАГЛАВНЫМИ или строчными буквами.",
+ "TEXT_CHANGECASE_OPERATOR_UPPERCASE": "в ЗАГЛАВНЫЕ БУКВЫ",
+ "TEXT_CHANGECASE_OPERATOR_LOWERCASE": "в строчные буквы",
+ "TEXT_CHANGECASE_OPERATOR_TITLECASE": "в Заглавные Начальные Буквы",
+ "TEXT_TRIM_TOOLTIP": "Возвращает копию текста с пробелами, удалеными с одного или обоих концов.",
+ "TEXT_TRIM_OPERATOR_BOTH": "обрезать пробелы с двух сторон",
+ "TEXT_TRIM_OPERATOR_LEFT": "обрезать пробелы слева",
+ "TEXT_TRIM_OPERATOR_RIGHT": "обрезать пробелы справа",
+ "TEXT_PRINT_TITLE": "напечатать %1",
+ "TEXT_PRINT_TOOLTIP": "Печатает текст, число или другой объект.",
+ "TEXT_PROMPT_TYPE_TEXT": "запросить текст с подсказкой",
+ "TEXT_PROMPT_TYPE_NUMBER": "запросить число с подсказкой",
+ "TEXT_PROMPT_TOOLTIP_NUMBER": "Запросить у пользователя число.",
+ "TEXT_PROMPT_TOOLTIP_TEXT": "Запросить у пользователя текст.",
+ "LISTS_CREATE_EMPTY_TITLE": "создать пустой список",
+ "LISTS_CREATE_EMPTY_TOOLTIP": "Возвращает список длины 0, не содержащий данных",
+ "LISTS_CREATE_WITH_HELPURL": "https://github.com/google/blockly/wiki/Lists#create-list-with",
+ "LISTS_CREATE_WITH_TOOLTIP": "Создаёт список с любым числом элементов.",
+ "LISTS_CREATE_WITH_INPUT_WITH": "создать список из",
+ "LISTS_CREATE_WITH_CONTAINER_TITLE_ADD": "список",
+ "LISTS_CREATE_WITH_CONTAINER_TOOLTIP": "Добавьте, удалите, переставьте элементы для переделки блока списка.",
+ "LISTS_CREATE_WITH_ITEM_TOOLTIP": "Добавляет элемент к списку.",
+ "LISTS_REPEAT_TOOLTIP": "Создаёт список, состоящий из заданного числа копий элемента.",
+ "LISTS_REPEAT_TITLE": "создать список из элемента %1, повторяющегося %2 раз",
+ "LISTS_LENGTH_TITLE": "длина %1",
+ "LISTS_LENGTH_TOOLTIP": "Возвращает длину списка.",
+ "LISTS_ISEMPTY_TITLE": "%1 пуст",
+ "LISTS_ISEMPTY_TOOLTIP": "Возвращает значение истина, если список пуст.",
+ "LISTS_INLIST": "в списке",
+ "LISTS_INDEX_OF_FIRST": "найти первое вхождение элемента",
+ "LISTS_INDEX_OF_LAST": "найти последнее вхождение элемента",
+ "LISTS_INDEX_OF_TOOLTIP": "Возвращает номер позиции первого/последнего вхождения элемента в списке. Возвращает %1, если элемент не найден.",
+ "LISTS_GET_INDEX_GET": "взять",
+ "LISTS_GET_INDEX_GET_REMOVE": "взять и удалить",
+ "LISTS_GET_INDEX_REMOVE": "удалить",
+ "LISTS_GET_INDEX_FROM_END": "№ с конца",
+ "LISTS_GET_INDEX_FIRST": "первый",
+ "LISTS_GET_INDEX_LAST": "последний",
+ "LISTS_GET_INDEX_RANDOM": "произвольный",
+ "LISTS_INDEX_FROM_START_TOOLTIP": "%1 - первый элемент.",
+ "LISTS_INDEX_FROM_END_TOOLTIP": "%1 - последний элемент.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_FROM": "Возвращает элемент в указанной позиции списка.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_FIRST": "Возвращает первый элемент списка.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_LAST": "Возвращает последний элемент списка.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_RANDOM": "Возвращает случайный элемент списка.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM": "Удаляет и возвращает элемент в указанной позиции списка.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST": "Удаляет и возвращает первый элемент списка.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST": "Удаляет и возвращает последний элемент списка.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM": "Удаляет и возвращает случайный элемент списка.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM": "Удаляет элемент в указанной позиции списка.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST": "Удаляет первый элемент списка.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST": "Удаляет последний элемент списка.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM": "Удаляет случайный элемент списка.",
+ "LISTS_SET_INDEX_SET": "присвоить",
+ "LISTS_SET_INDEX_INSERT": "вставить в",
+ "LISTS_SET_INDEX_INPUT_TO": "=",
+ "LISTS_SET_INDEX_TOOLTIP_SET_FROM": "Присваивает значение элементу в указанной позиции списка.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_FIRST": "Присваивает значение первому элементу списка.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_LAST": "Присваивает значение последнему элементу списка.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_RANDOM": "Присваивает значение случайному элементу списка.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_FROM": "Вставляет элемент в указанной позиции списка.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST": "Вставляет элемент в начало списка.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_LAST": "Добавляет элемент в конец списка.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM": "Вставляет элемент в случайное место в списке.",
+ "LISTS_GET_SUBLIST_START_FROM_START": "взять подсписок с №",
+ "LISTS_GET_SUBLIST_START_FROM_END": "взять подсписок с № с конца",
+ "LISTS_GET_SUBLIST_START_FIRST": "взять подсписок с первого",
+ "LISTS_GET_SUBLIST_END_FROM_START": "по №",
+ "LISTS_GET_SUBLIST_END_FROM_END": "по № с конца",
+ "LISTS_GET_SUBLIST_END_LAST": "по последний",
+ "LISTS_GET_SUBLIST_TOOLTIP": "Создаёт копию указанной части списка.",
+ "LISTS_SORT_HELPURL": "https://github.com/google/blockly/wiki/Lists#sorting-a-list",
+ "LISTS_SORT_TITLE": "сортировать %1 %2 %3",
+ "LISTS_SORT_TOOLTIP": "Сортировать копию списка.",
+ "LISTS_SORT_ORDER_ASCENDING": "по возрастанию",
+ "LISTS_SORT_ORDER_DESCENDING": "по убыванию",
+ "LISTS_SORT_TYPE_NUMERIC": "числовая",
+ "LISTS_SORT_TYPE_TEXT": "по алфавиту",
+ "LISTS_SORT_TYPE_IGNORECASE": "по алфавиту, без учёта регистра",
+ "LISTS_SPLIT_HELPURL": "https://github.com/google/blockly/wiki/Lists#splitting-strings-and-joining-lists",
+ "LISTS_SPLIT_LIST_FROM_TEXT": "сделать список из текста",
+ "LISTS_SPLIT_TEXT_FROM_LIST": "собрать текст из списка",
+ "LISTS_SPLIT_WITH_DELIMITER": "с разделителем",
+ "LISTS_SPLIT_TOOLTIP_SPLIT": "Разбивает текст в список текстов, по разделителям.",
+ "LISTS_SPLIT_TOOLTIP_JOIN": "Соединяет сптсок текстов в один текст с разделителями.",
+ "VARIABLES_GET_TOOLTIP": "Возвращает значение этой переменной.",
+ "VARIABLES_GET_CREATE_SET": "Создать блок \"присвоить\" для %1",
+ "VARIABLES_SET": "присвоить %1 = %2",
+ "VARIABLES_SET_TOOLTIP": "Присваивает переменной значение вставки.",
+ "VARIABLES_SET_CREATE_GET": "Создать вставку %1",
+ "PROCEDURES_DEFNORETURN_TITLE": "чтобы",
+ "PROCEDURES_DEFNORETURN_PROCEDURE": "выполнить что-то",
+ "PROCEDURES_BEFORE_PARAMS": "с:",
+ "PROCEDURES_CALL_BEFORE_PARAMS": "с:",
+ "PROCEDURES_DEFNORETURN_TOOLTIP": "Создаёт процедуру, не возвращающую значение.",
+ "PROCEDURES_DEFNORETURN_COMMENT": "Опишите эту функцию…",
+ "PROCEDURES_DEFRETURN_RETURN": "вернуть",
+ "PROCEDURES_DEFRETURN_TOOLTIP": "Создаёт процедуру, возвращающую значение.",
+ "PROCEDURES_ALLOW_STATEMENTS": "разрешить операторы",
+ "PROCEDURES_DEF_DUPLICATE_WARNING": "Предупреждение: эта функция имеет повторяющиеся параметры.",
+ "PROCEDURES_CALLNORETURN_HELPURL": "https://ru.wikipedia.org/wiki/Функция_%28программирование%29",
+ "PROCEDURES_CALLNORETURN_TOOLTIP": "Исполняет определённую пользователем процедуру '%1'.",
+ "PROCEDURES_CALLRETURN_HELPURL": "https://ru.wikipedia.org/wiki/Функция_%28программирование%29",
+ "PROCEDURES_CALLRETURN_TOOLTIP": "Исполняет определённую пользователем процедуру '%1' и возвращает вычисленное значение.",
+ "PROCEDURES_MUTATORCONTAINER_TITLE": "параметры",
+ "PROCEDURES_MUTATORCONTAINER_TOOLTIP": "Добавить, удалить или изменить порядок входных параметров для этой функции.",
+ "PROCEDURES_MUTATORARG_TITLE": "имя параметра:",
+ "PROCEDURES_MUTATORARG_TOOLTIP": "Добавить входной параметр в функцию.",
+ "PROCEDURES_HIGHLIGHT_DEF": "Выделить определение процедуры",
+ "PROCEDURES_CREATE_DO": "Создать вызов '%1'",
+ "PROCEDURES_IFRETURN_TOOLTIP": "Если первое значение истинно, возвращает второе значение.",
+ "PROCEDURES_IFRETURN_HELPURL": "http://c2.com/cgi/wiki?GuardClause",
+ "PROCEDURES_IFRETURN_WARNING": "Предупреждение: Этот блок может использоваться только внутри определения функции."
+}
diff --git a/blockly/msg/json/sc.json b/blockly/msg/json/sc.json
new file mode 100644
index 0000000..12396ec
--- /dev/null
+++ b/blockly/msg/json/sc.json
@@ -0,0 +1,299 @@
+{
+ "@metadata": {
+ "authors": [
+ "Via maxima",
+ "Taxandru",
+ "Uharteko"
+ ]
+ },
+ "VARIABLES_DEFAULT_NAME": "item",
+ "TODAY": "Oe",
+ "DUPLICATE_BLOCK": "Dùplica",
+ "ADD_COMMENT": "Agiunghe unu cumentu",
+ "REMOVE_COMMENT": "Fùlia unu cumentu",
+ "EXTERNAL_INPUTS": "Intradas esternas",
+ "INLINE_INPUTS": "Intradas in lìnia",
+ "DELETE_BLOCK": "Fùlia Blocu",
+ "DELETE_X_BLOCKS": "Fulia %1 Blocus",
+ "DELETE_ALL_BLOCKS": "Scancellu su %1 de is brocus?",
+ "CLEAN_UP": "Lìmpia is brocus",
+ "COLLAPSE_BLOCK": "Serra e stringi Brocu",
+ "COLLAPSE_ALL": "Serra e stringi Brocus",
+ "EXPAND_BLOCK": "Aberi Brocu",
+ "EXPAND_ALL": "Aberi Brocus",
+ "DISABLE_BLOCK": "Disabìlita Blocu",
+ "ENABLE_BLOCK": "Abìlita Blocu",
+ "HELP": "Agiudu",
+ "CHANGE_VALUE_TITLE": "Muda valori:",
+ "RENAME_VARIABLE": "Muda nòmini a variabili...",
+ "RENAME_VARIABLE_TITLE": "A is variabilis '%1' muda nòmini a:",
+ "NEW_VARIABLE": "Variabili noa...",
+ "NEW_VARIABLE_TITLE": "Nòmini de sa variabili noa:",
+ "COLOUR_PICKER_HELPURL": "https://en.wikipedia.org/wiki/Color",
+ "COLOUR_PICKER_TOOLTIP": "Scebera unu colori de sa tauledda.",
+ "COLOUR_RANDOM_TITLE": "Unu colori a brítiu",
+ "COLOUR_RANDOM_TOOLTIP": "Scebera unu colori a brítiu.",
+ "COLOUR_RGB_TITLE": "colora cun",
+ "COLOUR_RGB_RED": "arrùbiu",
+ "COLOUR_RGB_GREEN": "birdi",
+ "COLOUR_RGB_BLUE": "blue",
+ "COLOUR_RGB_TOOLTIP": "Cuncorda unu colori cun su tanti de arrubiu, birdi, e blue. Totu is valoris depint essi intra 0 e 100.",
+ "COLOUR_BLEND_TITLE": "mestura",
+ "COLOUR_BLEND_COLOUR1": "colori 1",
+ "COLOUR_BLEND_COLOUR2": "colori 2",
+ "COLOUR_BLEND_RATIO": "raportu",
+ "COLOUR_BLEND_TOOLTIP": "Amestura duus coloris cun unu raportu (0.0 - 1.0).",
+ "CONTROLS_REPEAT_HELPURL": "https://en.wikipedia.org/wiki/For_loop",
+ "CONTROLS_REPEAT_TITLE": "repiti %1 bortas",
+ "CONTROLS_REPEAT_INPUT_DO": "fai",
+ "CONTROLS_REPEAT_TOOLTIP": "Fait pariga de cumandus prus bortas.",
+ "CONTROLS_WHILEUNTIL_OPERATOR_WHILE": "repiti interis",
+ "CONTROLS_WHILEUNTIL_OPERATOR_UNTIL": "repiti fintzas",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_WHILE": "Interis su valori est berus, tandu fai pariga de cumandus.",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL": "Interis su valori est frassu, tandu fai pariga de cumandus.",
+ "CONTROLS_FOR_TOOLTIP": "Fait pigai a sa variàbili \"%1\" i valoris de su primu numeru a s'urtimu, a su passu impostau e fait su brocu.",
+ "CONTROLS_FOR_TITLE": "po %1 de %2 fintzas %3 a passus de %4",
+ "CONTROLS_FOREACH_TITLE": "po dònnia item %1 in lista %2",
+ "CONTROLS_FOREACH_TOOLTIP": "Po dònnia item in sa lista, ponit sa variàbili '%1' pari a s'item, e tandu fait pariga de cumandus.",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK": "sàrtiat a foras de sa lòriga",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE": "sighit cun su repicu afatànti",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK": "Bessit de sa lòriga.",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE": "Sartiat su chi abarrat de sa loriga, e sighit cun su repicu afatànti.",
+ "CONTROLS_FLOW_STATEMENTS_WARNING": "Amonestu: Custu brocu ddu podis ponni sceti aintru de una lòriga.",
+ "CONTROLS_IF_TOOLTIP_1": "Si su valori est berus, tandu fait pariga de cumandus.",
+ "CONTROLS_IF_TOOLTIP_2": "Si su valori est berus, tandu fai su primu brocu de is cumandus. Sinuncas, fai su segundu brocu de is cumandus.",
+ "CONTROLS_IF_TOOLTIP_3": "Si su primu valori est beridadi, tandu fai su primu brocu de is cumandus. Sinuncas, si su segundu valori est beridadi, fai su segundu brocu de is cumandus.",
+ "CONTROLS_IF_TOOLTIP_4": "Si su primu valori est berus, tandu fai su primu brocu de is cumandus. Sinuncas, si su segundu valori est berus, fai su segundu brocu de is cumandus. Si mancu unu valori est berus, tandu fai s'urtimu brocu de is cumandus.",
+ "CONTROLS_IF_MSG_IF": "si",
+ "CONTROLS_IF_MSG_ELSEIF": "sinuncas si",
+ "CONTROLS_IF_MSG_ELSE": "sinuncas",
+ "CONTROLS_IF_IF_TOOLTIP": "Aciungi, fùlia, o assenta is partis po torrai a sètiu custu brocu si.",
+ "CONTROLS_IF_ELSEIF_TOOLTIP": "Aciungi una cunditzioni a su brocu si.",
+ "CONTROLS_IF_ELSE_TOOLTIP": "Aciungi una urtima cunditzioni piga-totu a su brocu si.",
+ "LOGIC_COMPARE_HELPURL": "https://en.wikipedia.org/wiki/Inequality_(mathematics)",
+ "LOGIC_COMPARE_TOOLTIP_EQ": "Torrat berus si is inputs funt unu uguali a s'àteru.",
+ "LOGIC_COMPARE_TOOLTIP_NEQ": "Torrat berus si is inputs non funt unu uguali a s'àteru.",
+ "LOGIC_COMPARE_TOOLTIP_LT": "Torrat berus si su primu input est prus piticu de s'àteru.",
+ "LOGIC_COMPARE_TOOLTIP_LTE": "Torrat berus si su primu input est prus piticu o uguali a s'àteru.",
+ "LOGIC_COMPARE_TOOLTIP_GT": "Torrat berus si su primu input est prus mannu de s'àteru.",
+ "LOGIC_COMPARE_TOOLTIP_GTE": "Torrat berus si su primu input est prus mannu o uguali a s'àteru.",
+ "LOGIC_OPERATION_TOOLTIP_AND": "Torrat berus si ambos is inputs funt berus.",
+ "LOGIC_OPERATION_AND": "and",
+ "LOGIC_OPERATION_TOOLTIP_OR": "Torrat berus si assumancu unu de is inputs est berus.",
+ "LOGIC_OPERATION_OR": "or",
+ "LOGIC_NEGATE_TITLE": "non %1",
+ "LOGIC_NEGATE_TOOLTIP": "Torrat berus si s'input est frassu. Torrat frassu si s'input est berus.",
+ "LOGIC_BOOLEAN_TRUE": "berus",
+ "LOGIC_BOOLEAN_FALSE": "frassu",
+ "LOGIC_BOOLEAN_TOOLTIP": "Torrat berus o frassu.",
+ "LOGIC_NULL": "null",
+ "LOGIC_NULL_TOOLTIP": "Torrat null.",
+ "LOGIC_TERNARY_CONDITION": "cumpròa",
+ "LOGIC_TERNARY_IF_TRUE": "si berus",
+ "LOGIC_TERNARY_IF_FALSE": "si frassu",
+ "LOGIC_TERNARY_TOOLTIP": "‎Cumproa sa cunditzioni in 'cumproa'. Si sa cunditzioni est berus, torrat su valori 'si berus'; sinuncas torrat su valori 'si frassu'.",
+ "MATH_NUMBER_HELPURL": "https://en.wikipedia.org/wiki/Number",
+ "MATH_NUMBER_TOOLTIP": "Unu numeru",
+ "MATH_ARITHMETIC_HELPURL": "https://en.wikipedia.org/wiki/Arithmetic",
+ "MATH_ARITHMETIC_TOOLTIP_ADD": "Torrat sa summa de is duus nùmerus.",
+ "MATH_ARITHMETIC_TOOLTIP_MINUS": "Torrat sa diferèntzia de is duus nùmerus.",
+ "MATH_ARITHMETIC_TOOLTIP_MULTIPLY": "Torrat su produtu de is duus nùmerus.",
+ "MATH_ARITHMETIC_TOOLTIP_DIVIDE": "Torrat su cuotzienti de is duus nùmerus.",
+ "MATH_ARITHMETIC_TOOLTIP_POWER": "Torrat su primu numeru artziau a sa potenza de su segundu nùmeru.",
+ "MATH_SINGLE_HELPURL": "https://en.wikipedia.org/wiki/Square_root",
+ "MATH_SINGLE_OP_ROOT": "arraxina cuadra",
+ "MATH_SINGLE_TOOLTIP_ROOT": "Torrat s'arraxina cuadra de unu numeru.",
+ "MATH_SINGLE_OP_ABSOLUTE": "assolutu",
+ "MATH_SINGLE_TOOLTIP_ABS": "Torrat su valori assolútu de unu numeru.",
+ "MATH_SINGLE_TOOLTIP_NEG": "Torrat su valori negau de unu numeru.",
+ "MATH_SINGLE_TOOLTIP_LN": "Torrat su logaritmu naturali de unu numeru.",
+ "MATH_SINGLE_TOOLTIP_LOG10": "Torrat su logaritmu a basi 10 de unu numeru.",
+ "MATH_SINGLE_TOOLTIP_EXP": "Torrat (e) a sa potèntzia de unu numeru.",
+ "MATH_SINGLE_TOOLTIP_POW10": "Torrat (10) a sa potèntzia de unu numeru.",
+ "MATH_TRIG_HELPURL": "https://en.wikipedia.org/wiki/Trigonometric_functions",
+ "MATH_TRIG_TOOLTIP_SIN": "Torrat su sinu de unu gradu (no radianti).",
+ "MATH_TRIG_TOOLTIP_COS": "Torrat su cosinu de unu gradu (no radianti).",
+ "MATH_TRIG_TOOLTIP_TAN": "Torrat sa tangenti de unu gradu (no radianti).",
+ "MATH_TRIG_TOOLTIP_ASIN": "Torrat su arcsinu de unu numeru.",
+ "MATH_TRIG_TOOLTIP_ACOS": "Torrat su arccosinu de unu numeru.",
+ "MATH_TRIG_TOOLTIP_ATAN": "Torrat su arctangenti de unu numeru.",
+ "MATH_CONSTANT_HELPURL": "https://en.wikipedia.org/wiki/Mathematical_constant",
+ "MATH_CONSTANT_TOOLTIP": "Torrat una de is costantis comunas: π (3.141…), e (2.718…), φ (1.618…), sqrt(2) (1.414…), sqrt(½) (0.707…), o ∞ (infiniu).",
+ "MATH_IS_EVEN": "est paris",
+ "MATH_IS_ODD": "est dísparu",
+ "MATH_IS_PRIME": "est primu",
+ "MATH_IS_WHOLE": "est intreu",
+ "MATH_IS_POSITIVE": "est positivu",
+ "MATH_IS_NEGATIVE": "est negativu",
+ "MATH_IS_DIVISIBLE_BY": "fait a ddu dividi po",
+ "MATH_IS_TOOLTIP": "Cumprova si unu numeru est paris, dìsparis, primu, intreu, positivu, negativu o si fait a ddu dividi po unu numeru giau. Torrat berus o frassu.",
+ "MATH_CHANGE_HELPURL": "https://en.wikipedia.org/wiki/Programming_idiom#Incrementing_a_counter",
+ "MATH_CHANGE_TITLE": "muda %1 de %2",
+ "MATH_CHANGE_TOOLTIP": "Aciungi unu numeru a sa variabili '%1'.",
+ "MATH_ROUND_HELPURL": "https://en.wikipedia.org/wiki/Rounding",
+ "MATH_ROUND_TOOLTIP": "Arretunda unu numeru faci a susu o faci a bàsciu.",
+ "MATH_ROUND_OPERATOR_ROUND": "arretunda",
+ "MATH_ROUND_OPERATOR_ROUNDUP": "Arretunda faci a susu",
+ "MATH_ROUND_OPERATOR_ROUNDDOWN": "arretunda faci a bàsciu.",
+ "MATH_ONLIST_OPERATOR_SUM": "suma sa lista",
+ "MATH_ONLIST_TOOLTIP_SUM": "Torrat sa suma de totu is numerus de sa lista.",
+ "MATH_ONLIST_OPERATOR_MIN": "minimu de sa lista",
+ "MATH_ONLIST_TOOLTIP_MIN": "Torrat su numeru prus piticu de sa lista.",
+ "MATH_ONLIST_OPERATOR_MAX": "massimu de sa lista",
+ "MATH_ONLIST_TOOLTIP_MAX": "Torrat su numeru prus mannu de sa lista",
+ "MATH_ONLIST_OPERATOR_AVERAGE": "mèdia de sa lista",
+ "MATH_ONLIST_TOOLTIP_AVERAGE": "Torrat sa mèdia (aritimètica) de is valoris de sa lista.",
+ "MATH_ONLIST_OPERATOR_MEDIAN": "medianu de sa lista",
+ "MATH_ONLIST_TOOLTIP_MEDIAN": "Torrat su numeru medianu de sa lista.",
+ "MATH_ONLIST_OPERATOR_MODE": "modas de sa lista",
+ "MATH_ONLIST_TOOLTIP_MODE": "Torrat una lista de is itams prus frecuentis de sa lista.",
+ "MATH_ONLIST_OPERATOR_STD_DEV": "deviadura standard de sa lista",
+ "MATH_ONLIST_TOOLTIP_STD_DEV": "Torrat sa deviadura standard de sa lista.",
+ "MATH_ONLIST_OPERATOR_RANDOM": "unu item a brìtiu de sa lista",
+ "MATH_ONLIST_TOOLTIP_RANDOM": "Torrat unu item a brìtiu de sa lista.",
+ "MATH_MODULO_HELPURL": "https://en.wikipedia.org/wiki/Modulo_operation",
+ "MATH_MODULO_TITLE": "arrestu de %1 ÷ %2",
+ "MATH_MODULO_TOOLTIP": "Torrat s'arrestu de sa divisioni de duus numerus.",
+ "MATH_CONSTRAIN_TITLE": "custringi %1 de %2 a %3",
+ "MATH_CONSTRAIN_TOOLTIP": "Custringi unu numeru aintru de is liminaxus giaus (cumprendius).",
+ "MATH_RANDOM_INT_HELPURL": "https://en.wikipedia.org/wiki/Random_number_generation",
+ "MATH_RANDOM_INT_TITLE": "numeru intreu a brítiu de %1 a %2",
+ "MATH_RANDOM_INT_TOOLTIP": "Torrat unu numeru intreu a brìtiu intra duus nùmerus giaus (cumpresus).",
+ "MATH_RANDOM_FLOAT_HELPURL": "https://en.wikipedia.org/wiki/Random_number_generation",
+ "MATH_RANDOM_FLOAT_TITLE_RANDOM": "una fratzioni a brìtiu",
+ "MATH_RANDOM_FLOAT_TOOLTIP": "Torrat una fratzioni a brìtiu intra 0.0 (cumpresu) e 1.0 (bogau).",
+ "TEXT_TEXT_HELPURL": "https://en.wikipedia.org/wiki/String_(computer_science)",
+ "TEXT_TEXT_TOOLTIP": "Una lìtera, paràula, o linia de testu.",
+ "TEXT_JOIN_TITLE_CREATEWITH": "scri testu cun",
+ "TEXT_JOIN_TOOLTIP": "Fait unu testu ponendi a pari parigas de items.",
+ "TEXT_CREATE_JOIN_TITLE_JOIN": "auni a pari",
+ "TEXT_CREATE_JOIN_TOOLTIP": "Aciungi, fùlia, o assenta is partis po torrai a sètiu custu brocu de testu.",
+ "TEXT_CREATE_JOIN_ITEM_TOOLTIP": "Acciungi unu item a su testu.",
+ "TEXT_APPEND_TO": "a",
+ "TEXT_APPEND_APPENDTEXT": "acciungi su testu",
+ "TEXT_APPEND_TOOLTIP": "Aciungit testu a sa variàbili '%1'.",
+ "TEXT_LENGTH_TITLE": "longària de %1",
+ "TEXT_LENGTH_TOOLTIP": "Torrat su numeru de lìteras (cun is spàtzius) in su testu giau.",
+ "TEXT_ISEMPTY_TITLE": "%1 est buidu",
+ "TEXT_ISEMPTY_TOOLTIP": "Torrat berus si su testu giau est buidu.",
+ "TEXT_INDEXOF_TOOLTIP": "Torrat s'indixi de sa primu/urtima ocasioni de su primu testu in su segundu testu. Torrat %1 si su testu no ddu agatat.",
+ "TEXT_INDEXOF_INPUT_INTEXT": "in su testu",
+ "TEXT_INDEXOF_OPERATOR_FIRST": "circa prima ocasioni de su testu",
+ "TEXT_INDEXOF_OPERATOR_LAST": "circa urtima ocasioni de su testu",
+ "TEXT_CHARAT_INPUT_INTEXT": "in su testu",
+ "TEXT_CHARAT_FROM_START": "piga sa lìtera #",
+ "TEXT_CHARAT_FROM_END": "piga sa lìtera # de sa fini",
+ "TEXT_CHARAT_FIRST": "piga sa prima lìtera",
+ "TEXT_CHARAT_LAST": "piga s'urtima lìtera",
+ "TEXT_CHARAT_RANDOM": "piga una lìtera a brìtiu",
+ "TEXT_CHARAT_TOOLTIP": "Torrat sa lìtera de su postu giau.",
+ "TEXT_GET_SUBSTRING_TOOLTIP": "Torrat su testu inditau.",
+ "TEXT_GET_SUBSTRING_INPUT_IN_TEXT": "in su testu",
+ "TEXT_GET_SUBSTRING_START_FROM_START": "piga suta-stringa de sa lìtera #",
+ "TEXT_GET_SUBSTRING_START_FROM_END": "piga suta-stringa de sa lìtera # fintzas a fini",
+ "TEXT_GET_SUBSTRING_START_FIRST": "piga suta-stringa de sa primu lìtera",
+ "TEXT_GET_SUBSTRING_END_FROM_START": "a sa lìtera #",
+ "TEXT_GET_SUBSTRING_END_FROM_END": "a sa lìtera # de sa fini",
+ "TEXT_GET_SUBSTRING_END_LAST": "a s'urtima lìtera",
+ "TEXT_CHANGECASE_TOOLTIP": "Torrat una copia de su testu inditau mudendi mauschínu/minúdu.",
+ "TEXT_CHANGECASE_OPERATOR_UPPERCASE": "a mauschínu",
+ "TEXT_CHANGECASE_OPERATOR_LOWERCASE": "a minúdu",
+ "TEXT_CHANGECASE_OPERATOR_TITLECASE": "cun Primu lìtera a Mauschínu",
+ "TEXT_TRIM_TOOLTIP": "Torrat una copia de su testu bogaus is spàtzius de unu o de ambus is càbudus.",
+ "TEXT_TRIM_OPERATOR_BOTH": "bogat spàtzius de ambus càbudus de",
+ "TEXT_TRIM_OPERATOR_LEFT": "bogat spàtzius de su càbudu de manca de",
+ "TEXT_TRIM_OPERATOR_RIGHT": "bogat spàtzius de su càbudu de dereta de",
+ "TEXT_PRINT_TITLE": "scri %1",
+ "TEXT_PRINT_TOOLTIP": "Scri su testu, numeru o àteru valori.",
+ "TEXT_PROMPT_TYPE_TEXT": "pregonta po su testu",
+ "TEXT_PROMPT_TYPE_NUMBER": "pregonta po unu numeru",
+ "TEXT_PROMPT_TOOLTIP_NUMBER": "Pregonta unu nùmeru a s'impitadore.",
+ "TEXT_PROMPT_TOOLTIP_TEXT": "Pregonta testu a s'impitadore.",
+ "LISTS_CREATE_EMPTY_TITLE": "fait una lista buida",
+ "LISTS_CREATE_EMPTY_TOOLTIP": "Torrat una lista, de longària 0, chena records de datus.",
+ "LISTS_CREATE_WITH_TOOLTIP": "Fait una lista cun calisiollat numeru de items.",
+ "LISTS_CREATE_WITH_INPUT_WITH": "fait una lista cun",
+ "LISTS_CREATE_WITH_CONTAINER_TITLE_ADD": "lista",
+ "LISTS_CREATE_WITH_CONTAINER_TOOLTIP": "Aciungi, fùlia, o assenta is partis po torrai a sètiu custu brocu lista.",
+ "LISTS_CREATE_WITH_ITEM_TOOLTIP": "Acciungi unu item a sa lista.",
+ "LISTS_REPEAT_TOOLTIP": "Fait una lista cun unu numeru giau repitiu su tanti de is bortas inditadas.",
+ "LISTS_REPEAT_TITLE": "fait una lista cun item %1 repitiu %2 bortas",
+ "LISTS_LENGTH_TITLE": "longària de %1",
+ "LISTS_LENGTH_TOOLTIP": "Torrat sa longària de una lista.",
+ "LISTS_ISEMPTY_TITLE": "%1 est buidu",
+ "LISTS_ISEMPTY_TOOLTIP": "Torrat berus si sa lista est buida.",
+ "LISTS_INLIST": "in lista",
+ "LISTS_INDEX_OF_FIRST": "circa prima ocasioni de s'item",
+ "LISTS_INDEX_OF_LAST": "circa urtima ocasioni de s'item",
+ "LISTS_INDEX_OF_TOOLTIP": "Torrat s'indixi de sa primu/urtima ocasioni de s'item in sa lista. Torrat %1 si s'item non s'agatat.",
+ "LISTS_GET_INDEX_GET": "piga",
+ "LISTS_GET_INDEX_GET_REMOVE": "piga e fùlia",
+ "LISTS_GET_INDEX_REMOVE": "fùlia",
+ "LISTS_GET_INDEX_FROM_END": "# de sa fini",
+ "LISTS_GET_INDEX_FIRST": "primu",
+ "LISTS_GET_INDEX_LAST": "urtimu",
+ "LISTS_GET_INDEX_RANDOM": "a brìtiu (random)",
+ "LISTS_INDEX_FROM_START_TOOLTIP": "%1 est po su primu elementu.",
+ "LISTS_INDEX_FROM_END_TOOLTIP": "%1 est po s'urtimu elementu.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_FROM": "Torrat s'elementu de su postu inditau de una lista.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_FIRST": "Torrat su primu elementu de una lista.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_LAST": "Torrat s'urtimu elementu de una lista.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_RANDOM": "Torrat un'elementu a brìtiu de una lista.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM": "Fùliat e torrat s'elementu de su postu inditau de una lista.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST": "Fùliat e torrat su primu elementu de una lista.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST": "Fùliat e torrat s'urtimu elementu de una lista.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM": "Fùliat e torrat un'elementu a brìtiu de una lista.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM": "Fùliat s'elementu de su postu inditau de una lista.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST": "Fùliat su primu elementu de una lista.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST": "Fùliat s'urtimu elementu de una lista.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM": "Fùliat unu elementu a brìtiu de una lista.",
+ "LISTS_SET_INDEX_SET": "imposta",
+ "LISTS_SET_INDEX_INSERT": "inserta a",
+ "LISTS_SET_INDEX_INPUT_TO": "a",
+ "LISTS_SET_INDEX_TOOLTIP_SET_FROM": "Impostat s'elementu in su postu inditau de una lista.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_FIRST": "Impostat su primu elementu in una lista.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_LAST": "Impostat s'urtimu elementu in una lista.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_RANDOM": "Impostat unu elementu random in una lista.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_FROM": "Insertat s'elementu in su postu inditau in una lista.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST": "Insertat s'elementu a su cumintzu de sa lista.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_LAST": "Aciungit s'elementu a sa fini de sa lista.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM": "Aciungit s'elementu a brítiu in sa lista.",
+ "LISTS_GET_SUBLIST_START_FROM_START": "bogandi suta-lista de #",
+ "LISTS_GET_SUBLIST_START_FROM_END": "bogandi suta-lista de # de sa fini.",
+ "LISTS_GET_SUBLIST_START_FIRST": "bogandi suta-lista de su primu",
+ "LISTS_GET_SUBLIST_END_FROM_START": "fintzas a #",
+ "LISTS_GET_SUBLIST_END_FROM_END": "a # de sa fini",
+ "LISTS_GET_SUBLIST_END_LAST": "a s'urtimu",
+ "LISTS_GET_SUBLIST_TOOLTIP": "Fait una copia de sa parti inditada de sa lista.",
+ "LISTS_SPLIT_LIST_FROM_TEXT": "fai una lista de unu testu",
+ "LISTS_SPLIT_TEXT_FROM_LIST": "fai unu testu de una lista",
+ "LISTS_SPLIT_WITH_DELIMITER": "cun separadori",
+ "LISTS_SPLIT_TOOLTIP_SPLIT": "Dividi su testu in un'elencu de testus, firmendi po dònnia separadori.",
+ "LISTS_SPLIT_TOOLTIP_JOIN": "Auni una lista de testus in d-unu sceti, ponendi separadoris.",
+ "VARIABLES_GET_TOOLTIP": "Torrat su valori de custa variabili.",
+ "VARIABLES_GET_CREATE_SET": "Fait 'imposta %1'",
+ "VARIABLES_SET": "imposta %1 a %2",
+ "VARIABLES_SET_TOOLTIP": "Imposta custa variabili uguali a s'input.",
+ "VARIABLES_SET_CREATE_GET": "Fait 'piga %1'",
+ "PROCEDURES_DEFNORETURN_TITLE": "po",
+ "PROCEDURES_DEFNORETURN_PROCEDURE": "fait calincuna cosa",
+ "PROCEDURES_BEFORE_PARAMS": "con:",
+ "PROCEDURES_CALL_BEFORE_PARAMS": "cun",
+ "PROCEDURES_DEFNORETURN_TOOLTIP": "Fait una funtzioni chena output.",
+ "PROCEDURES_DEFRETURN_RETURN": "torrat",
+ "PROCEDURES_DEFRETURN_TOOLTIP": "Fait una funtzioni cun output.",
+ "PROCEDURES_ALLOW_STATEMENTS": "permiti decraratzionis",
+ "PROCEDURES_DEF_DUPLICATE_WARNING": "Amonestu: Custa funtzioni tenit parametrus duplicaus.",
+ "PROCEDURES_CALLNORETURN_HELPURL": "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29",
+ "PROCEDURES_CALLNORETURN_TOOLTIP": "Arròllia sa funtzione '%1' cuncordada dae s'impitadore.",
+ "PROCEDURES_CALLRETURN_HELPURL": "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29",
+ "PROCEDURES_CALLRETURN_TOOLTIP": "Arròllia sa funtzione '%1' cuncordada dae s'impitadore e imprea s'output suu.",
+ "PROCEDURES_MUTATORCONTAINER_TITLE": "inputs",
+ "PROCEDURES_MUTATORCONTAINER_TOOLTIP": "Aciungi, fùlia, o assenta is inputs a custa funtzioni.",
+ "PROCEDURES_MUTATORARG_TITLE": "nomini input:",
+ "PROCEDURES_MUTATORARG_TOOLTIP": "Aciungi un input a sa funtzioni.",
+ "PROCEDURES_HIGHLIGHT_DEF": "Marca sa definitzioni de funtzioni.",
+ "PROCEDURES_CREATE_DO": "Ingenerau'%1'",
+ "PROCEDURES_IFRETURN_TOOLTIP": "Si unu valori est berus, tandu torrat unu segundu valori.",
+ "PROCEDURES_IFRETURN_WARNING": "Amonestu: Custu brocu ddu podis ponni sceti aintru de una funtzioni."
+}
diff --git a/blockly/msg/json/sd.json b/blockly/msg/json/sd.json
new file mode 100644
index 0000000..47bf7b8
--- /dev/null
+++ b/blockly/msg/json/sd.json
@@ -0,0 +1,126 @@
+{
+ "@metadata": {
+ "authors": [
+ "Aursani",
+ "Mehtab ahmed"
+ ]
+ },
+ "VARIABLES_DEFAULT_NAME": "اسم",
+ "TODAY": "اڄ",
+ "DUPLICATE_BLOCK": "نقل",
+ "ADD_COMMENT": "تاثرات ڏيو",
+ "REMOVE_COMMENT": "تاثرات مِٽايو",
+ "EXTERNAL_INPUTS": "خارجي ڄاڻ",
+ "DELETE_BLOCK": "بلاڪ ڊاهيو",
+ "DELETE_X_BLOCKS": "1٪ بلاڪ ڊاهيو",
+ "CLEAN_UP": "بندشون هٽايو",
+ "COLLAPSE_BLOCK": "بلاڪ ڍڪيو",
+ "COLLAPSE_ALL": "بلاڪَ ڍڪيو",
+ "EXPAND_BLOCK": "بلاڪ نمايو",
+ "EXPAND_ALL": "بلاڪَ نمايو",
+ "DISABLE_BLOCK": "بلاڪ کي غيرفعال بڻايو",
+ "ENABLE_BLOCK": "بلاڪ کي فعال بڻايو",
+ "HELP": "مدد",
+ "CHANGE_VALUE_TITLE": "قدر بدلايو",
+ "RENAME_VARIABLE": "ڦرڻي کي نئون نالو ڏيو...",
+ "NEW_VARIABLE": "نئون ڦرڻو...",
+ "NEW_VARIABLE_TITLE": "ڦرڻي جو نئون نالو:",
+ "COLOUR_PICKER_HELPURL": "https://en.wikipedia.org/wiki/Color",
+ "COLOUR_PICKER_TOOLTIP": "رنگ دٻيءَ مان رنگ چونڊيو.",
+ "COLOUR_RANDOM_TITLE": "بلا ترتيب رنگ",
+ "COLOUR_RANDOM_TOOLTIP": "ڪو بہ ‌ڃڳ چونڊيو.",
+ "COLOUR_RGB_TITLE": "سان رڱيو",
+ "COLOUR_RGB_RED": "ڳاڙهو",
+ "COLOUR_RGB_GREEN": "سائو",
+ "COLOUR_RGB_BLUE": "نيرو",
+ "COLOUR_RGB_TOOLTIP": "ڳاڙهي، سائي، ۽ نيري جو مقدار ڄاڻائي گھربل رنگ ٺاهيو. سمورا قدر 0 ۽ 100 جي وچ ۾ هجن.",
+ "COLOUR_BLEND_COLOUR1": "رنگ 1",
+ "COLOUR_BLEND_COLOUR2": "رنگ 2",
+ "COLOUR_BLEND_RATIO": "تناسب",
+ "COLOUR_BLEND_TOOLTIP": "ڄاڻايل تناسب سان ٻہ رنگ پاڻ ۾ ملايو (0.0-1.0).",
+ "CONTROLS_REPEAT_HELPURL": "https://en.wikipedia.org/wiki/For_loop",
+ "CONTROLS_REPEAT_TITLE": "1٪ ڀيرا ورجايو",
+ "CONTROLS_REPEAT_INPUT_DO": "ڪريو",
+ "CONTROLS_WHILEUNTIL_OPERATOR_WHILE": "ورجايو جڏهن",
+ "CONTROLS_WHILEUNTIL_OPERATOR_UNTIL": "ورجايو جيستائين",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK": "چڪر مان ٻاهر نڪرو",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE": "چڪر جاري رکندر نئين ڦيري پايو",
+ "CONTROLS_IF_MSG_IF": "جيڪڏهن",
+ "CONTROLS_IF_MSG_ELSEIF": "نہ تہ جي",
+ "CONTROLS_IF_MSG_ELSE": "نہ تہ",
+ "LOGIC_COMPARE_HELPURL": "https://en.wikipedia.org/wiki/Inequality_(mathematics)",
+ "LOGIC_COMPARE_TOOLTIP_EQ": "جيڪڏهن ٻئي ان پُٽس برابر آهن تہ درست وراڻيو",
+ "LOGIC_COMPARE_TOOLTIP_NEQ": "جيڪڏهن ٻئي ان پُٽس اڻ برابر آهن تہ درست وراڻيو",
+ "LOGIC_COMPARE_TOOLTIP_LT": "جيڪڏهن پهريون ان پُٽ ٻين ان پُٽ کان ننڍو آهي تہ درست وراڻيو",
+ "LOGIC_COMPARE_TOOLTIP_LTE": "جيڪڏهن پهريون ان پُٽ ٻين ان پُٽ کان ننڍو آهي يا ٻئي برابر آهن تہ درست وراڻيو",
+ "LOGIC_COMPARE_TOOLTIP_GT": "جيڪڏهن پهريون ان پُٽ ٻين ان پُٽ کان وڏو آهي تہ درست وراڻيو.",
+ "LOGIC_COMPARE_TOOLTIP_GTE": "جيڪڏهن پهريون ان پُٽ ٻين ان پُٽ کان وڏو آهي يا ٻئي برابر آهن تہ درست وراڻيو.",
+ "LOGIC_OPERATION_TOOLTIP_AND": "جيڪڏهن ٻئي ان پُٽ درست آهن تہ درست وراڻيو.",
+ "LOGIC_OPERATION_AND": "۽",
+ "LOGIC_OPERATION_TOOLTIP_OR": "جيڪڏهن ٻنهي ان پُٽس مان ڪو هڪ بہ درست آهي تہ درست وراڻيو.",
+ "LOGIC_OPERATION_OR": "يا",
+ "LOGIC_NEGATE_TITLE": "نڪي %1",
+ "LOGIC_NEGATE_TOOLTIP": "ان پُٽ غير درست آهي تہ درست وراڻيو. ان پُٽ درست آهي تہ غير درست وراڻيو.",
+ "LOGIC_BOOLEAN_TRUE": "سچ",
+ "LOGIC_BOOLEAN_FALSE": "ڪُوڙ",
+ "LOGIC_BOOLEAN_TOOLTIP": "درست يا غير درست وراڻي ٿو.",
+ "LOGIC_TERNARY_IF_TRUE": "جيڪڏهن سچو",
+ "LOGIC_TERNARY_IF_FALSE": "جيڪڏهن ڪوڙو",
+ "MATH_NUMBER_TOOLTIP": "ڪو انگ.",
+ "MATH_ARITHMETIC_HELPURL": "https://en.wikipedia.org/wiki/Arithmetic",
+ "MATH_ARITHMETIC_TOOLTIP_ADD": "ٻن انگن جي جوڙ اپت ڏيو.",
+ "MATH_ARITHMETIC_TOOLTIP_MINUS": "ٻنهي انگن جو تفاوت ڏيو.",
+ "MATH_ARITHMETIC_TOOLTIP_MULTIPLY": "ٻنهي انگن جي ضرب اُپت ڏيو.",
+ "MATH_ARITHMETIC_TOOLTIP_DIVIDE": "ٻنهي انگن جي ونڊ ڏيو.",
+ "MATH_SINGLE_HELPURL": "https://en.wikipedia.org/wiki/ٻيون مول",
+ "MATH_SINGLE_OP_ROOT": "ٻيون مول",
+ "MATH_SINGLE_TOOLTIP_ROOT": "ڪنهن انگ جو ٻيون مول ڄاڻايو.",
+ "MATH_SINGLE_OP_ABSOLUTE": "ٺپ",
+ "MATH_SINGLE_TOOLTIP_NEG": "ڪنهن انگ جو ڪاٽو ڄاڻايو.",
+ "MATH_SINGLE_TOOLTIP_LN": "ڪنهن انگ جو قدرتي لاگ ڄاڻايو.",
+ "MATH_SINGLE_TOOLTIP_LOG10": "ڪنهن انگ جو 10 بنيادي لاگ ڄاڻايو.",
+ "MATH_TRIG_HELPURL": "https://en.wikipedia.org/wiki/ٽڪنڊور ڪاڄ",
+ "MATH_CONSTANT_HELPURL": "https://en.wikipedia.org/wiki/رياضياتي استقلال",
+ "MATH_IS_EVEN": "ٻڌي آهي",
+ "MATH_IS_ODD": "اِڪي آهي",
+ "MATH_IS_PRIME": "مفرد آهي",
+ "MATH_IS_WHOLE": "سڄو آهي",
+ "MATH_IS_POSITIVE": "واڌو آهي",
+ "MATH_IS_NEGATIVE": "ڪاٽو آهي",
+ "MATH_IS_DIVISIBLE_BY": "سان ونڊجندڙ آهي",
+ "MATH_CHANGE_TITLE": "%1 کي %2 سان مَٽايو",
+ "MATH_ONLIST_OPERATOR_MIN": "لسٽ جو ننڍي ۾ ننڍو قدر",
+ "MATH_ONLIST_TOOLTIP_MIN": "لسٽ ۾ ننڍي کان ننڍو قدر ڄاڻايو.",
+ "MATH_ONLIST_OPERATOR_MAX": "لسٽ جو وڏي ۾ وڏو قدر",
+ "MATH_ONLIST_TOOLTIP_MAX": "لسٽ ۾ وڏي کان وڏو قدر ڄاڻايو.",
+ "MATH_ONLIST_OPERATOR_AVERAGE": "لسٽ جي سراسري",
+ "MATH_ONLIST_OPERATOR_MEDIAN": "لسٽ جو مڌيان",
+ "MATH_ONLIST_TOOLTIP_MEDIAN": "لسٽ جو مڌيان انگ ڄاڻايو.",
+ "TEXT_CREATE_JOIN_TITLE_JOIN": "شامل ٿيو",
+ "TEXT_CHANGECASE_OPERATOR_UPPERCASE": "وڏن اکرن ڏانهن",
+ "TEXT_CHANGECASE_OPERATOR_LOWERCASE": "ننڍن اکر ڏانهن",
+ "TEXT_PRINT_TITLE": "ڇاپيو %1",
+ "TEXT_PRINT_TOOLTIP": "ڄاڻايل تحرير، انگ يا ڪو ٻيو قدر ڇاپيو.",
+ "LISTS_CREATE_EMPTY_TITLE": "خالي فهرست تخليق ڪريو",
+ "LISTS_CREATE_WITH_CONTAINER_TITLE_ADD": "لسٽ",
+ "LISTS_CREATE_WITH_ITEM_TOOLTIP": "فهرست ۾ ڪا شي شامل ڪريو.",
+ "LISTS_INLIST": "فهرست ۾",
+ "LISTS_GET_INDEX_REMOVE": "هٽايو",
+ "LISTS_GET_INDEX_FROM_END": "# آخر کان",
+ "LISTS_GET_INDEX_FIRST": "پهريون",
+ "LISTS_GET_INDEX_LAST": "آخري",
+ "LISTS_GET_INDEX_RANDOM": "بي ترتيب",
+ "LISTS_SET_INDEX_SET": "ميڙ",
+ "LISTS_SET_INDEX_INSERT": "تي داخل ڪريو",
+ "LISTS_SET_INDEX_INPUT_TO": "جيان",
+ "LISTS_GET_SUBLIST_END_FROM_START": "ڏانهن #",
+ "LISTS_GET_SUBLIST_END_FROM_END": "ڏانهن # آخر کان",
+ "LISTS_GET_SUBLIST_END_LAST": "آخري ڏانهن",
+ "PROCEDURES_DEFNORETURN_TITLE": "ڏانهن",
+ "PROCEDURES_DEFNORETURN_PROCEDURE": "ڪجھ ڪريو",
+ "PROCEDURES_BEFORE_PARAMS": "سان:",
+ "PROCEDURES_CALL_BEFORE_PARAMS": "سان:",
+ "PROCEDURES_DEFRETURN_RETURN": "واپس ورو",
+ "PROCEDURES_MUTATORCONTAINER_TITLE": "ان پُٽس",
+ "PROCEDURES_CREATE_DO": "تخليق ڪريو '%1'"
+}
diff --git a/blockly/msg/json/shn.json b/blockly/msg/json/shn.json
new file mode 100644
index 0000000..0f747e5
--- /dev/null
+++ b/blockly/msg/json/shn.json
@@ -0,0 +1,108 @@
+{
+ "@metadata": {
+ "authors": [
+ "Saosukham"
+ ]
+ },
+ "VARIABLES_DEFAULT_NAME": "ဢၼ်",
+ "TODAY": "မိူဝ်ႈၼႆႉ",
+ "DUPLICATE_BLOCK": "ထုတ်ႇ",
+ "ADD_COMMENT": "သႂ်ႇၶေႃႈၵႂၢမ်း",
+ "REMOVE_COMMENT": "ဢဝ်ဢွၵ်ႇ ၶေႃႈၵႂၢမ်း",
+ "EXTERNAL_INPUTS": "ၶိူင်ႈဢၼ်လုၵ်ႉတၢင်းၼွၵ်ႈၶဝ်ႈမႃး",
+ "INLINE_INPUTS": "ၶိူင်ႈဢၼ်ၶဝ်ႈမႃးၸွမ်းလႅင်း",
+ "DELETE_BLOCK": "မွတ်ႇပလွၵ်ႉ",
+ "DELETE_X_BLOCKS": "မွတ်ႇပလွၵ်ႉ %1",
+ "COLLAPSE_BLOCK": "ပလွၵ်ႉလႅဝ်",
+ "COLLAPSE_ALL": "ပလွၵ်ႉတင်းၼမ် လႅဝ်",
+ "EXPAND_BLOCK": "ၶႂၢၵ်ႈပလွၵ်ႉ",
+ "EXPAND_ALL": "ၶႂၢၵ်ႈပလွၵ်ႉတင်းၼမ်",
+ "DISABLE_BLOCK": "ဢမ်ႇၸၢင်ႈပလွၵ်ႉ",
+ "ENABLE_BLOCK": "ၵမ်ႉထႅမ်ပၼ် ပလွၵ်ႉ",
+ "HELP": "ၸွႆႈထႅမ်",
+ "CHANGE_VALUE_TITLE": "လႅၵ်ႈလၢႆႈၼမ်ႉၵတ်ႉ",
+ "NEW_VARIABLE": "လၢႆႈဢၼ်မႂ်ႇ",
+ "NEW_VARIABLE_TITLE": "ၸိုဝ်ႈဢၼ်လၢႆႈမႂ်ႇ",
+ "RENAME_VARIABLE": "လိုမ်ႉၶိုၼ်း ဢၼ်လၢႆႈမႂ်ႇ",
+ "RENAME_VARIABLE_TITLE": "လိုမ်ႉၶိုၼ်း ဢၼ်လၢႆႈမႂ်ႇၸိူဝ်းၼၼ်ႉ '%1' ထိုင်",
+ "COLOUR_PICKER_HELPURL": "https://en.wikipedia.org/wiki/Color သီ",
+ "COLOUR_PICKER_TOOLTIP": "လိူၵ်ႈသီ တမ်ႈတီႈ ၽႃးလႅတ်ႉ",
+ "COLOUR_RANDOM_TITLE": "သီလၢမ်းလိမ်း",
+ "COLOUR_RANDOM_TOOLTIP": "လိူၵ်ႈသီတမ်ႈတီႈလွၵ်းလၢမ်းလိမ်း",
+ "COLOUR_RGB_TITLE": "ႁူမ်ႈၵိုၵ်းသီ",
+ "COLOUR_RGB_RED": "လီင်",
+ "COLOUR_RGB_GREEN": "ၶဵဝ်",
+ "COLOUR_RGB_BLUE": "သွမ်ႇ",
+ "COLOUR_RGB_TOOLTIP": "ႁဵတ်းတူၺ်း သီဢၼ်ၼိုင်ႈ ၸွမ်းၼင်ႇမၵ်းမၼ်ႈဝႆႉ ၼႂ်းၶႂၢင်ႇ သီလႅင်, ၶဵဝ် လႄႈ သွမ်ႇ။ ၼမ်ႉၼၵ်းသီ တေလႆႈမီးၼႂ်းဝူင်ႈၵၢင် 0 တေႃႇ 100.",
+ "COLOUR_BLEND_TITLE": "လေႃးလႄး",
+ "COLOUR_BLEND_COLOUR1": "သီ 1",
+ "COLOUR_BLEND_COLOUR2": "သီ 2",
+ "COLOUR_BLEND_RATIO": "သႅၼ်း",
+ "COLOUR_BLEND_TOOLTIP": "ဢဝ်သီသွင်ဢၼ်လေႃးၵၼ် ၸွမ်းၼမ် သႅၼ်းဢၼ်ပၼ်ဝႆႉ (0.0 - 1.0).",
+ "CONTROLS_REPEAT_HELPURL": "https://en.wikipedia.org/wiki/For_loop တႃႇတူင်ႇမူၼ်း",
+ "CONTROLS_REPEAT_TITLE": "ပၼ်ႇၶိုၼ်း %1 ၵမ်း",
+ "CONTROLS_REPEAT_INPUT_DO": "ႁဵတ်း",
+ "CONTROLS_REPEAT_TOOLTIP": "ႁဵတ်းၶေႃႈၵဵပ်းထွၼ်ၵမ်ႈၽွင်ႈ တင်းၼမ်",
+ "CONTROLS_WHILEUNTIL_OPERATOR_WHILE": "ၶၢဝ်းတိုၵ်ႉလိုမ်ႉ",
+ "CONTROLS_WHILEUNTIL_OPERATOR_UNTIL": "တိုၵ်ႉလိုမ်ႉထိုင်",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_WHILE": "ပေႃးဝႃႈ ၵႃႈၶၼ် (ၼမ်ႉၵတ်ႉ) မၢၼ်ႇမႅၼ်ႈယဝ်ႉၸိုင် ႁဵတ်းၶေႃႈၵဵပ်းထွၼ်ၵမ်ႈၽွင်ႈ",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL": "ပေႃးဝႃႈ ၵႃႈၶၼ် (ၼမ်ႉၵတ်ႉ) ဢမ်ႇမၢၼ်ႇမႅၼ်ႈၸိုင် ႁဵတ်းၶေႃႈၵဵပ်းထွၼ် ၵမ်ႈၽွင်ႈ",
+ "CONTROLS_FOR_TITLE": "တႄႇဢၢၼ်ႇၵိုၵ်း %1 တေႃႇ %2 တေႃႇ %3 လူၺ်ႈ %4",
+ "CONTROLS_FOREACH_TITLE": "တႃႇၵူႈဢၼ်ဢၼ် ၼႂ်း %1 သဵၼ်ႈမၢႆ %2",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK": "ဢွၵ်ႇတီႈၶွပ်ႇမူၼ်း",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE": "သိုပ်ႇပၼ်ႇထႅင်ႈ ၶွပ်ႇမူၼ်းတၢင်ႇဢၼ်",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK": "ၵိုတ်းပႅတ်ႈ ၶွပ်ႇမူၼ်း ဢၼ်မီးဝႆႉ",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE": "ဝဵၼ်ႉဝႆႉ ၶွပ်ႇမူၼ်း ဢၼ်ၵိုတ်းၸိူဝ်ႈဝႆႉ, သေ သိုပ်ႇထႅင်ႈတၢင်ႇဢၼ်",
+ "CONTROLS_FLOW_STATEMENTS_WARNING": "ၾၢင်ႉ: ပလွၵ်ႉဢၼ်ၼႆႉ ၵူၺ်းၸႂ်ႉလူၺ်ႈတႃႇ ၶွပ်ႇမူၼ်းၵူၺ်း",
+ "CONTROLS_IF_TOOLTIP_1": "ပေႃးဝႃႈ ၵႃႈၶၼ် (ၼမ်ႉၵတ်ႉ) မၢၼ်ႇမႅၼ်ႈယဝ်ႉၸိုင် ႁဵတ်းၶေႃႈၵဵပ်းထွၼ်ၵမ်ႈၽွင်ႈ",
+ "CONTROLS_IF_TOOLTIP_2": "သင်ဝႃႈ ၵႃႈၶၼ်(ၼမ်ႉၵတ်ႉ)မၢၼ်ႇမႅၼ်ႈၸိုင် ႁဵတ်းပလွၵ်ႉဢွၼ်တၢင်းသုတ်း တီႈၼႂ်းၶေႃႈၵဵပ်းထွၼ်တ။ လိူဝ်သေၼၼ်ႉ ႁဵတ်းပႅတ်ႈ ပလွၵ်ႉသွင် တီႈၼႂ်းၶေႃႈၵဵပ်းထွၼ်",
+ "CONTROLS_IF_TOOLTIP_3": "သင်ဝႃႈ ၵႃႈၶၼ်(ၼမ်ႉၵတ်ႉ)မၢႉၼိုင်ႈ မၢၼ်ႇမႅၼ်ႈၸိုင် ႁဵတ်းပလွၵ်ႉဢွၼ်တၢင်းသုတ်း တီႈၼႂ်းၶေႃႈၵဵပ်းထွၼ်တ။ သင်ဝႃႈ ၵႃႈၶၼ်(ၼမ်ႉၵတ်ႉ)မၢႆသွင်မၢၼ်ႇမႅၼ်ႈၸိုင် ႁဵတ်းပႅတ်ႈ ပလွၵ်ႉသွင် တီႈၼႂ်းၶေႃႈၵဵပ်းထွၼ်",
+ "CONTROLS_IF_TOOLTIP_4": "သင်ဝႃႈ ၵႃႈၶၼ်(ၼမ်ႉၵတ်ႉ)မၢႆၼိုင်ႈ မၢၼ်ႇမႅၼ်ႈၸိုင် ႁဵတ်းပလွၵ်ႉဢွၼ်တၢင်းသုတ်း တီႈၼႂ်းၶေႃႈၵဵပ်းထွၼ်တ။ လိူဝ်သေၼၼ်ႉ, သင်ဝႃႈ ၵႃႈၶၼ် (ၼမ်ႉၵတ်ႉ) မၢႆသွင် မၢၼ်ႇမႅၼ်ႈၸိုင် ႁဵတ်းပႅတ်ႈ ပလွၵ်ႉသွင် တီႈၼႂ်းၶေႃႈၵဵပ်းထွၼ်တ။ သင်ဝႃႈ ၵႃႈၶၼ်(ၼမ်ႉၵတ်ႉ) ဢမ်ႇမီးလွင်ႈမၢၼ်ႇမႅၼ်ႈ သင်ၸိုင် ႁဵတ်းပႅတ်ႈပလွၵ်ႉ ၵမ်းလိုမ်း တီႈၼႂ်းၶေႃႈၵဵပ်းထွၼ်တ။",
+ "CONTROLS_IF_MSG_IF": "သင်ဝႃႈ",
+ "CONTROLS_IF_MSG_ELSEIF": "သင်ဝႃႈ လိူဝ်သေၼၼ်ႉ",
+ "CONTROLS_IF_MSG_ELSE": "လိူဝ်သေၼၼ်ႉ",
+ "CONTROLS_IF_ELSEIF_TOOLTIP": "သင်ဝႃႈ ပလွၵ်ႉၸိုင် သႂ်ႇပၼ်လွင်ႈတၢင်းမၼ်း တမ်ႈ",
+ "CONTROLS_IF_ELSE_TOOLTIP": "သႂ်ႇၵမ်းလိုၼ်း, သင်ဝႃႈ ပလွၵ်ႉၸိုင် ဢဝ်လွင်ႈတၢင်းမၼ်းတင်းသဵင်ႈ တမ်ႈ",
+ "LOGIC_COMPARE_HELPURL": "https://en.wikipedia.org/wiki/Inequality_(ပၢႆးၼပ်ႉ)",
+ "LOGIC_COMPARE_TOOLTIP_EQ": "သင်ဝႃႈ ဢၼ်ၽိူမ်ႉသႂ်ႇ တင်းသွင် မိူၼ်တၢင်ႇဢၼ်ၸိုင် မႄးၶိုၼ်း ႁႂ်ႈမၢၼ်ႇမႅၼ်ႈ",
+ "LOGIC_COMPARE_TOOLTIP_NEQ": "သင်ဝႃႈ ဢၼ်ၽိူမ်ႉသႂ်ႇ တင်းသွင် ဢမ်ႇမိူၼ်တၢင်ႇဢၼ်ၸိုင် မႄးၶိုၼ်း ႁႂ်ႈမၢၼ်ႇမႅၼ်ႈ",
+ "LOGIC_COMPARE_TOOLTIP_LT": "သင်ဝႃႈ ဢၼ်ၽိူမ်ႉသႂ်ႇ ဢွၼ်တၢင်း မိူၼ် ဢၼ်ၽိူမ်ႉသႂ်ႇ မၢႆသွင်ၸိုင် မႄးၶိုၼ်း ႁႂ်ႈမၢၼ်ႇမႅၼ်ႈ",
+ "LOGIC_COMPARE_TOOLTIP_LTE": "သင်ဝႃႈ ဢၼ်ၽိူမ်ႉသႂ်ႇ ဢွၼ်တၢင်း မိူၼ် ဢမ်ႇၼၼ် ၽဵင်ႇပဵင်း ဢၼ်ၽိူမ်ႉသႂ်ႇ မၢႆသွင်ၸိုင် မႄးၶိုၼ်း ႁႂ်ႈမၢၼ်ႇမႅၼ်ႈ",
+ "LOGIC_COMPARE_TOOLTIP_GT": "သင်ဝႃႈ ဢၼ်ၽိူမ်ႉသႂ်ႇ ဢွၼ်တၢင်း ယႂ်ႇလိူဝ် ဢၼ်ၽိူမ်ႉသႂ်ႇ မၢႆသွင်ၸိုင် မႄးၶိုၼ်း ႁႂ်ႈမၢၼ်ႇမႅၼ်ႈ",
+ "LOGIC_COMPARE_TOOLTIP_GTE": "သင်ဝႃႈ ဢၼ်ၽိူမ်ႉသႂ်ႇ ဢွၼ်တၢင်း ယႂ်ႇလိူဝ် ဢမ်ႇၼၼ် ၽဵင်ႇပဵင်း ဢၼ်ၽိူမ်ႉသႂ်ႇ မၢႆသွင်ၸိုင် မႄးၶိုၼ်း ႁႂ်ႈမၢၼ်ႇမႅၼ်ႈ",
+ "LOGIC_OPERATION_TOOLTIP_AND": "သင်ဝႃႈ ဢၼ်ၽိူမ်ႉသႂ်ႇ တင်းသွင်ဢၼ် မၢၼ်ႇမႅၼ်ႈၸိုင်ၸိုင် မႄးၶိုၼ်း ႁႂ်ႈမၢၼ်ႇမႅၼ်ႈ",
+ "LOGIC_OPERATION_AND": "လႄႈ",
+ "LOGIC_OPERATION_TOOLTIP_OR": "သင်ဝႃႈ ဢၼ်ၽိူမ်ႉသႂ်ႇ ၵမ်းလိုၼ်းသုတ်း မၢၼ်ႇမႅၼ်ႈၸိုင် မႄးၶိုၼ်း ႁႂ်ႈမၢၼ်ႇမႅၼ်ႈ",
+ "LOGIC_OPERATION_OR": "ဢမ်ႇၼၼ်",
+ "LOGIC_NEGATE_TITLE": "ဢမ်ႇၸႂ်ႈ %1",
+ "LOGIC_NEGATE_TOOLTIP": "သင်ဝႃႈ ဢၼ်ၽိူမ်ႉသႂ်ႇ ဢမ်ႇၼႅၼ်ႈၼႃၸိုင် မႄးၶိုၼ်း ႁႂ်ႈမၢၼ်ႇမႅၼ်ႈ။ သင်ဝႃႈ ဢၼ်ၽိူမ်ႉသႂ်ႇ မၢၼ်ႇမႅၼ်ႈၸိုင် ၶိုၼ်းမူၼ်ႉမႄး ႁႂ်ႈၼႅၼ်ႈၼႃ",
+ "LOGIC_BOOLEAN_TRUE": "မၢၼ်ႇမႅၼ်ႈ",
+ "LOGIC_BOOLEAN_FALSE": "ဢမ်ႇၼႅၼ်ႈၼႃ",
+ "LOGIC_BOOLEAN_TOOLTIP": "မၢၼ်ႇမႅၼ်ႈလႄႈသင် ဢမ်ႇၼႅၼ်ႈၼႃလႄႈသင် ႁူၼ်ၶိုၼ်း",
+ "LOGIC_NULL": "ဢမ်ႇၶဝ်ႈၶႂၢင်ႇ",
+ "LOGIC_NULL_TOOLTIP": "လဵဝ်ၶိုၼ်း ဢမ်ႇၶဝ်ႈၶႂၢင်ႇ",
+ "LOGIC_TERNARY_CONDITION": "ၸၢမ်း",
+ "LOGIC_TERNARY_IF_TRUE": "သင်ဝႃႈ မၢၼ်ႇမႅၼ်ႈ",
+ "LOGIC_TERNARY_IF_FALSE": "သင်ဝႃႈ ဢမ်ႇၼႅၼ်ႈၼႃ",
+ "LOGIC_TERNARY_TOOLTIP": "ၸၢမ်းၵူတ်ႇတူၺ်း သၢႆငၢႆ။ သင်ဝႃႈ သၢႆငၢႆမၢၼ်ႇမႅၼ်ႈ, လဵဝ်ၶိုၼ်း ၵႃႈၶၼ် (ၼမ်ႉၵတ်ႉ) 'သင်မၢၼ်ႇမႅၼ်ႈ'; လိူဝ်ၼၼ်ႉ လဵဝ်ၶိုၼ်း ၵႃႈၶၼ် (ၼမ်ႉၵတ်ႉ) 'သင်ဢမ်ႇၼႅၼ်ႈၼႃ'။",
+ "MATH_NUMBER_HELPURL": "https://en.wikipedia.org/wiki/မၢႆၼပ်ႉ",
+ "MATH_NUMBER_TOOLTIP": "မၢႆၼပ်ႉ ၼိုင်ႈဢၼ်",
+ "MATH_ARITHMETIC_HELPURL": "https://en.wikipedia.org/wiki/ပၢႆးၼပ်ႉ",
+ "MATH_ARITHMETIC_TOOLTIP_ADD": "လဵဝ်ၶိုၼ်း တၢင်းၼမ် ၼႂ်းမၢႆၼပ်ႉ သွင်",
+ "MATH_ARITHMETIC_TOOLTIP_MINUS": "လဵဝ်ၶိုၼ်း ဢၼ်ပႅၵ်ႇပိူင်ႈ ၼႂ်းမၢႆၼပ်ႉ သွင်",
+ "MATH_ARITHMETIC_TOOLTIP_MULTIPLY": "လဵဝ်ၶိုၼ်း ဢၼ်ဢဝ်ဢွၵ်ႇ ၼႂ်းမၢႆၼပ်ႉ သွင်",
+ "MATH_ARITHMETIC_TOOLTIP_DIVIDE": "လဵဝ်ၶိုၼ်း ပမႃႇၼ ၼႂ်းမၢႆၼပ်ႉ သွင်",
+ "MATH_ARITHMETIC_TOOLTIP_POWER": "လဵဝ်ၶိုၼ်း တူဝ်ၼပ်ႉမၢႆၼိုင်ႈၼႆႉ ၸွႆႈႁႅင်းပၼ် တူဝ်ၼပ်ႉမၢႆသွင်",
+ "MATH_SINGLE_HELPURL": "https://en.wikipedia.org/wiki/Square_root (မၢႆတူပ်ႉမိူၼ်)",
+ "MATH_SINGLE_OP_ROOT": "မၢႆတူပ်ႉမိူၼ်",
+ "MATH_SINGLE_TOOLTIP_ROOT": "လဵဝ်ၶိုၼ်း မၢႆတူပ်ႉမိူၼ် ၼႂ်းမၢႆၼပ်ႉ",
+ "MATH_SINGLE_OP_ABSOLUTE": "ပၵတိ",
+ "MATH_SINGLE_TOOLTIP_ABS": "လဵဝ်ၶိုၼ်း ၵႃႈၶၼ် (ၼမ်ႉၵတ်ႉ) ပၵတိ ၼႂ်းမၢႆၼပ်ႉ",
+ "MATH_SINGLE_TOOLTIP_NEG": "လဵဝ်ၶိုၼ်း ဢၼ်သၢၼ်ၶတ်း ၼႂ်း မၢႆၼပ်ႉ",
+ "MATH_SINGLE_TOOLTIP_LN": "လဵဝ်ၶိုၼ်း လွၵ်းလၢႆးၼပ်ႉ ၼႂ်းမၢႆၼပ်ႉ",
+ "MATH_SINGLE_TOOLTIP_LOG10": "လဵဝ်ၶိုၼ်း ပိုၼ်ႉထၢၼ် 10 လွၵ်းလၢႆးၼပ်ႉ ၼႂ်းမၢႆၼပ်ႉ",
+ "MATH_SINGLE_TOOLTIP_EXP": "လဵဝ်ၶိုၼ်း e ၵႂႃႇတီႈ ပႃႇဝႃႇ ၼႂ်းမၢႆၼပ်ႉ",
+ "MATH_SINGLE_TOOLTIP_POW10": "လဵဝ်ၶိုၼ်း 10 ၵႂႃႇတီႈ ပႃႇဝႃႇ ၼႂ်းမၢႆၼပ်ႉ",
+ "MATH_IS_EVEN": "ပဵၼ်ၵူပ်ႉ",
+ "MATH_IS_ODD": "ပဵၼ်ၵိၵ်ႈ"
+}
diff --git a/blockly/msg/json/sk.json b/blockly/msg/json/sk.json
new file mode 100644
index 0000000..ad8b9b0
--- /dev/null
+++ b/blockly/msg/json/sk.json
@@ -0,0 +1,304 @@
+{
+ "@metadata": {
+ "authors": [
+ "Jaroslav.micek",
+ "Marian.stano",
+ "Mark"
+ ]
+ },
+ "VARIABLES_DEFAULT_NAME": "prvok",
+ "TODAY": "Dnes",
+ "DUPLICATE_BLOCK": "Duplikovať",
+ "ADD_COMMENT": "Pridať komentár",
+ "REMOVE_COMMENT": "Odstrániť komentár",
+ "EXTERNAL_INPUTS": "Vonkajšie vstupy",
+ "INLINE_INPUTS": "Riadkové vstupy",
+ "DELETE_BLOCK": "Odstrániť blok",
+ "DELETE_X_BLOCKS": "Odstrániť %1 blokov",
+ "DELETE_ALL_BLOCKS": "Zmazať všetkých %1 dielcov?",
+ "CLEAN_UP": "Narovnať bloky",
+ "COLLAPSE_BLOCK": "Zvinúť blok",
+ "COLLAPSE_ALL": "Zvinúť bloky",
+ "EXPAND_BLOCK": "Rozvinúť blok",
+ "EXPAND_ALL": "Rozvinúť bloky",
+ "DISABLE_BLOCK": "Vypnúť blok",
+ "ENABLE_BLOCK": "Povoliť blok",
+ "HELP": "Pomoc",
+ "CHANGE_VALUE_TITLE": "Zmeniť hodnotu:",
+ "RENAME_VARIABLE": "Premenovať premennú...",
+ "RENAME_VARIABLE_TITLE": "Premenovať všetky premenné '%1' na:",
+ "NEW_VARIABLE": "Nová premenná...",
+ "NEW_VARIABLE_TITLE": "Názov novej premennej:",
+ "COLOUR_PICKER_HELPURL": "https://en.wikipedia.org/wiki/Color",
+ "COLOUR_PICKER_TOOLTIP": "Zvoľte farbu z palety.",
+ "COLOUR_RANDOM_TITLE": "náhodná farba",
+ "COLOUR_RANDOM_TOOLTIP": "Zvoliť farbu náhodne.",
+ "COLOUR_RGB_TITLE": "ofarbiť s",
+ "COLOUR_RGB_RED": "červená",
+ "COLOUR_RGB_GREEN": "zelená",
+ "COLOUR_RGB_BLUE": "modrá",
+ "COLOUR_RGB_TOOLTIP": "Vytvoriť farbu pomocou zadaného množstva červenej, zelenej a modrej. Množstvo musí byť medzi 0 a 100.",
+ "COLOUR_BLEND_TITLE": "zmiešať",
+ "COLOUR_BLEND_COLOUR1": "farba 1",
+ "COLOUR_BLEND_COLOUR2": "farba 2",
+ "COLOUR_BLEND_RATIO": "pomer",
+ "COLOUR_BLEND_TOOLTIP": "Zmieša dve farby v danom pomere (0.0 - 1.0).",
+ "CONTROLS_REPEAT_HELPURL": "https://en.wikipedia.org/wiki/For_loop",
+ "CONTROLS_REPEAT_TITLE": "opakuj %1 krát",
+ "CONTROLS_REPEAT_INPUT_DO": "rob",
+ "CONTROLS_REPEAT_TOOLTIP": "Opakuj určité príkazy viackrát.",
+ "CONTROLS_WHILEUNTIL_OPERATOR_WHILE": "opakuj kým",
+ "CONTROLS_WHILEUNTIL_OPERATOR_UNTIL": "opakuj kým nebude",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_WHILE": "Kým je hodnota pravdivá, vykonávaj príkazy.",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL": "Kým je hodnota nepravdivá, vykonávaj príkazy.",
+ "CONTROLS_FOR_TOOLTIP": "Nechá premennú '%1' nadobúdať hodnoty od začiatočného čísla po konečné s daným medzikrokom a vykoná zadané bloky.",
+ "CONTROLS_FOR_TITLE": "počítať s %1 od %2 do %3 o %4",
+ "CONTROLS_FOREACH_TITLE": "pre každý prvok %1 v zozname %2",
+ "CONTROLS_FOREACH_TOOLTIP": "Pre každý prvok v zozname priraď jeho hodnotu do premenej '%1' a vykonaj príkazy.",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK": "opustiť slučku",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE": "prejdi na nasledujúce opakovanie slučky",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK": "Opustiť túto slučku.",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE": "Vynechať zvyšok tejto slučky a pokračovať ďalším opakovaním.",
+ "CONTROLS_FLOW_STATEMENTS_WARNING": "Upozornenie: Tento blok sa môže používať len v rámci slučky.",
+ "CONTROLS_IF_TOOLTIP_1": "Ak je hodnota pravda, vykonaj príkazy.",
+ "CONTROLS_IF_TOOLTIP_2": "Ak je hodnota pravda, vykonaj príkazy v prvom bloku. Inak vykonaj príkazy v druhom bloku.",
+ "CONTROLS_IF_TOOLTIP_3": "Ak je prvá hodnota pravda, vykonaj príkazy v prvom bloku. Inak, ak je druhá hodnota pravda, vykonaj príkazy v druhom bloku.",
+ "CONTROLS_IF_TOOLTIP_4": "Ak je prvá hodnota pravda, vykonaj príkazy v prvom bloku. Inak, ak je druhá hodnota pravda, vykonaj príkazy v druhom bloku. Ak ani jedna hodnota nie je pravda, vykonaj príkazy v poslednom bloku.",
+ "CONTROLS_IF_MSG_IF": "ak",
+ "CONTROLS_IF_MSG_ELSEIF": "inak ak",
+ "CONTROLS_IF_MSG_ELSE": "inak",
+ "CONTROLS_IF_IF_TOOLTIP": "Pridať, odstrániť alebo zmeniť poradie oddielov tohto \"ak\" bloku.",
+ "CONTROLS_IF_ELSEIF_TOOLTIP": "Pridať podmienku k \"ak\" bloku.",
+ "CONTROLS_IF_ELSE_TOOLTIP": "Pridať poslednú záchytnú podmienku k \"ak\" bloku.",
+ "LOGIC_COMPARE_HELPURL": "https://en.wikipedia.org/wiki/Inequality_(mathematics)",
+ "LOGIC_COMPARE_TOOLTIP_EQ": "Vráť hodnotu pravda, ak sú vstupy rovnaké.",
+ "LOGIC_COMPARE_TOOLTIP_NEQ": "Vráť hodnotu pravda, ak vstupy nie sú rovnaké.",
+ "LOGIC_COMPARE_TOOLTIP_LT": "Vráť hodnotu pravda, ak prvý vstup je menší než druhý.",
+ "LOGIC_COMPARE_TOOLTIP_LTE": "Vráť hodnotu pravda ak prvý vstup je menší alebo rovný druhému.",
+ "LOGIC_COMPARE_TOOLTIP_GT": "Vráť hodnotu pravda ak prvý vstup je väčší než druhý.",
+ "LOGIC_COMPARE_TOOLTIP_GTE": "Vráť hodnotu pravda ak prvý vstup je väčší alebo rovný druhému.",
+ "LOGIC_OPERATION_TOOLTIP_AND": "Vráť hodnotu pravda, ak sú vstupy pravdivé.",
+ "LOGIC_OPERATION_AND": "a",
+ "LOGIC_OPERATION_TOOLTIP_OR": "Vráť hodnotu pravda, ak je aspoň jeden vstup pravda.",
+ "LOGIC_OPERATION_OR": "alebo",
+ "LOGIC_NEGATE_TITLE": "nie je %1",
+ "LOGIC_NEGATE_TOOLTIP": "Vráti hodnotu pravda, ak je vstup nepravda. Vráti hodnotu nepravda ak je vstup pravda.",
+ "LOGIC_BOOLEAN_TRUE": "pravda",
+ "LOGIC_BOOLEAN_FALSE": "nepravda",
+ "LOGIC_BOOLEAN_TOOLTIP": "Vráť buď hodnotu pravda alebo nepravda.",
+ "LOGIC_NULL": "nič",
+ "LOGIC_NULL_TOOLTIP": "Vráti hodnotu nula.",
+ "LOGIC_TERNARY_CONDITION": "test",
+ "LOGIC_TERNARY_IF_TRUE": "ak pravda",
+ "LOGIC_TERNARY_IF_FALSE": "ak nepravda",
+ "LOGIC_TERNARY_TOOLTIP": "Skontroluj podmienku testom. Ak je podmienka pravda, vráť hodnotu \"ak pravda\", inak vráť hodnotu \"ak nepravda\".",
+ "MATH_NUMBER_HELPURL": "https://en.wikipedia.org/wiki/Number",
+ "MATH_NUMBER_TOOLTIP": "Číslo.",
+ "MATH_TRIG_ASIN": "arcsin",
+ "MATH_TRIG_ACOS": "arccos",
+ "MATH_TRIG_ATAN": "arctan",
+ "MATH_ARITHMETIC_HELPURL": "https://en.wikipedia.org/wiki/Arithmetic",
+ "MATH_ARITHMETIC_TOOLTIP_ADD": "Vráť súčet dvoch čísel.",
+ "MATH_ARITHMETIC_TOOLTIP_MINUS": "Vráť rozdiel dvoch čísel.",
+ "MATH_ARITHMETIC_TOOLTIP_MULTIPLY": "Vráť súčin dvoch čísel.",
+ "MATH_ARITHMETIC_TOOLTIP_DIVIDE": "Vráť podiel dvoch čísel.",
+ "MATH_ARITHMETIC_TOOLTIP_POWER": "Vráť prvé číslo umocnené druhým.",
+ "MATH_SINGLE_HELPURL": "https://en.wikipedia.org/wiki/Square_root",
+ "MATH_SINGLE_OP_ROOT": "druhá odmocnina",
+ "MATH_SINGLE_TOOLTIP_ROOT": "Vráť druhú odmocninu čísla.",
+ "MATH_SINGLE_OP_ABSOLUTE": "absolútna hodnota",
+ "MATH_SINGLE_TOOLTIP_ABS": "Vráť absolútnu hodnotu čísla.",
+ "MATH_SINGLE_TOOLTIP_NEG": "Vráť opačné číslo.",
+ "MATH_SINGLE_TOOLTIP_LN": "Vráť prirodzený logaritmus čísla.",
+ "MATH_SINGLE_TOOLTIP_LOG10": "Vráť logaritmus čísla so základom 10.",
+ "MATH_SINGLE_TOOLTIP_EXP": "Vráť e umocnené číslom.",
+ "MATH_SINGLE_TOOLTIP_POW10": "Vráť 10 umocnené číslom.",
+ "MATH_TRIG_HELPURL": "https://en.wikipedia.org/wiki/Trigonometric_functions",
+ "MATH_TRIG_TOOLTIP_SIN": "Vráť sínus uhla (v stupňoch).",
+ "MATH_TRIG_TOOLTIP_COS": "Vráť kosínus uhla (v stupňoch).",
+ "MATH_TRIG_TOOLTIP_TAN": "Vráť tangens uhla (v stupňoch).",
+ "MATH_TRIG_TOOLTIP_ASIN": "Vráť arkus sínus čísla.",
+ "MATH_TRIG_TOOLTIP_ACOS": "Vráť arkus kosínus čísla.",
+ "MATH_TRIG_TOOLTIP_ATAN": "Vráť arkus tangens čísla.",
+ "MATH_CONSTANT_HELPURL": "https://en.wikipedia.org/wiki/Mathematical_constant‎",
+ "MATH_CONSTANT_TOOLTIP": "Vráť jednu zo zvyčajných konštánt: π (3.141…), e (2.718…), φ (1.618…), sqrt(2) (1.414…), sqrt(½) (0.707…), alebo ∞ (nekonečno).",
+ "MATH_IS_EVEN": "je párne",
+ "MATH_IS_ODD": "je nepárne",
+ "MATH_IS_PRIME": "je prvočíslo",
+ "MATH_IS_WHOLE": "je celé číslo",
+ "MATH_IS_POSITIVE": "je kladné",
+ "MATH_IS_NEGATIVE": "je záporné",
+ "MATH_IS_DIVISIBLE_BY": "je deliteľné",
+ "MATH_IS_TOOLTIP": "Skontroluj či je číslo párne, nepárne, celé, kladné, záporné alebo deliteľné určitým číslom. Vráť hodnotu pravda alebo nepravda.",
+ "MATH_CHANGE_HELPURL": "https://en.wikipedia.org/wiki/Programming_idiom#Incrementing_a_counter",
+ "MATH_CHANGE_TITLE": "zmeniť %1 o %2",
+ "MATH_CHANGE_TOOLTIP": "Pridaj číslo do premennej \"%1\".",
+ "MATH_ROUND_HELPURL": "https://en.wikipedia.org/wiki/Rounding",
+ "MATH_ROUND_TOOLTIP": "Zaokrúhli číslo nahor alebo nadol.",
+ "MATH_ROUND_OPERATOR_ROUND": "zaokrúhli",
+ "MATH_ROUND_OPERATOR_ROUNDUP": "zaokrúhli nahor",
+ "MATH_ROUND_OPERATOR_ROUNDDOWN": "zaokrúhli nadol",
+ "MATH_ONLIST_OPERATOR_SUM": "súčet zoznamu",
+ "MATH_ONLIST_TOOLTIP_SUM": "Vráť súčet všetkých čísel v zozname.",
+ "MATH_ONLIST_OPERATOR_MIN": "najmenšie v zozname",
+ "MATH_ONLIST_TOOLTIP_MIN": "Vrátiť najmenšie číslo v zozname.",
+ "MATH_ONLIST_OPERATOR_MAX": "najväčšie v zozname",
+ "MATH_ONLIST_TOOLTIP_MAX": "Vrátiť najväčšie číslo v zozname.",
+ "MATH_ONLIST_OPERATOR_AVERAGE": "priemer zoznamu",
+ "MATH_ONLIST_TOOLTIP_AVERAGE": "Vráť aritmetický priemer čísel v zozname.",
+ "MATH_ONLIST_OPERATOR_MEDIAN": "medián zoznamu",
+ "MATH_ONLIST_TOOLTIP_MEDIAN": "Vráť medián čísel v zozname.",
+ "MATH_ONLIST_OPERATOR_MODE": "najčastejšie v zozname",
+ "MATH_ONLIST_TOOLTIP_MODE": "Vrátiť najčastejší prvok v zozname.",
+ "MATH_ONLIST_OPERATOR_STD_DEV": "smerodajná odchýlka zoznamu",
+ "MATH_ONLIST_TOOLTIP_STD_DEV": "Vráť smeroddajnú odchýlku zoznamu.",
+ "MATH_ONLIST_OPERATOR_RANDOM": "náhodný prvok zoznamu",
+ "MATH_ONLIST_TOOLTIP_RANDOM": "Vráť náhodne zvolený prvok zoznamu.",
+ "MATH_MODULO_HELPURL": "https://en.wikipedia.org/wiki/Modulo_operation",
+ "MATH_MODULO_TITLE": "zvyšok po delení %1 + %2",
+ "MATH_MODULO_TOOLTIP": "Vráť zvyšok po delení jedného čísla druhým.",
+ "MATH_CONSTRAIN_TITLE": "obmedz %1 od %2 do %3",
+ "MATH_CONSTRAIN_TOOLTIP": "Obmedzí číslo do zadaných hraníc (vrátane).",
+ "MATH_RANDOM_INT_HELPURL": "https://en.wikipedia.org/wiki/Random_number_generation",
+ "MATH_RANDOM_INT_TITLE": "náhodné celé číslo od %1 do %2",
+ "MATH_RANDOM_INT_TOOLTIP": "Vráť náhodné celé číslo z určeného intervalu (vrátane).",
+ "MATH_RANDOM_FLOAT_HELPURL": "https://en.wikipedia.org/wiki/Random_number_generation",
+ "MATH_RANDOM_FLOAT_TITLE_RANDOM": "náhodné číslo od 0 do 1",
+ "MATH_RANDOM_FLOAT_TOOLTIP": "Vráť náhodné číslo z intervalu 0.0 (vrátane) až 1.0.",
+ "TEXT_TEXT_HELPURL": "https://en.wikipedia.org/wiki/String_(computer_science)",
+ "TEXT_TEXT_TOOLTIP": "Písmeno, slovo alebo riadok textu.",
+ "TEXT_JOIN_TITLE_CREATEWITH": "vytvor text z",
+ "TEXT_JOIN_TOOLTIP": "Vytvor text spojením určitého počtu prvkov.",
+ "TEXT_CREATE_JOIN_TITLE_JOIN": "spoj",
+ "TEXT_CREATE_JOIN_TOOLTIP": "Pridaj, odstráň alebo zmeň poradie oddielov v tomto textovom bloku.",
+ "TEXT_CREATE_JOIN_ITEM_TOOLTIP": "Pridaj prvok do textu.",
+ "TEXT_APPEND_TO": "do",
+ "TEXT_APPEND_APPENDTEXT": "pridaj text",
+ "TEXT_APPEND_TOOLTIP": "Pridaj určitý text do premennej '%1'.",
+ "TEXT_LENGTH_TITLE": "dĺžka %1",
+ "TEXT_LENGTH_TOOLTIP": "Vráti počet písmen (s medzerami) v zadanom texte.",
+ "TEXT_ISEMPTY_TITLE": "%1 je prázdny",
+ "TEXT_ISEMPTY_TOOLTIP": "Vráti hodnotu pravda, ak zadaný text je prázdny.",
+ "TEXT_INDEXOF_TOOLTIP": "Vráti index prvého/posledného výskytu prvého textu v druhom texte. Ak nenájde, vráti %1.",
+ "TEXT_INDEXOF_INPUT_INTEXT": "v texte",
+ "TEXT_INDEXOF_OPERATOR_FIRST": "nájdi prvý výskyt textu",
+ "TEXT_INDEXOF_OPERATOR_LAST": "nájdi posledný výskyt textu",
+ "TEXT_CHARAT_INPUT_INTEXT": "v texte",
+ "TEXT_CHARAT_FROM_START": "zisti písmeno #",
+ "TEXT_CHARAT_FROM_END": "zisti # písmeno od konca",
+ "TEXT_CHARAT_FIRST": "zisti prvé písmeno",
+ "TEXT_CHARAT_LAST": "zisti posledné písmeno",
+ "TEXT_CHARAT_RANDOM": "vyber náhodné písmeno",
+ "TEXT_CHARAT_TOOLTIP": "Vráti písmeno na určenej pozícii.",
+ "TEXT_GET_SUBSTRING_TOOLTIP": "Vráti určenú časť textu.",
+ "TEXT_GET_SUBSTRING_INPUT_IN_TEXT": "v texte",
+ "TEXT_GET_SUBSTRING_START_FROM_START": "vyber podreťazec od písmena #",
+ "TEXT_GET_SUBSTRING_START_FROM_END": "vyber podreťazec od # písmena od konca",
+ "TEXT_GET_SUBSTRING_START_FIRST": "vyber podreťazec od začiatku",
+ "TEXT_GET_SUBSTRING_END_FROM_START": "po písmeno #",
+ "TEXT_GET_SUBSTRING_END_FROM_END": "po # písmeno od konca",
+ "TEXT_GET_SUBSTRING_END_LAST": "po koniec",
+ "TEXT_CHANGECASE_TOOLTIP": "Vráť kópiu textu s inou veľkosťou písmen.",
+ "TEXT_CHANGECASE_OPERATOR_UPPERCASE": "na VEĽKÉ PÍSMENÁ",
+ "TEXT_CHANGECASE_OPERATOR_LOWERCASE": "na malé písmená",
+ "TEXT_CHANGECASE_OPERATOR_TITLECASE": "na Veľké Začiatočné Písmená",
+ "TEXT_TRIM_TOOLTIP": "Vráť kópiu textu bez medzier na jednom alebo oboch koncoch.",
+ "TEXT_TRIM_OPERATOR_BOTH": "odstráň medzery z oboch strán",
+ "TEXT_TRIM_OPERATOR_LEFT": "odstráň medzery z ľavej strany",
+ "TEXT_TRIM_OPERATOR_RIGHT": "odstráň medzery z pravej strany",
+ "TEXT_PRINT_TITLE": "píš %1",
+ "TEXT_PRINT_TOOLTIP": "Napíš zadaný text, číslo alebo hodnotu.",
+ "TEXT_PROMPT_TYPE_TEXT": "výzva za zadanie textu so správou",
+ "TEXT_PROMPT_TYPE_NUMBER": "výzva na zadanie čísla so správou",
+ "TEXT_PROMPT_TOOLTIP_NUMBER": "Výzva pre používateľa na zadanie čísla.",
+ "TEXT_PROMPT_TOOLTIP_TEXT": "Výzva pre používateľa na zadanie textu.",
+ "LISTS_CREATE_EMPTY_TITLE": "prázdny zoznam",
+ "LISTS_CREATE_EMPTY_TOOLTIP": "Vráti zoznam nulovej dĺžky, ktorý neobsahuje žiadne prvky.",
+ "LISTS_CREATE_WITH_HELPURL": "https://github.com/google/blockly/wiki/Lists#create-list-with",
+ "LISTS_CREATE_WITH_TOOLTIP": "Vytvor zoznam s ľubovoľným počtom prvkov.",
+ "LISTS_CREATE_WITH_INPUT_WITH": "vytvor zoznam s",
+ "LISTS_CREATE_WITH_CONTAINER_TITLE_ADD": "zoznam",
+ "LISTS_CREATE_WITH_CONTAINER_TOOLTIP": "Pridaj, odstráň alebo zmeň poradie v tomto zoznamovom bloku.",
+ "LISTS_CREATE_WITH_ITEM_TOOLTIP": "Pridaj prvok do zoznamu.",
+ "LISTS_REPEAT_TOOLTIP": "Vytvorí zoznam s niekoľkými rovnakými prvkami s danou hodnotou.",
+ "LISTS_REPEAT_TITLE": "vytvor zoznam s prvkom %1 opakovaným %2 krát",
+ "LISTS_LENGTH_TITLE": "dĺžka %1",
+ "LISTS_LENGTH_TOOLTIP": "Vráti dĺžku zoznamu",
+ "LISTS_ISEMPTY_TITLE": "%1 je prázdny",
+ "LISTS_ISEMPTY_TOOLTIP": "Vráti pravda, ak je zoznam prázdny.",
+ "LISTS_INLIST": "v zozname",
+ "LISTS_INDEX_OF_FIRST": "nájdi prvý výskyt prvku",
+ "LISTS_INDEX_OF_LAST": "nájdi posledný výskyt prvku",
+ "LISTS_INDEX_OF_TOOLTIP": "Vráti index prvého/posledného výskytu prvku v zozname. Ak sa nič nenašlo, vráti %1.",
+ "LISTS_GET_INDEX_GET": "zisti",
+ "LISTS_GET_INDEX_GET_REMOVE": "zisti a odstráň",
+ "LISTS_GET_INDEX_REMOVE": "odstráň",
+ "LISTS_GET_INDEX_FROM_END": "# od konca",
+ "LISTS_GET_INDEX_FIRST": "prvý",
+ "LISTS_GET_INDEX_LAST": "posledný",
+ "LISTS_GET_INDEX_RANDOM": "náhodný",
+ "LISTS_INDEX_FROM_START_TOOLTIP": "%1 je počiatočný prvok.",
+ "LISTS_INDEX_FROM_END_TOOLTIP": "%1 je posledný prvok.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_FROM": "Vráti prvok na určenej pozícii v zozname.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_FIRST": "Vráti počiatočný prvok zoznamu.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_LAST": "Vráti posledný prvok zoznamu.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_RANDOM": "Vráti náhodný prvok zoznamu.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM": "Odstráni a vráti prvok z určenej pozície v zozname.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST": "Odstráni a vráti prvý prvok v zozname.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST": "Odstráni a vráti posledný prvok v zozname.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM": "Odstráni a vráti náhodný prvok v zozname.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM": "Odstráni prvok na určenej pozícii v zozname.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST": "Odstráni prvý prvok v zozname.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST": "Odstráni posledný prvok v zozname.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM": "Odstráni náhodný prvok v zozname.",
+ "LISTS_SET_INDEX_SET": "nastaviť",
+ "LISTS_SET_INDEX_INSERT": "vložiť na",
+ "LISTS_SET_INDEX_INPUT_TO": "ako",
+ "LISTS_SET_INDEX_TOOLTIP_SET_FROM": "Nastaví prvok na určenej pozícii v zozname.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_FIRST": "Nastaví prvý prvok v zozname.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_LAST": "Nastaví posledný prvok v zozname.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_RANDOM": "Nastaví posledný prvok v zozname.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_FROM": "Vsunie prvok na určenú pozíciu v zozname.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST": "Vsunie prvok na začiatok zoznamu.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_LAST": "Pripojí prvok na koniec zoznamu.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM": "Vsunie prvok na náhodné miesto v zozname.",
+ "LISTS_GET_SUBLIST_START_FROM_START": "získať podzoznam od #",
+ "LISTS_GET_SUBLIST_START_FROM_END": "Získať podzoznam od # od konca",
+ "LISTS_GET_SUBLIST_START_FIRST": "Získať podzoznam od začiatku",
+ "LISTS_GET_SUBLIST_END_FROM_START": "po #",
+ "LISTS_GET_SUBLIST_END_FROM_END": "po # od konca",
+ "LISTS_GET_SUBLIST_END_LAST": "po koniec",
+ "LISTS_GET_SUBLIST_TOOLTIP": "Skopíruje určený úsek zoznamu.",
+ "LISTS_SPLIT_LIST_FROM_TEXT": "vytvoriť zoznam z textu",
+ "LISTS_SPLIT_TEXT_FROM_LIST": "vytvoriť text zo zoznamu",
+ "LISTS_SPLIT_WITH_DELIMITER": "s oddeľovačom",
+ "LISTS_SPLIT_TOOLTIP_SPLIT": "Rozdelenie textu do zoznamu textov, lámanie na oddeľovačoch.",
+ "LISTS_SPLIT_TOOLTIP_JOIN": "Spojiť zoznam textov do jedného textu s oddeľovačmi.",
+ "VARIABLES_GET_TOOLTIP": "Vráti hodnotu tejto premennej.",
+ "VARIABLES_GET_CREATE_SET": "Vytvoriť \"nastaviť %1\"",
+ "VARIABLES_SET": "nastaviť %1 na %2",
+ "VARIABLES_SET_TOOLTIP": "Nastaví túto premennú, aby sa rovnala vstupu.",
+ "VARIABLES_SET_CREATE_GET": "Vytvoriť \"získať %1\"",
+ "PROCEDURES_DEFNORETURN_TITLE": "na",
+ "PROCEDURES_DEFNORETURN_PROCEDURE": "urob niečo",
+ "PROCEDURES_BEFORE_PARAMS": "s:",
+ "PROCEDURES_CALL_BEFORE_PARAMS": "s:",
+ "PROCEDURES_DEFNORETURN_TOOLTIP": "Vytvorí funciu bez výstupu.",
+ "PROCEDURES_DEFNORETURN_COMMENT": "Doplň, čo robí táto funkcia...",
+ "PROCEDURES_DEFRETURN_RETURN": "vrátiť",
+ "PROCEDURES_DEFRETURN_TOOLTIP": "Vytvorí funkciu s výstupom.",
+ "PROCEDURES_ALLOW_STATEMENTS": "povoliť príkazy",
+ "PROCEDURES_DEF_DUPLICATE_WARNING": "Upozornenie: Táto funkcia má duplicitné parametre.",
+ "PROCEDURES_CALLNORETURN_HELPURL": "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29",
+ "PROCEDURES_CALLNORETURN_TOOLTIP": "Spustí používateľom definovanú funkciu '%1'.",
+ "PROCEDURES_CALLRETURN_HELPURL": "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29",
+ "PROCEDURES_CALLRETURN_TOOLTIP": "Spustí používateľom definovanú funkciu '%1' a použije jej výstup.",
+ "PROCEDURES_MUTATORCONTAINER_TITLE": "vstupy",
+ "PROCEDURES_MUTATORCONTAINER_TOOLTIP": "Pridať, odstrániť alebo zmeniť poradie vstupov tejto funkcie.",
+ "PROCEDURES_MUTATORARG_TITLE": "názov vstupu:",
+ "PROCEDURES_MUTATORARG_TOOLTIP": "Pridať vstup do funkcie.",
+ "PROCEDURES_HIGHLIGHT_DEF": "Zvýrazniť definíciu funkcie",
+ "PROCEDURES_CREATE_DO": "Vytvoriť '%1'",
+ "PROCEDURES_IFRETURN_TOOLTIP": "Ak je hodnota pravda, tak vráti druhú hodnotu.",
+ "PROCEDURES_IFRETURN_WARNING": "Upozornenie: Tento blok môže byť len vo vnútri funkcie."
+}
diff --git a/blockly/msg/json/sl.json b/blockly/msg/json/sl.json
new file mode 100644
index 0000000..ade5382
--- /dev/null
+++ b/blockly/msg/json/sl.json
@@ -0,0 +1,360 @@
+{
+ "@metadata": {
+ "authors": [
+ "Anzeljg",
+ "Miloš Košir",
+ "Dbc334"
+ ]
+ },
+ "VARIABLES_DEFAULT_NAME": "element",
+ "TODAY": "Danes",
+ "DUPLICATE_BLOCK": "Podvoji",
+ "ADD_COMMENT": "Dodaj komentar",
+ "REMOVE_COMMENT": "Odstrani komentar",
+ "EXTERNAL_INPUTS": "Vnosi zunaj",
+ "INLINE_INPUTS": "Vnosi v vrsti",
+ "DELETE_BLOCK": "Izbriši kocko",
+ "DELETE_X_BLOCKS": "Izbriši kocke",
+ "DELETE_ALL_BLOCKS": "Izbrišem vseh %1 kock?",
+ "CLEAN_UP": "Ponastavi kocke",
+ "COLLAPSE_BLOCK": "Skrči kocko",
+ "COLLAPSE_ALL": "Skrči kocke",
+ "EXPAND_BLOCK": "Razširi kocko",
+ "EXPAND_ALL": "Razširi kocke",
+ "DISABLE_BLOCK": "Onemogoči kocko",
+ "ENABLE_BLOCK": "Omogoči kocko",
+ "HELP": "Pomoč",
+ "UNDO": "Razveljavi",
+ "REDO": "Ponovi",
+ "CHANGE_VALUE_TITLE": "Spremeni vrednost:",
+ "RENAME_VARIABLE": "Preimenuj spremenljivko...",
+ "RENAME_VARIABLE_TITLE": "Preimenuj vse spremenljivke '%1' v:",
+ "NEW_VARIABLE": "Nova spremenljivka...",
+ "NEW_VARIABLE_TITLE": "Ime nove spremenljivke:",
+ "COLOUR_PICKER_HELPURL": "https://en.wikipedia.org/wiki/Color",
+ "COLOUR_PICKER_TOOLTIP": "Izberi barvo s palete.",
+ "COLOUR_RANDOM_TITLE": "naključna barva",
+ "COLOUR_RANDOM_TOOLTIP": "Izbere naključno barvo.",
+ "COLOUR_RGB_HELPURL": "http://www.december.com/html/spec/colorper.html",
+ "COLOUR_RGB_TITLE": "določena barva",
+ "COLOUR_RGB_RED": "rdeča",
+ "COLOUR_RGB_GREEN": "zelena",
+ "COLOUR_RGB_BLUE": "modra",
+ "COLOUR_RGB_TOOLTIP": "Ustvari barvo z določeno količino rdeče, zelene in modre. Vse vrednosti morajo biti med 0 in 100.",
+ "COLOUR_BLEND_HELPURL": "http://meyerweb.com/eric/tools/color-blend/",
+ "COLOUR_BLEND_TITLE": "mešanica",
+ "COLOUR_BLEND_COLOUR1": "barva 1",
+ "COLOUR_BLEND_COLOUR2": "barva 2",
+ "COLOUR_BLEND_RATIO": "razmerje",
+ "COLOUR_BLEND_TOOLTIP": "Zmeša dve barvi v danem razmerju (0.0 - 1.0).",
+ "CONTROLS_REPEAT_HELPURL": "https://en.wikipedia.org/wiki/For_loop",
+ "CONTROLS_REPEAT_TITLE": "ponavljaj %1 krat",
+ "CONTROLS_REPEAT_INPUT_DO": "izvedi",
+ "CONTROLS_REPEAT_TOOLTIP": "Kocke se izvedejo večkrat.",
+ "CONTROLS_WHILEUNTIL_HELPURL": "https://github.com/google/blockly/wiki/Loops#repeat",
+ "CONTROLS_WHILEUNTIL_OPERATOR_WHILE": "ponavljaj",
+ "CONTROLS_WHILEUNTIL_OPERATOR_UNTIL": "ponavljaj dokler",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_WHILE": "Kocke se izvajajo dokler je vrednost resnična.",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL": "Kocke se izvajajo dokler je vrednost neresnična.",
+ "CONTROLS_FOR_HELPURL": "https://github.com/google/blockly/wiki/Loops#count-with",
+ "CONTROLS_FOR_TOOLTIP": "Vrednost spremenljivke '%1' se spreminja od začetnega števila do končnega števila, z določenim korakom. Pri tem se izvedejo določene kocke.",
+ "CONTROLS_FOR_TITLE": "štej s/z %1 od %2 do %3 s korakom %4",
+ "CONTROLS_FOREACH_HELPURL": "https://github.com/google/blockly/wiki/Loops#for-each",
+ "CONTROLS_FOREACH_TITLE": "za vsak element %1 v seznamu %2",
+ "CONTROLS_FOREACH_TOOLTIP": "Za vsak element v seznamu, nastavi spremenljivko '%1' na ta element. Pri tem se izvedejo določene kocke.",
+ "CONTROLS_FLOW_STATEMENTS_HELPURL": "https://github.com/google/blockly/wiki/Loops#loop-termination-blocks",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK": "izstopi iz zanke",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE": "nadaljuj z naslednjo ponovitvijo zanke",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK": "Izstopi iz trenutne zanke.",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE": "Preskoči preostanek te zanke in nadaljuje z naslednjo ponovitvijo.",
+ "CONTROLS_FLOW_STATEMENTS_WARNING": "Pozor: To kocko lahko uporabiš samo znotraj zanke.",
+ "CONTROLS_IF_HELPURL": "https://github.com/google/blockly/wiki/IfElse",
+ "CONTROLS_IF_TOOLTIP_1": "Če je vrednost resnična, izvedi določene kocke.",
+ "CONTROLS_IF_TOOLTIP_2": "Če je vrednost resnična, izvedi prvo skupino kock. Sicer izvedi drugo skupino kock.",
+ "CONTROLS_IF_TOOLTIP_3": "Če je prva vrednost resnična, izvedi prvo skupino kock. Sicer, če je resnična druga vrednost, izvedi drugo skupino kock.",
+ "CONTROLS_IF_TOOLTIP_4": "Če je prva vrednost resnična, izvedi prvo skupino kock. Sicer, če je resnična druga vrednost, izvedi drugo skupino kock. Če nobena izmed vrednosti ni resnična, izvedi zadnjo skupino kock.",
+ "CONTROLS_IF_MSG_IF": "če",
+ "CONTROLS_IF_MSG_ELSEIF": "sicer če",
+ "CONTROLS_IF_MSG_ELSE": "sicer",
+ "CONTROLS_IF_IF_TOOLTIP": "Dodaj, odstrani ali spremeni vrstni red odsekov za ponovno nastavitev »če« kocke.",
+ "CONTROLS_IF_ELSEIF_TOOLTIP": "Dodaj pogoj »če« kocki.",
+ "CONTROLS_IF_ELSE_TOOLTIP": "Dodaj končni pogoj »če« kocki.",
+ "LOGIC_COMPARE_HELPURL": "https://en.wikipedia.org/wiki/Inequality_(mathematics)",
+ "LOGIC_COMPARE_TOOLTIP_EQ": "Vrne resnično, če sta vnosa enaka.",
+ "LOGIC_COMPARE_TOOLTIP_NEQ": "Vrne resnično, če vnosa nista enaka.",
+ "LOGIC_COMPARE_TOOLTIP_LT": "Vrne resnično, če je prvi vnos manjši od drugega.",
+ "LOGIC_COMPARE_TOOLTIP_LTE": "Vrne resnično, če je prvi vnos manjši ali enak drugemu.",
+ "LOGIC_COMPARE_TOOLTIP_GT": "Vrne resnično, če je prvi vnos večji od drugega.",
+ "LOGIC_COMPARE_TOOLTIP_GTE": "Vrne resnično, če je prvi vnos večji ali enak drugemu.",
+ "LOGIC_OPERATION_HELPURL": "https://github.com/google/blockly/wiki/Logic#logical-operations",
+ "LOGIC_OPERATION_TOOLTIP_AND": "Vrne resnično, če sta oba vnosa resnična.",
+ "LOGIC_OPERATION_AND": "in",
+ "LOGIC_OPERATION_TOOLTIP_OR": "Vrne resnično, če je vsaj eden od vnosov resničen.",
+ "LOGIC_OPERATION_OR": "ali",
+ "LOGIC_NEGATE_HELPURL": "https://github.com/google/blockly/wiki/Logic#not",
+ "LOGIC_NEGATE_TITLE": "ne %1",
+ "LOGIC_NEGATE_TOOLTIP": "Vrne resnično, če je vnos neresničen. Vrne neresnično, če je vnos resničen.",
+ "LOGIC_BOOLEAN_HELPURL": "https://github.com/google/blockly/wiki/Logic#values",
+ "LOGIC_BOOLEAN_TRUE": "resnično",
+ "LOGIC_BOOLEAN_FALSE": "neresnično",
+ "LOGIC_BOOLEAN_TOOLTIP": "Vrne resnično ali neresnično.",
+ "LOGIC_NULL_HELPURL": "https://en.wikipedia.org/wiki/Nullable_type",
+ "LOGIC_NULL": "prazno",
+ "LOGIC_NULL_TOOLTIP": "Vrne prazno.",
+ "LOGIC_TERNARY_HELPURL": "https://en.wikipedia.org/wiki/%3F:",
+ "LOGIC_TERNARY_CONDITION": "test",
+ "LOGIC_TERNARY_IF_TRUE": "če resnično",
+ "LOGIC_TERNARY_IF_FALSE": "če neresnično",
+ "LOGIC_TERNARY_TOOLTIP": "Preveri pogoj v »testu«. Če je pogoj resničen, potem vrne vrednost »če resnično«; sicer vrne vrednost »če neresnično«.",
+ "MATH_NUMBER_HELPURL": "https://en.wikipedia.org/wiki/Number",
+ "MATH_NUMBER_TOOLTIP": "Število.",
+ "MATH_ADDITION_SYMBOL": "+",
+ "MATH_SUBTRACTION_SYMBOL": "-",
+ "MATH_DIVISION_SYMBOL": "÷",
+ "MATH_MULTIPLICATION_SYMBOL": "×",
+ "MATH_POWER_SYMBOL": "^",
+ "MATH_TRIG_SIN": "sin",
+ "MATH_TRIG_COS": "cos",
+ "MATH_TRIG_TAN": "tan",
+ "MATH_TRIG_ASIN": "asin",
+ "MATH_TRIG_ACOS": "acos",
+ "MATH_TRIG_ATAN": "atan",
+ "MATH_ARITHMETIC_HELPURL": "https://en.wikipedia.org/wiki/Arithmetic",
+ "MATH_ARITHMETIC_TOOLTIP_ADD": "Vrne vsoto dveh števil.",
+ "MATH_ARITHMETIC_TOOLTIP_MINUS": "Vrne razliko dveh števil.",
+ "MATH_ARITHMETIC_TOOLTIP_MULTIPLY": "Vrne zmnožek dveh števil.",
+ "MATH_ARITHMETIC_TOOLTIP_DIVIDE": "Vrne kvocient dveh števil.",
+ "MATH_ARITHMETIC_TOOLTIP_POWER": "Vrne prvo število na potenco drugega števila.",
+ "MATH_SINGLE_HELPURL": "https://en.wikipedia.org/wiki/Square_root",
+ "MATH_SINGLE_OP_ROOT": "kvadratni koren",
+ "MATH_SINGLE_TOOLTIP_ROOT": "Vrne kvadratni koren števila.",
+ "MATH_SINGLE_OP_ABSOLUTE": "absolutno",
+ "MATH_SINGLE_TOOLTIP_ABS": "Vrne absolutno vrednost števila.",
+ "MATH_SINGLE_TOOLTIP_NEG": "Vrne negacijo števila.",
+ "MATH_SINGLE_TOOLTIP_LN": "Vrne naravni logaritem števila.",
+ "MATH_SINGLE_TOOLTIP_LOG10": "Vrne desetiški logaritem števila.",
+ "MATH_SINGLE_TOOLTIP_EXP": "Vrne e na potenco števila.",
+ "MATH_SINGLE_TOOLTIP_POW10": "Vrne 10 na potenco števila.",
+ "MATH_TRIG_HELPURL": "https://en.wikipedia.org/wiki/Trigonometric_functions",
+ "MATH_TRIG_TOOLTIP_SIN": "Vrne sinus kota v stopinjah (ne radianih).",
+ "MATH_TRIG_TOOLTIP_COS": "Vrne kosinus kota v stopinjah (ne radianih).",
+ "MATH_TRIG_TOOLTIP_TAN": "Vrne tangens kota v stopinjah (ne radianih).",
+ "MATH_TRIG_TOOLTIP_ASIN": "Vrne arkus sinus števila.",
+ "MATH_TRIG_TOOLTIP_ACOS": "Vrne arkus kosinus števila.",
+ "MATH_TRIG_TOOLTIP_ATAN": "Vrne arkus tangens števila.",
+ "MATH_CONSTANT_HELPURL": "https://en.wikipedia.org/wiki/Mathematical_constant",
+ "MATH_CONSTANT_TOOLTIP": "Vrne eno izmed običajnih konstant: π (3.141…), e (2.718…), φ (1.618…), sqrt(2) (1.414…), sqrt(½) (0.707…), ali ∞ (neskončno).",
+ "MATH_IS_EVEN": "je sodo",
+ "MATH_IS_ODD": "je liho",
+ "MATH_IS_PRIME": "je praštevilo",
+ "MATH_IS_WHOLE": "je celo",
+ "MATH_IS_POSITIVE": "je pozitivno",
+ "MATH_IS_NEGATIVE": "je negativno",
+ "MATH_IS_DIVISIBLE_BY": "je deljivo s/z",
+ "MATH_IS_TOOLTIP": "Preveri, če je število sodo, liho, praštevilo, celo, pozitivno, negativno ali, če je deljivo z določenim številom. Vrne resnično ali neresnično.",
+ "MATH_CHANGE_HELPURL": "https://en.wikipedia.org/wiki/Programming_idiom#Incrementing_a_counter",
+ "MATH_CHANGE_TITLE": "spremeni %1 za %2",
+ "MATH_CHANGE_TOOLTIP": "Prišteje število k spremenljivki '%1'.",
+ "MATH_ROUND_HELPURL": "https://en.wikipedia.org/wiki/Rounding",
+ "MATH_ROUND_TOOLTIP": "Zaokroži število navzgor ali navzdol.",
+ "MATH_ROUND_OPERATOR_ROUND": "zaokroži",
+ "MATH_ROUND_OPERATOR_ROUNDUP": "zaokroži navzgor",
+ "MATH_ROUND_OPERATOR_ROUNDDOWN": "zaokroži navzdol",
+ "MATH_ONLIST_OPERATOR_SUM": "vsota seznama",
+ "MATH_ONLIST_TOOLTIP_SUM": "Vrne vsoto vseh števil na seznamu.",
+ "MATH_ONLIST_OPERATOR_MIN": "minimum seznama",
+ "MATH_ONLIST_TOOLTIP_MIN": "Vrne najmanjše število na seznamu.",
+ "MATH_ONLIST_OPERATOR_MAX": "maksimum seznama",
+ "MATH_ONLIST_TOOLTIP_MAX": "Vrne največje število na seznamu.",
+ "MATH_ONLIST_OPERATOR_AVERAGE": "povprečje seznama",
+ "MATH_ONLIST_TOOLTIP_AVERAGE": "Vrne povprečje (aritmetično sredino) števil na seznamu.",
+ "MATH_ONLIST_OPERATOR_MEDIAN": "mediana seznama",
+ "MATH_ONLIST_TOOLTIP_MEDIAN": "Vrne mediano števil na seznamu.",
+ "MATH_ONLIST_OPERATOR_MODE": "modus seznama",
+ "MATH_ONLIST_TOOLTIP_MODE": "Vrne seznam najpogostejšega elementa(-ov) na seznamu.",
+ "MATH_ONLIST_OPERATOR_STD_DEV": "standardni odklon seznama",
+ "MATH_ONLIST_TOOLTIP_STD_DEV": "Vrne standardni odklon seznama.",
+ "MATH_ONLIST_OPERATOR_RANDOM": "naključni element seznama",
+ "MATH_ONLIST_TOOLTIP_RANDOM": "Vrne naključno število izmed števil na seznamu.",
+ "MATH_MODULO_HELPURL": "https://en.wikipedia.org/wiki/Modulo_operation",
+ "MATH_MODULO_TITLE": "ostanek pri %1 ÷ %2",
+ "MATH_MODULO_TOOLTIP": "Vrne ostanek pri deljenju dveh števil.",
+ "MATH_CONSTRAIN_HELPURL": "https://en.wikipedia.org/wiki/Clamping_%28graphics%29",
+ "MATH_CONSTRAIN_TITLE": "omeji %1 na najmanj %2 in največ %3",
+ "MATH_CONSTRAIN_TOOLTIP": "Omeji število, da bo med določenima (vključenima) mejama.",
+ "MATH_RANDOM_INT_HELPURL": "https://en.wikipedia.org/wiki/Random_number_generation",
+ "MATH_RANDOM_INT_TITLE": "naključno število med %1 in %2",
+ "MATH_RANDOM_INT_TOOLTIP": "Vrne naključno število med dvema določenima mejama, vključno z mejama.",
+ "MATH_RANDOM_FLOAT_HELPURL": "https://en.wikipedia.org/wiki/Random_number_generation",
+ "MATH_RANDOM_FLOAT_TITLE_RANDOM": "naključni ulomek",
+ "MATH_RANDOM_FLOAT_TOOLTIP": "Vrne naključni ulomek med (vključno) 0.0 in 1.0 (izključno).",
+ "TEXT_TEXT_HELPURL": "https://en.wikipedia.org/wiki/String_(computer_science)",
+ "TEXT_TEXT_TOOLTIP": "Črka, beseda ali vrstica besedila.",
+ "TEXT_JOIN_HELPURL": "https://github.com/google/blockly/wiki/Text#text-creation",
+ "TEXT_JOIN_TITLE_CREATEWITH": "ustvari besedilo iz",
+ "TEXT_JOIN_TOOLTIP": "Ustvari besedilo tako, da združi poljubno število elementov.",
+ "TEXT_CREATE_JOIN_TITLE_JOIN": "združi",
+ "TEXT_CREATE_JOIN_TOOLTIP": "Doda, odstrani ali spremeni vrstni red elementov tega besedila.",
+ "TEXT_CREATE_JOIN_ITEM_TOOLTIP": "Doda element k besedilu.",
+ "TEXT_APPEND_HELPURL": "https://github.com/google/blockly/wiki/Text#text-modification",
+ "TEXT_APPEND_TO": "k",
+ "TEXT_APPEND_APPENDTEXT": "dodaj besedilo",
+ "TEXT_APPEND_TOOLTIP": "Doda besedilo k spremenljivki '%1'.",
+ "TEXT_LENGTH_HELPURL": "https://github.com/google/blockly/wiki/Text#text-modification",
+ "TEXT_LENGTH_TITLE": "dolžina %1",
+ "TEXT_LENGTH_TOOLTIP": "Vrne število črk oz. znakov (vključno s presledki) v določenem besedilu.",
+ "TEXT_ISEMPTY_HELPURL": "https://github.com/google/blockly/wiki/Text#checking-for-empty-text",
+ "TEXT_ISEMPTY_TITLE": "%1 je prazno",
+ "TEXT_ISEMPTY_TOOLTIP": "Vrne resnično, če je določeno besedilo prazno.",
+ "TEXT_INDEXOF_HELPURL": "https://github.com/google/blockly/wiki/Text#finding-text",
+ "TEXT_INDEXOF_TOOLTIP": "Vrne mesto (indeks) prve/zadnje pojavitve drugega besedila v prvem besedilu. Če besedila ne najde, vrne %1.",
+ "TEXT_INDEXOF_INPUT_INTEXT": "v besedilu",
+ "TEXT_INDEXOF_OPERATOR_FIRST": "najdi prvo pojavitev besedila",
+ "TEXT_INDEXOF_OPERATOR_LAST": "najdi zadnjo pojavitev besedila",
+ "TEXT_CHARAT_HELPURL": "https://github.com/google/blockly/wiki/Text#extracting-text",
+ "TEXT_CHARAT_INPUT_INTEXT": "iz besedila",
+ "TEXT_CHARAT_FROM_START": "vrni črko št.",
+ "TEXT_CHARAT_FROM_END": "vrni črko št. od konca",
+ "TEXT_CHARAT_FIRST": "vrni prvo črko",
+ "TEXT_CHARAT_LAST": "vrni zadnjo črko",
+ "TEXT_CHARAT_RANDOM": "vrni naključno črko",
+ "TEXT_CHARAT_TOOLTIP": "Vrne črko na določenem mestu v besedilu.",
+ "TEXT_GET_SUBSTRING_TOOLTIP": "Vrne določen del besedila.",
+ "TEXT_GET_SUBSTRING_HELPURL": "https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text",
+ "TEXT_GET_SUBSTRING_INPUT_IN_TEXT": "iz besedila",
+ "TEXT_GET_SUBSTRING_START_FROM_START": "vrni del od črke št.",
+ "TEXT_GET_SUBSTRING_START_FROM_END": "vrni del od črke št. od konca",
+ "TEXT_GET_SUBSTRING_START_FIRST": "vrni del od prve črke",
+ "TEXT_GET_SUBSTRING_END_FROM_START": "do črke št.",
+ "TEXT_GET_SUBSTRING_END_FROM_END": "do črke št. od konca",
+ "TEXT_GET_SUBSTRING_END_LAST": "do zadnje črke",
+ "TEXT_CHANGECASE_HELPURL": "https://github.com/google/blockly/wiki/Text#adjusting-text-case",
+ "TEXT_CHANGECASE_TOOLTIP": "Vrne kopijo besedila v drugi obliki.",
+ "TEXT_CHANGECASE_OPERATOR_UPPERCASE": "v VELIKE ČRKE",
+ "TEXT_CHANGECASE_OPERATOR_LOWERCASE": "v male črke",
+ "TEXT_CHANGECASE_OPERATOR_TITLECASE": "v Velike Začetnice",
+ "TEXT_TRIM_HELPURL": "https://github.com/google/blockly/wiki/Text#trimming-removing-spaces",
+ "TEXT_TRIM_TOOLTIP": "Vrne kopijo besedila z odstranjenimi presledki z ene ali obeh strani.",
+ "TEXT_TRIM_OPERATOR_BOTH": "odstrani presledke z obeh strani",
+ "TEXT_TRIM_OPERATOR_LEFT": "odstrani presledke z leve strani",
+ "TEXT_TRIM_OPERATOR_RIGHT": "odstrani presledke z desne strani",
+ "TEXT_PRINT_HELPURL": "https://github.com/google/blockly/wiki/Text#printing-text",
+ "TEXT_PRINT_TITLE": "izpiši %1",
+ "TEXT_PRINT_TOOLTIP": "Izpiše določeno besedilo, število ali drugo vrednost.",
+ "TEXT_PROMPT_HELPURL": "https://github.com/google/blockly/wiki/Text#getting-input-from-the-user",
+ "TEXT_PROMPT_TYPE_TEXT": "vprašaj za besedilo s sporočilom",
+ "TEXT_PROMPT_TYPE_NUMBER": "vprašaj za število s sporočilom",
+ "TEXT_PROMPT_TOOLTIP_NUMBER": "Vpraša uporabnika za vnos števila.",
+ "TEXT_PROMPT_TOOLTIP_TEXT": "Vpraša uporabnika za vnos besedila.",
+ "LISTS_CREATE_EMPTY_HELPURL": "https://github.com/google/blockly/wiki/Lists#create-empty-list",
+ "LISTS_CREATE_EMPTY_TITLE": "ustvari prazen seznam",
+ "LISTS_CREATE_EMPTY_TOOLTIP": "Vrne seznam, dolžine 0, ki ne vsebuje nobenih podatkov.",
+ "LISTS_CREATE_WITH_HELPURL": "https://github.com/google/blockly/wiki/Lists#create-list-with",
+ "LISTS_CREATE_WITH_TOOLTIP": "Ustvari seznam s poljubnim številom elementov.",
+ "LISTS_CREATE_WITH_INPUT_WITH": "ustvari seznam s/z",
+ "LISTS_CREATE_WITH_CONTAINER_TITLE_ADD": "seznam",
+ "LISTS_CREATE_WITH_CONTAINER_TOOLTIP": "Doda, odstrani ali spremeni vrstni red elementov tega seznama.",
+ "LISTS_CREATE_WITH_ITEM_TOOLTIP": "Doda element seznamu.",
+ "LISTS_REPEAT_HELPURL": "https://github.com/google/blockly/wiki/Lists#create-list-with",
+ "LISTS_REPEAT_TOOLTIP": "Ustvari seznam z danim elementom, ki se poljubno mnogo krat ponovi.",
+ "LISTS_REPEAT_TITLE": "ustvari seznam z elementom %1, ki se ponovi %2 krat",
+ "LISTS_LENGTH_HELPURL": "https://github.com/google/blockly/wiki/Lists#length-of",
+ "LISTS_LENGTH_TITLE": "dolžina %1",
+ "LISTS_LENGTH_TOOLTIP": "Vrne dolžino seznama.",
+ "LISTS_ISEMPTY_HELPURL": "https://github.com/google/blockly/wiki/Lists#is-empty",
+ "LISTS_ISEMPTY_TITLE": "%1 je prazen",
+ "LISTS_ISEMPTY_TOOLTIP": "Vrne resnično, če je seznam prazen.",
+ "LISTS_INLIST": "v seznamu",
+ "LISTS_INDEX_OF_HELPURL": "https://github.com/google/blockly/wiki/Lists#getting-items-from-a-list",
+ "LISTS_INDEX_OF_FIRST": "najdi prvo pojavitev elementa",
+ "LISTS_INDEX_OF_LAST": "najdi zadnjo pojavitev elementa",
+ "LISTS_INDEX_OF_TOOLTIP": "Vrne mesto (indeks) prve/zadnje pojavitve elementa v seznamu. Če elementa ne najde, vrne %1.",
+ "LISTS_GET_INDEX_GET": "vrni",
+ "LISTS_GET_INDEX_GET_REMOVE": "odstrani in vrni",
+ "LISTS_GET_INDEX_REMOVE": "odstrani",
+ "LISTS_GET_INDEX_FROM_START": "št.",
+ "LISTS_GET_INDEX_FROM_END": "mesto št. od konca",
+ "LISTS_GET_INDEX_FIRST": "prvo mesto",
+ "LISTS_GET_INDEX_LAST": "zadnje mesto",
+ "LISTS_GET_INDEX_RANDOM": "naključno mesto",
+ "LISTS_INDEX_FROM_START_TOOLTIP": "Prvi element je št. %1.",
+ "LISTS_INDEX_FROM_END_TOOLTIP": "Zadnji element je št. %1.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_FROM": "Vrne element na določenem mestu v seznamu.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_FIRST": "Vrne prvi element seznama.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_LAST": "Vrne zadnji element seznama.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_RANDOM": "Vrne naključni element seznama.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM": "Odstrani in vrne element na določenem mestu v seznamu.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST": "Odstrani in vrne prvi element seznama.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST": "Odstrani in vrne zadnji element seznama.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM": "Odstrani in vrne naključni element seznama.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM": "Odstrani element na določenem mestu v seznamu.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST": "Odstrani prvi element seznama.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST": "Odstrani zadnji element seznama.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM": "Odstrani naključni element seznama.",
+ "LISTS_SET_INDEX_HELPURL": "https://github.com/google/blockly/wiki/Lists#in-list--set",
+ "LISTS_SET_INDEX_SET": "nastavi na",
+ "LISTS_SET_INDEX_INSERT": "vstavi na",
+ "LISTS_SET_INDEX_INPUT_TO": "element",
+ "LISTS_SET_INDEX_TOOLTIP_SET_FROM": "Nastavi element na določenem mestu v seznamu.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_FIRST": "Nastavi prvi element seznama.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_LAST": "Nastavi zadnji element seznama.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_RANDOM": "Nastavi naključni element seznama.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_FROM": "Vstavi element na določeno mesto v seznamu.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST": "Vstavi element na začetek seznama.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_LAST": "Doda element na konec seznama.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM": "Vstavi element na naključno mesto v seznamu.",
+ "LISTS_GET_SUBLIST_HELPURL": "https://github.com/google/blockly/wiki/Lists#getting-a-sublist",
+ "LISTS_GET_SUBLIST_START_FROM_START": "ustvari podseznam od mesta št.",
+ "LISTS_GET_SUBLIST_START_FROM_END": "ustvari podseznam od mesta št. od konca",
+ "LISTS_GET_SUBLIST_START_FIRST": "ustvari podseznam od prvega mesta",
+ "LISTS_GET_SUBLIST_END_FROM_START": "do mesta št.",
+ "LISTS_GET_SUBLIST_END_FROM_END": "do mesta št. od konca",
+ "LISTS_GET_SUBLIST_END_LAST": "do zadnjega mesta",
+ "LISTS_GET_SUBLIST_TOOLTIP": "Ustvari nov seznam, kot kopijo določenega dela seznama.",
+ "LISTS_SORT_HELPURL": "https://github.com/google/blockly/wiki/Lists#sorting-a-list",
+ "LISTS_SORT_TITLE": "uredi %1 %2 %3",
+ "LISTS_SORT_TOOLTIP": "Uredi kopijo seznama.",
+ "LISTS_SORT_ORDER_ASCENDING": "naraščajoče",
+ "LISTS_SORT_ORDER_DESCENDING": "padajoče",
+ "LISTS_SORT_TYPE_NUMERIC": "številčno",
+ "LISTS_SORT_TYPE_TEXT": "abecedno",
+ "LISTS_SORT_TYPE_IGNORECASE": "abecedno, brez velikosti črk",
+ "LISTS_SPLIT_HELPURL": "https://github.com/google/blockly/wiki/Lists#splitting-strings-and-joining-lists",
+ "LISTS_SPLIT_LIST_FROM_TEXT": "ustvari seznam iz besedila",
+ "LISTS_SPLIT_TEXT_FROM_LIST": "ustvari besedilo iz seznama",
+ "LISTS_SPLIT_WITH_DELIMITER": "z ločilom",
+ "LISTS_SPLIT_TOOLTIP_SPLIT": "Razdruži besedilo v seznam besedil. Za razdruževanje besedila uporabi ločilo.",
+ "LISTS_SPLIT_TOOLTIP_JOIN": "Združi seznam besedil v eno besedilo, ločeno z ločilom.",
+ "VARIABLES_GET_HELPURL": "https://github.com/google/blockly/wiki/Variables#get",
+ "VARIABLES_GET_TOOLTIP": "Vrne vrednost spremenljivke.",
+ "VARIABLES_GET_CREATE_SET": "Ustvari 'nastavi %1'",
+ "VARIABLES_SET_HELPURL": "https://github.com/google/blockly/wiki/Variables#set",
+ "VARIABLES_SET": "nastavi %1 na %2",
+ "VARIABLES_SET_TOOLTIP": "Nastavi, da je vrednost spremenljivke enaka vnosu.",
+ "VARIABLES_SET_CREATE_GET": "Ustvari 'vrni %1'",
+ "PROCEDURES_DEFNORETURN_HELPURL": "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29",
+ "PROCEDURES_DEFNORETURN_TITLE": "izvedi",
+ "PROCEDURES_DEFNORETURN_PROCEDURE": "nekaj",
+ "PROCEDURES_BEFORE_PARAMS": "s/z:",
+ "PROCEDURES_CALL_BEFORE_PARAMS": "s/z:",
+ "PROCEDURES_DEFNORETURN_TOOLTIP": "Ustvari funkcijo brez izhoda.",
+ "PROCEDURES_DEFNORETURN_COMMENT": "Opišite funkcijo ...",
+ "PROCEDURES_DEFRETURN_HELPURL": "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29",
+ "PROCEDURES_DEFRETURN_RETURN": "vrni",
+ "PROCEDURES_DEFRETURN_TOOLTIP": "Ustvari funkcijo z izhodom.",
+ "PROCEDURES_ALLOW_STATEMENTS": "dovoli korake",
+ "PROCEDURES_DEF_DUPLICATE_WARNING": "Pozor: Ta funkcija ima podvojene parametre.",
+ "PROCEDURES_CALLNORETURN_HELPURL": "https://en.wikipedia.org/wiki/Subroutine",
+ "PROCEDURES_CALLNORETURN_TOOLTIP": "Izvede uporabniško funkcijo '%1'.",
+ "PROCEDURES_CALLRETURN_HELPURL": "https://en.wikipedia.org/wiki/Subroutine",
+ "PROCEDURES_CALLRETURN_TOOLTIP": "Izvede uporabniško funkcijo '%1' in uporabi njen izhod.",
+ "PROCEDURES_MUTATORCONTAINER_TITLE": "vnosi",
+ "PROCEDURES_MUTATORCONTAINER_TOOLTIP": "Doda, odstrani ali spremeni vrstni red vnosov te funkcije.",
+ "PROCEDURES_MUTATORARG_TITLE": "ime vnosa:",
+ "PROCEDURES_MUTATORARG_TOOLTIP": "Funkciji doda vnos.",
+ "PROCEDURES_HIGHLIGHT_DEF": "Označi definicijo funkcije",
+ "PROCEDURES_CREATE_DO": "Ustvari '%1'",
+ "PROCEDURES_IFRETURN_TOOLTIP": "Če je vrednost resnična, vrne drugo vrednost.",
+ "PROCEDURES_IFRETURN_HELPURL": "http://c2.com/cgi/wiki?GuardClause",
+ "PROCEDURES_IFRETURN_WARNING": "Pozor: To kocko lahko uporabiš samo znotraj definicije funkcije."
+}
diff --git a/blockly/msg/json/sq.json b/blockly/msg/json/sq.json
new file mode 100644
index 0000000..31419b5
--- /dev/null
+++ b/blockly/msg/json/sq.json
@@ -0,0 +1,305 @@
+{
+ "@metadata": {
+ "authors": [
+ "아라"
+ ]
+ },
+ "VARIABLES_DEFAULT_NAME": "send",
+ "DUPLICATE_BLOCK": "Kopjo",
+ "ADD_COMMENT": "Vendos nje Koment",
+ "REMOVE_COMMENT": "Fshij komentin",
+ "EXTERNAL_INPUTS": "Hyrjet e jashtme",
+ "INLINE_INPUTS": "Hyrjet e brendshme",
+ "DELETE_BLOCK": "Fshij bllokun",
+ "DELETE_X_BLOCKS": "Fshij %1 blloqe",
+ "COLLAPSE_BLOCK": "Mbyll bllokun",
+ "COLLAPSE_ALL": "Mbyll blloqet",
+ "EXPAND_BLOCK": "Zmadho bllokun",
+ "EXPAND_ALL": "Zmadho blloqet",
+ "DISABLE_BLOCK": "Çaktivizo bllokun",
+ "ENABLE_BLOCK": "Aktivizo bllokun",
+ "HELP": "Ndihmë",
+ "CHANGE_VALUE_TITLE": "Ndrysho Vlerat:",
+ "RENAME_VARIABLE": "Ndrysho emrin variables...",
+ "RENAME_VARIABLE_TITLE": "Ndrysho emrin e te gjitha '%1' variablave ne :",
+ "NEW_VARIABLE": "Identifikatorë i ri...",
+ "NEW_VARIABLE_TITLE": "Emri i identifikatorit të ri:",
+ "COLOUR_PICKER_HELPURL": "http://en.wikipedia.org/wiki/Color",
+ "COLOUR_PICKER_TOOLTIP": "Zgjidh nje ngjyre nga nje game ngjyrash.",
+ "COLOUR_RANDOM_TITLE": "ngjyre e rastesishme",
+ "COLOUR_RANDOM_TOOLTIP": "Zgjidhni një ngjyrë në mënyrë të rastësishme.",
+ "COLOUR_RGB_HELPURL": "http://www.december.com/html/spec/colorper.html",
+ "COLOUR_RGB_TITLE": "ngjyre me",
+ "COLOUR_RGB_RED": "e kuqe",
+ "COLOUR_RGB_GREEN": "jeshile",
+ "COLOUR_RGB_BLUE": "blu",
+ "COLOUR_RGB_TOOLTIP": "Krijo një ngjyrë me shumën e specifikuar te te kuqes, te gjelbëres, dhe bluse. Te gjitha vlerat duhet te jene mes 0 dhe 100.",
+ "COLOUR_BLEND_HELPURL": "http://meyerweb.com/eric/tools/color-blend/",
+ "COLOUR_BLEND_TITLE": "Përzierje",
+ "COLOUR_BLEND_COLOUR1": "Ngjyra 1",
+ "COLOUR_BLEND_COLOUR2": "Ngjyra 2",
+ "COLOUR_BLEND_RATIO": "Perpjesetim",
+ "COLOUR_BLEND_TOOLTIP": "Perzien dy ngjyra së bashku me një raport të dhënë (0.0 - 1.0).",
+ "CONTROLS_REPEAT_HELPURL": "http://en.wikipedia.org/wiki/For_loop",
+ "CONTROLS_REPEAT_TITLE": "përsërit %1 herë",
+ "CONTROLS_REPEAT_INPUT_DO": "ekzekuto",
+ "CONTROLS_REPEAT_TOOLTIP": "Ekzekuto disa fjali disa herë.",
+ "CONTROLS_WHILEUNTIL_OPERATOR_WHILE": "përsërit përderisa",
+ "CONTROLS_WHILEUNTIL_OPERATOR_UNTIL": "përsërit derisa",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_WHILE": "Përderisa një vlerë është e saktë, atëherë ekzekuto disa fjali.",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL": "Përderisa një vlerë është e pasaktë, atëherë ekzekuto disa fjali.",
+ "CONTROLS_FOR_TOOLTIP": "Bëje identifikuesin \"%1\" që ta ketë vlerat prej numrit të fillimit deri tek numri i fundit, duke numëruar nga intervali i specifikuar, dhe ti bëj blloqet e specifikuara.",
+ "CONTROLS_FOR_TITLE": "numero me %1 nga %2 ne %3 me nga %4",
+ "CONTROLS_FOREACH_TITLE": "per cdo produkt %1 ne liste %2",
+ "CONTROLS_FOREACH_TOOLTIP": "Per cdo produkt ne nje \"liste\" \"vendos\" ndryshoren '%1' produktit, dhe pastaj bej disa deklarata.",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK": "dil nga nje faze perseritese",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE": "vazhdo me elementin tjeter te nje faze perseritese",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK": "Ndahu nga unaza.",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE": "Kapërce pjesën e mbetur të unazës, dhe vazhdo me ripërsëritjen tjetër.",
+ "CONTROLS_FLOW_STATEMENTS_WARNING": "Paralajmërim: Ky bllok mund të përdoret vetëm brenda unazës.",
+ "CONTROLS_IF_TOOLTIP_1": "Nëse një vlerë është e saktë, atëherë ekzekuto disa fjali.",
+ "CONTROLS_IF_TOOLTIP_2": "Nëse një vlerë është e saktë, atëherë ekzekuto bllokun e parë të fjalive. Përndryshe, ekzekuto bllokun e dytë të fjalive.",
+ "CONTROLS_IF_TOOLTIP_3": "Nëse vlera e parë është e saktë, atëherë ekzekuto bllokun e parë të fjalive. Përndryshe, nëse vlera e dytë është e saktë, ekzekuto bllokun e dytë të fjalive.",
+ "CONTROLS_IF_TOOLTIP_4": "Nëse vlera e parë është e saktë, atëherë ekzekuto bllokun e parë të fjalive. Përndryshe, nëse vlera e dytë është e saktë, ekzekuto bllokun e dytë të fjalive. Nëse asnjëra nga vlerat nuk është e saktë, ekzekuto bllokun e fundit të fjalive.",
+ "CONTROLS_IF_MSG_IF": "nëse",
+ "CONTROLS_IF_MSG_ELSEIF": "përndryshe nëse",
+ "CONTROLS_IF_MSG_ELSE": "përndryshe",
+ "CONTROLS_IF_IF_TOOLTIP": "Shto, fshij, ose rirregullo sektoret për ta rikonfiguruar këte bllok nëse.",
+ "CONTROLS_IF_ELSEIF_TOOLTIP": "\"Vendos\" \"kushtein\"tek \"pjesa\" \"if\"",
+ "CONTROLS_IF_ELSE_TOOLTIP": "Shto një përfundues, që i mbërrin të gjitha kushtet në bllokun nëse.",
+ "LOGIC_COMPARE_HELPURL": "http://en.wikipedia.org/wiki/Inequality_(mathematics)",
+ "LOGIC_COMPARE_TOOLTIP_EQ": "Ktheje të saktë nëse të dy hyrjet janë të barabarta me njëra-tjetrën.",
+ "LOGIC_COMPARE_TOOLTIP_NEQ": "Ktheje të saktë nëse të dy hyrjet nuk janë të barabarta me njëra-tjetrën.",
+ "LOGIC_COMPARE_TOOLTIP_LT": "Ktheje të saktë nëse hyrja e parë është më e vogël se hyrja e dytë.",
+ "LOGIC_COMPARE_TOOLTIP_LTE": "Ktheje të saktë nëse hyrja e parë është më e vogël ose e barabartë me hyrjen e dytë.",
+ "LOGIC_COMPARE_TOOLTIP_GT": "Ktheje të saktë nëse hyrja e parë është më e madhe se hyrja e dytë.",
+ "LOGIC_COMPARE_TOOLTIP_GTE": "Ktheje të saktë nëse hyrja e parë është më e madhe ose e barabartë me hyrjen e dytë.",
+ "LOGIC_OPERATION_TOOLTIP_AND": "Kthehet të saktë nëse të dy hyrjet janë të sakta.",
+ "LOGIC_OPERATION_AND": "dhe",
+ "LOGIC_OPERATION_TOOLTIP_OR": "Kthehet e saktë nëse së paku njëra nga hyrjet është e saktë.",
+ "LOGIC_OPERATION_OR": "ose",
+ "LOGIC_NEGATE_TITLE": "jo %1",
+ "LOGIC_NEGATE_TOOLTIP": "Kthehet e saktë nëse hyrja është e pasaktë. Kthehet e pasaktë nëse hyrja është e saktë.",
+ "LOGIC_BOOLEAN_TRUE": "e saktë",
+ "LOGIC_BOOLEAN_FALSE": "e pasaktë",
+ "LOGIC_BOOLEAN_TOOLTIP": "Kthehet ose të saktë ose të pasaktë.",
+ "LOGIC_NULL_HELPURL": "http://en.wikipedia.org/wiki/Nullable_type",
+ "LOGIC_NULL": "pavlerë",
+ "LOGIC_NULL_TOOLTIP": "Kthehet e pavlerë.",
+ "LOGIC_TERNARY_HELPURL": "http://en.wikipedia.org/wiki/%3F:",
+ "LOGIC_TERNARY_CONDITION": "test",
+ "LOGIC_TERNARY_IF_TRUE": "nëse e saktë",
+ "LOGIC_TERNARY_IF_FALSE": "nëse e pasaktë",
+ "LOGIC_TERNARY_TOOLTIP": "Kontrollo kushtin në 'test'. Nëse kushti është i saktë, kthen vlerën 'nëse e saktë'; përndryshe kthen vlerën 'nëse e pasaktë'.",
+ "MATH_NUMBER_HELPURL": "http://en.wikipedia.org/wiki/Number",
+ "MATH_NUMBER_TOOLTIP": "Një numër.",
+ "MATH_ADDITION_SYMBOL": "+",
+ "MATH_SUBTRACTION_SYMBOL": "-",
+ "MATH_DIVISION_SYMBOL": "÷",
+ "MATH_MULTIPLICATION_SYMBOL": "x",
+ "MATH_POWER_SYMBOL": "^",
+ "MATH_TRIG_SIN": "sin",
+ "MATH_TRIG_COS": "cos",
+ "MATH_TRIG_TAN": "tan",
+ "MATH_TRIG_ASIN": "asinus",
+ "MATH_TRIG_ACOS": "acosinus",
+ "MATH_TRIG_ATAN": "atangjentë",
+ "MATH_ARITHMETIC_HELPURL": "http://sq.wikipedia.org/wiki/Aritmetika",
+ "MATH_ARITHMETIC_TOOLTIP_ADD": "Kthen shumën e dy numrave.",
+ "MATH_ARITHMETIC_TOOLTIP_MINUS": "Kthen ndryshimin e dy numrave.",
+ "MATH_ARITHMETIC_TOOLTIP_MULTIPLY": "Kthen produktin e dy numrave.",
+ "MATH_ARITHMETIC_TOOLTIP_DIVIDE": "Kthen herësin e dy numrave.",
+ "MATH_ARITHMETIC_TOOLTIP_POWER": "Kthen numrin e parë të ngritur në fuqinë e numrit të dytë.",
+ "MATH_SINGLE_HELPURL": "http://en.wikipedia.org/wiki/Square_root",
+ "MATH_SINGLE_OP_ROOT": "rrënja katrore",
+ "MATH_SINGLE_TOOLTIP_ROOT": "Kthen rrënjën katrore të një numri.",
+ "MATH_SINGLE_OP_ABSOLUTE": "absolut",
+ "MATH_SINGLE_TOOLTIP_ABS": "Kthen vlerën absolute të një numri.",
+ "MATH_SINGLE_TOOLTIP_NEG": "Kthe negacionin e një numri.",
+ "MATH_SINGLE_TOOLTIP_LN": "Kthen logaritmën natyrale të një numri.",
+ "MATH_SINGLE_TOOLTIP_LOG10": "Kthen 10 logaritmet bazë të një numri.",
+ "MATH_SINGLE_TOOLTIP_EXP": "Kthen e në fuqinë e një numri.",
+ "MATH_SINGLE_TOOLTIP_POW10": "Kthen 10 në fuqinë e një numri.",
+ "MATH_TRIG_HELPURL": "http://en.wikipedia.org/wiki/Trigonometric_functions",
+ "MATH_TRIG_TOOLTIP_SIN": "Kthe kosinusin e nje kendi (jo ne radiant).",
+ "MATH_TRIG_TOOLTIP_COS": "Kthe kosinusin e nje grade (jo ne radiant).",
+ "MATH_TRIG_TOOLTIP_TAN": "Kthe tangentin e nje kendi (jo radiant).",
+ "MATH_TRIG_TOOLTIP_ASIN": "Rikthe sin-1 e nje numeri.",
+ "MATH_TRIG_TOOLTIP_ACOS": "Rikthe cos-1 e nje numeri.",
+ "MATH_TRIG_TOOLTIP_ATAN": "Kthe tg-1 e nje numeri.",
+ "MATH_CONSTANT_HELPURL": "http://en.wikipedia.org/wiki/Mathematical_constant",
+ "MATH_CONSTANT_TOOLTIP": "Kthen një nga konstantet e përbashkëta: : π (3.141…), e (2.718…), φ (1.618…), sqrt(2) (1.414…), sqrt(½) (0.707…), or ∞ (infiniti).",
+ "MATH_IS_EVEN": "është çift",
+ "MATH_IS_ODD": "është tek",
+ "MATH_IS_PRIME": "është prim",
+ "MATH_IS_WHOLE": "është i plotë",
+ "MATH_IS_POSITIVE": "është pozitiv",
+ "MATH_IS_NEGATIVE": "është negativ",
+ "MATH_IS_DIVISIBLE_BY": "është i pjestueshme me",
+ "MATH_IS_TOOLTIP": "Kontrollo nëse një numër është çift, tek, prim, i plotë, pozitiv, negativ, ose nëse është i pjestueshëm me një numër të caktuar. Kthehet e saktë ose e pasaktë.",
+ "MATH_CHANGE_HELPURL": "http://en.wikipedia.org/wiki/Programming_idiom#Incrementing_a_counter",
+ "MATH_CHANGE_TITLE": "ndrysho %1 nga %2",
+ "MATH_CHANGE_TOOLTIP": "Shto një numër në ndryshoren '%1'.",
+ "MATH_ROUND_HELPURL": "http://en.wikipedia.org/wiki/Rounding",
+ "MATH_ROUND_TOOLTIP": "Rrumbullakësimi i numrit të lartë ose të ulët.",
+ "MATH_ROUND_OPERATOR_ROUND": "rrumbullakësimi",
+ "MATH_ROUND_OPERATOR_ROUNDUP": "rrumbullakësimi i lartë",
+ "MATH_ROUND_OPERATOR_ROUNDDOWN": "rrumbullakësimi i ulët",
+ "MATH_ONLIST_OPERATOR_SUM": "mbledhja e listës",
+ "MATH_ONLIST_TOOLTIP_SUM": "Kthe shumën e të gjithë numrave të listës.",
+ "MATH_ONLIST_OPERATOR_MIN": "numri më i ulët i listës",
+ "MATH_ONLIST_TOOLTIP_MIN": "Kthe numrin me të vogël të listës.",
+ "MATH_ONLIST_OPERATOR_MAX": "numri më i madh i listës",
+ "MATH_ONLIST_TOOLTIP_MAX": "Kthe numrin më të madh të listës.",
+ "MATH_ONLIST_OPERATOR_AVERAGE": "mesatarja e listës",
+ "MATH_ONLIST_TOOLTIP_AVERAGE": "Kthen mesatarën (kuptimi aritmetik) i vlerave numerike të listës.",
+ "MATH_ONLIST_OPERATOR_MEDIAN": "mediana e listës",
+ "MATH_ONLIST_TOOLTIP_MEDIAN": "Kthe numrin median të listës.",
+ "MATH_ONLIST_OPERATOR_MODE": "modat e listës",
+ "MATH_ONLIST_TOOLTIP_MODE": "Kthe listën e sendit(eve) më të zakonshme të listës.",
+ "MATH_ONLIST_OPERATOR_STD_DEV": "devijimi standard i listës",
+ "MATH_ONLIST_TOOLTIP_STD_DEV": "Kthe devijimin standard të listës.",
+ "MATH_ONLIST_OPERATOR_RANDOM": "send i rastësishëm i listës",
+ "MATH_ONLIST_TOOLTIP_RANDOM": "Kthe një element të rastësishëm nga lista.",
+ "MATH_MODULO_HELPURL": "http://en.wikipedia.org/wiki/Modulo_operation",
+ "MATH_MODULO_TITLE": "mbetësi i %1 ÷ %2",
+ "MATH_MODULO_TOOLTIP": "Kthen mbetësin nga pjestimi i dy numrave.",
+ "MATH_CONSTRAIN_TITLE": "detyro %1 e ulët %2 e lartë %3",
+ "MATH_CONSTRAIN_TOOLTIP": "Vëni një numër që të jetë në mes të kufive të specifikuara(përfshirëse).",
+ "MATH_RANDOM_INT_HELPURL": "http://en.wikipedia.org/wiki/Random_number_generation",
+ "MATH_RANDOM_INT_TITLE": "numër i plotë i rastësishëm nga %1 deri në %2",
+ "MATH_RANDOM_INT_TOOLTIP": "Kthe një numër të plotë të rastësishëm të dy kufijve të specifikuar, të përfshirë.",
+ "MATH_RANDOM_FLOAT_HELPURL": "http://en.wikipedia.org/wiki/Random_number_generation",
+ "MATH_RANDOM_FLOAT_TITLE_RANDOM": "fraksioni i rastësishëm",
+ "MATH_RANDOM_FLOAT_TOOLTIP": "Kthe fraksionin e rastësishëm në mes të 0.0 (përfshirëse) dhe 1.0 (jopërfshirëse).",
+ "TEXT_TEXT_HELPURL": "http://en.wikipedia.org/wiki/String_(computer_science)",
+ "TEXT_TEXT_TOOLTIP": "Nje shkronje, fjale, ose rresht teksti.",
+ "TEXT_JOIN_TITLE_CREATEWITH": "krijo tekst me",
+ "TEXT_JOIN_TOOLTIP": "Krijo nje pjese te tekstit duke bashkuar se bashku disa sende",
+ "TEXT_CREATE_JOIN_TITLE_JOIN": "bashkangjit",
+ "TEXT_CREATE_JOIN_TOOLTIP": "Shto, fshij, ose rirregullo sektoret për ta rikonfiguruar këtë bllok teksti.",
+ "TEXT_CREATE_JOIN_ITEM_TOOLTIP": "Shto nje gje ne tekst",
+ "TEXT_APPEND_TO": "ne",
+ "TEXT_APPEND_APPENDTEXT": "shto tekst",
+ "TEXT_APPEND_TOOLTIP": "shto tekst tek varibla '%1'.",
+ "TEXT_LENGTH_TITLE": "gjatesi %1",
+ "TEXT_LENGTH_TOOLTIP": "Pergjigjet me nje numer shkronjash (duke perfshire hapesire) ne tekstin e dhene.",
+ "TEXT_ISEMPTY_TITLE": "%1 eshte bosh",
+ "TEXT_ISEMPTY_TOOLTIP": "Kthehet e vertete neqoftese teksti i dhene eshte bosh.",
+ "TEXT_INDEXOF_TOOLTIP": "Pergjigjet me indeksin e pare/fundit te rastisjes se tekstit te pare ne tekstin e dyte. Pergjigjet me %1 ne qofte se teksti nuk u gjet.",
+ "TEXT_INDEXOF_INPUT_INTEXT": "ne tekst",
+ "TEXT_INDEXOF_OPERATOR_FIRST": "gjej rastisjen e pare te tekstit",
+ "TEXT_INDEXOF_OPERATOR_LAST": "gjej rastisjen e fundit te tekstit",
+ "TEXT_CHARAT_INPUT_INTEXT": "ne tekst",
+ "TEXT_CHARAT_FROM_START": "merr shkronjen #",
+ "TEXT_CHARAT_FROM_END": "merr shkronjen # nga fundi",
+ "TEXT_CHARAT_FIRST": "merr shkronjen e pare",
+ "TEXT_CHARAT_LAST": "merr shkronjen e fundit",
+ "TEXT_CHARAT_RANDOM": "merr nje shkronje te rastesishme",
+ "TEXT_CHARAT_TOOLTIP": "Kthe nje shkronje nga nje pozicion i caktuar.",
+ "TEXT_GET_SUBSTRING_TOOLTIP": "Pergjigjet me nje pjese te caktuar teksti.",
+ "TEXT_GET_SUBSTRING_INPUT_IN_TEXT": "ne tekst",
+ "TEXT_GET_SUBSTRING_START_FROM_START": "Merr nenvargun nga shkronja #",
+ "TEXT_GET_SUBSTRING_START_FROM_END": "merr nenvargun nga shkronja # nga fundi",
+ "TEXT_GET_SUBSTRING_START_FIRST": "merr vlerat qe vazhdojne me shkronjen e pare",
+ "TEXT_GET_SUBSTRING_END_FROM_START": "ne shkronjen #",
+ "TEXT_GET_SUBSTRING_END_FROM_END": "ne shkronjen # nga fundi",
+ "TEXT_GET_SUBSTRING_END_LAST": "tek shkronja e fundit",
+ "TEXT_CHANGECASE_TOOLTIP": "Kthe nje kopje te tekstit ne nje rast te ndryshem.",
+ "TEXT_CHANGECASE_OPERATOR_UPPERCASE": "me shkronja te medha shtypi",
+ "TEXT_CHANGECASE_OPERATOR_LOWERCASE": "me shkronja te vogla shtypi",
+ "TEXT_CHANGECASE_OPERATOR_TITLECASE": "Fillimi me shkronje te madhe shtypi",
+ "TEXT_TRIM_TOOLTIP": "Pergjigju me nje kopje te tekstit me hapesira te fshira nga njera ane ose te dyja anet.",
+ "TEXT_TRIM_OPERATOR_BOTH": "prit hapesirat nga te dyja anet",
+ "TEXT_TRIM_OPERATOR_LEFT": "prit hapesirat nga ana e majte",
+ "TEXT_TRIM_OPERATOR_RIGHT": "prit hapesirat nga ana e djathte",
+ "TEXT_PRINT_TITLE": "printo %1",
+ "TEXT_PRINT_TOOLTIP": "Printo tekstin e caktuar, numer ose vlere tjeter.",
+ "TEXT_PROMPT_TYPE_TEXT": "kerko tekst me njoftim",
+ "TEXT_PROMPT_TYPE_NUMBER": "kerko nje numer me njoftim",
+ "TEXT_PROMPT_TOOLTIP_NUMBER": "Kerkoji perdoruesit nje numer.",
+ "TEXT_PROMPT_TOOLTIP_TEXT": "Kerkoji perdoruesit ca tekst.",
+ "LISTS_CREATE_EMPTY_HELPURL": "https://github.com/google/blockly/wiki/Lists#create-empty-list",
+ "LISTS_CREATE_EMPTY_TITLE": "krijo një listë të zbrazët",
+ "LISTS_CREATE_EMPTY_TOOLTIP": "Kthen një listë, te gjatësisë 0, duke mos përmbajtur asnjë regjistrim të të dhënave",
+ "LISTS_CREATE_WITH_TOOLTIP": "Krijo një listë me ndonjë numbër të sendeve.",
+ "LISTS_CREATE_WITH_INPUT_WITH": "krijo listë me",
+ "LISTS_CREATE_WITH_CONTAINER_TITLE_ADD": "listë",
+ "LISTS_CREATE_WITH_CONTAINER_TOOLTIP": "Shto, fshij, ose rirregullo sektoret për ta rikonfiguruar këtë bllok të listës.",
+ "LISTS_CREATE_WITH_ITEM_TOOLTIP": "Shto një send në listë.",
+ "LISTS_REPEAT_TOOLTIP": "Krijon në listë qe përmban vlerën e dhënë të përsëritur aq herë sa numri i specifikuar.",
+ "LISTS_REPEAT_TITLE": "krijo listën me sendin %1 të përsëritur %2 herë",
+ "LISTS_LENGTH_TITLE": "gjatësia e %1",
+ "LISTS_LENGTH_TOOLTIP": "Kthen gjatësinë e listës.",
+ "LISTS_ISEMPTY_TITLE": "%1 është e zbraztë",
+ "LISTS_ISEMPTY_TOOLTIP": "Kthehet i saktë nëse lista është e zbraztë.",
+ "LISTS_INLIST": "në listë",
+ "LISTS_INDEX_OF_FIRST": "gjen ndodhjen e parë të sendit",
+ "LISTS_INDEX_OF_LAST": "gjen ndodhjen e fundit të sendit",
+ "LISTS_INDEX_OF_TOOLTIP": "Kthen indeksin e ndodhjes së parë/fudit të sendit në listë. Kthen %1 nëse teksti nuk është gjetur.",
+ "LISTS_GET_INDEX_GET": "merr",
+ "LISTS_GET_INDEX_GET_REMOVE": "merr dhe fshij",
+ "LISTS_GET_INDEX_REMOVE": "largo",
+ "LISTS_GET_INDEX_FROM_START": "#",
+ "LISTS_GET_INDEX_FROM_END": "# nga fundi",
+ "LISTS_GET_INDEX_FIRST": "i parë",
+ "LISTS_GET_INDEX_LAST": "i fundit",
+ "LISTS_GET_INDEX_RANDOM": "i rastësishëm",
+ "LISTS_INDEX_FROM_START_TOOLTIP": "%1 është sendi i parë.",
+ "LISTS_INDEX_FROM_END_TOOLTIP": "%1 është sendi i fundit.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_FROM": "Kthen një send në pozicionin e specifikuar në listë.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_FIRST": "Rikthen tek artikulli i par në list.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_LAST": "Kthen artikullin e fundit në list.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_RANDOM": "Kthen një send të rastësishëm në listë.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM": "Fshin dhe kthen sendin në pozicionin e specifikuar në listë.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST": "Fshin dhe kthen sendin e parë në listë.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST": "Fshin dhe kthen sendin e fundit në listë.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM": "Fshin dhe kthen një send të rastësishëm në listë.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM": "Fshin sendin në pozicionin e specifikuar në listë.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST": "Fshin sendin e parë në listë.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST": "Fshin sendin e fundit në listë.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM": "Kthen një send të rastësishëm në listë.",
+ "LISTS_SET_INDEX_SET": "vendos",
+ "LISTS_SET_INDEX_INSERT": "fut në",
+ "LISTS_SET_INDEX_INPUT_TO": "sikurse",
+ "LISTS_SET_INDEX_TOOLTIP_SET_FROM": "Vendos sendin në pozicionin e specifikuar në listë.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_FIRST": "Vendos sendin e parë në listë.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_LAST": "Vendos sendin e fundit në listë.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_RANDOM": "Vendos një send të rastësishëm në listë.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_FROM": "Fut sendin në pozicionin e specifikuar të listës.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST": "Fut sendin në fillim të listës.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_LAST": "Bashkangjit sendin në fund të listës.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM": "Fut sendin rastësisht në listë.",
+ "LISTS_GET_SUBLIST_START_FROM_START": "merr nën-listën nga #",
+ "LISTS_GET_SUBLIST_START_FROM_END": "merr nën listën nga # nga fundi",
+ "LISTS_GET_SUBLIST_START_FIRST": "merr nën-listën nga i pari",
+ "LISTS_GET_SUBLIST_END_FROM_START": "tek #",
+ "LISTS_GET_SUBLIST_END_FROM_END": "tek # nga fundi",
+ "LISTS_GET_SUBLIST_END_LAST": "tek i fundit",
+ "LISTS_GET_SUBLIST_TOOLTIP": "Krijon në kopje të pjesës së specifikuar të listës.",
+ "VARIABLES_GET_TOOLTIP": "Pergjigjet me nje vlere te kesaj variable.",
+ "VARIABLES_GET_CREATE_SET": "Krijo 'vendos %1",
+ "VARIABLES_SET": "vendos %1 ne %2",
+ "VARIABLES_SET_TOOLTIP": "Vendos kete variable te jete e barabarte me te dhenat ne hyrje.",
+ "VARIABLES_SET_CREATE_GET": "Krijo 'merr %1",
+ "PROCEDURES_DEFNORETURN_HELPURL": "http://en.wikipedia.org/wiki/Procedure_%28computer_science%29",
+ "PROCEDURES_DEFNORETURN_TITLE": "te",
+ "PROCEDURES_DEFNORETURN_PROCEDURE": "bëj diqka",
+ "PROCEDURES_BEFORE_PARAMS": "me:",
+ "PROCEDURES_CALL_BEFORE_PARAMS": "me:",
+ "PROCEDURES_DEFNORETURN_TOOLTIP": "Krijon një funksion pa dalje.",
+ "PROCEDURES_DEFRETURN_HELPURL": "http://en.wikipedia.org/wiki/Procedure_%28computer_science%29",
+ "PROCEDURES_DEFRETURN_RETURN": "rikthe",
+ "PROCEDURES_DEFRETURN_TOOLTIP": "Krijon një funksion me një dalje.",
+ "PROCEDURES_DEF_DUPLICATE_WARNING": "Paralajmërim: Ky funksion ka parametra të dyfishuar.",
+ "PROCEDURES_CALLNORETURN_HELPURL": "http://en.wikipedia.org/wiki/Procedure_%28computer_science%29",
+ "PROCEDURES_CALLNORETURN_TOOLTIP": "Lësho funksionin e definuar nga përdoruesi '%1'.",
+ "PROCEDURES_CALLRETURN_HELPURL": "http://en.wikipedia.org/wiki/Procedure_%28computer_science%29",
+ "PROCEDURES_CALLRETURN_TOOLTIP": "Lëho funksionin e definuar nga përdoruesi '%1' dhe përdor daljen e tij.",
+ "PROCEDURES_MUTATORCONTAINER_TITLE": "Informacioni i futur",
+ "PROCEDURES_MUTATORARG_TITLE": "Fut emrin:",
+ "PROCEDURES_HIGHLIGHT_DEF": "Thekso definicionin e funksionit",
+ "PROCEDURES_CREATE_DO": "Krijo '%1'",
+ "PROCEDURES_IFRETURN_TOOLTIP": "Nëse një vlerë është e saktë, atëherë kthe një vlerë të dytë.",
+ "PROCEDURES_IFRETURN_WARNING": "Paralajmërim: Ky bllok mund të përdoret vetëm brenda definicionit të funksionit."
+}
diff --git a/blockly/msg/json/sr.json b/blockly/msg/json/sr.json
new file mode 100644
index 0000000..d0c5f20
--- /dev/null
+++ b/blockly/msg/json/sr.json
@@ -0,0 +1,332 @@
+{
+ "@metadata": {
+ "authors": [
+ "Rancher",
+ "아라",
+ "Perevod16"
+ ]
+ },
+ "VARIABLES_DEFAULT_NAME": "ставка",
+ "TODAY": "Данас",
+ "DUPLICATE_BLOCK": "Дуплирај",
+ "ADD_COMMENT": "Додај коментар",
+ "REMOVE_COMMENT": "Уклони коментар",
+ "EXTERNAL_INPUTS": "Спољни улази",
+ "INLINE_INPUTS": "Унутрашњи улази",
+ "DELETE_BLOCK": "Обриши блок",
+ "DELETE_X_BLOCKS": "Обриши %1 блокова",
+ "DELETE_ALL_BLOCKS": "Обрисати %1 блокова?",
+ "CLEAN_UP": "Уклоните блокова",
+ "COLLAPSE_BLOCK": "Скупи блок",
+ "COLLAPSE_ALL": "Скупи блокове",
+ "EXPAND_BLOCK": "Прошири блок",
+ "EXPAND_ALL": "Прошири блокове",
+ "DISABLE_BLOCK": "Онемогући блок",
+ "ENABLE_BLOCK": "Омогући блок",
+ "HELP": "Помоћ",
+ "UNDO": "Опозови",
+ "REDO": "Понови",
+ "CHANGE_VALUE_TITLE": "Промените вредност:",
+ "RENAME_VARIABLE": "Преименуј променљиву…",
+ "RENAME_VARIABLE_TITLE": "Преименујте све „%1“ променљиве у:",
+ "NEW_VARIABLE": "Нова променљива…",
+ "NEW_VARIABLE_TITLE": "Име нове променљиве:",
+ "COLOUR_PICKER_HELPURL": "https://sr.wikipedia.org/wiki/Боја",
+ "COLOUR_PICKER_TOOLTIP": "Изаберите боју са палете.",
+ "COLOUR_RANDOM_TITLE": "случајна боја",
+ "COLOUR_RANDOM_TOOLTIP": "Изаберите боју насумице.",
+ "COLOUR_RGB_HELPURL": "http://www.december.com/html/spec/colorper.html",
+ "COLOUR_RGB_TITLE": "боја са",
+ "COLOUR_RGB_RED": "црвена",
+ "COLOUR_RGB_GREEN": "зелена",
+ "COLOUR_RGB_BLUE": "плава",
+ "COLOUR_RGB_TOOLTIP": "Креирај боју са одређеном количином црвене,зелене, и плаве. Све вредности морају бити између 0 и 100.",
+ "COLOUR_BLEND_HELPURL": "http://meyerweb.com/eric/tools/color-blend/",
+ "COLOUR_BLEND_TITLE": "помешај",
+ "COLOUR_BLEND_COLOUR1": "боја 1",
+ "COLOUR_BLEND_COLOUR2": "боја 2",
+ "COLOUR_BLEND_RATIO": "однос",
+ "COLOUR_BLEND_TOOLTIP": "Помешати две боје заједно са датим односом (0.0 - 1.0).",
+ "CONTROLS_REPEAT_HELPURL": "https://sr.wikipedia.org/wiki/For_петља",
+ "CONTROLS_REPEAT_TITLE": "понови %1 пута",
+ "CONTROLS_REPEAT_INPUT_DO": "изврши",
+ "CONTROLS_REPEAT_TOOLTIP": "Одрадити неке наредбе неколико пута.",
+ "CONTROLS_WHILEUNTIL_OPERATOR_WHILE": "понављати док",
+ "CONTROLS_WHILEUNTIL_OPERATOR_UNTIL": "понављати до",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_WHILE": "Док је вредност тачна, онда извршите неке наредбе.",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL": "Док вредност није тачна, онда извршити неке наредбе.",
+ "CONTROLS_FOR_TOOLTIP": "Имај промењиву \"%1\" узми вредности од почетног броја до задњег броја, бројећи по одређеном интервалу, и изврши одређене блокове.",
+ "CONTROLS_FOR_TITLE": "преброј са %1 од %2 до %3 од %4",
+ "CONTROLS_FOREACH_TITLE": "за сваку ставку %1 на списку %2",
+ "CONTROLS_FOREACH_TOOLTIP": "За сваку ставку унутар листе, подеси промењиву '%1' по ставци, и онда начини неке изјаве-наредбе.",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK": "Изађите из петље",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE": "настави са следећом итерацијом петље",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK": "Напусти садржај петље.",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE": "Прескочи остатак ове петље, и настави са следећом итерацијом(понављанјем).",
+ "CONTROLS_FLOW_STATEMENTS_WARNING": "Упозорење: Овај блок може да се употреби само унутар петље.",
+ "CONTROLS_IF_TOOLTIP_1": "ако је вредност тачна, онда изврши неке наредбе-изјаве.",
+ "CONTROLS_IF_TOOLTIP_2": "ако је вредност тачна, онда изврши први блок наредби, У супротном, изврши други блок наредби.",
+ "CONTROLS_IF_TOOLTIP_3": "Ако је прва вредност тачна, онда изврши први блок наредби, у супротном, ако је друга вредност тачна , изврши други блок наредби.",
+ "CONTROLS_IF_TOOLTIP_4": "Ако је прва вредност тачна, онда изврши први блок наредби, у супротном, ако је друга вредност тачна , изврши други блок наредби. Ако ни једна од вредности није тачна, изврши последнји блок наредби.",
+ "CONTROLS_IF_MSG_IF": "ако",
+ "CONTROLS_IF_MSG_ELSEIF": "иначе-ако",
+ "CONTROLS_IF_MSG_ELSE": "иначе",
+ "CONTROLS_IF_IF_TOOLTIP": "Додај, уклони, или преуреди делове како бих реконфигурисали овај иф блок.",
+ "CONTROLS_IF_ELSEIF_TOOLTIP": "Додајте услов блоку „ако“.",
+ "CONTROLS_IF_ELSE_TOOLTIP": "Додај коначни, catch-all (ухвати све) услове иф блока.",
+ "LOGIC_COMPARE_HELPURL": "https://sr.wikipedia.org/wiki/Неједнакост",
+ "LOGIC_COMPARE_TOOLTIP_EQ": "Враћа вредност „тачно“ ако су оба улаза једнака.",
+ "LOGIC_COMPARE_TOOLTIP_NEQ": "Враћа вредност „тачно“ ако су оба улаза неједнака.",
+ "LOGIC_COMPARE_TOOLTIP_LT": "Враћа вредност „тачно“ ако је први улаз мањи од другог.",
+ "LOGIC_COMPARE_TOOLTIP_LTE": "Враћа вредност „тачно“ ако је први улаз мањи или једнак другом.",
+ "LOGIC_COMPARE_TOOLTIP_GT": "Враћа вредност „тачно“ ако је први улаз већи од другог.",
+ "LOGIC_COMPARE_TOOLTIP_GTE": "Враћа вредност „тачно“ ако је први улаз већи или једнак другом.",
+ "LOGIC_OPERATION_TOOLTIP_AND": "Враћа вредност „тачно“ ако су оба улаза тачна.",
+ "LOGIC_OPERATION_AND": "и",
+ "LOGIC_OPERATION_TOOLTIP_OR": "Враћа вредност „тачно“ ако је бар један од улаза тачан.",
+ "LOGIC_OPERATION_OR": "или",
+ "LOGIC_NEGATE_TITLE": "није %1",
+ "LOGIC_NEGATE_TOOLTIP": "Враћа вредност „тачно“ ако је улаз нетачан. Враћа вредност „нетачно“ ако је улаз тачан.",
+ "LOGIC_BOOLEAN_TRUE": "тачно",
+ "LOGIC_BOOLEAN_FALSE": "нетачно",
+ "LOGIC_BOOLEAN_TOOLTIP": "враћа вредност или тачно или нетачно.",
+ "LOGIC_NULL_HELPURL": "https://en.wikipedia.org/wiki/Nullable_type",
+ "LOGIC_NULL": "без вредности",
+ "LOGIC_NULL_TOOLTIP": "Враћа „без вредности“.",
+ "LOGIC_TERNARY_HELPURL": "https://en.wikipedia.org/wiki/%3F:",
+ "LOGIC_TERNARY_CONDITION": "тест",
+ "LOGIC_TERNARY_IF_TRUE": "ако је тачно",
+ "LOGIC_TERNARY_IF_FALSE": "ако је нетачно",
+ "LOGIC_TERNARY_TOOLTIP": "Провери услов у 'test'. Ако је услов тачан, тада враћа 'if true' вредност; у другом случају враћа 'if false' вредност.",
+ "MATH_NUMBER_HELPURL": "https://en.wikipedia.org/wiki/Number",
+ "MATH_NUMBER_TOOLTIP": "Неки број.",
+ "MATH_ADDITION_SYMBOL": "+",
+ "MATH_SUBTRACTION_SYMBOL": "-",
+ "MATH_DIVISION_SYMBOL": "÷",
+ "MATH_MULTIPLICATION_SYMBOL": "×",
+ "MATH_POWER_SYMBOL": "^",
+ "MATH_TRIG_SIN": "син",
+ "MATH_TRIG_COS": "цос",
+ "MATH_TRIG_TAN": "тан",
+ "MATH_TRIG_ASIN": "арц син",
+ "MATH_TRIG_ACOS": "арц цос",
+ "MATH_TRIG_ATAN": "арц тан",
+ "MATH_ARITHMETIC_HELPURL": "https://en.wikipedia.org/wiki/Arithmetic",
+ "MATH_ARITHMETIC_TOOLTIP_ADD": "Вратите збир два броја.",
+ "MATH_ARITHMETIC_TOOLTIP_MINUS": "Враћа разлику два броја.",
+ "MATH_ARITHMETIC_TOOLTIP_MULTIPLY": "Враћа производ два броја.",
+ "MATH_ARITHMETIC_TOOLTIP_DIVIDE": "Враћа количник два броја.",
+ "MATH_ARITHMETIC_TOOLTIP_POWER": "Враћа први број степенован другим.",
+ "MATH_SINGLE_HELPURL": "https://sr.wikipedia.org/wiki/Квадратни_корен",
+ "MATH_SINGLE_OP_ROOT": "квадратни корен",
+ "MATH_SINGLE_TOOLTIP_ROOT": "Враћа квадратни корен броја.",
+ "MATH_SINGLE_OP_ABSOLUTE": "апсолутан",
+ "MATH_SINGLE_TOOLTIP_ABS": "Враћа апсолутну вредност броја.",
+ "MATH_SINGLE_TOOLTIP_NEG": "Враћа негацију броја.",
+ "MATH_SINGLE_TOOLTIP_LN": "Враћа природни логаритам броја.",
+ "MATH_SINGLE_TOOLTIP_LOG10": "Враћа логаритам броја са основом 10.",
+ "MATH_SINGLE_TOOLTIP_EXP": "вратити е на власти броја.",
+ "MATH_SINGLE_TOOLTIP_POW10": "Враћа 10-ти степен броја.",
+ "MATH_TRIG_HELPURL": "https://sr.wikipedia.org/wiki/Тригонометријске_функције",
+ "MATH_TRIG_TOOLTIP_SIN": "Враћа синус степена (не радијан).",
+ "MATH_TRIG_TOOLTIP_COS": "Враћа косинус степена (не радијан).",
+ "MATH_TRIG_TOOLTIP_TAN": "Враћа тангенс степена (не радијан).",
+ "MATH_TRIG_TOOLTIP_ASIN": "Враћа аркус броја.",
+ "MATH_TRIG_TOOLTIP_ACOS": "Враћа аркус косинус броја.",
+ "MATH_TRIG_TOOLTIP_ATAN": "Враћа аркус тангенс броја.",
+ "MATH_CONSTANT_HELPURL": "https://sr.wikipedia.org/wiki/Математичка_константа",
+ "MATH_CONSTANT_TOOLTIP": "врати једну од заједничких константи: π (3.141…), e (2.718…), φ (1.618…), sqrt(2) (1.414…), sqrt(½) (0.707…), или ∞ (infinity).",
+ "MATH_IS_EVEN": "је паран",
+ "MATH_IS_ODD": "је непаран",
+ "MATH_IS_PRIME": "је прост",
+ "MATH_IS_WHOLE": "је цео",
+ "MATH_IS_POSITIVE": "је позитиван",
+ "MATH_IS_NEGATIVE": "је негативан",
+ "MATH_IS_DIVISIBLE_BY": "је дељив са",
+ "MATH_IS_TOOLTIP": "Провјерава да ли је број паран, непаран, прост, цио, позитиван, негативан, или да ли је делјив са одређеним бројем. Враћа тачно или нетачно.",
+ "MATH_CHANGE_HELPURL": "https://en.wikipedia.org/wiki/Programming_idiom#Incrementing_a_counter",
+ "MATH_CHANGE_TITLE": "промени %1 за %2",
+ "MATH_CHANGE_TOOLTIP": "Додајте број променљивој „%1“.",
+ "MATH_ROUND_HELPURL": "https://sr.wikipedia.org/wiki/Заокруживање",
+ "MATH_ROUND_TOOLTIP": "Заокружите број на већу или мању вредност.",
+ "MATH_ROUND_OPERATOR_ROUND": "заокружи",
+ "MATH_ROUND_OPERATOR_ROUNDUP": "заокружи навише",
+ "MATH_ROUND_OPERATOR_ROUNDDOWN": "заокружи наниже",
+ "MATH_ONLIST_HELPURL": "",
+ "MATH_ONLIST_OPERATOR_SUM": "збир списка",
+ "MATH_ONLIST_TOOLTIP_SUM": "Враћа збир свих бројева са списка.",
+ "MATH_ONLIST_OPERATOR_MIN": "мин. списка",
+ "MATH_ONLIST_TOOLTIP_MIN": "Враћа најмањи број са списка.",
+ "MATH_ONLIST_OPERATOR_MAX": "макс. списка",
+ "MATH_ONLIST_TOOLTIP_MAX": "Враћа највећи број са списка.",
+ "MATH_ONLIST_OPERATOR_AVERAGE": "просек списка",
+ "MATH_ONLIST_TOOLTIP_AVERAGE": "Враћа просек нумеричких вредности са списка.",
+ "MATH_ONLIST_OPERATOR_MEDIAN": "медијана списка",
+ "MATH_ONLIST_TOOLTIP_MEDIAN": "Враћа медијану са списка.",
+ "MATH_ONLIST_OPERATOR_MODE": "модус списка",
+ "MATH_ONLIST_TOOLTIP_MODE": "Враћа најчешће ставке са списка.",
+ "MATH_ONLIST_OPERATOR_STD_DEV": "стандардна девијација списка",
+ "MATH_ONLIST_TOOLTIP_STD_DEV": "Враћа стандардну девијацију списка.",
+ "MATH_ONLIST_OPERATOR_RANDOM": "случајна ставка списка",
+ "MATH_ONLIST_TOOLTIP_RANDOM": "Враћа случајни елемент са списка.",
+ "MATH_MODULO_HELPURL": "https://sr.wikipedia.org/wiki/Конгруенција",
+ "MATH_MODULO_TITLE": "подсетник од %1 ÷ %2",
+ "MATH_MODULO_TOOLTIP": "Враћа подсетник од дељења два броја.",
+ "MATH_CONSTRAIN_TITLE": "ограничи %1 ниско %2 високо %3",
+ "MATH_CONSTRAIN_TOOLTIP": "Ограничава број на доње и горње границе (укључиво).",
+ "MATH_RANDOM_INT_HELPURL": "https://sr.wikipedia.org/wiki/Генератор_случајних_бројева",
+ "MATH_RANDOM_INT_TITLE": "сличајно одабрани цијели број од %1 до %2",
+ "MATH_RANDOM_INT_TOOLTIP": "Враћа случајно одабрани цели број између две одређене границе, уклјучиво.",
+ "MATH_RANDOM_FLOAT_HELPURL": "https://sr.wikipedia.org/wiki/Генератор_случајних_бројева",
+ "MATH_RANDOM_FLOAT_TITLE_RANDOM": "случајни разломак",
+ "MATH_RANDOM_FLOAT_TOOLTIP": "Враћа случајни разломак између 0.0 (укључиво) и 1.0 (искључиво).",
+ "TEXT_TEXT_HELPURL": "https://sr.wikipedia.org/wiki/Ниска",
+ "TEXT_TEXT_TOOLTIP": "Слово, реч или ред текста.",
+ "TEXT_JOIN_TITLE_CREATEWITH": "напиши текст са",
+ "TEXT_JOIN_TOOLTIP": "Направити дио текста спајајући различите ставке.",
+ "TEXT_CREATE_JOIN_TITLE_JOIN": "спајањем",
+ "TEXT_CREATE_JOIN_TOOLTIP": "Додај, уклони, или другачије поредај одјелке како би изнова поставили овај текст блок.",
+ "TEXT_CREATE_JOIN_ITEM_TOOLTIP": "Додајте ставку у текст.",
+ "TEXT_APPEND_TO": "на",
+ "TEXT_APPEND_APPENDTEXT": "додај текст",
+ "TEXT_APPEND_TOOLTIP": "Додајте текст на променљиву „%1“.",
+ "TEXT_LENGTH_TITLE": "дужина текста %1",
+ "TEXT_LENGTH_TOOLTIP": "Враћа број слова (уклјучујући размаке) у датом тексту.",
+ "TEXT_ISEMPTY_TITLE": "%1 је празан",
+ "TEXT_ISEMPTY_TOOLTIP": "Враћа тачно ако је доставлјени текст празан.",
+ "TEXT_INDEXOF_TOOLTIP": "Враћа однос првог/заднјег појавлјиванја текста у другом тексту. Врађа %1 ако текст није пронађен.",
+ "TEXT_INDEXOF_INPUT_INTEXT": "у тексту",
+ "TEXT_INDEXOF_OPERATOR_FIRST": "пронађи прво појављивање текста",
+ "TEXT_INDEXOF_OPERATOR_LAST": "пронађи последње појављивање текста",
+ "TEXT_INDEXOF_TAIL": "",
+ "TEXT_CHARAT_INPUT_INTEXT": "у тексту",
+ "TEXT_CHARAT_FROM_START": "преузми слово #",
+ "TEXT_CHARAT_FROM_END": "преузми слово # са краја",
+ "TEXT_CHARAT_FIRST": "преузми прво слово",
+ "TEXT_CHARAT_LAST": "преузми последње слово",
+ "TEXT_CHARAT_RANDOM": "преузми случајно слово",
+ "TEXT_CHARAT_TAIL": "",
+ "TEXT_CHARAT_TOOLTIP": "Враћа слово на одређени положај.",
+ "TEXT_GET_SUBSTRING_TOOLTIP": "Враћа одређени део текста.",
+ "TEXT_GET_SUBSTRING_INPUT_IN_TEXT": "у тексту",
+ "TEXT_GET_SUBSTRING_START_FROM_START": "преузми подниску из слова #",
+ "TEXT_GET_SUBSTRING_START_FROM_END": "преузми подниску из слова # са краја",
+ "TEXT_GET_SUBSTRING_START_FIRST": "преузми подниску из првог слова",
+ "TEXT_GET_SUBSTRING_END_FROM_START": "слову #",
+ "TEXT_GET_SUBSTRING_END_FROM_END": "слову # са краја",
+ "TEXT_GET_SUBSTRING_END_LAST": "последњем слову",
+ "TEXT_GET_SUBSTRING_TAIL": "",
+ "TEXT_CHANGECASE_TOOLTIP": "Враћа примерак текста са другачијом величином слова.",
+ "TEXT_CHANGECASE_OPERATOR_UPPERCASE": "великим словима",
+ "TEXT_CHANGECASE_OPERATOR_LOWERCASE": "малим словима",
+ "TEXT_CHANGECASE_OPERATOR_TITLECASE": "свака реч великим словом",
+ "TEXT_TRIM_TOOLTIP": "Враћа копију текста са уклонјеним простором са једног од два краја.",
+ "TEXT_TRIM_OPERATOR_BOTH": "трим празнине са обе стране",
+ "TEXT_TRIM_OPERATOR_LEFT": "скратити простор са леве стране",
+ "TEXT_TRIM_OPERATOR_RIGHT": "скратити простор са десне стране",
+ "TEXT_PRINT_TITLE": "прикажи %1",
+ "TEXT_PRINT_TOOLTIP": "Прикажите одређени текст, број или другу вредност на екрану.",
+ "TEXT_PROMPT_TYPE_TEXT": "питај за текст са поруком",
+ "TEXT_PROMPT_TYPE_NUMBER": "питај за број са поруком",
+ "TEXT_PROMPT_TOOLTIP_NUMBER": "Питајте корисника за број.",
+ "TEXT_PROMPT_TOOLTIP_TEXT": "Питајте корисника за унос текста.",
+ "LISTS_CREATE_EMPTY_HELPURL": "https://github.com/google/blockly/wiki/Lists#create-empty-list",
+ "LISTS_CREATE_EMPTY_TITLE": "направи празан списак",
+ "LISTS_CREATE_EMPTY_TOOLTIP": "враћа листу, дужине 0, не садржавајући евиденцију података",
+ "LISTS_CREATE_WITH_TOOLTIP": "Креирај листу са било којим бројем ставки.",
+ "LISTS_CREATE_WITH_INPUT_WITH": "направи списак са",
+ "LISTS_CREATE_WITH_CONTAINER_TITLE_ADD": "списак",
+ "LISTS_CREATE_WITH_CONTAINER_TOOLTIP": "Додајте, избришите, или преуредите делове како би се реорганизовали овај блок листе.",
+ "LISTS_CREATE_WITH_ITEM_TOOLTIP": "Додајте ставку на списак.",
+ "LISTS_REPEAT_TOOLTIP": "Прави листу која се састоји од задане вредности коју понавлјамо одређени број шута.",
+ "LISTS_REPEAT_TITLE": "Направити листу са ставком %1 која се понавлја %2 пута",
+ "LISTS_LENGTH_TITLE": "дужина списка %1",
+ "LISTS_LENGTH_TOOLTIP": "Враћа дужину списка.",
+ "LISTS_ISEMPTY_TITLE": "%1 је празан",
+ "LISTS_ISEMPTY_TOOLTIP": "Враћа вредност тачно ако је листа празна.",
+ "LISTS_INLIST": "на списку",
+ "LISTS_INDEX_OF_FIRST": "пронађи прво појављивање ставке",
+ "LISTS_INDEX_OF_LAST": "пронађи последње појављивање ставке",
+ "LISTS_INDEX_OF_TOOLTIP": "Враћа број првог и/последњег уласка елемента у листу. Враћа %1 Ако елемент није пронађен.",
+ "LISTS_GET_INDEX_GET": "преузми",
+ "LISTS_GET_INDEX_GET_REMOVE": "преузми и уклони",
+ "LISTS_GET_INDEX_REMOVE": "уклони",
+ "LISTS_GET_INDEX_FROM_START": "#",
+ "LISTS_GET_INDEX_FROM_END": "# са краја",
+ "LISTS_GET_INDEX_FIRST": "прва",
+ "LISTS_GET_INDEX_LAST": "последња",
+ "LISTS_GET_INDEX_RANDOM": "случајна",
+ "LISTS_GET_INDEX_TAIL": "",
+ "LISTS_INDEX_FROM_START_TOOLTIP": "%1 је прва ставка.",
+ "LISTS_INDEX_FROM_END_TOOLTIP": "%1 је последња ставка.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_FROM": "Враћа ставку на одређену позицију на листи.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_FIRST": "Враћа прву ставку на списку.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_LAST": "Враћа последњу ставку на списку.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_RANDOM": "Враћа случајну ставку са списка.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM": "Уклања и враћа ставку са одређеног положаја на списку.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST": "Уклања и враћа прву ставку са списка.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST": "Уклања и враћа последњу ставку са списка.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM": "Уклања и враћа случајну ставку са списка.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM": "Уклања ставку са одређеног положаја на списку.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST": "Уклања прву ставку са списка.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST": "Уклања последњу ставку са списка.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM": "Уклања случајну ставку са списка.",
+ "LISTS_SET_INDEX_SET": "постави",
+ "LISTS_SET_INDEX_INSERT": "убаци на",
+ "LISTS_SET_INDEX_INPUT_TO": "као",
+ "LISTS_SET_INDEX_TOOLTIP_SET_FROM": "Поставља ставку на одређени положај на списку.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_FIRST": "Поставља прву ставку на списку.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_LAST": "Поставља последњу ставку на списку.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_RANDOM": "Поставља случајну ставку на списку.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_FROM": "Убацује ставку на одређени положај на списку.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST": "Убацује ставку на почетак списка.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_LAST": "Додајте ставку на крај списка.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM": "Убацује ставку на случајно место на списку.",
+ "LISTS_GET_SUBLIST_START_FROM_START": "преузми подсписак од #",
+ "LISTS_GET_SUBLIST_START_FROM_END": "преузми подсписак из # са краја",
+ "LISTS_GET_SUBLIST_START_FIRST": "преузми подсписак од прве",
+ "LISTS_GET_SUBLIST_END_FROM_START": "до #",
+ "LISTS_GET_SUBLIST_END_FROM_END": "до # од краја",
+ "LISTS_GET_SUBLIST_END_LAST": "до последње",
+ "LISTS_GET_SUBLIST_TAIL": "",
+ "LISTS_GET_SUBLIST_TOOLTIP": "Прави копију одређеног дела листе.",
+ "LISTS_SORT_HELPURL": "https://github.com/google/blockly/wiki/Lists#sorting-a-list",
+ "LISTS_SORT_TITLE": "сортирај %1 %2 %3",
+ "LISTS_SORT_TOOLTIP": "Сортирајте копију списка.",
+ "LISTS_SPLIT_LIST_FROM_TEXT": "направите листу са текста",
+ "LISTS_SPLIT_TEXT_FROM_LIST": "да текст из листе",
+ "LISTS_SPLIT_WITH_DELIMITER": "са раздвајање",
+ "LISTS_SPLIT_TOOLTIP_SPLIT": "Поделити текст у листу текстова, разбијање на сваком граничник.",
+ "LISTS_SPLIT_TOOLTIP_JOIN": "Да се придружи листу текстова у један текст, подељених за раздвајање.",
+ "ORDINAL_NUMBER_SUFFIX": "",
+ "VARIABLES_GET_TOOLTIP": "Враћа вредност ове променљиве.",
+ "VARIABLES_GET_CREATE_SET": "Направи „постави %1“",
+ "VARIABLES_SET": "постави %1 у %2",
+ "VARIABLES_SET_TOOLTIP": "Поставља променљиву тако да буде једнака улазу.",
+ "VARIABLES_SET_CREATE_GET": "Направи „преузми %1“",
+ "PROCEDURES_DEFNORETURN_HELPURL": "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29",
+ "PROCEDURES_DEFNORETURN_TITLE": "да",
+ "PROCEDURES_DEFNORETURN_PROCEDURE": "урадите нешто",
+ "PROCEDURES_BEFORE_PARAMS": "са:",
+ "PROCEDURES_CALL_BEFORE_PARAMS": "са:",
+ "PROCEDURES_DEFNORETURN_DO": "",
+ "PROCEDURES_DEFNORETURN_TOOLTIP": "Прави функцију без излаза.",
+ "PROCEDURES_DEFNORETURN_COMMENT": "Описати ову функцију...",
+ "PROCEDURES_DEFRETURN_HELPURL": "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29",
+ "PROCEDURES_DEFRETURN_RETURN": "врати",
+ "PROCEDURES_DEFRETURN_TOOLTIP": "Прави функцију са излазом.",
+ "PROCEDURES_ALLOW_STATEMENTS": "дозволити изреке",
+ "PROCEDURES_DEF_DUPLICATE_WARNING": "Упозорење: Ова функција има дупликате параметара.",
+ "PROCEDURES_CALLNORETURN_HELPURL": "https://sr.wikipedia.org/wiki/Функција_(програмирање)",
+ "PROCEDURES_CALLNORETURN_TOOLTIP": "Покрените прилагођену функцију „%1“.",
+ "PROCEDURES_CALLRETURN_HELPURL": "https://sr.wikipedia.org/wiki/Функција_(програмирање)",
+ "PROCEDURES_CALLRETURN_TOOLTIP": "Покрените прилагођену функцију „%1“ и користи њен излаз.",
+ "PROCEDURES_MUTATORCONTAINER_TITLE": "улази",
+ "PROCEDURES_MUTATORCONTAINER_TOOLTIP": "Да додате, уклоните или переупорядочить улаза за ову функцију.",
+ "PROCEDURES_MUTATORARG_TITLE": "назив улаза:",
+ "PROCEDURES_MUTATORARG_TOOLTIP": "Додајте улазна функција.",
+ "PROCEDURES_HIGHLIGHT_DEF": "Истакни дефиницију функције",
+ "PROCEDURES_CREATE_DO": "Направи „%1“",
+ "PROCEDURES_IFRETURN_TOOLTIP": "Уколико је вредност тачна, врати другу вредност.",
+ "PROCEDURES_IFRETURN_WARNING": "Упозорење: Овај блок се може користити једино у дефиницији функције."
+}
diff --git a/blockly/msg/json/sv.json b/blockly/msg/json/sv.json
new file mode 100644
index 0000000..16ebd71
--- /dev/null
+++ b/blockly/msg/json/sv.json
@@ -0,0 +1,337 @@
+{
+ "@metadata": {
+ "authors": [
+ "Jopparn",
+ "WikiPhoenix",
+ "Abbedabb",
+ "Aaoo",
+ "아라"
+ ]
+ },
+ "VARIABLES_DEFAULT_NAME": "föremål",
+ "TODAY": "Idag",
+ "DUPLICATE_BLOCK": "Duplicera",
+ "ADD_COMMENT": "Lägg till kommentar",
+ "REMOVE_COMMENT": "Radera kommentar",
+ "EXTERNAL_INPUTS": "Externa inmatningar",
+ "INLINE_INPUTS": "Radinmatning",
+ "DELETE_BLOCK": "Radera block",
+ "DELETE_X_BLOCKS": "Radera %1 block",
+ "DELETE_ALL_BLOCKS": "Radera alla %1 block?",
+ "CLEAN_UP": "Rada upp block",
+ "COLLAPSE_BLOCK": "Fäll ihop block",
+ "COLLAPSE_ALL": "Fäll ihop block",
+ "EXPAND_BLOCK": "Fäll ut block",
+ "EXPAND_ALL": "Fäll ut block",
+ "DISABLE_BLOCK": "Inaktivera block",
+ "ENABLE_BLOCK": "Aktivera block",
+ "HELP": "Hjälp",
+ "UNDO": "Ångra",
+ "REDO": "Gör om",
+ "CHANGE_VALUE_TITLE": "Ändra värde:",
+ "RENAME_VARIABLE": "Byt namn på variabel...",
+ "RENAME_VARIABLE_TITLE": "Byt namn på alla'%1'-variabler till:",
+ "NEW_VARIABLE": "Skapa variabel...",
+ "NEW_VARIABLE_TITLE": "Nytt variabelnamn:",
+ "VARIABLE_ALREADY_EXISTS": "En variabel som heter \"%1\" finns redan.",
+ "DELETE_VARIABLE_CONFIRMATION": "Radera %1 användningar av variabeln \"%2\"?",
+ "DELETE_VARIABLE": "Radera variabeln \"%1\"",
+ "COLOUR_PICKER_HELPURL": "https://sv.wikipedia.org/wiki/Färg",
+ "COLOUR_PICKER_TOOLTIP": "Välj en färg från paletten.",
+ "COLOUR_RANDOM_TITLE": "slumpfärg",
+ "COLOUR_RANDOM_TOOLTIP": "Slumpa fram en färg.",
+ "COLOUR_RGB_HELPURL": "http://www.december.com/html/spec/colorper.html",
+ "COLOUR_RGB_TITLE": "färg med",
+ "COLOUR_RGB_RED": "röd",
+ "COLOUR_RGB_GREEN": "grön",
+ "COLOUR_RGB_BLUE": "blå",
+ "COLOUR_RGB_TOOLTIP": "Skapa en färg med det angivna mängden röd, grön och blå. Alla värden måste vara mellan 0 och 100.",
+ "COLOUR_BLEND_HELPURL": "http://meyerweb.com/eric/tools/color-blend/",
+ "COLOUR_BLEND_TITLE": "blanda",
+ "COLOUR_BLEND_COLOUR1": "färg 1",
+ "COLOUR_BLEND_COLOUR2": "färg 2",
+ "COLOUR_BLEND_RATIO": "förhållande",
+ "COLOUR_BLEND_TOOLTIP": "Blandar ihop två färger med ett bestämt förhållande (0.0 - 1.0).",
+ "CONTROLS_REPEAT_HELPURL": "https://en.wikipedia.org/wiki/For_loop",
+ "CONTROLS_REPEAT_TITLE": "upprepa %1 gånger",
+ "CONTROLS_REPEAT_INPUT_DO": "utför",
+ "CONTROLS_REPEAT_TOOLTIP": "Utför några kommandon flera gånger.",
+ "CONTROLS_WHILEUNTIL_OPERATOR_WHILE": "upprepa medan",
+ "CONTROLS_WHILEUNTIL_OPERATOR_UNTIL": "upprepa tills",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_WHILE": "Medan ett värde är sant, utför några kommandon.",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL": "Medan ett värde är falskt, utför några kommandon.",
+ "CONTROLS_FOR_TOOLTIP": "Låt variabeln \"%1\" ta värden från starttalet till sluttalet, beräknat med det angivna intervallet, och utför de angivna blocken.",
+ "CONTROLS_FOR_TITLE": "räkna med %1 från %2 till %3 med %4",
+ "CONTROLS_FOREACH_TITLE": "för varje föremål %1 i listan %2",
+ "CONTROLS_FOREACH_TOOLTIP": "För varje objekt i en lista, ange variabeln '%1' till objektet, och utför sedan några kommandon.",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK": "bryt ut ur loop",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE": "fortsätta med nästa upprepning av loop",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK": "Bryt ut ur den innehållande upprepningen.",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE": "Hoppa över resten av denna loop och fortsätt med nästa loop.",
+ "CONTROLS_FLOW_STATEMENTS_WARNING": "Varning: Detta block kan endast användas i en loop.",
+ "CONTROLS_IF_TOOLTIP_1": "Om ett värde är sant, utför några kommandon.",
+ "CONTROLS_IF_TOOLTIP_2": "Om värdet är sant, utför det första kommandoblocket. Annars utför det andra kommandoblocket.",
+ "CONTROLS_IF_TOOLTIP_3": "Om det första värdet är sant, utför det första kommandoblocket. Annars, om det andra värdet är sant, utför det andra kommandoblocket.",
+ "CONTROLS_IF_TOOLTIP_4": "Om det första värdet är sant, utför det första kommandoblocket. Annars, om det andra värdet är sant, utför det andra kommandoblocket. Om ingen av värdena är sanna, utför det sista kommandoblocket.",
+ "CONTROLS_IF_MSG_IF": "om",
+ "CONTROLS_IF_MSG_ELSEIF": "annars om",
+ "CONTROLS_IF_MSG_ELSE": "annars",
+ "CONTROLS_IF_IF_TOOLTIP": "Lägg till, ta bort eller ändra ordningen för sektioner för att omkonfigurera blocket \"om\".",
+ "CONTROLS_IF_ELSEIF_TOOLTIP": "Lägg till ett villkor blocket \"om\".",
+ "CONTROLS_IF_ELSE_TOOLTIP": "Lägg till ett sista villkor som täcker alla alternativ som är kvar för \"if\"-blocket.",
+ "LOGIC_COMPARE_HELPURL": "https://sv.wikipedia.org/wiki/Olikhet",
+ "LOGIC_COMPARE_TOOLTIP_EQ": "Ger tillbaka sant om båda värdena är lika med varandra.",
+ "LOGIC_COMPARE_TOOLTIP_NEQ": "Ger tillbaka sant om båda värdena inte är lika med varandra.",
+ "LOGIC_COMPARE_TOOLTIP_LT": "Ger tillbaka sant om det första värdet är mindre än det andra.",
+ "LOGIC_COMPARE_TOOLTIP_LTE": "Ger tillbaka sant om det första värdet är mindre än eller lika med det andra.",
+ "LOGIC_COMPARE_TOOLTIP_GT": "Ger tillbaka sant om det första värdet är större än det andra.",
+ "LOGIC_COMPARE_TOOLTIP_GTE": "Ger tillbaka sant om det första värdet är större än eller lika med det andra.",
+ "LOGIC_OPERATION_TOOLTIP_AND": "Ger tillbaka sant om båda värdena är sanna.",
+ "LOGIC_OPERATION_AND": "och",
+ "LOGIC_OPERATION_TOOLTIP_OR": "Ger tillbaka sant om minst ett av värdena är sant.",
+ "LOGIC_OPERATION_OR": "eller",
+ "LOGIC_NEGATE_TITLE": "inte %1",
+ "LOGIC_NEGATE_TOOLTIP": "Ger tillbaka sant om inmatningen är falsk. Ger tillbaka falskt och inmatningen är sann.",
+ "LOGIC_BOOLEAN_TRUE": "sant",
+ "LOGIC_BOOLEAN_FALSE": "falskt",
+ "LOGIC_BOOLEAN_TOOLTIP": "Returnerar antingen sant eller falskt.",
+ "LOGIC_NULL_HELPURL": "https://sv.wikipedia.org/wiki/Null",
+ "LOGIC_NULL": "null",
+ "LOGIC_NULL_TOOLTIP": "Returnerar null.",
+ "LOGIC_TERNARY_HELPURL": "https://en.wikipedia.org/wiki/%3F:",
+ "LOGIC_TERNARY_CONDITION": "test",
+ "LOGIC_TERNARY_IF_TRUE": "om sant",
+ "LOGIC_TERNARY_IF_FALSE": "om falskt",
+ "LOGIC_TERNARY_TOOLTIP": "Kontrollera villkoret i \"test\". Om villkoret är sant, ge tillbaka \"om sant\"-värdet; annars ge tillbaka \"om falskt\"-värdet.",
+ "MATH_NUMBER_HELPURL": "https://sv.wikipedia.org/wiki/Tal",
+ "MATH_NUMBER_TOOLTIP": "Ett tal.",
+ "MATH_ADDITION_SYMBOL": "+",
+ "MATH_SUBTRACTION_SYMBOL": "-",
+ "MATH_DIVISION_SYMBOL": "÷",
+ "MATH_MULTIPLICATION_SYMBOL": "×",
+ "MATH_POWER_SYMBOL": "^",
+ "MATH_TRIG_SIN": "sin",
+ "MATH_TRIG_COS": "cos",
+ "MATH_TRIG_TAN": "tan",
+ "MATH_TRIG_ASIN": "arcsin",
+ "MATH_TRIG_ACOS": "arccos",
+ "MATH_TRIG_ATAN": "arctan",
+ "MATH_ARITHMETIC_HELPURL": "https://sv.wikipedia.org/wiki/Aritmetik",
+ "MATH_ARITHMETIC_TOOLTIP_ADD": "Returnerar summan av de två talen.",
+ "MATH_ARITHMETIC_TOOLTIP_MINUS": "Returnerar differensen mellan de två talen.",
+ "MATH_ARITHMETIC_TOOLTIP_MULTIPLY": "Returnerar produkten av de två talen.",
+ "MATH_ARITHMETIC_TOOLTIP_DIVIDE": "Returnerar kvoten av de två talen.",
+ "MATH_ARITHMETIC_TOOLTIP_POWER": "Ger tillbaka det första talet upphöjt till det andra talet.",
+ "MATH_SINGLE_HELPURL": "https://sv.wikipedia.org/wiki/Kvadratrot",
+ "MATH_SINGLE_OP_ROOT": "kvadratrot",
+ "MATH_SINGLE_TOOLTIP_ROOT": "Returnerar kvadratroten av ett tal.",
+ "MATH_SINGLE_OP_ABSOLUTE": "absolut",
+ "MATH_SINGLE_TOOLTIP_ABS": "Returnerar absolutvärdet av ett tal.",
+ "MATH_SINGLE_TOOLTIP_NEG": "Returnerar negationen av ett tal.",
+ "MATH_SINGLE_TOOLTIP_LN": "Returnera den naturliga logaritmen av ett tal.",
+ "MATH_SINGLE_TOOLTIP_LOG10": "Returnerar logaritmen för bas 10 av ett tal.",
+ "MATH_SINGLE_TOOLTIP_EXP": "Ger tillbaka e upphöjt i ett tal.",
+ "MATH_SINGLE_TOOLTIP_POW10": "Ger tillbaka 10 upphöjt i ett tal.",
+ "MATH_TRIG_HELPURL": "https://sv.wikipedia.org/wiki/Trigonometrisk_funktion",
+ "MATH_TRIG_TOOLTIP_SIN": "Ger tillbaka sinus för en grad (inte radian).",
+ "MATH_TRIG_TOOLTIP_COS": "Ger tillbaka cosinus för en grad (inte radian).",
+ "MATH_TRIG_TOOLTIP_TAN": "Ger tillbaka tangens för en grad (inte radian).",
+ "MATH_TRIG_TOOLTIP_ASIN": "Ger tillbaka arcus sinus (arcsin) för ett tal.",
+ "MATH_TRIG_TOOLTIP_ACOS": "Ger tillbaka arcus cosinus (arccos) för ett tal.",
+ "MATH_TRIG_TOOLTIP_ATAN": "Ger tillbaka arcus tangens (arctan) av ett tal.",
+ "MATH_CONSTANT_HELPURL": "https://sv.wikipedia.org/wiki/Matematisk_konstant",
+ "MATH_CONSTANT_TOOLTIP": "Returnerar en av de vanliga konstanterna: π (3.141…), e (2.718…), φ (1.618…), sqrt(2) (1.414…), sqrt(½) (0.707…) eller ∞ (oändligt).",
+ "MATH_IS_EVEN": "är jämnt",
+ "MATH_IS_ODD": "är ojämnt",
+ "MATH_IS_PRIME": "är ett primtal",
+ "MATH_IS_WHOLE": "är helt",
+ "MATH_IS_POSITIVE": "är positivt",
+ "MATH_IS_NEGATIVE": "är negativt",
+ "MATH_IS_DIVISIBLE_BY": "är delbart med",
+ "MATH_IS_TOOLTIP": "Kontrollera om ett tal är jämnt, ojämnt, helt, positivt, negativt eller det är delbart med ett bestämt tal. Returnerar med sant eller falskt.",
+ "MATH_CHANGE_HELPURL": "https://en.wikipedia.org/wiki/Programming_idiom#Incrementing_a_counter",
+ "MATH_CHANGE_TITLE": "ändra %1 med %2",
+ "MATH_CHANGE_TOOLTIP": "Lägg till ett tal till variabeln '%1'.",
+ "MATH_ROUND_HELPURL": "https://sv.wikipedia.org/wiki/Avrundning",
+ "MATH_ROUND_TOOLTIP": "Avrunda ett tal uppåt eller nedåt.",
+ "MATH_ROUND_OPERATOR_ROUND": "avrunda",
+ "MATH_ROUND_OPERATOR_ROUNDUP": "avrunda uppåt",
+ "MATH_ROUND_OPERATOR_ROUNDDOWN": "avrunda nedåt",
+ "MATH_ONLIST_OPERATOR_SUM": "summan av listan",
+ "MATH_ONLIST_TOOLTIP_SUM": "Ger tillbaka summan av alla talen i listan.",
+ "MATH_ONLIST_OPERATOR_MIN": "minsta talet i listan",
+ "MATH_ONLIST_TOOLTIP_MIN": "Ger tillbaka det minsta talet i listan.",
+ "MATH_ONLIST_OPERATOR_MAX": "högsta talet i listan",
+ "MATH_ONLIST_TOOLTIP_MAX": "Ger tillbaka det största talet i listan.",
+ "MATH_ONLIST_OPERATOR_AVERAGE": "medelvärdet av listan",
+ "MATH_ONLIST_TOOLTIP_AVERAGE": "Ger tillbaka medelvärdet (aritmetiskt) av de numeriska värdena i listan.",
+ "MATH_ONLIST_OPERATOR_MEDIAN": "medianen av listan",
+ "MATH_ONLIST_TOOLTIP_MEDIAN": "Returnerar medianen av talen i listan.",
+ "MATH_ONLIST_OPERATOR_MODE": "typvärdet i listan",
+ "MATH_ONLIST_TOOLTIP_MODE": "Ger tillbaka en lista med de(t) vanligaste objekte(t/n) i listan.",
+ "MATH_ONLIST_OPERATOR_STD_DEV": "standardavvikelsen i listan",
+ "MATH_ONLIST_TOOLTIP_STD_DEV": "Ger tillbaka standardavvikelsen i listan.",
+ "MATH_ONLIST_OPERATOR_RANDOM": "slumpmässigt objekt i listan",
+ "MATH_ONLIST_TOOLTIP_RANDOM": "Returnerar ett slumpmässigt element från listan.",
+ "MATH_MODULO_HELPURL": "https://en.wikipedia.org/wiki/Modulo_operation",
+ "MATH_MODULO_TITLE": "resten av %1 ÷ %2",
+ "MATH_MODULO_TOOLTIP": "Returnerar kvoten från divisionen av de två talen.",
+ "MATH_CONSTRAIN_TITLE": "begränsa %1 till mellan %2 och %3",
+ "MATH_CONSTRAIN_TOOLTIP": "Begränsa ett tal till att mellan de angivna gränsvärden (inkluderande).",
+ "MATH_RANDOM_INT_HELPURL": "https://sv.wikipedia.org/wiki/Slumptalsgenerator",
+ "MATH_RANDOM_INT_TITLE": "slumpartat heltal från %1 till %2",
+ "MATH_RANDOM_INT_TOOLTIP": "Ger tillbaka ett slumpat heltal mellan två värden, inkluderande.",
+ "MATH_RANDOM_FLOAT_HELPURL": "https://sv.wikipedia.org/wiki/Slumptalsgenerator",
+ "MATH_RANDOM_FLOAT_TITLE_RANDOM": "slumpat decimaltal",
+ "MATH_RANDOM_FLOAT_TOOLTIP": "Ger tillbaka ett slumpat decimaltal mellan 0.0 (inkluderat) och 1.0 (exkluderat).",
+ "TEXT_TEXT_HELPURL": "https://sv.wikipedia.org/wiki/Str%C3%A4ng_%28data%29",
+ "TEXT_TEXT_TOOLTIP": "En bokstav, ord eller textrad.",
+ "TEXT_JOIN_TITLE_CREATEWITH": "skapa text med",
+ "TEXT_JOIN_TOOLTIP": "Skapa en textbit genom att sammanfoga ett valfritt antal föremål.",
+ "TEXT_CREATE_JOIN_TITLE_JOIN": "sammanfoga",
+ "TEXT_CREATE_JOIN_TOOLTIP": "Lägg till, ta bort eller ändra ordningen för sektioner för att omkonfigurera detta textblock.",
+ "TEXT_CREATE_JOIN_ITEM_TOOLTIP": "Lägg till ett föremål till texten.",
+ "TEXT_APPEND_TO": "till",
+ "TEXT_APPEND_APPENDTEXT": "lägg till text",
+ "TEXT_APPEND_TOOLTIP": "Lägg till lite text till variabeln '%1'.",
+ "TEXT_LENGTH_TITLE": "längden på %1",
+ "TEXT_LENGTH_TOOLTIP": "Ger tillbaka antalet bokstäver (inklusive mellanslag) i den angivna texten.",
+ "TEXT_ISEMPTY_TITLE": "%1 är tom",
+ "TEXT_ISEMPTY_TOOLTIP": "Returnerar sant om den angivna texten är tom.",
+ "TEXT_INDEXOF_TOOLTIP": "Ger tillbaka indexet för den första/sista förekomsten av första texten i den andra texten. Ger tillbaka %1 om texten inte hittas.",
+ "TEXT_INDEXOF_INPUT_INTEXT": "i texten",
+ "TEXT_INDEXOF_OPERATOR_FIRST": "hitta första förekomsten av texten",
+ "TEXT_INDEXOF_OPERATOR_LAST": "hitta sista förekomsten av texten",
+ "TEXT_CHARAT_INPUT_INTEXT": "i texten",
+ "TEXT_CHARAT_FROM_START": "hämta bokstaven #",
+ "TEXT_CHARAT_FROM_END": "hämta bokstaven # från slutet",
+ "TEXT_CHARAT_FIRST": "hämta första bokstaven",
+ "TEXT_CHARAT_LAST": "hämta sista bokstaven",
+ "TEXT_CHARAT_RANDOM": "hämta slumpad bokstav",
+ "TEXT_CHARAT_TOOLTIP": "Ger tillbaka bokstaven på den specificerade positionen.",
+ "TEXT_GET_SUBSTRING_TOOLTIP": "Ger tillbaka en viss del av texten.",
+ "TEXT_GET_SUBSTRING_INPUT_IN_TEXT": "i texten",
+ "TEXT_GET_SUBSTRING_START_FROM_START": "få textdel från bokstav #",
+ "TEXT_GET_SUBSTRING_START_FROM_END": "få textdel från bokstav # från slutet",
+ "TEXT_GET_SUBSTRING_START_FIRST": "få textdel från första bokstaven",
+ "TEXT_GET_SUBSTRING_END_FROM_START": "till bokstav #",
+ "TEXT_GET_SUBSTRING_END_FROM_END": "till bokstav # från slutet",
+ "TEXT_GET_SUBSTRING_END_LAST": "till sista bokstaven",
+ "TEXT_CHANGECASE_TOOLTIP": "Returnerar en kopia av texten i ett annat skiftläge.",
+ "TEXT_CHANGECASE_OPERATOR_UPPERCASE": "till VERSALER",
+ "TEXT_CHANGECASE_OPERATOR_LOWERCASE": "till gemener",
+ "TEXT_CHANGECASE_OPERATOR_TITLECASE": "till Versala Initialer",
+ "TEXT_TRIM_TOOLTIP": "Returnerar en kopia av texten med borttagna mellanrum från en eller båda ändar.",
+ "TEXT_TRIM_OPERATOR_BOTH": "ta bort mellanrum från båda sidorna av",
+ "TEXT_TRIM_OPERATOR_LEFT": "ta bort mellanrum från vänstra sidan av",
+ "TEXT_TRIM_OPERATOR_RIGHT": "ta bort mellanrum från högra sidan av",
+ "TEXT_PRINT_TITLE": "skriv %1",
+ "TEXT_PRINT_TOOLTIP": "Skriv den angivna texten, talet eller annat värde.",
+ "TEXT_PROMPT_TYPE_TEXT": "fråga efter text med meddelande",
+ "TEXT_PROMPT_TYPE_NUMBER": "fråga efter ett tal med meddelande",
+ "TEXT_PROMPT_TOOLTIP_NUMBER": "Fråga användaren efter ett tal.",
+ "TEXT_PROMPT_TOOLTIP_TEXT": "Fråga användaren efter lite text.",
+ "LISTS_CREATE_EMPTY_HELPURL": "https://github.com/google/blockly/wiki/Lists#create-empty-list",
+ "LISTS_CREATE_EMPTY_TITLE": "skapa tom lista",
+ "LISTS_CREATE_EMPTY_TOOLTIP": "Ger tillbaka en lista utan någon data, alltså med längden 0",
+ "LISTS_CREATE_WITH_HELPURL": "https://github.com/google/blockly/wiki/Lists#create-list-with",
+ "LISTS_CREATE_WITH_TOOLTIP": "Skapa en lista med valfritt antal föremål.",
+ "LISTS_CREATE_WITH_INPUT_WITH": "skapa lista med",
+ "LISTS_CREATE_WITH_CONTAINER_TITLE_ADD": "lista",
+ "LISTS_CREATE_WITH_CONTAINER_TOOLTIP": "Lägg till, ta bort eller ändra ordningen på objekten för att göra om det här \"list\"-blocket.",
+ "LISTS_CREATE_WITH_ITEM_TOOLTIP": "Lägg till ett föremål till listan.",
+ "LISTS_REPEAT_TOOLTIP": "Skapar en lista som innehåller ett valt värde upprepat ett bestämt antalet gånger.",
+ "LISTS_REPEAT_TITLE": "skapa lista med föremålet %1 upprepat %2 gånger",
+ "LISTS_LENGTH_TITLE": "längden på %1",
+ "LISTS_LENGTH_TOOLTIP": "Returnerar längden på en lista.",
+ "LISTS_ISEMPTY_TITLE": "%1 är tom",
+ "LISTS_ISEMPTY_TOOLTIP": "Returnerar sant om listan är tom.",
+ "LISTS_INLIST": "i listan",
+ "LISTS_INDEX_OF_FIRST": "hitta första förekomsten av objektet",
+ "LISTS_INDEX_OF_LAST": "hitta sista förekomsten av objektet",
+ "LISTS_INDEX_OF_TOOLTIP": "Ger tillbaka den första/sista förekomsten av objektet i listan. Returnerar %1 om objektet inte hittas.",
+ "LISTS_GET_INDEX_GET": "hämta",
+ "LISTS_GET_INDEX_GET_REMOVE": "hämta och ta bort",
+ "LISTS_GET_INDEX_REMOVE": "ta bort",
+ "LISTS_GET_INDEX_FROM_START": "#",
+ "LISTS_GET_INDEX_FROM_END": "# från slutet",
+ "LISTS_GET_INDEX_FIRST": "första",
+ "LISTS_GET_INDEX_LAST": "sista",
+ "LISTS_GET_INDEX_RANDOM": "slumpad",
+ "LISTS_INDEX_FROM_START_TOOLTIP": "%1 är det första objektet.",
+ "LISTS_INDEX_FROM_END_TOOLTIP": "%1 är det sista objektet.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_FROM": "Ger tillbaka objektet på den efterfrågade positionen i en lista.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_FIRST": "Returnerar det första objektet i en lista.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_LAST": "Returnerar det sista objektet i en lista.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_RANDOM": "Returnerar ett slumpmässigt objekt i en lista.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM": "Tar bort och återställer objektet på den specificerade positionen i en lista.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST": "Tar bort och återställer det första objektet i en lista.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST": "Tar bort och återställer det sista objektet i en lista.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM": "Tar bort och återställer ett slumpmässigt objekt i en lista.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM": "Tar bort objektet på den specificerade positionen i en lista.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST": "Tar bort det första objektet i en lista.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST": "Tar bort det sista objektet i en lista.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM": "Tar bort en slumpmässig post i en lista.",
+ "LISTS_SET_INDEX_SET": "ange",
+ "LISTS_SET_INDEX_INSERT": "Sätt in vid",
+ "LISTS_SET_INDEX_INPUT_TO": "som",
+ "LISTS_SET_INDEX_TOOLTIP_SET_FROM": "Sätter in objektet vid en specificerad position i en lista.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_FIRST": "Anger det första objektet i en lista.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_LAST": "Anger det sista elementet i en lista.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_RANDOM": "Sätter in ett slumpat objekt i en lista.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_FROM": "Sätter in objektet vid en specificerad position i en lista.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST": "sätter in objektet i början av en lista.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_LAST": "Lägg till objektet i slutet av en lista.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM": "sätter in objektet på en slumpad position i en lista.",
+ "LISTS_GET_SUBLIST_START_FROM_START": "få underlista från #",
+ "LISTS_GET_SUBLIST_START_FROM_END": "få underlista från # från slutet",
+ "LISTS_GET_SUBLIST_START_FIRST": "få underlista från första",
+ "LISTS_GET_SUBLIST_END_FROM_START": "till #",
+ "LISTS_GET_SUBLIST_END_FROM_END": "till # från slutet",
+ "LISTS_GET_SUBLIST_END_LAST": "till sista",
+ "LISTS_GET_SUBLIST_TOOLTIP": "Skapar en kopia av den specificerade delen av en lista.",
+ "LISTS_SORT_HELPURL": "https://github.com/google/blockly/wiki/Lists#sorting-a-list",
+ "LISTS_SORT_TITLE": "sortera %1 %2 %3",
+ "LISTS_SORT_TOOLTIP": "Sortera en kopia av en lista.",
+ "LISTS_SORT_ORDER_ASCENDING": "stigande",
+ "LISTS_SORT_ORDER_DESCENDING": "fallande",
+ "LISTS_SORT_TYPE_NUMERIC": "numeriskt",
+ "LISTS_SORT_TYPE_TEXT": "alfabetiskt",
+ "LISTS_SORT_TYPE_IGNORECASE": "alfabetiskt, ignorera skiftläge",
+ "LISTS_SPLIT_HELPURL": "https://github.com/google/blockly/wiki/Lists#splitting-strings-and-joining-lists",
+ "LISTS_SPLIT_LIST_FROM_TEXT": "skapa lista från text",
+ "LISTS_SPLIT_TEXT_FROM_LIST": "skapa text från lista",
+ "LISTS_SPLIT_WITH_DELIMITER": "med avgränsare",
+ "LISTS_SPLIT_TOOLTIP_SPLIT": "Dela upp text till en textlista och bryt vid varje avgränsare.",
+ "LISTS_SPLIT_TOOLTIP_JOIN": "Sammanfoga en textlista till en text, som separeras av en avgränsare.",
+ "VARIABLES_GET_TOOLTIP": "Returnerar värdet av denna variabel.",
+ "VARIABLES_GET_CREATE_SET": "Skapa \"välj %1\"",
+ "VARIABLES_SET": "ange %1 till %2",
+ "VARIABLES_SET_TOOLTIP": "Gör så att den här variabeln blir lika med inputen.",
+ "VARIABLES_SET_CREATE_GET": "Skapa 'hämta %1'",
+ "PROCEDURES_DEFNORETURN_HELPURL": "https://sv.wikipedia.org/wiki/Funktion_%28programmering%29",
+ "PROCEDURES_DEFNORETURN_TITLE": "för att",
+ "PROCEDURES_DEFNORETURN_PROCEDURE": "göra något",
+ "PROCEDURES_BEFORE_PARAMS": "med:",
+ "PROCEDURES_CALL_BEFORE_PARAMS": "med:",
+ "PROCEDURES_DEFNORETURN_TOOLTIP": "Skapar en funktion utan output.",
+ "PROCEDURES_DEFNORETURN_COMMENT": "Beskriv denna funktion...",
+ "PROCEDURES_DEFRETURN_HELPURL": "https://sv.wikipedia.org/wiki/Funktion_%28programmering%29",
+ "PROCEDURES_DEFRETURN_RETURN": "returnera",
+ "PROCEDURES_DEFRETURN_TOOLTIP": "Skapar en funktion med output.",
+ "PROCEDURES_ALLOW_STATEMENTS": "tillåta uttalanden",
+ "PROCEDURES_DEF_DUPLICATE_WARNING": "Varning: Denna funktion har dubbla parametrar.",
+ "PROCEDURES_CALLNORETURN_HELPURL": "https://sv.wikipedia.org/wiki/Funktion_%28programmering%29",
+ "PROCEDURES_CALLNORETURN_TOOLTIP": "Kör den användardefinierade funktionen \"%1\".",
+ "PROCEDURES_CALLRETURN_HELPURL": "https://sv.wikipedia.org/wiki/Funktion_%28programmering%29",
+ "PROCEDURES_CALLRETURN_TOOLTIP": "Kör den användardefinierade funktionen \"%1\" och använd resultatet av den.",
+ "PROCEDURES_MUTATORCONTAINER_TITLE": "inmatningar",
+ "PROCEDURES_MUTATORCONTAINER_TOOLTIP": "Lägg till, ta bort och ändra ordningen för inmatningar till denna funktion.",
+ "PROCEDURES_MUTATORARG_TITLE": "inmatningsnamn:",
+ "PROCEDURES_MUTATORARG_TOOLTIP": "Lägg till en inmatning till funktionen.",
+ "PROCEDURES_HIGHLIGHT_DEF": "Markera funktionsdefinition",
+ "PROCEDURES_CREATE_DO": "Skapa '%1'",
+ "PROCEDURES_IFRETURN_TOOLTIP": "Om ett värde är sant returneras ett andra värde.",
+ "PROCEDURES_IFRETURN_HELPURL": "http://c2.com/cgi/wiki?GuardClause",
+ "PROCEDURES_IFRETURN_WARNING": "Varning: Detta block får användas endast i en funktionsdefinition."
+}
diff --git a/blockly/msg/json/synonyms.json b/blockly/msg/json/synonyms.json
new file mode 100644
index 0000000..944aa9b
--- /dev/null
+++ b/blockly/msg/json/synonyms.json
@@ -0,0 +1 @@
+{"PROCEDURES_DEFRETURN_TITLE": "PROCEDURES_DEFNORETURN_TITLE", "CONTROLS_IF_IF_TITLE_IF": "CONTROLS_IF_MSG_IF", "CONTROLS_WHILEUNTIL_INPUT_DO": "CONTROLS_REPEAT_INPUT_DO", "CONTROLS_IF_MSG_THEN": "CONTROLS_REPEAT_INPUT_DO", "LISTS_GET_SUBLIST_INPUT_IN_LIST": "LISTS_INLIST", "CONTROLS_IF_ELSE_TITLE_ELSE": "CONTROLS_IF_MSG_ELSE", "PROCEDURES_DEFRETURN_PROCEDURE": "PROCEDURES_DEFNORETURN_PROCEDURE", "TEXT_CREATE_JOIN_ITEM_TITLE_ITEM": "VARIABLES_DEFAULT_NAME", "LISTS_GET_INDEX_INPUT_IN_LIST": "LISTS_INLIST", "PROCEDURES_DEFRETURN_COMMENT": "PROCEDURES_DEFNORETURN_COMMENT", "CONTROLS_IF_ELSEIF_TITLE_ELSEIF": "CONTROLS_IF_MSG_ELSEIF", "PROCEDURES_DEFRETURN_DO": "PROCEDURES_DEFNORETURN_DO", "CONTROLS_FOR_INPUT_DO": "CONTROLS_REPEAT_INPUT_DO", "LISTS_GET_INDEX_HELPURL": "LISTS_INDEX_OF_HELPURL", "LISTS_INDEX_OF_INPUT_IN_LIST": "LISTS_INLIST", "CONTROLS_FOREACH_INPUT_DO": "CONTROLS_REPEAT_INPUT_DO", "LISTS_CREATE_WITH_ITEM_TITLE": "VARIABLES_DEFAULT_NAME", "TEXT_APPEND_VARIABLE": "VARIABLES_DEFAULT_NAME", "MATH_CHANGE_TITLE_ITEM": "VARIABLES_DEFAULT_NAME", "LISTS_SET_INDEX_INPUT_IN_LIST": "LISTS_INLIST"} \ No newline at end of file
diff --git a/blockly/msg/json/ta.json b/blockly/msg/json/ta.json
new file mode 100644
index 0000000..84b90bb
--- /dev/null
+++ b/blockly/msg/json/ta.json
@@ -0,0 +1,298 @@
+{
+ "@metadata": {
+ "authors": [
+ "ElangoRamanujam",
+ "Ezhillang",
+ "Karuthan",
+ "Thangamani-arun",
+ "Mahir78"
+ ]
+ },
+ "VARIABLES_DEFAULT_NAME": "உருப்படி",
+ "TODAY": "இன்று",
+ "DUPLICATE_BLOCK": "மறுநகல்",
+ "ADD_COMMENT": "கருத்தை சேர்",
+ "REMOVE_COMMENT": "கருத்தை நீக்கு",
+ "EXTERNAL_INPUTS": "வெளி கருவிகளுடன் உள்ளீடு",
+ "INLINE_INPUTS": "சூழமைவில் உள்ளீடு",
+ "DELETE_BLOCK": "உறுப்பை நீக்கு",
+ "DELETE_X_BLOCKS": "%1 உறுப்பை நீக்கு",
+ "DELETE_ALL_BLOCKS": "அனைத்து %1 நிரல் துண்டுகளையும் அழிக்கவா??",
+ "COLLAPSE_BLOCK": "உறுப்பை மரை",
+ "COLLAPSE_ALL": "உறுப்புகளை மரை",
+ "EXPAND_BLOCK": "உறுப்பை காட்டு",
+ "EXPAND_ALL": "உறுப்புகளை காட்டு",
+ "DISABLE_BLOCK": "உறுப்பை இயங்காது செய்",
+ "ENABLE_BLOCK": "உறுப்பை இயங்குமாரு செய்",
+ "HELP": "உதவி",
+ "CHANGE_VALUE_TITLE": "மதிப்பை மாற்றவும்:",
+ "RENAME_VARIABLE": "மாறிலியை மறுபெயரிடுக...",
+ "RENAME_VARIABLE_TITLE": "அனைத்து '%1' மாறிலிகளையும் பின்வருமாறு மறுபெயரிடுக:",
+ "NEW_VARIABLE": "புதிய மாறிலி...",
+ "NEW_VARIABLE_TITLE": "புதிய மாறிலியின் பெயர்:",
+ "COLOUR_PICKER_HELPURL": "https://en.wikipedia.org/wiki/Color",
+ "COLOUR_PICKER_TOOLTIP": "வண்ண தட்டிலிருந்து ஒரு நிறத்தைத் தேர்ந்தெடுக்கவும்.",
+ "COLOUR_RANDOM_TITLE": "தற்போக்கு நிறம்",
+ "COLOUR_RANDOM_TOOLTIP": "தற்போக்கில் ஒரு நிறத்தை தேர்ந்தெடுக்கவும்.",
+ "COLOUR_RGB_TITLE": "நிறத்துடன்",
+ "COLOUR_RGB_RED": "சிகப்பு",
+ "COLOUR_RGB_GREEN": "பச்சை",
+ "COLOUR_RGB_BLUE": "நீலம்",
+ "COLOUR_RGB_TOOLTIP": "குறிப்பிட்ட அளவு சிவப்பு,பச்சை மற்றும் நீலம் சேர்த்து புது நிறம் உருவாக்கு. மதிப்புகள் 0 முதல் 100 வரை மட்டுமே இருக்க வேண்டும்.",
+ "COLOUR_BLEND_TITLE": "கலப்பு (வண்ணம்)",
+ "COLOUR_BLEND_COLOUR1": "நிறம் 1",
+ "COLOUR_BLEND_COLOUR2": "நிறம் 2",
+ "COLOUR_BLEND_RATIO": "விகிதம்",
+ "COLOUR_BLEND_TOOLTIP": "கொடுக்கப்பட்ட விகதத்தில் (0.0 - 1.0) இரு நிறங்களை கலக்குக.",
+ "CONTROLS_REPEAT_HELPURL": "https://en.wikipedia.org/wiki/For_loop",
+ "CONTROLS_REPEAT_TITLE": "'%1' முரை திரும்ப செய்",
+ "CONTROLS_REPEAT_INPUT_DO": "செய்க",
+ "CONTROLS_REPEAT_TOOLTIP": "கட்டளைகளை பல முரை செய்ய",
+ "CONTROLS_WHILEUNTIL_OPERATOR_WHILE": "பலமுரை திரும்ப செய் (வரை)",
+ "CONTROLS_WHILEUNTIL_OPERATOR_UNTIL": "பலமுரை திரும்ப செய் (முடயேனில்)",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_WHILE": "மாறி உண்மை ஆக உள்ள வரை, கட்டளைகளை இயக்கு",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL": "மாறி பொய் ஆக உள்ள வரை, கட்டளைகளை இயக்கு",
+ "CONTROLS_FOR_TOOLTIP": "முதல் எண்ணில் இருந்து கடை எண் வரை எடுத்துக்கொள்ள ஒரு மாறியை வைத்துக்கொள், குறித்த இடைவெளியை சேர்த்தவறே தொகுதிகளை செயலாக்கு.",
+ "CONTROLS_FOR_TITLE": "மாறியை வைத்து எண்ண %1 %2 இல் இருந்து %3 வரை %4-இன் படியாக",
+ "CONTROLS_FOREACH_TITLE": "உருப்படி ஒவ்வொன்றாக %1 பட்டியலில் உள்ள %2",
+ "CONTROLS_FOREACH_TOOLTIP": "பட்டியலில் உள்ள உருப்படியில் ஒவ்வொன்றாக, மாறியின் பொருள் '%1' ஆக வைக்க.",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK": "மடக்கு கட்டளையை நிறுத்து.",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE": "மடக்கு கட்டளையின் அடுத்த இயக்கநிலைக்கு செல்",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK": "மடக்கு கட்டளையின் இயக்கத்தில் இருந்து நிறுத்து.",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE": "மடக்கு கட்டளையின் மீதியை விட்டுவிட்டு அடுத்த இயக்கநிலைக்கு செல்",
+ "CONTROLS_FLOW_STATEMENTS_WARNING": "எச்சரிக்கை : மடக்கு கூற்றில் இந்த தொகுதி ஒரு முறை மட்டுமே செயல்படுத்தப் படலாம்.",
+ "CONTROLS_IF_TOOLTIP_1": "மாறி உண்மை ஆக உள்ள வரை, கட்டளைகளை இயக்கு",
+ "CONTROLS_IF_TOOLTIP_2": "மாறி உண்மை ஆக உள்ள வரை, கட்டளைகளை இயக்கு. அல்லது மற்ற (அடுத்த) கட்டளைகளை இயக்கு.",
+ "CONTROLS_IF_TOOLTIP_3": "மாறி உண்மை ஆக உள்ள வரை, கட்டளைகளை தொகுப்பு இயக்கு. அல்லது மற்ற (அடுத்த) கட்டளைகளை தொகுப்பு இயக்கு.",
+ "CONTROLS_IF_TOOLTIP_4": "மாறி உண்மை ஆக உள்ள வரை, கட்டளைகளை தொகுப்பு இயக்கு. அல்லது மற்ற (அடுத்த) கட்டளைகளை தொகுப்பு இயக்கு. இரண்டும் இல்லை என்றால் கடைசி தொகுப்பு இயக்கு.",
+ "CONTROLS_IF_MSG_IF": "எனில்",
+ "CONTROLS_IF_MSG_ELSEIF": "இல்லைஆனால்",
+ "CONTROLS_IF_MSG_ELSE": "இல்லையெனில்",
+ "CONTROLS_IF_IF_TOOLTIP": "கட்டளைகளை தொகுப்பு திருத்துதம் செய்",
+ "CONTROLS_IF_ELSEIF_TOOLTIP": "ஆனால் தொகுப்பிற்கு நிபந்தனை சேர்க்க",
+ "CONTROLS_IF_ELSE_TOOLTIP": "ஆனால் தொகுப்பிற்கு விதிவிலக்கு காப்பை சேர்க்க",
+ "LOGIC_COMPARE_HELPURL": "https://en.wikipedia.org/wiki/Inequality_(mathematics)",
+ "LOGIC_COMPARE_TOOLTIP_EQ": "இரண்டு மாறியும் ஈடானால், மெய் பின்கொடு.",
+ "LOGIC_COMPARE_TOOLTIP_NEQ": "இரண்டு மாறியும் ஈடாகாவிட்டால், மெய் பின்கொடு.",
+ "LOGIC_COMPARE_TOOLTIP_LT": "முதல் உள்ளீடு இரண்டாவதைவிட குறைவாக இருந்தால், மெய் பின்கொடு.",
+ "LOGIC_COMPARE_TOOLTIP_LTE": "முதல் உள்ளீடு இரண்டாவதைவிட குறைவாக அல்ல சமமாக இருந்தால், மெய் பின்கொடு",
+ "LOGIC_COMPARE_TOOLTIP_GT": "முதல் உள்ளீடு இரண்டாவதைவிட அதிகமாக இருந்தால், மெய் பின்கொடு.",
+ "LOGIC_COMPARE_TOOLTIP_GTE": "முதல் உள்ளீடு இரண்டாவதைவிட அதிகமாக அல்ல சமமாக இருந்தால், மெய் பின்கொடு.",
+ "LOGIC_OPERATION_TOOLTIP_AND": "இரண்டு மாறியும் மெய் ஆனால், மெய் பின்கொடு.",
+ "LOGIC_OPERATION_AND": "மற்றும்",
+ "LOGIC_OPERATION_TOOLTIP_OR": "ஏதேனும் ஒரு மதிப்பு மெய் ஆனால், மெய் பின்கொடு",
+ "LOGIC_OPERATION_OR": "அல்லது",
+ "LOGIC_NEGATE_TITLE": "%1 இல்லை",
+ "LOGIC_NEGATE_TOOLTIP": "மெய் ஆனால், பொய் பின்கொடு. பொய் ஆனால், மெய் பின்கொடு.",
+ "LOGIC_BOOLEAN_TRUE": "மெய்",
+ "LOGIC_BOOLEAN_FALSE": "பொய்",
+ "LOGIC_BOOLEAN_TOOLTIP": "மெய், அல்லது பொய் பின்கொடு.",
+ "LOGIC_NULL": "பூஜியம்",
+ "LOGIC_NULL_TOOLTIP": "பூஜியம் பின்கொடு",
+ "LOGIC_TERNARY_CONDITION": "சோதனை",
+ "LOGIC_TERNARY_IF_TRUE": "மெய்யெனில்",
+ "LOGIC_TERNARY_IF_FALSE": "பொய்யெனில்",
+ "LOGIC_TERNARY_TOOLTIP": "'test' உள்ள நிபந்தனையை சரிபார்க்கவும், நிபந்தனை மெய்யானால்,'if true'வை பின்கொடுக்கும் இல்லையெனில் 'if false'வை பின்கொடுக்கும்.",
+ "MATH_NUMBER_HELPURL": "https://ta.wikipedia.org/wiki/%E0%AE%8E%E0%AE%A3%E0%AF%8D",
+ "MATH_NUMBER_TOOLTIP": "ஒரு எண்.",
+ "MATH_ARITHMETIC_HELPURL": "https://ta.wikipedia.org/wiki/%E0%AE%8E%E0%AE%A3%E0%AF%8D%E0%AE%95%E0%AE%A3%E0%AE%BF%E0%AE%A4%E0%AE%AE%E0%AF%8D",
+ "MATH_ARITHMETIC_TOOLTIP_ADD": "இரு எண்களின் கூட்டை பின்கொடு",
+ "MATH_ARITHMETIC_TOOLTIP_MINUS": "இரு எண்களின் கழிப்பை பின்கொடு",
+ "MATH_ARITHMETIC_TOOLTIP_MULTIPLY": "இரு எண்களின் பெருக்கலை பின்கொடு",
+ "MATH_ARITHMETIC_TOOLTIP_DIVIDE": "இரு எண்களின் வகுத்தல் பின்கொடு",
+ "MATH_ARITHMETIC_TOOLTIP_POWER": "முதல் உள்ளீடு இரண்டாவது எண் அளவான அடுக்கு பெருக்கை கணித்து பின்கொடு.",
+ "MATH_SINGLE_HELPURL": "https://ta.wikipedia.org/wiki/%E0%AE%B5%E0%AE%B0%E0%AF%8D%E0%AE%95%E0%AF%8D%E0%AE%95%E0%AE%AE%E0%AF%82%E0%AE%B2%E0%AE%AE%E0%AF%8D",
+ "MATH_SINGLE_OP_ROOT": "வர்க்கமூலம்",
+ "MATH_SINGLE_TOOLTIP_ROOT": "ஒரு எண்ணின் வர்க்கமூலத்தைத் தரும்.",
+ "MATH_SINGLE_OP_ABSOLUTE": "தனித்த",
+ "MATH_SINGLE_TOOLTIP_ABS": "ஒரு எண்ணின் தனித்த மதிப்பை பின்கொடு",
+ "MATH_SINGLE_TOOLTIP_NEG": "ஒரு எண்ணின் எதிர்மறை மதிப்பை பின்கொடு",
+ "MATH_SINGLE_TOOLTIP_LN": "ஒரு எண்ணின் (இயற்கை) மடக்கை மதிப்பை பின்கொடு.",
+ "MATH_SINGLE_TOOLTIP_LOG10": "ஒரு எண்ணின் (10) மடக்கை மதிப்பை பின்கொடு.",
+ "MATH_SINGLE_TOOLTIP_EXP": "e-இன் எண் அடுக்கு பெருக்கை பின்கொடு.",
+ "MATH_SINGLE_TOOLTIP_POW10": "10-இன் எண் அடுக்கு பெருக்கை பின்கொடு.",
+ "MATH_TRIG_HELPURL": "https://ta.wikipedia.org/wiki/%E0%AE%AE%E0%AF%81%E0%AE%95%E0%AF%8D%E0%AE%95%E0%AF%8B%E0%AE%A3%E0%AE%B5%E0%AE%BF%E0%AE%AF%E0%AE%B2%E0%AF%8D_%E0%AE%9A%E0%AE%BE%E0%AE%B0%E0%AF%8D%E0%AE%AA%E0%AF%81%E0%AE%95%E0%AE%B3%E0%AF%8D",
+ "MATH_TRIG_TOOLTIP_SIN": "டிகிரீ சைன் மதிப்பை பின்கொடு.",
+ "MATH_TRIG_TOOLTIP_COS": "டிகிரீ கோசைன் மதிப்பை பின்கொடு",
+ "MATH_TRIG_TOOLTIP_TAN": "டிகிரீ டேஞ்சன்டு மதிப்பை பின்கொடு",
+ "MATH_TRIG_TOOLTIP_ASIN": "மதிப்பின் நேர்மாறு சைன் பின்கொடு",
+ "MATH_TRIG_TOOLTIP_ACOS": "மதிப்பின் நேர்மாறு கோசைன் பின்கொடு",
+ "MATH_TRIG_TOOLTIP_ATAN": "மதிப்பின் நேர்மாறு டேஞ்சன்டு பின்கொடு",
+ "MATH_CONSTANT_HELPURL": "https://ta.wikipedia.org/wiki/%E0%AE%95%E0%AE%A3%E0%AE%BF%E0%AE%A4_%E0%AE%AE%E0%AE%BE%E0%AE%B1%E0%AE%BF%E0%AE%B2%E0%AE%BF",
+ "MATH_CONSTANT_TOOLTIP": "ஒரு மாறிலியை பின்கொடு π (3.141…), e (2.718…), φ (1.618…), sqrt(2) (1.414…), sqrt(½) (0.707…), or ∞ (முடிவிலி).",
+ "MATH_IS_EVEN": "2-ஆல் பகும்",
+ "MATH_IS_ODD": "2-ஆல் பகாத",
+ "MATH_IS_PRIME": "எண் பகாத்தனிதானதா?",
+ "MATH_IS_WHOLE": "எண் முழுதானதா?",
+ "MATH_IS_POSITIVE": "எண் நேர்ம முழுதானதா ?",
+ "MATH_IS_NEGATIVE": "எண் குறைவானதா ?",
+ "MATH_IS_DIVISIBLE_BY": "ஆல் வகுபடக் கூடியது",
+ "MATH_CHANGE_HELPURL": "https://en.wikipedia.org/wiki/Programming_idiom#Incrementing_a_counter",
+ "MATH_CHANGE_TITLE": "மாற்று %1 மூலம் %2",
+ "MATH_CHANGE_TOOLTIP": "எண்னை '%1' மதிப்பால் கூட்டு,",
+ "MATH_ROUND_HELPURL": "https://en.wikipedia.org/wiki/Rounding",
+ "MATH_ROUND_TOOLTIP": "மேல்/கீழ் வழி முழு எண் ஆக மாற்று.",
+ "MATH_ROUND_OPERATOR_ROUND": "முழுமையாக்கு",
+ "MATH_ROUND_OPERATOR_ROUNDUP": "மேல்வழி முழுமையாக்கு",
+ "MATH_ROUND_OPERATOR_ROUNDDOWN": "கீழ்வழி முழுமையாக்கு",
+ "MATH_ONLIST_OPERATOR_SUM": "பட்டியலின் கூட்டு",
+ "MATH_ONLIST_TOOLTIP_SUM": "முழு பட்டியலின் எண் சமம் பின்கொடு,",
+ "MATH_ONLIST_OPERATOR_MIN": "பட்டியலின் கறைவு",
+ "MATH_ONLIST_TOOLTIP_MIN": "பட்டியலின் குறைவான எண் பின்கொடு",
+ "MATH_ONLIST_OPERATOR_MAX": "பட்டியலின் மிகுதி",
+ "MATH_ONLIST_TOOLTIP_MAX": "பட்டியலின் அதிகமான எண் பின்கொடு",
+ "MATH_ONLIST_OPERATOR_AVERAGE": "பட்டியலின் எண் சராசரி",
+ "MATH_ONLIST_TOOLTIP_AVERAGE": "முழு பட்டியலின் எண் சராசரி பின்கொடு",
+ "MATH_ONLIST_OPERATOR_MEDIAN": "பட்டியலின் நடுக்கோடு",
+ "MATH_ONLIST_TOOLTIP_MEDIAN": "பட்டியலின் நடுக்கோடு பின்கொடு",
+ "MATH_ONLIST_OPERATOR_MODE": "பட்டியலின் பொதுவகைகள்",
+ "MATH_ONLIST_TOOLTIP_MODE": "பட்டியலின் பொதுவகைகள் பின்கொடு",
+ "MATH_ONLIST_OPERATOR_STD_DEV": "பட்டியலின் நியமவிலகல்",
+ "MATH_ONLIST_TOOLTIP_STD_DEV": "பட்டியலின் நியமவிலகலை பின்கொடு.",
+ "MATH_ONLIST_OPERATOR_RANDOM": "ஒரு பட்டியலில் இருந்து சீரற்ற உருப்படி",
+ "MATH_ONLIST_TOOLTIP_RANDOM": "ஒரு பட்டியலில் இருந்து சீரற்ற உருப்படி பின்கொடு",
+ "MATH_MODULO_HELPURL": "https://en.wikipedia.org/wiki/Modulo_operation",
+ "MATH_MODULO_TITLE": "%1 ÷ %2ன் மீதி",
+ "MATH_MODULO_TOOLTIP": "இரண்டு எண்கள் மூலம் பிரிவில் இருந்து எஞ்சியதை பின்கொடு.",
+ "MATH_CONSTRAIN_TITLE": "%1 மாறியை %2 மேலும் %3 கீழும் வற்புறுத்து",
+ "MATH_CONSTRAIN_TOOLTIP": "எண் மாறி வீசுகளம் உள்ளடங்கிய வாறு வற்புறுத்து",
+ "MATH_RANDOM_INT_HELPURL": "https://en.wikipedia.org/wiki/Random_number_generation",
+ "MATH_RANDOM_INT_TITLE": "வீசுகளம் %1 இல் இருந்து %2 உள்ளடங்கிய வாறு சீரற்ற எண்",
+ "MATH_RANDOM_INT_TOOLTIP": "வீசுகளம் இல் இருந்த (உள்ளடங்கிய) வாறு சீரற்ற எண் பின்கொடு.",
+ "MATH_RANDOM_FLOAT_HELPURL": "https://en.wikipedia.org/wiki/Random_number_generation",
+ "MATH_RANDOM_FLOAT_TITLE_RANDOM": "சீரற்ற எண் பின்னம்",
+ "MATH_RANDOM_FLOAT_TOOLTIP": "சீரற்ற எண் பின்னம், 0.0 இல் இருந்து 1.0 உட்பட, பின்கொடு.",
+ "TEXT_TEXT_HELPURL": "https://ta.wikipedia.org/wiki/%E0%AE%9A%E0%AE%B0%E0%AE%AE%E0%AF%8D_%28%E0%AE%95%E0%AE%A3%E0%AE%BF%E0%AE%A9%E0%AE%BF%E0%AE%AF%E0%AE%BF%E0%AE%AF%E0%AE%B2%E0%AF%8D%29",
+ "TEXT_TEXT_TOOLTIP": "எழுத்து, சரம், சொல், அல்லது உரை சொற்தொடர்.",
+ "TEXT_JOIN_TITLE_CREATEWITH": "வைத்து உரை உருவாக்க",
+ "TEXT_JOIN_TOOLTIP": "பல பொருட்களை ஒன்றாக சேர்வதன் மூலம் உரை உருவாக்க.",
+ "TEXT_CREATE_JOIN_TITLE_JOIN": "சேர்க்க",
+ "TEXT_CREATE_JOIN_TOOLTIP": "தொகுப்பு உரை திருத்துதம் செய்",
+ "TEXT_CREATE_JOIN_ITEM_TOOLTIP": "உருபடியை உரையில் சேர்க்க.",
+ "TEXT_APPEND_TO": "இந்த மாறியிற்கு",
+ "TEXT_APPEND_APPENDTEXT": "உரை சேர்க்க",
+ "TEXT_APPEND_TOOLTIP": "'%1' மாறியில் உரையை சேர்",
+ "TEXT_LENGTH_TITLE": "%1ன் நீளம்",
+ "TEXT_LENGTH_TOOLTIP": "தொடரில் உள்ள எழுத்துக்களின் (இடைவெளிகளையும் சேர்த்து) எண்ணிகையை பின்கொடு.",
+ "TEXT_ISEMPTY_TITLE": "%1 காலியானது",
+ "TEXT_ISEMPTY_TOOLTIP": "காலியானது என்றால் மெய் மதிப்பை பின்கொடு",
+ "TEXT_INDEXOF_TOOLTIP": "இரண்டாவது உரையில் முதல் உரையின் முதல்/கடை இருக்கை குறிஎண்ணை பின்கொடு.",
+ "TEXT_INDEXOF_INPUT_INTEXT": "உரையில்",
+ "TEXT_INDEXOF_OPERATOR_FIRST": "உரையில் முதல் தோற்ற இடத்தை பின்கொடு",
+ "TEXT_INDEXOF_OPERATOR_LAST": "உரையில் கடைசி தோற்ற இடத்தை பின்கொடு",
+ "TEXT_CHARAT_INPUT_INTEXT": "உரையில்",
+ "TEXT_CHARAT_FROM_START": "# எழுத்தை எடு",
+ "TEXT_CHARAT_FROM_END": "முடிவில் இருந்து # எழுத்தை எடு",
+ "TEXT_CHARAT_FIRST": "முதல் எழுத்தைப் பெறுக",
+ "TEXT_CHARAT_LAST": "இறுதி எழுத்தைப் பெறுக",
+ "TEXT_CHARAT_RANDOM": "சமவாய்ப்புள்ள எழுத்தை எடு",
+ "TEXT_CHARAT_TOOLTIP": "கூறிய இடத்தில் உள்ள எழுத்தை எடு",
+ "TEXT_GET_SUBSTRING_TOOLTIP": "உரையின் குறியிடப்பட்ட சரம் பின்கொடு",
+ "TEXT_GET_SUBSTRING_INPUT_IN_TEXT": "உரையில்",
+ "TEXT_GET_SUBSTRING_START_FROM_START": "-இல் உட்கணம் # எழுத்திலிருந்து",
+ "TEXT_GET_SUBSTRING_START_FROM_END": "-இல் உட்கணம் கடைசி # எழுத்திலிருந்து",
+ "TEXT_GET_SUBSTRING_START_FIRST": "-இல் உட்கணம் முதல் எழுத்திலிருந்து",
+ "TEXT_GET_SUBSTRING_END_FROM_START": "எழுத்து # வரை",
+ "TEXT_GET_SUBSTRING_END_FROM_END": "எழுத்து கடைசியில் இருந்து # வரை",
+ "TEXT_GET_SUBSTRING_END_LAST": "கடைசி எழுத்து வரை",
+ "TEXT_CHANGECASE_TOOLTIP": "உரை நகல் எடுத்து பொரிய/சின்ன எழுத்து மாற்றி பின்கொடு.",
+ "TEXT_CHANGECASE_OPERATOR_UPPERCASE": "பொரிய எழுத்துக்கு மாற்று",
+ "TEXT_CHANGECASE_OPERATOR_LOWERCASE": "சின்ன எழுத்துக்கு மாற்று",
+ "TEXT_CHANGECASE_OPERATOR_TITLECASE": "தலைப்பு எழுத்துக்கு மாற்று",
+ "TEXT_TRIM_TOOLTIP": "உரை நகல் எடுத்து இடைவெளி எழுத்து நீக்கி பின்கொடு.",
+ "TEXT_TRIM_OPERATOR_BOTH": "இரு பக்கத்திலும் இடைவெளி எழுத்து நேர்த்தி செய்.",
+ "TEXT_TRIM_OPERATOR_LEFT": "இடது பக்கத்தில் இடைவெளி எழுத்து நேர்த்தி செய்.",
+ "TEXT_TRIM_OPERATOR_RIGHT": "வலது பக்கத்தில் இடைவெளி எழுத்து நேர்த்தி செய்.",
+ "TEXT_PRINT_TITLE": "%1 அச்சிடுக",
+ "TEXT_PRINT_TOOLTIP": "மதிப்பை அச்சிடு",
+ "TEXT_PROMPT_TYPE_TEXT": "உரை கொண்டு உரை-உள்ளீடு தூண்டுதலை காட்டு",
+ "TEXT_PROMPT_TYPE_NUMBER": "உரை கொண்டு எண்-உள்ளீடு தூண்டுதலை காட்டு",
+ "TEXT_PROMPT_TOOLTIP_NUMBER": "எண்-உள்ளீடு தூண்டுதலை காட்டு",
+ "TEXT_PROMPT_TOOLTIP_TEXT": "உரை-உள்ளீடு தூண்டுதலை காட்டு",
+ "LISTS_CREATE_EMPTY_TITLE": "காலி பட்டியல் உருவாக்க",
+ "LISTS_CREATE_EMPTY_TOOLTIP": "காலி பட்டியல் பின்கொடு.",
+ "LISTS_CREATE_WITH_TOOLTIP": "இவ்வளவு உருப்படிகளை கொண்டு வேண்டுமாலும் ஒரு பட்டியலை உருவாக்கு.",
+ "LISTS_CREATE_WITH_INPUT_WITH": "வைத்து பட்டியல் உருவாக்க",
+ "LISTS_CREATE_WITH_CONTAINER_TITLE_ADD": "பட்டியல்",
+ "LISTS_CREATE_WITH_CONTAINER_TOOLTIP": "கட்டளைகளை தொகுப்பு திருத்துதம் செய்",
+ "LISTS_CREATE_WITH_ITEM_TOOLTIP": "பட்டியலில் ஒரு பொருளை சேர்க்க.",
+ "LISTS_REPEAT_TOOLTIP": "கொடுக்க பட்ட மதிப்பை, கூறியுள்ள தடவைகள் உள்ளவாறு ஒரு பட்டியலை உருவாக்கு",
+ "LISTS_REPEAT_TITLE": "உருப்படி %1-யை, %2 தடவைகள் உள்ளவாறு ஒரு பட்டியலை உருவாக்கு",
+ "LISTS_LENGTH_TITLE": "%1 இன் நீளம்",
+ "LISTS_LENGTH_TOOLTIP": "பட்டியல் நீளம் பின்கொடு",
+ "LISTS_ISEMPTY_TITLE": "%1 காலியானது",
+ "LISTS_ISEMPTY_TOOLTIP": "பட்டியல் காலியானது மெய் பின்கொடு,",
+ "LISTS_INLIST": "பட்டியலில் உள்ள",
+ "LISTS_INDEX_OF_FIRST": "உரையில் முதல் தோற்ற இடத்தை காட்டு",
+ "LISTS_INDEX_OF_LAST": "உரையில் கடைசி தோற்ற இடத்தை காட்டு",
+ "LISTS_INDEX_OF_TOOLTIP": "பட்டியலில் மதிப்பின் முதல், கடைசி தோற்ற இடத்தை பின்கொடு. காணாவிட்டால் %1 பின்கொடு.",
+ "LISTS_GET_INDEX_GET": "எடு",
+ "LISTS_GET_INDEX_GET_REMOVE": "பெற்று நீக்குக",
+ "LISTS_GET_INDEX_REMOVE": "நீக்குக",
+ "LISTS_GET_INDEX_FROM_END": "கடைசியில் இருந்து #",
+ "LISTS_GET_INDEX_FIRST": "முதல்",
+ "LISTS_GET_INDEX_LAST": "கடைசி",
+ "LISTS_GET_INDEX_RANDOM": "ஏதோ ஒன்று",
+ "LISTS_INDEX_FROM_START_TOOLTIP": "%1 முதல் உருப்படி.",
+ "LISTS_INDEX_FROM_END_TOOLTIP": "%1 கடைசி உருப்படி.ி",
+ "LISTS_GET_INDEX_TOOLTIP_GET_FROM": "பட்டியலில் இடத்தில் உருப்படி பின்கொடு.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_FIRST": "பட்டியல் முதல் உருப்படியை பின்கொடு,",
+ "LISTS_GET_INDEX_TOOLTIP_GET_LAST": "பட்டியல் கடைசி உருப்படியை பின்கொடு,",
+ "LISTS_GET_INDEX_TOOLTIP_GET_RANDOM": "பட்டியல் சீரற்ற உருப்படியை பின்கொடு,",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM": "பட்டியலில் கேட்ட இடத்தின் உருப்படி நீக்கி பின்கொடு.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST": "பட்டியல் முதல் உருப்படியை நீக்கியபின் பின்கொடு,",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST": "பட்டியல் இறுதி உருப்படியை நீக்கியபின் பின்கொடு,",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM": "பட்டியல் சீரற்ற உருப்படியை நீக்கியபின் பின்கொடு,",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM": "பட்டியலில் கேட்ட இடத்தின் உருப்படி நீக்கு.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST": "பட்டியலில் முதல் உருப்படியை நீக்கு",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST": "பட்டியலில் கடைசி உருப்படியை நீக்கு",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM": "பட்டியல் சீரற்ற உருப்படியை நீக்கு,",
+ "LISTS_SET_INDEX_SET": "நியமி",
+ "LISTS_SET_INDEX_INSERT": "அவ்விடத்தில் நுழை",
+ "LISTS_SET_INDEX_INPUT_TO": "இதுபொல",
+ "LISTS_SET_INDEX_TOOLTIP_SET_FROM": "பட்டியலில் கேட்ட இடத்தில் உருப்படியை வை.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_FIRST": "மதிப்பை பட்டியலில் முதல் உருப்படியில் வை",
+ "LISTS_SET_INDEX_TOOLTIP_SET_LAST": "மதிப்பை பட்டியலில் கடைசி உருப்படியில் வை",
+ "LISTS_SET_INDEX_TOOLTIP_SET_RANDOM": "மதிப்பை பட்டியலில் சீரற்ற உருப்படியில் வை",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_FROM": "பட்டியலில் கேட்ட இடத்தில் உருப்படியை நுழை.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST": "மதிப்பை பட்டியலின் முதலில் நுழை",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_LAST": "மதிப்பை பட்டியலின் முடிவில் நுழை",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM": "மதிப்பை பட்டியலின் சீற்ற இடத்தில் நுழை",
+ "LISTS_GET_SUBLIST_START_FROM_START": "பகுதி பட்டியலை # இடத்தில் இருந்து கொடு",
+ "LISTS_GET_SUBLIST_START_FROM_END": "# கடைசியில் இருந்து பகுதி பட்டியலை கொடு",
+ "LISTS_GET_SUBLIST_START_FIRST": "# முதலில் இருந்து பகுதி பட்டியலை கொடு",
+ "LISTS_GET_SUBLIST_END_FROM_START": "# வரை",
+ "LISTS_GET_SUBLIST_END_FROM_END": "முடிவில் இருந்து # வரை",
+ "LISTS_GET_SUBLIST_END_LAST": "முடிவு வரை",
+ "LISTS_GET_SUBLIST_TOOLTIP": "குறிப்பட்ட பகுதி பட்டியலின் நகலை கொடு",
+ "LISTS_SPLIT_LIST_FROM_TEXT": "உரையில் இருந்து பட்டியல் உருவாக்கு",
+ "LISTS_SPLIT_TEXT_FROM_LIST": "பட்டியலில் இருந்து உரை உருவாக்கு",
+ "LISTS_SPLIT_WITH_DELIMITER": "தடை எழுத்து",
+ "LISTS_SPLIT_TOOLTIP_SPLIT": "உரையை வரம்புச் சுட்டி கொண்டு துண்டாக்கு.",
+ "LISTS_SPLIT_TOOLTIP_JOIN": "வரம்புச் சுட்டியை இடையில் இட்டு, உரைதுண்டுகளை ஒன்று சேர்",
+ "VARIABLES_GET_TOOLTIP": "இந்த மாறி மதிப்பை பின்கொடு",
+ "VARIABLES_GET_CREATE_SET": "'%1 நியமி' உருவாக்கு",
+ "VARIABLES_SET": "நியமி %1 இந்த மாறியிற்கு %2",
+ "VARIABLES_SET_TOOLTIP": "மாறியின் மதிப்பாய் உள்ளீட்டு மதிப்பை வை.",
+ "VARIABLES_SET_CREATE_GET": "'எடு %1' உருவாக்கு",
+ "PROCEDURES_DEFNORETURN_TITLE": "இந்த மாறியிற்கு",
+ "PROCEDURES_DEFNORETURN_PROCEDURE": "கட்டளைகள் செய்ய (இடம்காட்டி)",
+ "PROCEDURES_BEFORE_PARAMS": "இத்துடன்",
+ "PROCEDURES_CALL_BEFORE_PARAMS": "இத்துடன்:",
+ "PROCEDURES_DEFNORETURN_TOOLTIP": "வெளியீடு இல்லாத ஒரு செயல்பாடு உருவாக்குகிறது",
+ "PROCEDURES_DEFRETURN_RETURN": "பின்கொடு",
+ "PROCEDURES_DEFRETURN_TOOLTIP": "வெளியீடு உள்ள ஒரு செயல்பாடு உருவாக்குகிறது",
+ "PROCEDURES_ALLOW_STATEMENTS": "வாக்குமூலங்களை அனுமதிக்கவும்",
+ "PROCEDURES_DEF_DUPLICATE_WARNING": "எச்சரிக்கை: இந்த செயற்கூறில் போலியான அளபுருக்கள் உண்டு.",
+ "PROCEDURES_CALLNORETURN_HELPURL": "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29",
+ "PROCEDURES_CALLNORETURN_TOOLTIP": "பயனரின் '%1' செயற்கூற்றை ஓட்டு.",
+ "PROCEDURES_CALLRETURN_HELPURL": "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29",
+ "PROCEDURES_CALLRETURN_TOOLTIP": "பயனரின் '%1' செயற்கூற்றை ஓட்டி வரும் வெளியீட்டை பயன்படுத்து.",
+ "PROCEDURES_MUTATORCONTAINER_TITLE": "உள்ளீடுகள்",
+ "PROCEDURES_MUTATORCONTAINER_TOOLTIP": "செயல்கூறுகளின் உள்ளீட்டை சேர், நீக்கு, or மீண்டும் வரிசை செய்.",
+ "PROCEDURES_MUTATORARG_TITLE": "பெயரை உள்ளிடுக:",
+ "PROCEDURES_MUTATORARG_TOOLTIP": "செயல்கூறுக்கு ஒரு உள்ளீட்டை சேர்.",
+ "PROCEDURES_HIGHLIGHT_DEF": "நிரல்பாகத்தை விளக்கமாக காட்டு",
+ "PROCEDURES_CREATE_DO": "'%1' உருவாக்குக",
+ "PROCEDURES_IFRETURN_TOOLTIP": "மதிப்பு உண்மையானால், இரண்டாவது மதிப்பை பின்கொடு."
+}
diff --git a/blockly/msg/json/tcy.json b/blockly/msg/json/tcy.json
new file mode 100644
index 0000000..37f2f1a
--- /dev/null
+++ b/blockly/msg/json/tcy.json
@@ -0,0 +1,307 @@
+{
+ "@metadata": {
+ "authors": [
+ "Vishwanatha Badikana",
+ "Bharathesha Alasandemajalu"
+ ]
+ },
+ "VARIABLES_DEFAULT_NAME": "ವಸ್ತು",
+ "TODAY": "ಇನಿ",
+ "DUPLICATE_BLOCK": "ನಕಲ್",
+ "ADD_COMMENT": "ಟಿಪ್ಪಣಿ ಸೇರ್ಸಲೆ",
+ "REMOVE_COMMENT": "ಟಿಪ್ಪಣಿನ್ ದೆತ್ತ್‌ಪಾಡ್ಲೆ",
+ "EXTERNAL_INPUTS": "ಬಾಹ್ಯೊ ಪರಿಕರೊ",
+ "INLINE_INPUTS": "ಉಳಸಾಲ್‍ದ ಉಳಪರಿಪು",
+ "DELETE_BLOCK": "ಮಾಜಯರ ತಡೆಯಾತ್ಂಡ್",
+ "DELETE_X_BLOCKS": "ಮಾಜಯರ ಶೇಕಡಾ ೧ ತಡೆಯಾತ್ಂಡ್",
+ "DELETE_ALL_BLOCKS": "ಮಾತ %1 ನಿರ್ಬಂದೊಲೆನ್ ದೆತ್ತ್ ಪಾಡ್ಲೆ ?",
+ "CLEAN_UP": "ನಿರ್ಬಂದೊಲೆನ್ ಸ್ವೊಚ್ಚೊ ಮಲ್ಪುಲೆ",
+ "COLLAPSE_BLOCK": "ಕುಗ್ಗಿಸಾದ್ ತಡೆಪತ್ತುನೆ",
+ "COLLAPSE_ALL": "ಕುಗ್ಗಿಸಾದ್ ನಿರ್ಬಂಧಿಸಾಪುನೆ",
+ "EXPAND_BLOCK": "ವಿಸ್ತರಿಸಾದ್ ತಡೆಪತ್ತುನೆ",
+ "EXPAND_ALL": "ವಿಸ್ತರಿಸಾದ್ ನಿರ್ಬಂದಿಸಾಪುನೆ",
+ "DISABLE_BLOCK": "ನಿಷ್ಕ್ರಿಯಗೊಳಿಸಾದ್ ತಡೆಪತ್ತುನೆ",
+ "ENABLE_BLOCK": "ಸಕ್ರಿಯಗೊಳಿಸಾದ್ ತಡೆಪತ್ತುನೆ",
+ "HELP": "ಸಹಾಯೊ",
+ "UNDO": "ದುಂಬುದಲೆಕೊ",
+ "REDO": "ಪಿರವುದಂಚ",
+ "CHANGE_VALUE_TITLE": "ಮೌಲ್ಯೊದ ಬದಲಾವಣೆ",
+ "RENAME_VARIABLE": "ಬದಲಾವಣೆ ಆಯಿನ ಪುದರ್‍ನ್ ನಾನೊರೊ ಪನ್ಲೆ",
+ "RENAME_VARIABLE_TITLE": "ನಾನೊರೊ ಪುದರ್ ಬದಲಾವಣೆ ಆಯಿನ ಮಾಂತ '% 1':",
+ "NEW_VARIABLE": "ಪೊಸ ಬದಲಾವಣೆ",
+ "NEW_VARIABLE_TITLE": "ಪುದರ್‍ದ ಪೊಸ ಬದಲಾವಣೆ:",
+ "COLOUR_PICKER_HELPURL": "https://en.wikipedia.org/wiki/ಬಣ್ಣೊ",
+ "COLOUR_PICKER_TOOLTIP": "ವರ್ಣಫಲಕೊದ ಒಂಜಿ ಬಣ್ಣೊದ ಆಯ್ಕೆ.",
+ "COLOUR_RANDOM_TITLE": "ಯಾದೃಚ್ಛಿಕೊ ಬಣ್ಣೊ",
+ "COLOUR_RANDOM_TOOLTIP": "ಯಾದೃಚ್ಛಿಕವಾಯಿನ ಬಣ್ಣೊದ ಆಯ್ಕೆ.",
+ "COLOUR_RGB_TITLE": "ಬಣ್ಣೊದೊಟ್ಟುಗೆ",
+ "COLOUR_RGB_RED": "ಕೆಂಪು ಬಣ್ಣೊ",
+ "COLOUR_RGB_GREEN": "ಪಚ್ಚೆ",
+ "COLOUR_RGB_BLUE": "ನೀಲಿ",
+ "COLOUR_RGB_TOOLTIP": "ತೋಜಿಪಾಯಿನ ಕೆಂಪು, ಪಚ್ಚೆ ಬುಕ್ಕೊ ನೀಲಿ ಬಣ್ಣೊದ ಪ್ರಮಾಣೊನು ರಚಿಸಲೆ. ಮಾಂತ ಮೌಲ್ಯೊಲು 0 ಬುಕ್ಕೊ 100 ನಡುಟೆ ಇಪ್ಪೊಡು.",
+ "COLOUR_BLEND_TITLE": "ಮಿಸ್ರನೊ",
+ "COLOUR_BLEND_COLOUR1": "ಬಣ್ಣೊ ೧(ಒಂಜಿ)",
+ "COLOUR_BLEND_COLOUR2": "ಬಣ್ಣೊ ೨(ರಡ್ಡ್)",
+ "COLOUR_BLEND_RATIO": "ಅನುಪಾತೊ",
+ "COLOUR_BLEND_TOOLTIP": "ಕೊರ್‍ನ ಅನುಪಾತೊದ ಒಟ್ಟುಗೆ (0.0- 1.0 ) ರಡ್ಡ್ ಬಣ್ಣೊಲೆನ್ ಜೊತೆಟ್ ಒಂಜಿ ಮಲ್ಪುಂಡು.",
+ "CONTROLS_REPEAT_HELPURL": "https://en.wikipedia.org/wiki/For_loop",
+ "CONTROLS_REPEAT_TITLE": "ನಾನೊರೊ %1 ಸಮಯೊಗು",
+ "CONTROLS_REPEAT_INPUT_DO": "ಮಲ್ಪು / ಅಂಚನೆ",
+ "CONTROLS_REPEAT_TOOLTIP": "ಕೆಲವು ಹೇಳಿಕೆಲೆನ್ ಮಸ್ತ್ ಸಮಯೊ ಮಲ್ಪೊಡು",
+ "CONTROLS_WHILEUNTIL_OPERATOR_WHILE": "ಬುಕ್ಕೊ ಅಂಚನೇ",
+ "CONTROLS_WHILEUNTIL_OPERATOR_UNTIL": "ಬುಕ್ಕೊ ಮುಟ್ಟೊ",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_WHILE": "ಈ ತಿರ್ತ್‌ದ ಸರಿ ಇತ್ತ್ಂಡಲಾ, ಬುಕ್ಕೊದ ಕೆಲವು ಹೇಳಿಕೆಲೆನ್ ಮಲ್ಪುಲ",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL": "ಈ ತಿರ್ತ್‍ದ ತಪ್ಪಾದುಂಡು, ಬುಕ್ಕೊದ ಕೆಲವು ಹೇಳಿಕೆಲೆನ್ ಮಲ್ಪಪುಲ",
+ "CONTROLS_FOR_TOOLTIP": "ಸುರೂತ ನಂಬ್ರೊಡ್ದು ಅಕೇರಿದ ನಂಬ್ರೊಗು ಬಿಲೆಟ್ ಮಸ್ತ್ ಹೆಚ್ಚ್‌ಕಮ್ಮಿ ಇತ್ತ್ಂಡಲಾ %1 ದೆತೊಂದ್, ನಿರ್ದಿಸ್ಟೊ ಮಧ್ಯಂತರೊದ ಮೂಲಕೊ ಲೆಕ್ಕೊದೆತೊಂದು ಬುಕ್ಕೊ ನಿಗಂಟ್ ಮಲ್ತ್‌ನ ಬ್ಲಾಕ್‍ಲೆನ್ ಲೆಕ್ಕೊ ಮಲ್ಪುಲ.",
+ "CONTROLS_FOR_TITLE": "%1ಡ್ದ್ %2ಗ್ ಮುಟ್ಟ %3 ಬುಕ್ಕೊ %4ನ್ ಒಟ್ಟೂಗು ಗೆನ್ಪಿ",
+ "CONTROLS_FOREACH_TITLE": "ಅತ್ತಂದೆ ಪ್ರತೀ ಅಂಸೊ %1ದ ಉಲಯಿ %2ದ ಪಟ್ಟಿ",
+ "CONTROLS_FOREACH_TOOLTIP": "ಒಂಜಿ ಪಟ್ಟಿಡ್ ಪ್ರತಿ ವಸ್ತುಗು, ಜೋಡಾಯಿನ ವಸ್ತು ಬದಲಾಪುನಂಚ '% 1', ಬುಕ್ಕೊ ಒಂತೆ ಹೇಳಿಕೆಲೆನ್ ಮಲ್ಲಪುಲೆ.",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK": "ಕುಣಿಕೆದ ಪಿದಯಿ ತುಂಡಾಪುಂಡು",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE": "ದುಂಬುದ ಆದೇಸೊಡೆ ಪುನರಾವರ್ತನೆ ದುಂಬರಿಪ್ಪುಂಡು",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK": "ಬಳಕೆಡುಪ್ಪುನ ಕೊಲಿಕೆಡ್ದ್ ಪಿದಯಿ ಪಾಡ್‍ಲೆ",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE": "ದುಂಬುದ ಆವೃತಿಡ್ ಉಪ್ಪುನಂಚನೆ ಮಾಂತ ಕೊಲಿಕೆಲೆನ್ ದೆತ್ಪುಲೆ ಬುಕ್ಕೊ ದುಂಬರಿಲೆ",
+ "CONTROLS_FLOW_STATEMENTS_WARNING": "ಎಚ್ಚರೊ: ಈ ನಿರ್ಬಂದೊನು ಕೇವಲ ಒಂಜಿ ಕೊಲಿಕೆದಾಕಾರೊದ ಮುಕ್ತಮಾರ್ಗೊದ ಪರಿಮಿತಿದುಲಯಿಡ್ ಬಳಸೊಲಿ",
+ "CONTROLS_IF_TOOLTIP_1": "ಇಂದೆತ ಮೌಲ್ಯೊ ನಿಜವಾದಿತ್ತ್‌ಂಡ, ಬುಕ್ಕೊ ಒಂತೆ ನಿರೂಪಣೆಲೆನ್ ಮಲ್ಪುಲೆ",
+ "CONTROLS_IF_TOOLTIP_2": "ಇಂದೆತ ಮೌಲ್ಯೊ ನಿಜವಾದಿತ್ತ್‌ಂಡ, ಬುಕ್ಕೊದ ನಿರೂಪಣೆಲೆನ್ ಸುರೂಕು ಮಲ್ಪುಲೆ. ಅತ್ತಂಡ ರಡ್ಡನೆದ ನಿರೂಪಣೆನ್ ತಡೆ ಪತ್ತುನಂಚನೆ ಮಲ್ಲಪುಲೆ",
+ "CONTROLS_IF_TOOLTIP_3": "ಸುರೂತ ಮೌಲ್ಯೊ ನಿಜವಾದಿತ್ತ್‌ಂಡ, ಬುಕ್ಕೊದ ನಿರೂಪಣೆಲೆನ್ ಸುರೂಕು ತಡೆ ಮಲ್ಪುಲೆ. ಅತ್ತಂಡ ರಡ್ಡನೆದ ನಿರೂಪಣೆನ್ ನಿಜವಾದಿತ್ತ್‌ಂಡ ಬುಕ್ಕೊ ಒಂತೆ ನಿರೂಪಣೆಲೆನ್ ಮಲ್ಪುಲೆ",
+ "CONTROLS_IF_TOOLTIP_4": "ಸುರೂತ ಮೌಲ್ಯೊ ನಿಜವಾದಿತ್ತ್‌ಂಡ, ಸುರೂತ ನಿರೂಪಣೆನ್ ತಡೆ ಮಲ್ಪುಲೆ. ರಡ್ಡನೆದ ನಿರೂಪಣೆ ನಿಜವಾದಿತ್ತ್ಂಡ, ರಡ್ಡನೆದ ನಿರೂಪಣೆನ್ ತಡೆ ಮಲ್ಪುಲೆ. ಉಂದು ಒವ್ವೇ ಮೌಲ್ಯೊ ನಿಜವಾದಿದ್ಯಂಡ, ಅಕೇರಿದ ನಿರೂಪಣೆನ್ ತಡೆ ಮಲ್ಪುಲೆ.",
+ "CONTROLS_IF_MSG_IF": "ಒಂಜಿ ವೇಲೆ",
+ "CONTROLS_IF_MSG_ELSEIF": "ಬೇತೆ ಸಮಯೊ",
+ "CONTROLS_IF_MSG_ELSE": "ಬೇತೆ",
+ "CONTROLS_IF_IF_TOOLTIP": "ಸೇರಲ, ದೆತ್ತ್‌ ಪಾಡ್‌ಲ, ಅತ್ತಂಡ ಒಂಜಿ ವೇಲೆ ಈ ರಚನೆನ್ ತಡೆದ್, ಇಂದೆತ ಇಬಾಗೊಲೆನ್ ಬೇತೆ ಕ್ರಮೊಟು ಮಲ್ಪುಲೆ",
+ "CONTROLS_IF_ELSEIF_TOOLTIP": "ಒಂಜಿ ವೇಲೆ ಒಂಜಿ ತಡೆಕ್ ಈ ಪರಿಸ್ಥಿತಿನ್ ಸೇರಲೆ",
+ "CONTROLS_IF_ELSE_TOOLTIP": "ಒಂಜಿ ವೇಲೆ ಮಾಂತೆನ್ಲಾ ದೀಡೊಂದು ಅಕೇರಿದ ಪರಿಸ್ಥಿಡ್ ಸೇರಲೆ",
+ "LOGIC_COMPARE_TOOLTIP_EQ": "ರಡ್ಡ್ ಅತ್ತಂದೆ ಬೇತೆ ಸೂಚನೆಲು ನಿಜೊಕ್ಕುಲಾ ಸಮೊ ಇತ್ತ್ಂಡ ಪಿರ ಕೊರ್ಲೆ.",
+ "LOGIC_COMPARE_TOOLTIP_NEQ": "ರಡ್ಡ್ ಅತ್ತಂದೆ ಬೇತೆ ಸೂಚನೆಲು ನಿಜೊಕ್ಕುಲಾ ಸಮೊ ಆತಿಜಂಡ ಪಿರ ಕೊರ್ಲೆ",
+ "LOGIC_COMPARE_TOOLTIP_LT": "ಸುರುತ ಅತ್ತಂದೆ ರಡ್ಡನೆದ ಸೂಚನೆ ನಿಜೊಕ್ಕುಲಾ ಒಂಜಿ ವೇಲೆ ಎಲ್ಯೆ ಆದಿತ್ತ್ಂಡ ಪಿರ ಕೊರ್ಲೆ",
+ "LOGIC_COMPARE_TOOLTIP_LTE": "ಸುರುತ ಅತ್ತಂದೆ ರಡ್ಡನೆದ ಸೂಚನೆ ನಿಜೊಕ್ಕುಲಾ ದಿಂಜ ಎಲ್ಯೆ ಅತ್ತಂಡ ಸಮೊ ಆದಿತ್ತ್ಂಡ ಪಿರ ಕೊರ್ಲೆ",
+ "LOGIC_COMPARE_TOOLTIP_GT": "ಸುರುತ ಅತ್ತಂದೆ ರಡ್ಡನೆದ ಸೂಚನೆಡ್ದ್ ನಿಜೊಕ್ಕುಲಾ ಮಲ್ಲೆ ಆದಿತ್ತ್ಂಡ ಪಿರ ಕೊರ್ಲೆ",
+ "LOGIC_COMPARE_TOOLTIP_GTE": "ಸುರುತ ಅತ್ತಂದೆ ರಡ್ಡನೆದ ಸೂಚನೆ ನಿಜೊಕ್ಕುಲಾ ದಿಂಜ ಮಲ್ಲೆ ಅತ್ತಂಡ ಸಮೊ ಆದಿತ್ತ್ಂಡ ಪಿರ ಕೊರ್ಲೆ",
+ "LOGIC_OPERATION_TOOLTIP_AND": "ರಡ್ಡ್ ಸೂಚನೆಲಾ ನಿಜೊ ಆದಿತ್ತ್ಂಡ ನಿಜವಾತ್ ಪಿರಕೊರ್ಲೆ",
+ "LOGIC_OPERATION_AND": "ಬುಕ್ಕೊ",
+ "LOGIC_OPERATION_TOOLTIP_OR": "ನಿಜವಾದ್‍ಲ ಒಂಜಿವೇಳೆ ಇನ್‍ಪುಟ್ ಒಂತೆ ನಿಜವಾದಿತ್ತ್ಂಡ ಪಿರಕೊರು",
+ "LOGIC_OPERATION_OR": "ಅತ್ತಂಡ",
+ "LOGIC_NEGATE_TITLE": "%1 ಇದ್ದಿ",
+ "LOGIC_NEGATE_TOOLTIP": "ನಿಜವಾದ್‍ ಇನ್‍ಪುಟ್ ಸುಲ್ಲಾದಿತ್ತ್‌ಂಡ ಪಿರಕೊರು. ನಿಜವಾದ್ ಸುಲ್ಲು ಇನ್‍ಪುಟ್ ಇತ್ತ್‌ಂಡ ಪಿರಕೊರು",
+ "LOGIC_BOOLEAN_TRUE": "ಸತ್ಯೊ",
+ "LOGIC_BOOLEAN_FALSE": "ಸುಲ್ಲು",
+ "LOGIC_BOOLEAN_TOOLTIP": "ಪೂರ ಸತ್ಯೊ ಅತ್ತಂಡ ಸುಲ್ಲು ಆಂಡ ಪಿರಕೊರು",
+ "LOGIC_NULL": "ಸೊನ್ನೆ",
+ "LOGIC_NULL_TOOLTIP": "ಸೊನ್ನೆನ್ ಪರಿಕೊರ್ಪುಂಡು",
+ "LOGIC_TERNARY_CONDITION": "ಪರೀಕ್ಷೆ",
+ "LOGIC_TERNARY_IF_TRUE": "ಒಂಜಿ ವೇಲೆ ಸತ್ಯೊ",
+ "LOGIC_TERNARY_IF_FALSE": "ಒಂಜಿ ವೇಲೆ ಸುಳ್ಳು",
+ "LOGIC_TERNARY_TOOLTIP": "ಪರೀಕ್ಷೆದ ಸ್ಥಿತಿನ್ ಪರಿಶೀಲನೆ ಮಲ್ಲಪುಲೆ. ಪರಿಸ್ಥಿತಿ ನಿಜವಾದಿತ್ತ್ಂಡ, ನಿಜವಾಯಿನ ಮೌಲ್ಯೊನು ಪಿರಕೊರ್ಲೆ; ಅತ್ತಂಡ ತಪ್ಪು ಮೌಲ್ಯೊನೇ ಪಿರ ಕೊರ್ಲೆ.",
+ "MATH_NUMBER_HELPURL": "https://en.wikipedia.org/wiki/ಸಂಖ್ಯೆ",
+ "MATH_NUMBER_TOOLTIP": "ಅ ನಂಬ್ರೊ",
+ "MATH_ARITHMETIC_HELPURL": "https://en.wikipedia.org/wiki/ಅಂಕಗಣಿತ",
+ "MATH_ARITHMETIC_TOOLTIP_ADD": "ಸಂಖ್ಯೆದ ಮೊತ್ತನ್ ಪಿರ ಕೊರು.",
+ "MATH_ARITHMETIC_TOOLTIP_MINUS": "ಸಂಖ್ಯೆದ ವ್ಯತ್ಯಾಸೊನು ಪರಕೊರು.",
+ "MATH_ARITHMETIC_TOOLTIP_MULTIPLY": "ಸಂಖ್ಯೆದ ಉತ್ಪನ್ನೊನು ಪಿರ ಕೊರು.",
+ "MATH_ARITHMETIC_TOOLTIP_DIVIDE": "ಸಂಖ್ಯೆದ ಭಾಗಲಬ್ದೊನು ಪಿರ ಕೊರು.",
+ "MATH_ARITHMETIC_TOOLTIP_POWER": "ಒಂಜನೆ ಸಂಖ್ಯೆದ ಶಕ್ತಿನ್ ರಡ್ಡನೆ ಸಂಖ್ಯೆಡ್ದ್ ಪಿರ ಹೆಚ್ಚಿಗೆ ಮಲ್ಪುಲೆ.",
+ "MATH_SINGLE_HELPURL": "https://en.wikipedia.org/wiki/ವರ್ಗೊಮೂಲೊ",
+ "MATH_SINGLE_OP_ROOT": "ವರ್ಗಮೂಲೊ",
+ "MATH_SINGLE_TOOLTIP_ROOT": "ಸಂಖ್ಯೆದ ವರ್ಗಮೂಲೊನು ಪಿರ ಕೊರು.",
+ "MATH_SINGLE_OP_ABSOLUTE": "ಸಂಪೂರ್ನೊ",
+ "MATH_SINGLE_TOOLTIP_ABS": "ಸಂಖ್ಯೆದ ಸರಿಯಾಯಿನ ಮೌಲ್ಯೊನು ಕೊರು",
+ "MATH_SINGLE_TOOLTIP_NEG": "ಸಂಖ್ಯೆದ ನಿರಾಕರಣೆನ್ ಪಿರಕೊರು",
+ "MATH_SINGLE_TOOLTIP_LN": "ಸಂಖ್ಯೆದ ನಿಜವಾಯಿನ ಕ್ರಮಾವಳಿನ್ ಪಿರಕೊರು",
+ "MATH_SINGLE_TOOLTIP_LOG10": "ಸಂಖ್ಯೆದ ೧೦ ಮೂಲೊ ಕ್ರಮಾವಳಿನ್ ಪಿರಕೊರು",
+ "MATH_SINGLE_TOOLTIP_EXP": "ಸಂಖ್ಯೆದ ಇ ಗ್ ಅಧಿಕಾರೊನು ಪಿರಕೊರು",
+ "MATH_SINGLE_TOOLTIP_POW10": "ಸಂಖ್ಯೆದ ೧೦ಗ್ ಅಧಿಕಾರೊನು ಪಿರಕೊರು",
+ "MATH_TRIG_HELPURL": "https://en.wikipedia.org/wiki/ತ್ರಿಕೋನಮಿತಿದ_ಕಾರ್ಯೊಲು",
+ "MATH_TRIG_TOOLTIP_SIN": "ಪದವಿದ ಚಿಹ್ನೆನ್ ಪಿರಕೊರು",
+ "MATH_TRIG_TOOLTIP_COS": "ಪದವಿದ ಸಹ ಚಿಹ್ನೆನ್ ಪಿರಕೊರು",
+ "MATH_TRIG_TOOLTIP_TAN": "ಪದವಿದ ಸ್ಪರ್ಶಕೊನು ಪಿರಕೊರು",
+ "MATH_TRIG_TOOLTIP_ASIN": "ಪದವಿದ ಆರ್ಕ್ಸೈನ್ ಪಿರಕೊರು",
+ "MATH_TRIG_TOOLTIP_ACOS": "ಸಂಖ್ಯೆದ ಆರ್ಕ್ಕೊಸಿನ್ ಪಿರಕೊರು",
+ "MATH_TRIG_TOOLTIP_ATAN": "ಸಂಖ್ಯೆದ ಆರ್ಕ್ಟ್ಯಾಂಜೆಂಟ್ ಪಿರಕೊರು",
+ "MATH_CONSTANT_HELPURL": "https://en.wikipedia.org/wiki/ಗಣಿತ_ನಿರಂತರ",
+ "MATH_CONSTANT_TOOLTIP": "ಸಾಮಾನ್ಯವಾದ್ ಒಂಜಿ ಸ್ಥಿರವಾದಿತ್ತ್‌ಂಡ ಪಿರಕೊರು: π (3.141…), e (2.718…), φ (1.618…), sqrt(2) (1.414…), sqrt(½) (0.707…), or ∞ (infinity).",
+ "MATH_IS_EVEN": "ಸಮೊ ಆತ್ಂಡ್",
+ "MATH_IS_ODD": "ಬೆಸೊ ಆತ್ಂಡ್",
+ "MATH_IS_PRIME": "ಎಡ್ಡೆ ಆತ್ಂಡ್",
+ "MATH_IS_WHOLE": "ಮಾಂತ ಆತ್ಂಡ್",
+ "MATH_IS_POSITIVE": "ಗುನೊ ಆತ್ಂಡ್",
+ "MATH_IS_NEGATIVE": "ರುನೊ ಆತ್ಂಡ್",
+ "MATH_IS_DIVISIBLE_BY": "ಭಾಗಿಸವೊಲಿಯ",
+ "MATH_IS_TOOLTIP": "ಒಂಜಿ ವೇಲ್ಯೊ ಸಂಖ್ಯೆ ಸರಿ, ಬೆಸ, ಅವಿಭಾಜ್ಯ, ಇಡೀ, ಕೂಡಬುನ, ಕಲೆವುನ, ಅತ್ತಂಡ ನಿರ್ದಿಷ್ಟ ಸಂಖ್ಯೆಡ್ದ್ ಭಾಗಿಸವುಂಡಂದ್ ಪರಿಶೀಲಿಸ. ಸರಿ ಅತ್ತಂಡ ತಪ್ಪುನು ಪಿರಕೊರು.",
+ "MATH_CHANGE_TITLE": "%1 ಡ್ದ್ %2 ಬದಲಾಯಿಸವೊಲಿ",
+ "MATH_CHANGE_TOOLTIP": "'%1' ಬದಲ್ ಮಲ್ಪುನಂಚಿನ ಒಂಜಿ ನಂಬರ್‍ನ್ ಸೇರಾವು",
+ "MATH_ROUND_HELPURL": "https://en.wikipedia.org/wiki/ಪೂರ್ಣಾಂಕೊ",
+ "MATH_ROUND_TOOLTIP": "ಸಂಖ್ಯೆನ್ ಮಿತ್ತ್ ಅತ್ತಂಡ ತಿರ್ತ್ ರೌಂಡ್ ಮಲ್ಪು",
+ "MATH_ROUND_OPERATOR_ROUND": "ಸುತ್ತು",
+ "MATH_ROUND_OPERATOR_ROUNDUP": "ಮುಗಿಪುನ ಸಮಯೊ",
+ "MATH_ROUND_OPERATOR_ROUNDDOWN": "ಸುತ್ತು ಕಡಮೆ",
+ "MATH_ONLIST_OPERATOR_SUM": "ಒಟ್ಟು ಕೂಡಯಿನಾ ಪಟ್ಟಿ",
+ "MATH_ONLIST_TOOLTIP_SUM": "ಪಟ್ಟಿದಾ ಮಾಂತ ಸಂಕ್ಯೆಲೆನ್ ಪಿರಕೊರ್ಲೆ",
+ "MATH_ONLIST_OPERATOR_MIN": "ಕಿನ್ಯ ಪಟ್ಟಿ",
+ "MATH_ONLIST_TOOLTIP_MIN": "ಪಟ್ಟಿದಾ ಕಿನ್ಯ ಸಂಕ್ಯೆನ್ ಪಿರಕೊರು",
+ "MATH_ONLIST_OPERATOR_MAX": "ಪಟ್ಟಿನ್ ಮಿಸ್ರೊ ಮಲ್ಪು",
+ "MATH_ONLIST_TOOLTIP_MAX": "ಪಟ್ಟಿದಾ ಮಲ್ಲ ಸಂಕ್ಯೆನ್ ಪಿರಕೊರು",
+ "MATH_ONLIST_OPERATOR_AVERAGE": "ಸರಾಸರಿ ಪಟ್ಟಿ",
+ "MATH_ONLIST_TOOLTIP_AVERAGE": "ಪಟ್ಟಿಡುಪ್ಪುನ ಸರ್ವಸಾಧಾರಣ ಬಿಲೆನ್ ಪಿರಕೋರ್ಲೆ",
+ "MATH_ONLIST_OPERATOR_MEDIAN": "ನಡುತ ಪಟ್ಟಿ",
+ "MATH_ONLIST_TOOLTIP_MEDIAN": "ಪಟ್ಟಿದಾ ನಡುತ ಸಂಕ್ಯೆನ್ ಪಿರಕೊರು",
+ "MATH_ONLIST_OPERATOR_MODE": "ಪಟ್ಟಿದ ಇದಾನೊಲು",
+ "MATH_ONLIST_TOOLTIP_MODE": "ಪಟ್ಟಿದ ಸಾಮಾನ್ಯೊ ಅಂಸೊಲೆನ ಪಟ್ಟಿನ್ ಪಿರಕೊರು",
+ "MATH_ONLIST_OPERATOR_STD_DEV": "ಕಬರ್ ಪಟ್ಟಿದ ಪ್ರಮಾನೊ",
+ "MATH_ONLIST_TOOLTIP_STD_DEV": "ಪಟ್ಟಿದ ಗುಣಮಟ್ಟೊದ ವರ್ಗೀಕರಣೊನು ಪಿರಕೊರು",
+ "MATH_ONLIST_OPERATOR_RANDOM": "ಗೊತ್ತುಗುರಿ ದಾಂತಿನ ಅಂಸೊದ ಪಟ್ಟಿ",
+ "MATH_ONLIST_TOOLTIP_RANDOM": "ಪಟ್ಟಿದ ಗೊತ್ತು ಗುರಿದಾಂತಿನ ಅಂಸೊಲೆನ್ ಪಿರಕೊರು",
+ "MATH_MODULO_HELPURL": "https://en.wikipedia.org/wiki/ಮೋಡ್ಯುಲೊ_ಒಪರೇಶನ್",
+ "MATH_MODULO_TITLE": " %1 ÷ %2 ಒರಿನ ಬಾಗೊ",
+ "MATH_MODULO_TOOLTIP": "ರಡ್ಡ್ ಸಂಖ್ಯೆದ ಇಬಾಗೊಡ್ದು ಒರಿನ ಬಾಗೊನು ಪಿರಕೊರು",
+ "MATH_CONSTRAIN_TITLE": " %1 ಕಮ್ಮಿ %2 ಜಾಸ್ತಿ %3 ಕಡ್ಡಾಯ ಮಲ್ಪು",
+ "MATH_CONSTRAIN_TOOLTIP": "ನಿಗದಿತ ನಿಯಮೊಗು ನಡುಟು ದಿಂಜ ನಿರ್ಬಂದೊ(ಸೇರ್‍ನಂಚ)",
+ "MATH_RANDOM_INT_HELPURL": "https://en.wikipedia.org/wiki/ರಾಂಡಮ್_ನಂಬರ್_ಜನರೇಶನ್",
+ "MATH_RANDOM_INT_TITLE": " %1 ಡ್ದ್ %2 ಯಾದೃಚ್ಛಿಕ ಪೂರ್ಣಾಂಕೊ",
+ "MATH_RANDOM_INT_TOOLTIP": "ರಡ್ಡ್ ನಿಗದಿತ ನಿಯಮೊದ ನಡುತ ಯಾದೃಚ್ಛಿಕ ಪೂರ್ಣಾಂಕೊನು ಪಿರಕೊರು",
+ "MATH_RANDOM_FLOAT_HELPURL": "https://en.wikipedia.org/wiki/ರಾಂಡಮ್_ನಂಬರ್_ಜನರೇಶನ್",
+ "MATH_RANDOM_FLOAT_TITLE_RANDOM": "ಗೊತ್ತುಗುರಿ ದಾಂತಿನ ಬಾಗೊ",
+ "MATH_RANDOM_FLOAT_TOOLTIP": "0.0 (ಸೇರ್ನಂಚಿನ) and 1.0 (ಸೇರಂದಿನಂಚಿನ) ನಡುತ ಗೊತ್ತು ಗುರಿದಾಂತಿನ ಬಾಗೊನು ಪಿರಕೊರು.",
+ "TEXT_TEXT_HELPURL": "https://en.wikipedia.org/wiki/ಸ್ಟ್ರಿಂಗ್_(ಕಂಪ್ಯೂಟರ್_ಸೈನ್ಸ್)",
+ "TEXT_TEXT_TOOLTIP": "ಒಂಜಿ ಅಕ್ಷರೊ, ಪದೊ ಅತ್ತಂಡ ಪಾಟೊದ ಒಂಜಿ ಸಾಲ್",
+ "TEXT_JOIN_TITLE_CREATEWITH": "ಪಟ್ಯೊನು ರಚನೆ ಮಲ್ಪು",
+ "TEXT_JOIN_TOOLTIP": "ಒವ್ವೇ ಸಂಖ್ಯೆದ ಪಟ್ಯೊದ ತುಂಡುಲೆನ್ ಒಟ್ಟೂಗೆ ಸೇರಯರ ರಚಿಸಲೆ",
+ "TEXT_CREATE_JOIN_TITLE_JOIN": "ಸೇರೊಲಿ",
+ "TEXT_CREATE_JOIN_TOOLTIP": "ಸೇರಯರ, ದೆತ್ತ್‌ ಪಾಡೆರೆ ಅತ್ತಂಡ ಈ ಪಟ್ಯೊಲೆನ್ ತಡೆದ್ ಪತ್ತ್‌ದ್ ಪಿರ ರಚಿಸಯರ ಇಬಾಗೊ ಮಲ್ಪುಲೆ.",
+ "TEXT_CREATE_JOIN_ITEM_TOOLTIP": "ಪಟ್ಯೊಡು ಅಂಸೊಲೆನ್ ಸೇರಲೆ",
+ "TEXT_APPEND_TO": "ಇಂದೆಕ್",
+ "TEXT_APPEND_APPENDTEXT": "ಪಟ್ಯೊನು ಸೇರವೆ",
+ "TEXT_APPEND_TOOLTIP": "%1 ಬದಲಾಪುನ ಕೆಲವು ಪಟ್ಯೊಲೆನ್ ಸೇರಾವೊಂಡು.",
+ "TEXT_LENGTH_TITLE": "೧% ಉದ್ದೊ",
+ "TEXT_LENGTH_TOOLTIP": "ಕೊರ್‌ನ ಪಟ್ಯೊದ ಅಕ್ಷರೊಲೆನ(ಅಂತರೊಲು ಸೇರ್‌ನಂಚ) ಸಂಖ್ಯೆನ್ ಪಿರಕೊರು.",
+ "TEXT_ISEMPTY_TITLE": "%1 ಕಾಲಿ",
+ "TEXT_ISEMPTY_TOOLTIP": "ಕೊರ್‌ನ ಪಟ್ಯೊ ಕಾಲಿಂದ್ ಸತ್ಯೊ ಆಂಡ ಪಿರಕೊರು",
+ "TEXT_INDEXOF_TOOLTIP": "ಸುರುತ ಪಟ್ಯೊದ ಸೂಚ್ಯಿ/ಅಕೇರಿಟ್ ಸಂಭವಿಸವುನ ಸುರುತ ಪಟ್ಟಯೊದುಲಯಿದ ರಡ್ಡನೆ ಪಟ್ಯೊನು ಪಿರಕೊರು. %1 ಪಟ್ಯೊ ತಿಕಂದಿತ್ತ್‌ಂಡ ಪಿರಕೊರು.",
+ "TEXT_INDEXOF_INPUT_INTEXT": "ಪಟ್ಯೊಡು",
+ "TEXT_INDEXOF_OPERATOR_FIRST": "ಸುರುಟು ಸಂಭವಿಸಯಿನ ಪಟ್ಯೊನು ನಾಡ್‍ಲ",
+ "TEXT_INDEXOF_OPERATOR_LAST": "ದುಂಬು ಕರಿನ ಪಟ್ಯೊನು ನಾಡ್‍ಲೆ",
+ "TEXT_CHARAT_INPUT_INTEXT": "ಪಟ್ಯೊಡು",
+ "TEXT_CHARAT_FROM_START": "ಅಕ್ಸರೊನು ದೆತೊನುಲೆ#",
+ "TEXT_CHARAT_FROM_END": "ಅಕ್ಷರೊ ನಟೊನ್#ಅಕೇರಿಡ್ದ್",
+ "TEXT_CHARAT_FIRST": "ಸುರುಡ್ದ್ ಅಕ್ಷರೊನು ನಟೊನ್ಲ",
+ "TEXT_CHARAT_LAST": "ಅಕೇರಿದ ಅಕ್ಷರೊನು ನಟೊನ್ಲ",
+ "TEXT_CHARAT_RANDOM": "ಗೊತ್ತುಗುರಿದಾಂತಿ ಅಕ್ಷರೊನು ನಟೊನ್ಲ",
+ "TEXT_CHARAT_TOOLTIP": "ಅಕ್ಷರೊನು ನಿರ್ದಿಷ್ಟ ಜಾಗೆಡ್ ಪಿರಕೊರು.",
+ "TEXT_GET_SUBSTRING_TOOLTIP": "ಪಟ್ಯೊನು ನಿರ್ದಿಷ್ಟ ಬಾಗೊಡು ಪಿರಕೊರು",
+ "TEXT_GET_SUBSTRING_INPUT_IN_TEXT": "ಪಟ್ಯೊಡು",
+ "TEXT_GET_SUBSTRING_START_FROM_START": "ಉಪ ವಾಕ್ಯೊಡ್ದು ಅಕ್ಷರೊನು ನಟೊನ್ಲ",
+ "TEXT_GET_SUBSTRING_START_FROM_END": "ಉಪ ವಾಕ್ಯೊಡ್ದು ಅಕ್ಷರೊನು ನಟೊನ್ಲ#ಅಕೇರಿಡ್ದ್",
+ "TEXT_GET_SUBSTRING_START_FIRST": "ಉಪ ವಾಕ್ಯೊಡ್ದು ಸುರುತ ಅಕ್ಷರೊನು ನಟೊನ್ಲ",
+ "TEXT_GET_SUBSTRING_END_FROM_START": "ಅಕ್ಷರೊಗು#",
+ "TEXT_GET_SUBSTRING_END_FROM_END": "ಅಕ್ಷರೊಗು#ಅಕೇರಿಡ್ದ್",
+ "TEXT_GET_SUBSTRING_END_LAST": "ಅಕೇರಿದ ಅಕ್ಷರೊಗು",
+ "TEXT_CHANGECASE_TOOLTIP": "ಪಟ್ಯೊದ ಒಂಜಿ ನಕಲ್‍ನ್ ಬೇತೆ ಸಮಯೊಡು ಪಿರಕೊರು",
+ "TEXT_CHANGECASE_OPERATOR_UPPERCASE": "ಮಲ್ಲ ಅಕ್ಷರೊಗು",
+ "TEXT_CHANGECASE_OPERATOR_LOWERCASE": "ಎಲ್ಯ ಅಕ್ಷರೊಗು",
+ "TEXT_CHANGECASE_OPERATOR_TITLECASE": "ತರೆಬರವುಗು",
+ "TEXT_TRIM_TOOLTIP": "ಒಂಜಿ ಅತ್ತಂಡ ರಡ್ಡ್ ಕೊಡಿಡ್ದ್ ದೆತ್ತ್‌ನ ಕಅಲಿ ಪಟ್ಯೊದ ಪ್ರತಿನ್ ಪಿರಕೊರು.",
+ "TEXT_TRIM_OPERATOR_BOTH": "ರಡ್ಡ್ ಬರಿತ ಜಾಗೆನ್ಲ ಕತ್ತೆರಿಪುಲೆ.",
+ "TEXT_TRIM_OPERATOR_LEFT": "ಎಡತ ಬರಿತ ಜಾಗೆನ್ ಕತ್ತೆರಿಪುಲೆ.",
+ "TEXT_TRIM_OPERATOR_RIGHT": "ಬಲತ ಬರಿತ ಜಾಗೆನ್ ಕತ್ತೆರಿಪುಲೆ.",
+ "TEXT_PRINT_TITLE": "%1 ಮುದ್ರಿತ",
+ "TEXT_PRINT_TOOLTIP": "ನಿರ್ದಿಷ್ಟ ಪಟ್ಯೊ, ಸಂಖ್ಯೆ ಅತ್ತಂಡ ಬೇತೆ ಮೌಲ್ಯೊನು ಮುದ್ರಿಸಲೆ.",
+ "TEXT_PROMPT_TYPE_TEXT": "ಪಟ್ಯೊದೊಟ್ಟುಗೆ ಸಂದೇಸೊನು ಕೇನುಂಡು.",
+ "TEXT_PROMPT_TYPE_NUMBER": "ಸಂಖ್ಯೆದೊಟ್ಟುಗೆ ಸಂದೇಸೊನು ಕೇನುಂಡು",
+ "TEXT_PROMPT_TOOLTIP_NUMBER": "ದಿಂಜ ಬಳಕೆದಾರೆರೆನ್ ಕೇನುಂಡು.",
+ "TEXT_PROMPT_TOOLTIP_TEXT": "ಕೆಲವು ಪಟ್ಯೊದ ಬಳಕೆದಾರೆರೆನ್ ಕೇನುಂಡು.",
+ "LISTS_CREATE_EMPTY_TITLE": "ಕಾಲಿ ಪಟ್ಟಿನ್ ಸ್ರಿಸ್ಟಿಸಲೆ",
+ "LISTS_CREATE_EMPTY_TOOLTIP": "ಒಂಜಿ ಪಟ್ಟಿ, ೦ದ ಉದ್ದೊ, ಒವ್ವೇ ಅಂಕಿಅಂಸೊ ಇದ್ಯಾಂತಿನ ದಾಖಲೆ ಪಿರಕೊರು.",
+ "LISTS_CREATE_WITH_TOOLTIP": "ಒವ್ವೇ ಸಂಖ್ಯೆದ ಪಟ್ಟಿಲೆ ಅಂಸೊದೊಟ್ಟುಗೆ ರಚಿಸಲೆ",
+ "LISTS_CREATE_WITH_INPUT_WITH": "ಜತೆ ಪಟ್ಟಿನ್ ರಚಿಸಲೆ",
+ "LISTS_CREATE_WITH_CONTAINER_TITLE_ADD": "ಪಟ್ಟಿ",
+ "LISTS_CREATE_WITH_CONTAINER_TOOLTIP": "ಸೇರಯರ, ದೆತ್ತ್‌ ಪಾಡೆರೆ ಅತ್ತಂಡ ಈ ಪಟ್ಯೊಲೆನ್ ತಡೆದ್ ಪತ್ತ್‌ದ್ ಇಬಾಗೊ ಮಲ್ಪುಲೆ.",
+ "LISTS_CREATE_WITH_ITEM_TOOLTIP": "ಪಟ್ಟಿಡ್ ಕೆಲವು ಅಂಸೊಲೆನ್ ಸೇರಲೆ.",
+ "LISTS_REPEAT_TOOLTIP": "ಕೊರ್‍ನ ಮೌಲ್ಯಡು ನಿರ್ದಿಷ್ಟ ಕಾಲೊಡು ಪಿರೊತ ಪಟ್ಟಿನ್ ರಚಿಸಲೆ.",
+ "LISTS_REPEAT_TITLE": "%1 ಪಿರೊರ %2 ಕಾಲೊಡು ಪಟ್ಟಿಲೆನ ಅಂಸೊನು ರಚಿಸಲೆ.",
+ "LISTS_LENGTH_TITLE": "೧% ಉದ್ದೊ",
+ "LISTS_LENGTH_TOOLTIP": "ಪಟ್ಟಿದ ಉದ್ದೊನು ಪಿರಕೊರು.",
+ "LISTS_ISEMPTY_TITLE": "%1 ಕಾಲಿ",
+ "LISTS_ISEMPTY_TOOLTIP": "ಪಟ್ಯೊ ಕಾಲಿ ಪನ್ಪುನವು ಸತ್ಯೊ ಆಂಡ ಪಿರಕೊರು.",
+ "LISTS_INLIST": "ಪಟ್ಟಿಡ್",
+ "LISTS_INDEX_OF_FIRST": "ದುಂಬು ಕರಿನ ಪಟ್ಯೊನು ನಾಡ್‍ಲೆ",
+ "LISTS_INDEX_OF_LAST": "ಅಕೆರಿಗ್ ಕರಿನ ಪಟ್ಯೊನು ನಾಡ್‍ಲೆ",
+ "LISTS_INDEX_OF_TOOLTIP": "ಸುರುತ ಪಟ್ಯೊದ ಸೂಚ್ಯಿ/ಅಕೇರಿಟ್ ಸಂಭವಿಸವುನ ಸುರುತ ಪಟ್ಟಯೊದುಲಯಿದ ರಡ್ಡನೆ ಪಟ್ಯೊನು ಪಿರಕೊರು. %1 ಪಟ್ಯೊ ತಿಕಂದಿತ್ತ್‌ಂಡ ಪಿರಕೊರು.",
+ "LISTS_GET_INDEX_GET": "ದೆತೊನು",
+ "LISTS_GET_INDEX_GET_REMOVE": "ದೆತೊನಿಯರ ಬುಕ್ಕೊ ದೆಪ್ಪೆರೆ",
+ "LISTS_GET_INDEX_REMOVE": "ದೆಪ್ಪುಲೆ",
+ "LISTS_GET_INDEX_FROM_END": "# ಅಕೇರಿಡ್ದ್",
+ "LISTS_GET_INDEX_FIRST": "ಸುರುತ",
+ "LISTS_GET_INDEX_LAST": "ಕಡೆತ",
+ "LISTS_GET_INDEX_RANDOM": "ಗೊತ್ತು ಗುರಿದಾಂತಿನ",
+ "LISTS_INDEX_FROM_START_TOOLTIP": "%1 ಸುರುತ ಅಂಸೊ",
+ "LISTS_INDEX_FROM_END_TOOLTIP": "%1 ಅಕೇರಿತ ಅಂಸೊ",
+ "LISTS_GET_INDEX_TOOLTIP_GET_FROM": "ನಿರ್ದಸ್ಟೊ ಜಾಗೆಡುಪ್ಪುನ ಅಂಸೊಲೆ ಪಟ್ಟಿನ್ ಪಿರಕೊರು",
+ "LISTS_GET_INDEX_TOOLTIP_GET_FIRST": "ಸುರುತ ಅಂಸೊಲೆನ ಪಟ್ಟಿನ್ ಪಿರಕೊರು.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_LAST": "ಅಕೇರಿದ ಅಂಸೊಲೆನ ಪಟ್ಟಿನ್ ಪಿರಕೊರು.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_RANDOM": "ಗೊತ್ತುಗುರಿದಾಂತಿನ ಅಂಸೊಲೆನ ಪಟ್ಟಿನ್ ಪಿರಕೊರು.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM": "ನಿರ್ದಿಸ್ಟೊ ಜಾಗೆಡುಪ್ಪುನ ಅಂಸೊಲೆ ಪಟ್ಟಿನ್ ದೆಪ್ಪು ಅತ್ತಂಡ ಪಿರಕೊರು",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST": "ಸುರುತ ಅಂಸೊಲೆನ ಪಟ್ಟಿನ್ ದೆಪ್ಪು ಅತ್ತಂಡ ಪಿರಕೊರು.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST": "ಅಕೇರಿದ ಅಂಸೊಲೆನ ಪಟ್ಟಿನ್ ದೆಪ್ಪು ಅತ್ತಂಡ ಪಿರಕೊರು.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM": "ಗೊತ್ತುಗುರಿದಾಂತಿನ ಅಂಸೊಲೆನ ಪಟ್ಟಿನ್ ದೆಪ್ಪು ಅತ್ತಂಡ ಪಿರಕೊರು.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM": "ನಿರ್ದಿಸ್ಟೊ ಜಾಗೆಡುಪ್ಪುನ ಅಂಸೊಲೆ ಪಟ್ಟಿನ್ ದೆಪ್ಪುಲೆ",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST": "ಸುರುತ ಅಂಸೊಲೆನ ಪಟ್ಟಿನ್ ದೆಪ್ಪು.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST": "ಅಕೇರಿದ ಅಂಸೊಲೆನ ಪಟ್ಟಿನ್ ದೆಪ್ಪು.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM": "ಗೊತ್ತುಗುರಿದಾಂತಿನ ಅಂಸೊಲೆನ ಪಟ್ಟಿನ್ ದೆಪ್ಪು.",
+ "LISTS_SET_INDEX_SET": "ಮಾಲ್ಪು",
+ "LISTS_SET_INDEX_INSERT": "ಸೇರಲ",
+ "LISTS_SET_INDEX_INPUT_TO": "ಅಂಚ",
+ "LISTS_SET_INDEX_TOOLTIP_SET_FROM": "ನಿರ್ದಿಸ್ಟೊ ಜಾಗೆಡುಪ್ಪುನ ಅಂಸೊಲೆ ಪಟ್ಟಿನ್ ಮಾಲ್ಪು",
+ "LISTS_SET_INDEX_TOOLTIP_SET_FIRST": "ಸುರುತ ಅಂಸೊಲೆನ ಪಟ್ಟಿನ್ ಮಾಲ್ಪು.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_LAST": "ಅಕೇರಿದ ಅಂಸೊಲೆನ ಪಟ್ಟಿನ್ ಮಾಲ್ಪು.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_RANDOM": "ಗೊತ್ತುಗುರಿದಾಂತಿನ ಅಂಸೊಲೆನ ಪಟ್ಟಿನ್ ಮಾಲ್ಪು.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_FROM": "ನಿರ್ದಿಸ್ಟೊ ಜಾಗೆಡುಪ್ಪುನ ಅಂಸೊಲೆ ಪಟ್ಟಿನ್ ಸೇರಲ",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST": "ಸುರುತ ಅಂಸೊಲೆ ಪಟ್ಟಿನ್ ಸೇರಲ.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_LAST": "ಪಟ್ಟಿದ ಅಕೇರಿಗ್ ಈ ಅಂಸೊಲೆನ್ ಸೇರಲ.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM": "ಪಟ್ಟಿಗ್ ಗೊತ್ತುಗುರಿದಾಂತೆ ಅಂಸೊಲೆನ್ ಸೇರಲ.",
+ "LISTS_GET_SUBLIST_START_FROM_START": "ಉಪ-ಪಟ್ಯೊನು ದೆತೊನು#",
+ "LISTS_GET_SUBLIST_START_FROM_END": "ಉಪ-ಪಟ್ಯೊನು ದೆತೊನು#ಅಕೇರಿಡ್ದ್",
+ "LISTS_GET_SUBLIST_START_FIRST": "ಉಪ-ಪಟ್ಯೊನು ಸುರುಡ್ದು ದೆತೊನು",
+ "LISTS_GET_SUBLIST_END_FROM_START": "ಡ್ದ್",
+ "LISTS_GET_SUBLIST_END_FROM_END": "ಡ್ದ್ # ಅಕೇರಿಗ್",
+ "LISTS_GET_SUBLIST_END_LAST": "ಅಕೇರಿಡ್ದ್",
+ "LISTS_GET_SUBLIST_TOOLTIP": "ಪಟ್ಯೊದ ನಿರ್ದಿಷ್ಟ ಬಾಗೊದ ಪ್ರತಿನ್ ಸ್ರಸ್ಟಿಸವುಂಡು.",
+ "LISTS_SORT_HELPURL": "https://github.com/google/blockly/wiki/Lists#sorting-a-list",
+ "LISTS_SORT_TITLE": "%1 %2 %3 ಇಂಗಡಿಪು",
+ "LISTS_SORT_TOOLTIP": "ಪಟ್ಟಿಲೆ ಪ್ರತಿನ್ ಇಂಗಡಿಪುಲೆ",
+ "LISTS_SORT_ORDER_ASCENDING": "ಮಿತ್ತ್ ಪೋಪುನೆ",
+ "LISTS_SORT_ORDER_DESCENDING": "ತಿರ್ತ್ ಪೋಪುನೆ",
+ "LISTS_SORT_TYPE_NUMERIC": "ಸಂಕೇತೊ",
+ "LISTS_SORT_TYPE_TEXT": "ಅಕ್ಷರೊಲು",
+ "LISTS_SORT_TYPE_IGNORECASE": "ಅಕ್ಷರೊಲು, ಸಂದರ್ಭೊಡು ನಿರ್ಲಕ್ಷಿಸಲೆ",
+ "LISTS_SPLIT_LIST_FROM_TEXT": "ಪಟ್ಯೊಲೆ ಪಟ್ಟಿನ್ ತಯಾರ್ ಮಲ್ಪುಲೆ",
+ "LISTS_SPLIT_TEXT_FROM_LIST": "ಪಟ್ಟಿದ ಪಟ್ಯೊನು ತಯಾರ್ ಮಲ್ಪುಲೆ",
+ "LISTS_SPLIT_WITH_DELIMITER": "ಮಿತಿಸೂಚಕೊದ ಒಟ್ಟುಗು",
+ "LISTS_SPLIT_TOOLTIP_SPLIT": "ಗ್ರಂತೊಲೆನ ಪಟ್ಟಿಡ್ದ್ ಪಟ್ಯೊಲೆನ್ ಬೇತೆ ಮಾಲ್ತ್‌ಂಡ,ಪ್ರತಿ ಮಿತಿಸೂಚಕೊಡು ಬೇತೆ ಆಪುಂಡು.",
+ "LISTS_SPLIT_TOOLTIP_JOIN": "ಒಂಜಿ ಗ್ರಂತೊಡ್ದು ಒಂಜಿ ಪಟ್ಯೊದ ಪಟ್ಟಿಗ್ ಸೇರಾದ್, ಮಿತಿಸೂಚಕೊದ ಮೂಲಕೊ ಬೇತೆ ಮಲ್ಪುಲೆ.",
+ "VARIABLES_GET_TOOLTIP": "ಈ ವ್ಯತ್ಯಯೊದ ಮೌಲ್ಯೊನು ಪಿರಕೊರು.",
+ "VARIABLES_GET_CREATE_SET": "'%1' ರಚನೆ ಮಲ್ಪುಲೆ",
+ "VARIABLES_SET": "%1 ಡ್ದು %2 ಮಲ್ಪುಲೆ",
+ "VARIABLES_SET_TOOLTIP": "ಉಲಯಿ ಬರ್ಪುನವು ಸಮಪಾಲ್ ಇಪ್ಪುನಂಚ ವ್ಯತ್ಯಾಸೊ ಮಾಲ್ಪು",
+ "VARIABLES_SET_CREATE_GET": "'%1' ರಚನೆ ಮಲ್ಪುಲೆ",
+ "PROCEDURES_DEFNORETURN_TITLE": "ಇಂದೆಕ್",
+ "PROCEDURES_DEFNORETURN_PROCEDURE": "ಎಂಚಿನಾಂಡಲ ಮಲ್ಪು",
+ "PROCEDURES_BEFORE_PARAMS": "ಜೊತೆ:",
+ "PROCEDURES_CALL_BEFORE_PARAMS": "ಜೊತೆ:",
+ "PROCEDURES_DEFNORETURN_TOOLTIP": "ಉತ್ಪಾದನೆ ದಾಂತಿನ ಕಾರ್ಯೊನು ಸ್ರಿಸ್ಟಿಸಲೆ.",
+ "PROCEDURES_DEFNORETURN_COMMENT": "ಈ ಕಾರ್ಯೊನು ಇವರಿಸಲೆ...",
+ "PROCEDURES_DEFRETURN_RETURN": "ಪಿರಪೋ",
+ "PROCEDURES_DEFRETURN_TOOLTIP": "ಉತ್ಪಾದನೆ ದಾಂತಿನ ಕಾರ್ಯೊನು ಸ್ರಿಸ್ಟಿಸಲೆ.",
+ "PROCEDURES_ALLOW_STATEMENTS": "ಹೇಳಿಕೆಗ್ ಅವಕಾಸೊ",
+ "PROCEDURES_DEF_DUPLICATE_WARNING": "ಎಚ್ಚರಿಕೆ: ಈ ಕಾರ್ಯೊ ನಕಲಿ ಮಾನದಂಡೊನು ಹೊಂದ್‍ದ್ಂಡ್.",
+ "PROCEDURES_CALLNORETURN_HELPURL": "https://en.wikipedia.org/wiki/ಪ್ರೊಸಿಜರ್_%28ಕಂಪ್ಯೂಟರ್_ಸೈನ್ಸ್%29",
+ "PROCEDURES_CALLNORETURN_TOOLTIP": "'%1' ಬಳಕೆದಾರೆರೆ ಕಾರ್ಯೊನು ನಡಪಾಲೆ.",
+ "PROCEDURES_CALLRETURN_HELPURL": "https://en.wikipedia.org/wiki/ಪ್ರೊಸಿಜರ್_%28ಕಂಪ್ಯೂಟರ್_ಸೈನ್ಸ್%29",
+ "PROCEDURES_CALLRETURN_TOOLTIP": " '%1' ಬಳಕೆದಾರೆರೆ ಕಾರ್ಯೊನು ನಡಪಾಲೆ ಬುಕ್ಕೊ ಅಯಿತ ಉತ್ಪಾದನೆನ್ ಉಪಯೋಗಿಸಲೆ.",
+ "PROCEDURES_MUTATORCONTAINER_TITLE": "ಉಲಪರಿಪು",
+ "PROCEDURES_MUTATORCONTAINER_TOOLTIP": "ಸೇರಯರ, ದೆತ್ತ್‌ ಪಾಡೆರೆ ಅತ್ತಂಡ ಪಿರಕೋರಿಕೆದ ಉಲಪರಿಪುದ ಕಾರ್ಯೊನು ಮಲ್ಪುಲೆ.",
+ "PROCEDURES_MUTATORARG_TITLE": "ಉಲಪರಿಪುದ ಪುದರ್:",
+ "PROCEDURES_MUTATORARG_TOOLTIP": "ಕಾರ್ಯೊದ ಉಲಪರಿಪುನು ಸೇರಲೆ.",
+ "PROCEDURES_HIGHLIGHT_DEF": "ದೇರ್ತ್ ತೋಜುನ ಕಾರ್ಯೊದ ವ್ಯಾಕ್ಯಾನೊ",
+ "PROCEDURES_CREATE_DO": " '%1'ನ್ ರಚಿಸಲೆ",
+ "PROCEDURES_IFRETURN_TOOLTIP": "ಮೌಲ್ಯೊ ಸತ್ಯೊ ಆಯಿನೆಡ್ದ್ ಬುಕ್ಕೊನೆ ರಡ್ಡನೆ ಮೌಲ್ಯೊನು ಪಿರಕೊರು.",
+ "PROCEDURES_IFRETURN_WARNING": "ಎಚ್ಚರಿಕೆ:ವ್ಯಾಕ್ಯಾನೊದ ಕಾರ್ಯೊನು ತಡೆ ಮಲ್ಪೆರೆ ಮಾತ್ರೊ ಇಂದೆತ ಉಪಯೊಗ."
+}
diff --git a/blockly/msg/json/th.json b/blockly/msg/json/th.json
new file mode 100644
index 0000000..4955576
--- /dev/null
+++ b/blockly/msg/json/th.json
@@ -0,0 +1,311 @@
+{
+ "@metadata": {
+ "authors": [
+ "Azpirin",
+ "Octahedron80",
+ "Horus",
+ "Roysheng"
+ ]
+ },
+ "VARIABLES_DEFAULT_NAME": "รายการ",
+ "TODAY": "วันนี้",
+ "DUPLICATE_BLOCK": "ทำสำเนา",
+ "ADD_COMMENT": "ใส่คำอธิบาย",
+ "REMOVE_COMMENT": "เอาคำอธิบายออก",
+ "EXTERNAL_INPUTS": "อินพุตภายนอก",
+ "INLINE_INPUTS": "อินพุตในบรรทัด",
+ "DELETE_BLOCK": "ลบบล็อก",
+ "DELETE_X_BLOCKS": "ลบ %1 บล็อก",
+ "DELETE_ALL_BLOCKS": "ลบ %1 บล็อกทั้งหมด?",
+ "CLEAN_UP": "จัดเรียงบล็อกให้เป็นแถว",
+ "COLLAPSE_BLOCK": "ย่อบล็อก",
+ "COLLAPSE_ALL": "ย่อบล็อก",
+ "EXPAND_BLOCK": "ขยายบล็อก",
+ "EXPAND_ALL": "ขยายบล็อก",
+ "DISABLE_BLOCK": "ปิดใช้งานบล็อก",
+ "ENABLE_BLOCK": "เปิดใช้งานบล็อก",
+ "HELP": "ช่วยเหลือ",
+ "UNDO": "ย้อนกลับ",
+ "REDO": "ทำซ้ำ",
+ "CHANGE_VALUE_TITLE": "เปลี่ยนค่า:",
+ "RENAME_VARIABLE": "เปลี่ยนชื่อตัวแปร...",
+ "RENAME_VARIABLE_TITLE": "เปลี่ยนชื่อตัวแปร '%1' ทั้งหมดเป็น:",
+ "NEW_VARIABLE": "สร้างตัวแปร...",
+ "NEW_VARIABLE_TITLE": "ชื่อตัวแปรใหม่:",
+ "COLOUR_PICKER_HELPURL": "https://th.wikipedia.org/wiki/สี",
+ "COLOUR_PICKER_TOOLTIP": "เลือกสีจากจานสี",
+ "COLOUR_RANDOM_TITLE": "สุ่มสี",
+ "COLOUR_RANDOM_TOOLTIP": "เลือกสีแบบสุ่ม",
+ "COLOUR_RGB_TITLE": "สีที่ประกอบด้วย",
+ "COLOUR_RGB_RED": "ค่าสีแดง",
+ "COLOUR_RGB_GREEN": "ค่าสีเขียว",
+ "COLOUR_RGB_BLUE": "ค่าสีน้ำเงิน",
+ "COLOUR_RGB_TOOLTIP": "สร้างสีด้วยการกำหนดค่าสีแดง เขียว และน้ำเงิน ค่าทั้งหมดต้องอยู่ระหว่าง 0 ถึง 100",
+ "COLOUR_BLEND_TITLE": "ผสม",
+ "COLOUR_BLEND_COLOUR1": "สีที่ 1",
+ "COLOUR_BLEND_COLOUR2": "สีที่ 2",
+ "COLOUR_BLEND_RATIO": "อัตราส่วน",
+ "COLOUR_BLEND_TOOLTIP": "ผสมสองสีเข้าด้วยกันด้วยอัตราส่วน (0.0 - 1.0)",
+ "CONTROLS_REPEAT_HELPURL": "https://en.wikipedia.org/wiki/For_loop",
+ "CONTROLS_REPEAT_TITLE": "ทำซ้ำ %1 ครั้ง",
+ "CONTROLS_REPEAT_INPUT_DO": "ทำ:",
+ "CONTROLS_REPEAT_TOOLTIP": "ทำซ้ำบางคำสั่งหลายครั้ง",
+ "CONTROLS_WHILEUNTIL_OPERATOR_WHILE": "ทำซ้ำขณะที่",
+ "CONTROLS_WHILEUNTIL_OPERATOR_UNTIL": "ทำซ้ำจนกระทั่ง",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_WHILE": "ขณะที่ค่าเป็นจริง ก็จะทำบางคำสั่ง",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL": "ขณะที่ค่าเป็นเท็จ ก็จะทำบางคำสั่ง",
+ "CONTROLS_FOR_TOOLTIP": "ตัวแปร '%1' จะเริ่มจากจำนวนเริ่มต้น ไปจนถึงจำนวนสุดท้าย ตามระยะที่กำหนด และ ทำบล็อกที่กำหนดไว้",
+ "CONTROLS_FOR_TITLE": "นับด้วย %1 จาก %2 จนถึง %3 เปลี่ยนค่าทีละ %4",
+ "CONTROLS_FOREACH_TITLE": "จากทุกรายการ %1 ในรายชื่อ %2",
+ "CONTROLS_FOREACH_TOOLTIP": "จากทุกรายการในรายชื่อ ตั้งค่าตัวแปร \"%1\" เป็นรายการ และทำตามคำสั่งที่กำหนดไว้",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK": "ออกจากการวนซ้ำ",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE": "เริ่มการวนซ้ำรอบต่อไป",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK": "ออกจากการวนซ้ำที่อยู่",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE": "ข้ามคำสั่งที่เหลืออยู่ และเริ่มต้นวนซ้ำรอบต่อไป",
+ "CONTROLS_FLOW_STATEMENTS_WARNING": "คำเตือน: บล็อกนี้ใช้งานได้ภายในการวนซ้ำเท่านั้น",
+ "CONTROLS_IF_TOOLTIP_1": "ว่าเงื่อนไขเป็นจริง ก็จะ \"ทำ\" ตามที่กำหนด",
+ "CONTROLS_IF_TOOLTIP_2": "ถ้าเงื่อนไขเป็นจริง ก็จะ \"ทำ\" ตามที่กำหนด แต่ถ้าเงื่อนไขเป็นเท็จก็จะทำ \"นอกเหนือจากนี้\"",
+ "CONTROLS_IF_TOOLTIP_3": "ถ้าเงื่อนไขแรกเป็นจริง ก็จะทำตามคำสั่งในบล็อกแรก แต่ถ้าไม่ก็จะไปตรวจเงื่อนไขที่สอง ถ้าเงื่อนไขที่สองเป็นจริง ก็จะทำตามเงื่อนไขในบล็อกที่สองนี้",
+ "CONTROLS_IF_TOOLTIP_4": "ถ้าเงื่อนไขแรกเป็นจริง ก็จะทำคำสั่งในบล็อกแรก จากนั้นจะข้ามคำสั่งในบล็อกที่เหลือ แต่ถ้าเงื่อนไขแรกเป็นเท็จ ก็จะทำการตรวจเงื่อนไขที่สอง ถ้าเงื่อนไขที่สองเป็นจริง ก็จะทำตามคำสั่งในบล็อกที่สอง จากนั้นจะข้ามคำสั่งในบล็อกที่เหลือ แต่ถ้าทั้งเงื่อนไขแรกและเงื่อนไขที่สองเป็นเท็จทั้งหมด ก็จะมาทำบล็อกที่สาม",
+ "CONTROLS_IF_MSG_IF": "ถ้า",
+ "CONTROLS_IF_MSG_ELSEIF": "นอกเหนือจากนี้ ถ้า",
+ "CONTROLS_IF_MSG_ELSE": "นอกเหนือจากนี้",
+ "CONTROLS_IF_IF_TOOLTIP": "เพิ่ม ลบ หรือจัดเรียงบล็อก \"ถ้า\" นี้ใหม่",
+ "CONTROLS_IF_ELSEIF_TOOLTIP": "กำหนดเงื่อนไขของบล็อก \"ถ้า\"",
+ "CONTROLS_IF_ELSE_TOOLTIP": "เพิ่มสิ่งสุดท้าย ที่จะตรวจจับความเป็นไปได้ทั้งหมดของบล็อก \"ถ้า\"",
+ "LOGIC_COMPARE_HELPURL": "https://th.wikipedia.org/wiki/อสมการ",
+ "LOGIC_COMPARE_TOOLTIP_EQ": "คืนค่าเป็น \"จริง\" ถ้าค่าที่ใส่ทั้งสองค่านั้นเท่ากัน",
+ "LOGIC_COMPARE_TOOLTIP_NEQ": "คืนค่าเป็น \"จริง\" ถ้าค่าที่ใส่ทั้งสองค่านั้นไม่เท่ากัน",
+ "LOGIC_COMPARE_TOOLTIP_LT": "คืนค่าเป็น \"จริง\" ถ้าค่าแรกน้อยกว่าค่าที่สอง",
+ "LOGIC_COMPARE_TOOLTIP_LTE": "คืนค่าเป็น \"จริง\" ถ้าค่าแรกน้อยกว่าหรือเท่ากับค่าที่สอง",
+ "LOGIC_COMPARE_TOOLTIP_GT": "คืนค่าเป็น \"จริง\" ถ้าค่าแรกมากกว่าค่าที่สอง",
+ "LOGIC_COMPARE_TOOLTIP_GTE": "คืนค่าเป็น \"จริง\" ถ้าค่าแรกมากกว่าหรือเท่ากับค่าที่สอง",
+ "LOGIC_OPERATION_TOOLTIP_AND": "คืนค่าเป็น \"จริง\" ถ้าค่าทั้งสองค่าเป็นจริง",
+ "LOGIC_OPERATION_AND": "และ",
+ "LOGIC_OPERATION_TOOLTIP_OR": "คืนค่าเป็น \"จริง\" ถ้ามีอย่างน้อยหนึ่งค่าที่เป็นจริง",
+ "LOGIC_OPERATION_OR": "หรือ",
+ "LOGIC_NEGATE_TITLE": "ไม่ %1",
+ "LOGIC_NEGATE_TOOLTIP": "คืนค่าเป็น \"จริง\" ถ้าค่าที่ใส่เป็นเท็จ คืนค่าเป็น \"เท็จ\" ถ้าค่าที่ใส่เป็นจริง",
+ "LOGIC_BOOLEAN_TRUE": "จริง",
+ "LOGIC_BOOLEAN_FALSE": "เท็จ",
+ "LOGIC_BOOLEAN_TOOLTIP": "คืนค่าเป็นจริงหรือเท็จ",
+ "LOGIC_NULL": "ไม่กำหนด",
+ "LOGIC_NULL_TOOLTIP": "คืนค่า \"ไม่กำหนด\"",
+ "LOGIC_TERNARY_CONDITION": "ทดสอบ",
+ "LOGIC_TERNARY_IF_TRUE": "ถ้า เป็นจริง",
+ "LOGIC_TERNARY_IF_FALSE": "ถ้า เป็นเท็จ",
+ "LOGIC_TERNARY_TOOLTIP": "ตรวจสอบเงื่อนไขใน \"ทดสอบ\" ถ้าเงื่อนไขเป็นจริง จะคืนค่า \"ถ้า เป็นจริง\" ถ้าเงื่อนไขเป็นเท็จ จะคืนค่า \"ถ้า เป็นเท็จ\"",
+ "MATH_NUMBER_HELPURL": "https://th.wikipedia.org/wiki/จำนวน",
+ "MATH_NUMBER_TOOLTIP": "จำนวน",
+ "MATH_ARITHMETIC_HELPURL": "https://th.wikipedia.org/wiki/เลขคณิต",
+ "MATH_ARITHMETIC_TOOLTIP_ADD": "คืนค่าผลรวมของตัวเลขทั้งสองจำนวน",
+ "MATH_ARITHMETIC_TOOLTIP_MINUS": "คืนค่าผลต่างของตัวเลขทั้งสองจำนวน",
+ "MATH_ARITHMETIC_TOOLTIP_MULTIPLY": "คืนค่าผลคูณของตัวเลขทั้งสองจำนวน",
+ "MATH_ARITHMETIC_TOOLTIP_DIVIDE": "คืนค่าผลหารของตัวเลขทั้งสองจำนวน",
+ "MATH_ARITHMETIC_TOOLTIP_POWER": "คืนค่าผลการยกกำลัง โดยตัวเลขแรกเป็นฐาน และตัวเลขที่สองเป็นเลขชี้กำลัง",
+ "MATH_SINGLE_HELPURL": "https://en.wikipedia.org/wiki/Square_root",
+ "MATH_SINGLE_OP_ROOT": "รากที่สอง",
+ "MATH_SINGLE_TOOLTIP_ROOT": "คืนค่ารากที่สองของตัวเลข",
+ "MATH_SINGLE_OP_ABSOLUTE": "ค่าสัมบูรณ์",
+ "MATH_SINGLE_TOOLTIP_ABS": "คืนค่าค่าสัมบูรณ์ของตัวเลข",
+ "MATH_SINGLE_TOOLTIP_NEG": "คืนค่าติดลบของตัวเลข",
+ "MATH_SINGLE_TOOLTIP_LN": "คืนค่าลอการิทึมธรรมชาติของตัวเลข",
+ "MATH_SINGLE_TOOLTIP_LOG10": "คืนค่าลอการิทึมฐานสิบของตัวเลข",
+ "MATH_SINGLE_TOOLTIP_EXP": "คืนค่า e ยกกำลังด้วยตัวเลข",
+ "MATH_SINGLE_TOOLTIP_POW10": "คืนค่า 10 ยกกำลังด้วยตัวเลข",
+ "MATH_TRIG_HELPURL": "https://th.wikipedia.org/wiki/ฟังก์ชันตรีโกณมิติ",
+ "MATH_TRIG_TOOLTIP_SIN": "คืนค่า sine ขององศา (ไม่ใช่เรเดียน)",
+ "MATH_TRIG_TOOLTIP_COS": "คืนค่า cosine ขององศา (ไม่ใช่เรเดียน)",
+ "MATH_TRIG_TOOLTIP_TAN": "คืนค่า tangent ขององศา (ไม่ใช่เรเดียน)",
+ "MATH_TRIG_TOOLTIP_ASIN": "คืนค่า arcsine ของตัวเลข",
+ "MATH_TRIG_TOOLTIP_ACOS": "คืนค่า arccosine ของตัวเลข",
+ "MATH_TRIG_TOOLTIP_ATAN": "คืนค่า arctangent ของตัวเลข",
+ "MATH_CONSTANT_HELPURL": "https://th.wikipedia.org/wiki/ค่าคงตัวทางคณิตศาสตร์",
+ "MATH_CONSTANT_TOOLTIP": "คืนค่าคงตัวทางคณิตศาสตร์ที่พบบ่อยๆ เช่น π (3.141…), e (2.718…), φ (1.618…), รากที่สอง (1.414…), รากที่ ½ (0.707…), ∞ (อนันต์)",
+ "MATH_IS_EVEN": "เป็นจำนวนคู่",
+ "MATH_IS_ODD": "เป็นจำนวนคี่",
+ "MATH_IS_PRIME": "เป็นจำนวนเฉพาะ",
+ "MATH_IS_WHOLE": "เป็นเลขจำนวนเต็ม",
+ "MATH_IS_POSITIVE": "เป็นเลขบวก",
+ "MATH_IS_NEGATIVE": "เป็นเลขติดลบ",
+ "MATH_IS_DIVISIBLE_BY": "หารลงตัว",
+ "MATH_IS_TOOLTIP": "ตรวจว่าตัวเลขเป็นจำนวนคู่ จำนวนคี่ จำนวนเฉพาะ จำนวนเต็ม เลขบวก เลขติดลบ หรือหารด้วยเลขที่กำหนดลงตัวหรือไม่ คืนค่าเป็นจริงหรือเท็จ",
+ "MATH_CHANGE_HELPURL": "https://en.wikipedia.org/wiki/Programming_idiom#Incrementing_a_counter",
+ "MATH_CHANGE_TITLE": "เปลี่ยนค่า %1 เป็น %2",
+ "MATH_CHANGE_TOOLTIP": "เพิ่มค่าของตัวแปร \"%1\"",
+ "MATH_ROUND_HELPURL": "https://th.wikipedia.org/wiki/การปัดเศษ",
+ "MATH_ROUND_TOOLTIP": "ปัดเศษของตัวเลขขึ้นหรือลง",
+ "MATH_ROUND_OPERATOR_ROUND": "ปัดเศษ",
+ "MATH_ROUND_OPERATOR_ROUNDUP": "ปัดเศษขึ้น",
+ "MATH_ROUND_OPERATOR_ROUNDDOWN": "ปัดเศษลง",
+ "MATH_ONLIST_OPERATOR_SUM": "ผลรวมของรายการ",
+ "MATH_ONLIST_TOOLTIP_SUM": "คืนค่าผลรวมของตัวเลขทั้งหมดในรายการ",
+ "MATH_ONLIST_OPERATOR_MIN": "น้อยที่สุดในรายการ",
+ "MATH_ONLIST_TOOLTIP_MIN": "คืนค่าตัวเลขที่น้อยที่สุดในรายการ",
+ "MATH_ONLIST_OPERATOR_MAX": "มากที่สุดในรายการ",
+ "MATH_ONLIST_TOOLTIP_MAX": "คืนค่าตัวเลขที่มากที่สุดในรายการ",
+ "MATH_ONLIST_OPERATOR_AVERAGE": "ค่าเฉลี่ยของรายการ",
+ "MATH_ONLIST_TOOLTIP_AVERAGE": "คืนค่าเฉลี่ยของรายการ",
+ "MATH_ONLIST_OPERATOR_MEDIAN": "ค่ามัธยฐานของรายการ",
+ "MATH_ONLIST_TOOLTIP_MEDIAN": "คืนค่ามัธยฐานของรายการ",
+ "MATH_ONLIST_OPERATOR_MODE": "ฐานนิยมของรายการ",
+ "MATH_ONLIST_TOOLTIP_MODE": "คืนค่าฐานนิยมของรายการ",
+ "MATH_ONLIST_OPERATOR_STD_DEV": "ส่วนเบี่ยงเบนมาตรฐานของรายการ",
+ "MATH_ONLIST_TOOLTIP_STD_DEV": "คืนค่าส่วนเบี่ยงเบนมาตรฐานของรายการ",
+ "MATH_ONLIST_OPERATOR_RANDOM": "สุ่มรายการ",
+ "MATH_ONLIST_TOOLTIP_RANDOM": "สุ่มคืนค่าสิ่งที่อยู่ในรายการ",
+ "MATH_MODULO_HELPURL": "https://en.wikipedia.org/wiki/Modulo_operation",
+ "MATH_MODULO_TITLE": "เศษของ %1 ÷ %2",
+ "MATH_MODULO_TOOLTIP": "คืนค่าเศษที่ได้จากการหารของตัวเลขทั้งสองจำนวน",
+ "MATH_CONSTRAIN_TITLE": "จำกัดค่า %1 ต่ำสุด %2 สูงสุด %3",
+ "MATH_CONSTRAIN_TOOLTIP": "จำกัดค่าของตัวเลขให้อยู่ในช่วงที่กำหนด",
+ "MATH_RANDOM_INT_HELPURL": "https://en.wikipedia.org/wiki/Random_number_generation",
+ "MATH_RANDOM_INT_TITLE": "สุ่มเลขจำนวนเต็มตั้งแต่ %1 จนถึง %2",
+ "MATH_RANDOM_INT_TOOLTIP": "สุ่มเลขจำนวนเต็มจากช่วงที่กำหนด",
+ "MATH_RANDOM_FLOAT_HELPURL": "https://en.wikipedia.org/wiki/Random_number_generation",
+ "MATH_RANDOM_FLOAT_TITLE_RANDOM": "สุ่มเลขเศษส่วน",
+ "MATH_RANDOM_FLOAT_TOOLTIP": "สุ่มเลขเศษส่วน ตั้งแต่ 0.0 แต่ไม่เกิน 1.0",
+ "TEXT_TEXT_HELPURL": "https://th.wikipedia.org/wiki/สายอักขระ",
+ "TEXT_TEXT_TOOLTIP": "ตัวหนังสือ คำ หรือข้อความ",
+ "TEXT_JOIN_TITLE_CREATEWITH": "สร้างข้อความด้วย",
+ "TEXT_JOIN_TOOLTIP": "สร้างข้อความด้วยการรวมจำนวนของรายการเข้าด้วยกัน",
+ "TEXT_CREATE_JOIN_TITLE_JOIN": "รวม",
+ "TEXT_CREATE_JOIN_TOOLTIP": "เพิ่ม ลบ หรือจัดเรียงบล็อกข้อความนี้ใหม่",
+ "TEXT_CREATE_JOIN_ITEM_TOOLTIP": "เพิ่มรายการเข้าไปในข้อความ",
+ "TEXT_APPEND_TO": "นำเอา",
+ "TEXT_APPEND_APPENDTEXT": "ต่อด้วยข้อความ",
+ "TEXT_APPEND_TOOLTIP": "ต่อข้อความให้ตัวแปร \"%1\"",
+ "TEXT_LENGTH_TITLE": "ความยาวของ %1",
+ "TEXT_LENGTH_TOOLTIP": "คืนค่าความยาวของข้อความ (รวมช่องว่าง)",
+ "TEXT_ISEMPTY_TITLE": "%1 ว่าง",
+ "TEXT_ISEMPTY_TOOLTIP": "คืนค่าจริง ถ้าข้อความยังว่าง",
+ "TEXT_INDEXOF_TOOLTIP": "คืนค่าตำแหน่งที่พบข้อความแรกอยู่ในข้อความที่สอง คืนค่า %1 ถ้าหาไม่พบ",
+ "TEXT_INDEXOF_INPUT_INTEXT": "ในข้อความ",
+ "TEXT_INDEXOF_OPERATOR_FIRST": "หาข้อความแรกที่พบ",
+ "TEXT_INDEXOF_OPERATOR_LAST": "หาข้อความสุดท้ายที่พบ",
+ "TEXT_CHARAT_INPUT_INTEXT": "ในข้อความ",
+ "TEXT_CHARAT_FROM_START": "ดึง ตัวอักษรตัวที่",
+ "TEXT_CHARAT_FROM_END": "ดึง ตัวอักษรตัวที่ # จากท้าย",
+ "TEXT_CHARAT_FIRST": "ดึง ตัวอักษรตัวแรก",
+ "TEXT_CHARAT_LAST": "ดึง ตัวอักษรตัวสุดท้าย",
+ "TEXT_CHARAT_RANDOM": "ถึงตัวอักษรแบบสุ่ม",
+ "TEXT_CHARAT_TOOLTIP": "คืนค่าตัวอักษรจากตำแหน่งที่ระบุ",
+ "TEXT_GET_SUBSTRING_TOOLTIP": "คืนค่าบางส่วนของข้อความ",
+ "TEXT_GET_SUBSTRING_INPUT_IN_TEXT": "ในข้อความ",
+ "TEXT_GET_SUBSTRING_START_FROM_START": "แยกข้อความย่อยตั้งแต่ ตัวอักษรที่",
+ "TEXT_GET_SUBSTRING_START_FROM_END": "แยกข้อความย่อยตั้งแต่ ตัวอักษรที่ # จากท้าย",
+ "TEXT_GET_SUBSTRING_START_FIRST": "แยกข้อความย่อยตั้งแต่ ตัวอักษรแรก",
+ "TEXT_GET_SUBSTRING_END_FROM_START": "จนถึง ตัวอักษรที่",
+ "TEXT_GET_SUBSTRING_END_FROM_END": "จนถึง ตัวอักษรที่ # จากท้าย",
+ "TEXT_GET_SUBSTRING_END_LAST": "จนถึง ตัวอักษรสุดท้าย",
+ "TEXT_CHANGECASE_TOOLTIP": "คืนค่าสำเนาของข้อความในกรณีต่างๆ",
+ "TEXT_CHANGECASE_OPERATOR_UPPERCASE": "เปลี่ยนเป็น ตัวพิมพ์ใหญ่",
+ "TEXT_CHANGECASE_OPERATOR_LOWERCASE": "เปลี่ยนเป็น ตัวพิมพ์เล็ก",
+ "TEXT_CHANGECASE_OPERATOR_TITLECASE": "เปลี่ยนเป็น ตัวอักษรแรกเป็นตัวพิมพ์ใหญ่",
+ "TEXT_TRIM_TOOLTIP": "คืนค่าสำเนาของข้อความที่ลบเอาช่องว่างหน้าและหลังข้อความออกแล้ว",
+ "TEXT_TRIM_OPERATOR_BOTH": "ลบช่องว่างทั้งสองข้างของ",
+ "TEXT_TRIM_OPERATOR_LEFT": "ลบช่องว่างด้านหน้าของ",
+ "TEXT_TRIM_OPERATOR_RIGHT": "ลบช่องว่างข้างท้ายของ",
+ "TEXT_PRINT_TITLE": "พิมพ์ %1",
+ "TEXT_PRINT_TOOLTIP": "พิมพ์ข้อความ ตัวเลข หรือค่าอื่นๆ",
+ "TEXT_PROMPT_TYPE_TEXT": "แสดงหน้าต่างข้อความ",
+ "TEXT_PROMPT_TYPE_NUMBER": "แสดงหน้าต่างตัวเลข",
+ "TEXT_PROMPT_TOOLTIP_NUMBER": "แสดงหน้าต่างให้ผู้ใช้ใส่ตัวเลข",
+ "TEXT_PROMPT_TOOLTIP_TEXT": "แสดงหน้าต่างให้ผู้ใช้ใส่ข้อความ",
+ "LISTS_CREATE_EMPTY_TITLE": "สร้างรายการเปล่า",
+ "LISTS_CREATE_EMPTY_TOOLTIP": "สร้างรายการเปล่า (ความยาวเป็น 0) ยังไม่มีข้อมูลใดๆ อยู่",
+ "LISTS_CREATE_WITH_TOOLTIP": "สร้างรายการพร้อมด้วยไอเท็ม",
+ "LISTS_CREATE_WITH_INPUT_WITH": "สร้างข้อความด้วย",
+ "LISTS_CREATE_WITH_CONTAINER_TITLE_ADD": "รายการ",
+ "LISTS_CREATE_WITH_CONTAINER_TOOLTIP": "เพิ่ม ลบ หรือจัดเรียงบล็อกรายการนี้ใหม่",
+ "LISTS_CREATE_WITH_ITEM_TOOLTIP": "เพิ่มไอเท็มเข้าไปในรายการ",
+ "LISTS_REPEAT_TOOLTIP": "สร้างรายการที่ประกอบด้วยค่าตามที่ระบุในจำนวนตามที่ต้องการ",
+ "LISTS_REPEAT_TITLE": "สร้างรายการที่มีไอเท็ม %1 จำนวน %2",
+ "LISTS_LENGTH_TITLE": "ความยาวของ %1",
+ "LISTS_LENGTH_TOOLTIP": "ส่งคืนค่าความยาวของรายการ",
+ "LISTS_ISEMPTY_TITLE": "%1 ว่างเปล่า",
+ "LISTS_ISEMPTY_TOOLTIP": "คืนค่าเป็นจริง ถ้ารายการยังว่างเปล่า",
+ "LISTS_INLIST": "ในรายการ",
+ "LISTS_INDEX_OF_FIRST": "หาอันแรกที่พบ",
+ "LISTS_INDEX_OF_LAST": "หาอันสุดท้ายที่พบ",
+ "LISTS_INDEX_OF_TOOLTIP": "คืนค่าตำแหน่งของไอเท็มอันแรก/สุดท้ายที่พบในรายการ คืนค่า %1 ถ้าหาไม่พบ",
+ "LISTS_GET_INDEX_GET": "เรียกดู",
+ "LISTS_GET_INDEX_GET_REMOVE": "เรียกดูและเอาออก",
+ "LISTS_GET_INDEX_REMOVE": "เอาออก",
+ "LISTS_GET_INDEX_FROM_END": "# จากท้าย",
+ "LISTS_GET_INDEX_FIRST": "แรกสุด",
+ "LISTS_GET_INDEX_LAST": "ท้ายสุด",
+ "LISTS_GET_INDEX_RANDOM": "สุ่ม",
+ "LISTS_INDEX_FROM_START_TOOLTIP": "%1 คือไอเท็มอันแรกสุด",
+ "LISTS_INDEX_FROM_END_TOOLTIP": "%1 คือไอเท็มอันท้ายสุด",
+ "LISTS_GET_INDEX_TOOLTIP_GET_FROM": "คืนค่าเป็นไอเท็มตามตำแหน่งที่ระบุ",
+ "LISTS_GET_INDEX_TOOLTIP_GET_FIRST": "คืนค่าไอเท็มอันแรกในรายการ",
+ "LISTS_GET_INDEX_TOOLTIP_GET_LAST": "คืนค่าไอเท็มอันสุดท้ายในรายการ",
+ "LISTS_GET_INDEX_TOOLTIP_GET_RANDOM": "คืนค่าไอเท็มแบบสุ่มจากรายการ",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM": "เอาออก และคืนค่าไอเท็มในตำแหน่งที่ระบุจากรายการ",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST": "เอาออก และคืนค่าไอเท็มอันแรกในรายการ",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST": "เอาออก และคืนค่าไอเท็มอันสุดท้ายในรายการ",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM": "เอาออก และคืนค่าไอเท็มแบบสุ่มจากรายการ",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM": "คืนค่าเป็นไอเท็มตามตำแหน่งที่ระบุ",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST": "เอาไอเท็มแรกสุดในรายการออก",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST": "เอาไอเท็มอันท้ายสุดในรายการออก",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM": "เอาไอเท็มแบบสุ่มจากรายการออก",
+ "LISTS_SET_INDEX_SET": "กำหนด",
+ "LISTS_SET_INDEX_INSERT": "แทรกที่",
+ "LISTS_SET_INDEX_INPUT_TO": "เป็น",
+ "LISTS_SET_INDEX_TOOLTIP_SET_FROM": "กำหนดไอเท็มในตำแหน่งที่ระบุในรายการ",
+ "LISTS_SET_INDEX_TOOLTIP_SET_FIRST": "กำหนดไอเท็มอันแรกในรายการ",
+ "LISTS_SET_INDEX_TOOLTIP_SET_LAST": "กำหนดไอเท็มอันสุดท้ายในรายการ",
+ "LISTS_SET_INDEX_TOOLTIP_SET_RANDOM": "กำหนดไอเท็มแบบสุ่มในรายการ",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_FROM": "แทรกไอเท็มเข้าไปในตำแหน่งที่กำหนด",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST": "แทรกไอเท็มเข้าไปเป็นอันแรกสุดของรายการ",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_LAST": "เพิ่มไอเท็มเข้าไปท้ายสุดของรายการ",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM": "เพิ่มไอเท็มเข้าไปในรายการแบบสุ่ม",
+ "LISTS_GET_SUBLIST_START_FROM_START": "ดึงรายการย่อยจาก #",
+ "LISTS_GET_SUBLIST_START_FROM_END": "ดึงรายการย่อยจาก # จากท้ายสุด",
+ "LISTS_GET_SUBLIST_START_FIRST": "ดึงรายการย่อยทั้งแต่แรกสุด",
+ "LISTS_GET_SUBLIST_END_FROM_START": "จนถึง #",
+ "LISTS_GET_SUBLIST_END_FROM_END": "ถึง # จากท้ายสุด",
+ "LISTS_GET_SUBLIST_END_LAST": "ถึง ท้ายสุด",
+ "LISTS_GET_SUBLIST_TOOLTIP": "สร้างสำเนารายการในช่วงที่กำหนด",
+ "LISTS_SORT_HELPURL": "https://github.com/google/blockly/wiki/Lists#sorting-a-list",
+ "LISTS_SORT_TITLE": "เรียงลำดับ %1 %2 %3",
+ "LISTS_SORT_TOOLTIP": "เรียงลำดับสำเนาของรายชื่อ",
+ "LISTS_SORT_ORDER_ASCENDING": "น้อยไปหามาก",
+ "LISTS_SORT_ORDER_DESCENDING": "มากไปหาน้อย",
+ "LISTS_SORT_TYPE_NUMERIC": "ตัวเลข",
+ "LISTS_SORT_TYPE_TEXT": "ตัวอักษร",
+ "LISTS_SORT_TYPE_IGNORECASE": "ตัวอักษร",
+ "LISTS_SPLIT_LIST_FROM_TEXT": "สร้างรายการจากข้อความ",
+ "LISTS_SPLIT_TEXT_FROM_LIST": "สร้างข้อความจากรายการ",
+ "LISTS_SPLIT_WITH_DELIMITER": "ด้วยตัวคั่น",
+ "LISTS_SPLIT_TOOLTIP_SPLIT": "แบ่งข้อความเป็นรายการข้อความ แยกแต่ละรายการด้วยตัวคั่น",
+ "LISTS_SPLIT_TOOLTIP_JOIN": "รวมรายการข้อความเป็นข้อความเดียว แบ่งด้วยตัวคั่น",
+ "VARIABLES_GET_TOOLTIP": "คืนค่าของตัวแปรนี้",
+ "VARIABLES_GET_CREATE_SET": "สร้าง \"กำหนด %1\"",
+ "VARIABLES_SET": "กำหนด %1 จนถึง %2",
+ "VARIABLES_SET_TOOLTIP": "กำหนดให้ตัวแปรนี้เท่ากับการป้อนข้อมูล",
+ "VARIABLES_SET_CREATE_GET": "สร้าง \"get %1\"",
+ "PROCEDURES_DEFNORETURN_TITLE": "ถึง",
+ "PROCEDURES_DEFNORETURN_PROCEDURE": "ทำอะไรบางอย่าง",
+ "PROCEDURES_BEFORE_PARAMS": "ด้วย:",
+ "PROCEDURES_CALL_BEFORE_PARAMS": "ด้วย:",
+ "PROCEDURES_DEFNORETURN_TOOLTIP": "สร้างฟังก์ชันที่ไม่มีผลลัพธ์",
+ "PROCEDURES_DEFNORETURN_COMMENT": "อธิบายฟังก์ชันนี้",
+ "PROCEDURES_DEFRETURN_RETURN": "คืนค่า",
+ "PROCEDURES_DEFRETURN_TOOLTIP": "สร้างฟังก์ชันที่มีผลลัพธ์",
+ "PROCEDURES_ALLOW_STATEMENTS": "ข้อความที่ใช้ได้",
+ "PROCEDURES_DEF_DUPLICATE_WARNING": "ระวัง: ฟังก์ชันนี้มีพารามิเตอร์ที่มีชื่อซ้ำกัน",
+ "PROCEDURES_CALLNORETURN_HELPURL": "https://en.wikipedia.org/wiki/Procedure_(computer_science)",
+ "PROCEDURES_CALLNORETURN_TOOLTIP": "เรียกใช้ฟังก์ชันที่สร้างโดยผู้ใช้ \"%1\"",
+ "PROCEDURES_CALLRETURN_HELPURL": "https://en.wikipedia.org/wiki/Procedure_(computer_science)",
+ "PROCEDURES_CALLRETURN_TOOLTIP": "เรียกใช้ฟังก์ชันที่สร้างโดยผู้ใช้ \"%1\" และใช้ผลลัพธ์ของมัน",
+ "PROCEDURES_MUTATORCONTAINER_TITLE": "นำเข้า",
+ "PROCEDURES_MUTATORCONTAINER_TOOLTIP": "เพิ่ม, ลบ, หรือจัดเรียง ข้อมูลที่ป้อนเข้าฟังก์ชันนี้",
+ "PROCEDURES_MUTATORARG_TITLE": "ชื่อนำเข้า:",
+ "PROCEDURES_MUTATORARG_TOOLTIP": "เพิ่มค่าป้อนเข้าฟังก์ชัน",
+ "PROCEDURES_HIGHLIGHT_DEF": "เน้นฟังก์ชันนิยาม",
+ "PROCEDURES_CREATE_DO": "สร้าง \"%1\"",
+ "PROCEDURES_IFRETURN_TOOLTIP": "ถ้ามีค่าเป็นจริง ให้คืนค่าที่สอง",
+ "PROCEDURES_IFRETURN_WARNING": "ระวัง: บล็อกนี้ใช้เฉพาะในการสร้างฟังก์ชันเท่านั้น"
+}
diff --git a/blockly/msg/json/tl.json b/blockly/msg/json/tl.json
new file mode 100644
index 0000000..57988fa
--- /dev/null
+++ b/blockly/msg/json/tl.json
@@ -0,0 +1,305 @@
+{
+ "@metadata": {
+ "authors": [
+ "아라"
+ ]
+ },
+ "VARIABLES_DEFAULT_NAME": "item",
+ "DUPLICATE_BLOCK": "Kaparehas",
+ "ADD_COMMENT": "Dagdag komento",
+ "REMOVE_COMMENT": "Remove Comment",
+ "EXTERNAL_INPUTS": "Panlabas na Inputs",
+ "INLINE_INPUTS": "Inline na Inputs",
+ "DELETE_BLOCK": "burahin ang bloke",
+ "DELETE_X_BLOCKS": "burahin %1 ng bloke",
+ "COLLAPSE_BLOCK": "bloke",
+ "COLLAPSE_ALL": "bloke",
+ "EXPAND_BLOCK": "Palawakin ang Block",
+ "EXPAND_ALL": "Palawakin ang Blocks",
+ "DISABLE_BLOCK": "Ipangwalang bisa ang Block",
+ "ENABLE_BLOCK": "Bigyan ng bisa ang Block",
+ "HELP": "Tulong",
+ "CHANGE_VALUE_TITLE": "pagbago ng value:",
+ "RENAME_VARIABLE": "Rename variable...",
+ "RENAME_VARIABLE_TITLE": "Rename all '%1' variables to:",
+ "NEW_VARIABLE": "New variable...",
+ "NEW_VARIABLE_TITLE": "New variable name:",
+ "COLOUR_PICKER_HELPURL": "http://en.wikipedia.org/wiki/Color",
+ "COLOUR_PICKER_TOOLTIP": "pagpili ng kulay sa paleta.",
+ "COLOUR_RANDOM_TITLE": "iba ibang kulay",
+ "COLOUR_RANDOM_TOOLTIP": "pagpili ng iba't ibang kulay.",
+ "COLOUR_RGB_HELPURL": "http://www.december.com/html/spec/colorper.html",
+ "COLOUR_RGB_TITLE": "kulayan ng",
+ "COLOUR_RGB_RED": "pula",
+ "COLOUR_RGB_GREEN": "berde",
+ "COLOUR_RGB_BLUE": "asul",
+ "COLOUR_RGB_TOOLTIP": "gumawa ng kulay ng may espisipikong dami ng kulay pula, berde, at asul. lahat ng halaga ay dapat sa pagitan ng 0 at 100.",
+ "COLOUR_BLEND_HELPURL": "http://meyerweb.com/eric/tools/color-blend/",
+ "COLOUR_BLEND_TITLE": "halo",
+ "COLOUR_BLEND_COLOUR1": "kulay 1",
+ "COLOUR_BLEND_COLOUR2": "kulay 2",
+ "COLOUR_BLEND_RATIO": "proporsyon",
+ "COLOUR_BLEND_TOOLTIP": "Paghalo ng dalawang kulay kasama ng ibinigay na proporsyon (0.0 - 1.0).",
+ "CONTROLS_REPEAT_HELPURL": "http://en.wikipedia.org/wiki/For_loop",
+ "CONTROLS_REPEAT_TITLE": "ulitin %1 beses",
+ "CONTROLS_REPEAT_INPUT_DO": "gawin",
+ "CONTROLS_REPEAT_TOOLTIP": "gumawa ng ilang pangungusap ng ilang ulit.",
+ "CONTROLS_WHILEUNTIL_OPERATOR_WHILE": "ulitin habang",
+ "CONTROLS_WHILEUNTIL_OPERATOR_UNTIL": "ulitin hanggang",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_WHILE": "Habang ang value ay true, gagawin ang ibang statements.",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL": "Habang ang value ay false, gagawin ang ibang statements.",
+ "CONTROLS_FOR_TOOLTIP": "Magkaroon ng mga variable na \"%1\" na tanggalin ng mga halaga mula sa simulang numero hanggang sa dulong numero, at bilangin sa pamamagitan ng tinukoy na agwat, at gawin ang mga tinukoy na mga blocks.",
+ "CONTROLS_FOR_TITLE": "bilangin %1 mula %2 hanggang %3 ng %4",
+ "CONTROLS_FOREACH_TITLE": "sa bawat bagay %1 sa listahan %2",
+ "CONTROLS_FOREACH_TOOLTIP": "Para sa bawat item sa isang list, i-set ang variable ng '%1' sa mga item, at pagkatapos ay gumawa ng ilang mga statements.",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK": "putulin ang paulit ulit",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE": "Magpatuloy sa susunod na pag-ulit ng loop",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK": "Hatiin ang nilalaman ng loop.",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE": "Laktawan ang natitirang bahagi ng loop, at magpatuloy sa susunod na pag-ulit.",
+ "CONTROLS_FLOW_STATEMENTS_WARNING": "Babala: Ang block ito ay maaari lamang magamit sa loob ng loop.",
+ "CONTROLS_IF_TOOLTIP_1": "kung ang value ay true, gagawin ang do statements.",
+ "CONTROLS_IF_TOOLTIP_2": "Kung ang value ay true, gagawin ang unang block ng do statements. Kung hindi, gagawin ang pangalawang block ng statement.",
+ "CONTROLS_IF_TOOLTIP_3": "Kung ang unang value ay true, gagawin ang first block ng statement. Kung hindi, kung ang second value ay true, gagawin ang second block ng statement.",
+ "CONTROLS_IF_TOOLTIP_4": "Kung ang first value ay true, gagawin ang first block ng statement. Kung hindi true ang second value, gagawin ang second block ng statement. Kung wala sa mga values ay true, gagawin ang last block ng statements.",
+ "CONTROLS_IF_MSG_IF": "kung",
+ "CONTROLS_IF_MSG_ELSEIF": "else if",
+ "CONTROLS_IF_MSG_ELSE": "else",
+ "CONTROLS_IF_IF_TOOLTIP": "Mag Add, remove o kaya mag reorder ng sections para maayos ang if block.",
+ "CONTROLS_IF_ELSEIF_TOOLTIP": "Mag dagdag ng condition sa if block.",
+ "CONTROLS_IF_ELSE_TOOLTIP": "Mag Add ng final, kunin lahat ng condition sa if block.",
+ "LOGIC_COMPARE_HELPURL": "http://en.wikipedia.org/wiki/Inequality_(mathematics)",
+ "LOGIC_COMPARE_TOOLTIP_EQ": "Nag babalik ng true kung ang pinasok ay parehong magkatumbas.",
+ "LOGIC_COMPARE_TOOLTIP_NEQ": "Return true if both inputs are not equal to each other.",
+ "LOGIC_COMPARE_TOOLTIP_LT": "Nag babalik ng true kung ang unang pinasok ay maliit kaysa sa pangalawang pinasok.",
+ "LOGIC_COMPARE_TOOLTIP_LTE": "Nag babalik ng true kung ang unang pinasok ay maliit sa o katumbas sa pangalawang pinasok.",
+ "LOGIC_COMPARE_TOOLTIP_GT": "Nagbabalik ng true kung ang unang pinasok ay mas malaki kaysa pangalawang pinasok.",
+ "LOGIC_COMPARE_TOOLTIP_GTE": "Nag babalik ng true kung ang unang pinasok ay mas malaki or katumbas ng pangalawang pinasok.",
+ "LOGIC_OPERATION_TOOLTIP_AND": "Return true if both inputs are true.",
+ "LOGIC_OPERATION_AND": "at",
+ "LOGIC_OPERATION_TOOLTIP_OR": "Return true if at least one of the inputs is true.",
+ "LOGIC_OPERATION_OR": "o",
+ "LOGIC_NEGATE_TITLE": "not %1",
+ "LOGIC_NEGATE_TOOLTIP": "Returns true if the input is false. Returns false if the input is true.",
+ "LOGIC_BOOLEAN_TRUE": "tama",
+ "LOGIC_BOOLEAN_FALSE": "mali",
+ "LOGIC_BOOLEAN_TOOLTIP": "Nag babalik ng true or false.",
+ "LOGIC_NULL_HELPURL": "http://en.wikipedia.org/wiki/Nullable_type",
+ "LOGIC_NULL": "blangko",
+ "LOGIC_NULL_TOOLTIP": "Returns null.",
+ "LOGIC_TERNARY_HELPURL": "http://en.wikipedia.org/wiki/%3F:",
+ "LOGIC_TERNARY_CONDITION": "test",
+ "LOGIC_TERNARY_IF_TRUE": "kung tama",
+ "LOGIC_TERNARY_IF_FALSE": "kung mali",
+ "LOGIC_TERNARY_TOOLTIP": "Check the condition in 'test'. If the condition is true, returns the 'if true' value; otherwise returns the 'if false' value.",
+ "MATH_NUMBER_HELPURL": "http://en.wikipedia.org/wiki/Number",
+ "MATH_NUMBER_TOOLTIP": "A number.",
+ "MATH_ADDITION_SYMBOL": "+",
+ "MATH_SUBTRACTION_SYMBOL": "-",
+ "MATH_DIVISION_SYMBOL": "÷",
+ "MATH_MULTIPLICATION_SYMBOL": "×",
+ "MATH_POWER_SYMBOL": "^",
+ "MATH_TRIG_SIN": "sin",
+ "MATH_TRIG_COS": "cos",
+ "MATH_TRIG_TAN": "tan",
+ "MATH_TRIG_ASIN": "asin",
+ "MATH_TRIG_ACOS": "acos",
+ "MATH_TRIG_ATAN": "atan",
+ "MATH_ARITHMETIC_HELPURL": "http://en.wikipedia.org/wiki/Arithmetic",
+ "MATH_ARITHMETIC_TOOLTIP_ADD": "Return the sum of the two numbers.",
+ "MATH_ARITHMETIC_TOOLTIP_MINUS": "Return the difference of the two numbers.",
+ "MATH_ARITHMETIC_TOOLTIP_MULTIPLY": "Return the product of the two numbers.",
+ "MATH_ARITHMETIC_TOOLTIP_DIVIDE": "Return the quotient of the two numbers.",
+ "MATH_ARITHMETIC_TOOLTIP_POWER": "Return the first number raised to the power of the second number.",
+ "MATH_SINGLE_HELPURL": "http://en.wikipedia.org/wiki/Square_root",
+ "MATH_SINGLE_OP_ROOT": "square root",
+ "MATH_SINGLE_TOOLTIP_ROOT": "Return the square root of a number.",
+ "MATH_SINGLE_OP_ABSOLUTE": "absolute",
+ "MATH_SINGLE_TOOLTIP_ABS": "Return the absolute value of a number.",
+ "MATH_SINGLE_TOOLTIP_NEG": "Return the negation of a number.",
+ "MATH_SINGLE_TOOLTIP_LN": "Return the natural logarithm of a number.",
+ "MATH_SINGLE_TOOLTIP_LOG10": "Return the base 10 logarithm of a number.",
+ "MATH_SINGLE_TOOLTIP_EXP": "Return e to the power of a number.",
+ "MATH_SINGLE_TOOLTIP_POW10": "Return 10 to the power of a number.",
+ "MATH_TRIG_HELPURL": "http://en.wikipedia.org/wiki/Trigonometric_functions",
+ "MATH_TRIG_TOOLTIP_SIN": "Return the sine of a degree (not radian).",
+ "MATH_TRIG_TOOLTIP_COS": "Return the cosine of a degree (not radian).",
+ "MATH_TRIG_TOOLTIP_TAN": "Return the tangent of a degree (not radian).",
+ "MATH_TRIG_TOOLTIP_ASIN": "Return the arcsine of a number.",
+ "MATH_TRIG_TOOLTIP_ACOS": "Return the arccosine of a number.",
+ "MATH_TRIG_TOOLTIP_ATAN": "Return the arctangent of a number.",
+ "MATH_CONSTANT_HELPURL": "http://en.wikipedia.org/wiki/Mathematical_constant",
+ "MATH_CONSTANT_TOOLTIP": "Return one of the common constants: π (3.141…), e (2.718…), φ (1.618…), sqrt(2) (1.414…), sqrt(½) (0.707…), or ∞ (infinity).",
+ "MATH_IS_EVEN": "is even",
+ "MATH_IS_ODD": "is odd",
+ "MATH_IS_PRIME": "is prime",
+ "MATH_IS_WHOLE": "is whole",
+ "MATH_IS_POSITIVE": "ay positibo",
+ "MATH_IS_NEGATIVE": "ay negatibo",
+ "MATH_IS_DIVISIBLE_BY": "is divisible by",
+ "MATH_IS_TOOLTIP": "Check if a number is an even, odd, prime, whole, positive, negative, or if it is divisible by certain number. Returns true or false.",
+ "MATH_CHANGE_HELPURL": "http://en.wikipedia.org/wiki/Programming_idiom#Incrementing_a_counter",
+ "MATH_CHANGE_TITLE": "baguhin %1 by %2",
+ "MATH_CHANGE_TOOLTIP": "Add a number to variable '%1'.",
+ "MATH_ROUND_HELPURL": "http://en.wikipedia.org/wiki/Rounding",
+ "MATH_ROUND_TOOLTIP": "Round a number up or down.",
+ "MATH_ROUND_OPERATOR_ROUND": "round",
+ "MATH_ROUND_OPERATOR_ROUNDUP": "round up",
+ "MATH_ROUND_OPERATOR_ROUNDDOWN": "round down",
+ "MATH_ONLIST_OPERATOR_SUM": "sum of list",
+ "MATH_ONLIST_TOOLTIP_SUM": "Return the sum of all the numbers in the list.",
+ "MATH_ONLIST_OPERATOR_MIN": "min of list",
+ "MATH_ONLIST_TOOLTIP_MIN": "Return the smallest number in the list.",
+ "MATH_ONLIST_OPERATOR_MAX": "max of list",
+ "MATH_ONLIST_TOOLTIP_MAX": "Return the largest number in the list.",
+ "MATH_ONLIST_OPERATOR_AVERAGE": "average of list",
+ "MATH_ONLIST_TOOLTIP_AVERAGE": "Return the average (arithmetic mean) of the numeric values in the list.",
+ "MATH_ONLIST_OPERATOR_MEDIAN": "median of list",
+ "MATH_ONLIST_TOOLTIP_MEDIAN": "Return the median number in the list.",
+ "MATH_ONLIST_OPERATOR_MODE": "modes of list",
+ "MATH_ONLIST_TOOLTIP_MODE": "Return a list of the most common item(s) in the list.",
+ "MATH_ONLIST_OPERATOR_STD_DEV": "standard deviation of list",
+ "MATH_ONLIST_TOOLTIP_STD_DEV": "Return the standard deviation of the list.",
+ "MATH_ONLIST_OPERATOR_RANDOM": "random item of list",
+ "MATH_ONLIST_TOOLTIP_RANDOM": "Return a random element from the list.",
+ "MATH_MODULO_HELPURL": "http://en.wikipedia.org/wiki/Modulo_operation",
+ "MATH_MODULO_TITLE": "remainder of %1 ÷ %2",
+ "MATH_MODULO_TOOLTIP": "Return the remainder from dividing the two numbers.",
+ "MATH_CONSTRAIN_TITLE": "constrain %1 low %2 high %3",
+ "MATH_CONSTRAIN_TOOLTIP": "Constrain a number to be between the specified limits (inclusive).",
+ "MATH_RANDOM_INT_HELPURL": "http://en.wikipedia.org/wiki/Random_number_generation",
+ "MATH_RANDOM_INT_TITLE": "random integer from %1 to %2",
+ "MATH_RANDOM_INT_TOOLTIP": "Return a random integer between the two specified limits, inclusive.",
+ "MATH_RANDOM_FLOAT_HELPURL": "http://en.wikipedia.org/wiki/Random_number_generation",
+ "MATH_RANDOM_FLOAT_TITLE_RANDOM": "random fraction",
+ "MATH_RANDOM_FLOAT_TOOLTIP": "Return a random fraction between 0.0 (inclusive) and 1.0 (exclusive).",
+ "TEXT_TEXT_HELPURL": "http://en.wikipedia.org/wiki/String_(computer_science)",
+ "TEXT_TEXT_TOOLTIP": "A letter, word, or line of text.",
+ "TEXT_JOIN_TITLE_CREATEWITH": "create text with",
+ "TEXT_JOIN_TOOLTIP": "Create a piece of text by joining together any number of items.",
+ "TEXT_CREATE_JOIN_TITLE_JOIN": "join",
+ "TEXT_CREATE_JOIN_TOOLTIP": "Add, remove, or reorder sections to reconfigure this text block.",
+ "TEXT_CREATE_JOIN_ITEM_TOOLTIP": "Add an item to the text.",
+ "TEXT_APPEND_TO": "to",
+ "TEXT_APPEND_APPENDTEXT": "append text",
+ "TEXT_APPEND_TOOLTIP": "Append some text to variable '%1'.",
+ "TEXT_LENGTH_TITLE": "length of %1",
+ "TEXT_LENGTH_TOOLTIP": "Returns the number of letters (including spaces) in the provided text.",
+ "TEXT_ISEMPTY_TITLE": "%1 is empty",
+ "TEXT_ISEMPTY_TOOLTIP": "Returns true if the provided text is empty.",
+ "TEXT_INDEXOF_TOOLTIP": "Returns the index of the first/last occurrence of first text in the second text. Returns %1 if text is not found.",
+ "TEXT_INDEXOF_INPUT_INTEXT": "in text",
+ "TEXT_INDEXOF_OPERATOR_FIRST": "find first occurrence of text",
+ "TEXT_INDEXOF_OPERATOR_LAST": "find last occurrence of text",
+ "TEXT_CHARAT_INPUT_INTEXT": "in text",
+ "TEXT_CHARAT_FROM_START": "get letter #",
+ "TEXT_CHARAT_FROM_END": "get letter # from end",
+ "TEXT_CHARAT_FIRST": "get first letter",
+ "TEXT_CHARAT_LAST": "get last letter",
+ "TEXT_CHARAT_RANDOM": "get random letter",
+ "TEXT_CHARAT_TOOLTIP": "Returns the letter at the specified position.",
+ "TEXT_GET_SUBSTRING_TOOLTIP": "Returns a specified portion of the text.",
+ "TEXT_GET_SUBSTRING_INPUT_IN_TEXT": "in text",
+ "TEXT_GET_SUBSTRING_START_FROM_START": "get substring from letter #",
+ "TEXT_GET_SUBSTRING_START_FROM_END": "get substring from letter # from end",
+ "TEXT_GET_SUBSTRING_START_FIRST": "get substring from first letter",
+ "TEXT_GET_SUBSTRING_END_FROM_START": "to letter #",
+ "TEXT_GET_SUBSTRING_END_FROM_END": "to letter # from end",
+ "TEXT_GET_SUBSTRING_END_LAST": "to last letter",
+ "TEXT_CHANGECASE_TOOLTIP": "Return a copy of the text in a different case.",
+ "TEXT_CHANGECASE_OPERATOR_UPPERCASE": "to UPPER CASE",
+ "TEXT_CHANGECASE_OPERATOR_LOWERCASE": "to lower case",
+ "TEXT_CHANGECASE_OPERATOR_TITLECASE": "to Title Case",
+ "TEXT_TRIM_TOOLTIP": "Return a copy of the text with spaces removed from one or both ends.",
+ "TEXT_TRIM_OPERATOR_BOTH": "trim spaces from both sides",
+ "TEXT_TRIM_OPERATOR_LEFT": "trim spaces from left side",
+ "TEXT_TRIM_OPERATOR_RIGHT": "trim spaces from right side",
+ "TEXT_PRINT_TITLE": "print %1",
+ "TEXT_PRINT_TOOLTIP": "Print the specified text, number or other value.",
+ "TEXT_PROMPT_TYPE_TEXT": "prompt for text with message",
+ "TEXT_PROMPT_TYPE_NUMBER": "prompt for number with message",
+ "TEXT_PROMPT_TOOLTIP_NUMBER": "Prompt for user for a number.",
+ "TEXT_PROMPT_TOOLTIP_TEXT": "Prompt for user for some text.",
+ "LISTS_CREATE_EMPTY_HELPURL": "https://github.com/google/blockly/wiki/Lists#create-empty-list",
+ "LISTS_CREATE_EMPTY_TITLE": "Gumawa ng walang laman na list",
+ "LISTS_CREATE_EMPTY_TOOLTIP": "Ibabalik ang list, na may haba na 0, nag lalaman ng walang data records",
+ "LISTS_CREATE_WITH_TOOLTIP": "Gumawa ng list na may kahit anong number ng items.",
+ "LISTS_CREATE_WITH_INPUT_WITH": "gumawa ng list kasama",
+ "LISTS_CREATE_WITH_CONTAINER_TITLE_ADD": "list",
+ "LISTS_CREATE_WITH_CONTAINER_TOOLTIP": "Magdagdag, mag tanggal or mag ayos ng sections para muling maayos ang listahan ng block.",
+ "LISTS_CREATE_WITH_ITEM_TOOLTIP": "Mag dagdag ng item sa list.",
+ "LISTS_REPEAT_TOOLTIP": "Pag gawa ng list na binubuo ng binigay na value at inulit na tinuloy na bilang ng beses.",
+ "LISTS_REPEAT_TITLE": "pag gawa ng list kasama ng item %1 inuulit %2 beses",
+ "LISTS_LENGTH_TITLE": "haba ng %1",
+ "LISTS_LENGTH_TOOLTIP": "Pag balik ng haba ng list.",
+ "LISTS_ISEMPTY_TITLE": "%1 ay walang laman",
+ "LISTS_ISEMPTY_TOOLTIP": "Nagbabalik ng true kung ang list ay walang laman.",
+ "LISTS_INLIST": "sa list",
+ "LISTS_INDEX_OF_FIRST": "Hanapin ang unang pangyayari ng item",
+ "LISTS_INDEX_OF_LAST": "hanapin ang huling pangyayari ng item",
+ "LISTS_INDEX_OF_TOOLTIP": "Pagbalik ng index ng una/huli pangyayari ng item sa list. Pagbalik ng %1 kung ang item ay hindi makita.",
+ "LISTS_GET_INDEX_GET": "kunin",
+ "LISTS_GET_INDEX_GET_REMOVE": "kunin at tanggalin",
+ "LISTS_GET_INDEX_REMOVE": "tanggalin",
+ "LISTS_GET_INDEX_FROM_START": "#",
+ "LISTS_GET_INDEX_FROM_END": "# mula katapusan",
+ "LISTS_GET_INDEX_FIRST": "Una",
+ "LISTS_GET_INDEX_LAST": "huli",
+ "LISTS_GET_INDEX_RANDOM": "nang hindi pinipili",
+ "LISTS_INDEX_FROM_START_TOOLTIP": "%1 ay ang unang item.",
+ "LISTS_INDEX_FROM_END_TOOLTIP": "%1 ay ang huling item.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_FROM": "Ibalik ang item sa itinakdang posisyon sa list.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_FIRST": "Ibalik ang unang item sa list.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_LAST": "Ibalik ang huling item sa list.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_RANDOM": "Nag babalik ng hindi pinipiling item sa list.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM": "Nag tatanggal at nag babalik ng mga items sa tinukoy na posisyon sa list.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST": "Nag tatanggal at nag babalik ng mga unang item sa list.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST": "Nag tatanggal at nag babalik ng huling item sa list.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM": "Nag tatanggal at nag babalik ng mga hindi pinipiling item sa list.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM": "Nag tatanggal ng item sa tinukoy na posisyon sa list.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST": "Nag tatanggal ng unang item sa list.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST": "Nag tatanggal ng huling item sa list.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM": "Nag tatanggal ng item mula sa walang pinipiling list.",
+ "LISTS_SET_INDEX_SET": "set",
+ "LISTS_SET_INDEX_INSERT": "isingit sa",
+ "LISTS_SET_INDEX_INPUT_TO": "gaya ng",
+ "LISTS_SET_INDEX_TOOLTIP_SET_FROM": "Pag set ng item sa tinukoy na position sa isang list.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_FIRST": "Pag set ng unang item sa isang list.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_LAST": "Pag set sa huling item sa isang list.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_RANDOM": "Pag set ng walang pinipiling item sa isang list.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_FROM": "Nag singit ng item sa tinukoy na posistion sa list.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST": "Nag singit ng item sa simula ng list.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_LAST": "Idagdag ang item sa huli ng isang list.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM": "Isingit ang item ng walang pinipili sa isang list.",
+ "LISTS_GET_SUBLIST_START_FROM_START": "pag kuha ng sub-list mula #",
+ "LISTS_GET_SUBLIST_START_FROM_END": "pag kuha ng sub-list mula sa # mula huli",
+ "LISTS_GET_SUBLIST_START_FIRST": "pag kuha ng sub-list mula sa una",
+ "LISTS_GET_SUBLIST_END_FROM_START": "mula #",
+ "LISTS_GET_SUBLIST_END_FROM_END": "mula # hanggang huli",
+ "LISTS_GET_SUBLIST_END_LAST": "hanggang huli",
+ "LISTS_GET_SUBLIST_TOOLTIP": "Gumagawa ng kopya ng tinukoy na bahagi ng list.",
+ "VARIABLES_GET_TOOLTIP": "Returns the value of this variable.",
+ "VARIABLES_GET_CREATE_SET": "Create 'set %1'",
+ "VARIABLES_SET": "set %1 to %2",
+ "VARIABLES_SET_TOOLTIP": "Sets this variable to be equal to the input.",
+ "VARIABLES_SET_CREATE_GET": "Create 'get %1'",
+ "PROCEDURES_DEFNORETURN_HELPURL": "http://en.wikipedia.org/wiki/Procedure_%28computer_science%29",
+ "PROCEDURES_DEFNORETURN_TITLE": "to",
+ "PROCEDURES_DEFNORETURN_PROCEDURE": "do something",
+ "PROCEDURES_BEFORE_PARAMS": "with:",
+ "PROCEDURES_CALL_BEFORE_PARAMS": "with:",
+ "PROCEDURES_DEFNORETURN_TOOLTIP": "Creates a function with no output.",
+ "PROCEDURES_DEFRETURN_HELPURL": "http://en.wikipedia.org/wiki/Procedure_%28computer_science%29",
+ "PROCEDURES_DEFRETURN_RETURN": "return",
+ "PROCEDURES_DEFRETURN_TOOLTIP": "Creates a function with an output.",
+ "PROCEDURES_DEF_DUPLICATE_WARNING": "Warning: This function has duplicate parameters.",
+ "PROCEDURES_CALLNORETURN_HELPURL": "http://en.wikipedia.org/wiki/Procedure_%28computer_science%29",
+ "PROCEDURES_CALLNORETURN_TOOLTIP": "Run the user-defined function '%1'.",
+ "PROCEDURES_CALLRETURN_HELPURL": "http://en.wikipedia.org/wiki/Procedure_%28computer_science%29",
+ "PROCEDURES_CALLRETURN_TOOLTIP": "Run the user-defined function '%1' and use its output.",
+ "PROCEDURES_MUTATORCONTAINER_TITLE": "inputs",
+ "PROCEDURES_MUTATORARG_TITLE": "input name:",
+ "PROCEDURES_HIGHLIGHT_DEF": "Highlight function definition",
+ "PROCEDURES_CREATE_DO": "Create '%1'",
+ "PROCEDURES_IFRETURN_TOOLTIP": "If a value is true, then return a second value.",
+ "PROCEDURES_IFRETURN_WARNING": "Warning: This block may be used only within a function definition."
+}
diff --git a/blockly/msg/json/tlh.json b/blockly/msg/json/tlh.json
new file mode 100644
index 0000000..8be1d1d
--- /dev/null
+++ b/blockly/msg/json/tlh.json
@@ -0,0 +1,182 @@
+{
+ "@metadata": {
+ "author": "Neil Fraser <fraser@google.com>",
+ "lastupdated": "2014-03-24 23:00:00.000000",
+ "locale": "tlh",
+ "messagedocumentation" : "qqq"
+ },
+ "VARIABLES_DEFAULT_NAME": "Doch",
+ "TODAY": "DaHjaj",
+ "DUPLICATE_BLOCK": "velqa' chenmoH",
+ "ADD_COMMENT": "QInHom chel",
+ "REMOVE_COMMENT": "QInHom chelHa'",
+ "EXTERNAL_INPUTS": "Hur rar",
+ "INLINE_INPUTS": "qoD rar",
+ "DELETE_BLOCK": "ngogh Qaw'",
+ "DELETE_X_BLOCKS": "%1 ngoghmey Qaw'",
+ "DELETE_ALL_BLOCKS": "Hoch %1 ngoghmey Qaw'?",
+ "CLEAN_UP": "ngoghmeyvaD tlhegh rurmoH",
+ "COLLAPSE_BLOCK": "ngogh DejmoH",
+ "COLLAPSE_ALL": "ngoghmey DejmoH",
+ "EXPAND_BLOCK": "ngogh DejHa'moH",
+ "EXPAND_ALL": "ngoghmey DejHa'moH",
+ "DISABLE_BLOCK": "ngogh Qotlh",
+ "ENABLE_BLOCK": "ngogh QotlhHa'",
+ "HELP": "QaH",
+ "UNDO": "vangHa'",
+ "REDO": "vangqa'",
+ "CHANGE_VALUE_TITLE": "choH:",
+ "NEW_VARIABLE": "lIw chu'...",
+ "NEW_VARIABLE_TITLE": "lIw chu' pong:",
+ "RENAME_VARIABLE": "lIw pong choH...",
+ "RENAME_VARIABLE_TITLE": "Hoch \"%1\" lIwmey pongmey choH:",
+ "COLOUR_RANDOM_TITLE": "rItlh vISaHbe'",
+ "COLOUR_RGB_TITLE": "rItlh wIv",
+ "COLOUR_RGB_RED": "'Iw rItlh",
+ "COLOUR_RGB_GREEN": "tI rItlh",
+ "COLOUR_RGB_BLUE": "chal rItlh",
+ "COLOUR_BLEND_TITLE": "DuD",
+ "COLOUR_BLEND_COLOUR1": "rItlh wa'",
+ "COLOUR_BLEND_COLOUR2": "rItlh cha'",
+ "COLOUR_BLEND_RATIO": "'ar",
+ "CONTROLS_REPEAT_TITLE": "%1-logh qaSmoH",
+ "CONTROLS_REPEAT_INPUT_DO": "ruch",
+ "CONTROLS_WHILEUNTIL_OPERATOR_WHILE": "teHtaHvIS qaSmoH",
+ "CONTROLS_WHILEUNTIL_OPERATOR_UNTIL": "teHpa' qaSmoH",
+ "CONTROLS_FOR_TITLE": "togh %1 mung %2 ghoch %3 Do %4",
+ "CONTROLS_FOREACH_TITLE": "ngIq Doch %1 ngaSbogh tetlh %2 nuDDI'",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK": "gho Haw'",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE": "gho taHqa'",
+ "CONTROLS_FLOW_STATEMENTS_WARNING": "yIqIm! ghoDaq neH ngoghvam lo'laH vay'.",
+ "CONTROLS_IF_MSG_IF": "teHchugh",
+ "CONTROLS_IF_MSG_ELSEIF": "pagh teHchugh",
+ "CONTROLS_IF_MSG_ELSE": "pagh",
+ "LOGIC_OPERATION_AND": "'ej",
+ "LOGIC_OPERATION_OR": "qoj",
+ "LOGIC_NEGATE_TITLE": "yoymoH %1",
+ "LOGIC_BOOLEAN_TRUE": "teH",
+ "LOGIC_BOOLEAN_FALSE": "teHbe'",
+ "LOGIC_NULL": "paghna'",
+ "LOGIC_TERNARY_CONDITION": "chov",
+ "LOGIC_TERNARY_IF_TRUE": "teHchugh",
+ "LOGIC_TERNARY_IF_FALSE": "teHbe'chugh",
+ "MATH_ADDITION_SYMBOL": "+",
+ "MATH_SUBTRACTION_SYMBOL": "-",
+ "MATH_DIVISION_SYMBOL": "÷",
+ "MATH_MULTIPLICATION_SYMBOL": "×",
+ "MATH_POWER_SYMBOL": "^",
+ "MATH_TRIG_SIN": "sin",
+ "MATH_TRIG_COS": "cos",
+ "MATH_TRIG_TAN": "tan",
+ "MATH_TRIG_ASIN": "asin",
+ "MATH_TRIG_ACOS": "acos",
+ "MATH_TRIG_ATAN": "atan",
+ "MATH_SINGLE_OP_ROOT": "cha'DIch wav",
+ "MATH_SINGLE_OP_ABSOLUTE": "Dung pagh choH",
+ "MATH_IS_EVEN": "lang'a' mI'",
+ "MATH_IS_ODD": "ror'a' mI'",
+ "MATH_IS_PRIME": "potlh'a' mI'",
+ "MATH_IS_WHOLE": "ngoHlaHbe''a'",
+ "MATH_IS_POSITIVE": "Dung pagh",
+ "MATH_IS_NEGATIVE": "bIng pagh",
+ "MATH_IS_DIVISIBLE_BY": "wav'a'",
+ "MATH_CHANGE_TITLE": "choH %1 chel %2",
+ "MATH_ROUND_OPERATOR_ROUND": "ngoH",
+ "MATH_ROUND_OPERATOR_ROUNDUP": "Dung ngoH",
+ "MATH_ROUND_OPERATOR_ROUNDDOWN": "bIng ngoH",
+ "MATH_ONLIST_OPERATOR_SUM": "chelwI' SIm tetlh",
+ "MATH_ONLIST_OPERATOR_MIN": "machwI''a' SIm tetlh",
+ "MATH_ONLIST_OPERATOR_MAX": "tInwI''a' SIm tetlh",
+ "MATH_ONLIST_OPERATOR_AVERAGE": "beQwI' SIm tetlh",
+ "MATH_ONLIST_OPERATOR_MEDIAN": "beQwI'botlh SIm tetlh",
+ "MATH_ONLIST_OPERATOR_MODE": "beQwI' motlh SIm tetlh",
+ "MATH_ONLIST_OPERATOR_STD_DEV": "motlhbe'wI' SIm tetlh",
+ "MATH_ONLIST_OPERATOR_RANDOM": "SaHbe' SIm tetlh",
+ "MATH_MODULO_TITLE": "ratlwI' SIm %1 ÷ %2",
+ "MATH_CONSTRAIN_TITLE": "jon %1 bIng %2 Dung %3",
+ "MATH_RANDOM_INT_TITLE": "ngoH mI'SaHbe' bIng %1 Dung %2",
+ "MATH_RANDOM_FLOAT_TITLE_RANDOM": "mI'HomSaHbe'",
+ "TEXT_JOIN_TITLE_CREATEWITH": "ghItlh ghom",
+ "TEXT_CREATE_JOIN_TITLE_JOIN": "ghom",
+ "TEXT_APPEND_TO": "chel",
+ "TEXT_APPEND_APPENDTEXT": "ghItlh",
+ "TEXT_LENGTH_TITLE": "chuq %1",
+ "TEXT_ISEMPTY_TITLE": "%1 chIm'a'",
+ "TEXT_INDEXOF_INPUT_INTEXT": "ghItlhDaq",
+ "TEXT_INDEXOF_OPERATOR_FIRST": "ghItlh wa'DIch Sam",
+ "TEXT_INDEXOF_OPERATOR_LAST": "ghItlh Qav Sam",
+ "TEXT_INDEXOF_TAIL": "",
+ "TEXT_CHARAT_INPUT_INTEXT": "ghItlhDaq",
+ "TEXT_CHARAT_FROM_START": "mu'Hom #",
+ "TEXT_CHARAT_FROM_END": "mu'Hom # Qav",
+ "TEXT_CHARAT_FIRST": "mu'Hom wa'DIch",
+ "TEXT_CHARAT_LAST": "mu'Hom Qav",
+ "TEXT_CHARAT_RANDOM": "mu'Hom SaHbe'",
+ "TEXT_CHARAT_TAIL": "Suq",
+ "TEXT_GET_SUBSTRING_INPUT_IN_TEXT": "ghItlhDaq",
+ "TEXT_GET_SUBSTRING_START_FROM_START": "ghItlhHom moHaq mu'Hom #",
+ "TEXT_GET_SUBSTRING_START_FROM_END": "ghItlhHom moHaq mu'Hom # Qav",
+ "TEXT_GET_SUBSTRING_START_FIRST": "ghItlhHom moHaq mu'Hom wa'DIch",
+ "TEXT_GET_SUBSTRING_END_FROM_START": "mojaq mu'Hom #",
+ "TEXT_GET_SUBSTRING_END_FROM_END": "mojaq mu'Hom # Qav",
+ "TEXT_GET_SUBSTRING_END_LAST": "mojaq mu'Hom Qav",
+ "TEXT_GET_SUBSTRING_TAIL": "Suq",
+ "TEXT_CHANGECASE_OPERATOR_UPPERCASE": "tInchoH",
+ "TEXT_CHANGECASE_OPERATOR_LOWERCASE": "machchoH",
+ "TEXT_CHANGECASE_OPERATOR_TITLECASE": "DojchoH",
+ "TEXT_TRIM_OPERATOR_BOTH": "poSnIHlogh pei",
+ "TEXT_TRIM_OPERATOR_LEFT": "poSlogh pei",
+ "TEXT_TRIM_OPERATOR_RIGHT": "nIHlogh pei",
+ "TEXT_PRINT_TITLE": "maq %1",
+ "TEXT_PROMPT_TYPE_TEXT": "ghItln tlhob 'ej maq",
+ "TEXT_PROMPT_TYPE_NUMBER": "mI' tlhob 'ej maq",
+ "LISTS_CREATE_EMPTY_TITLE": "tetlh chIm",
+ "LISTS_CREATE_WITH_INPUT_WITH": "tetlh ghom",
+ "LISTS_CREATE_WITH_CONTAINER_TITLE_ADD": "tetlh",
+ "LISTS_REPEAT_TITLE": "tetlh ghom %2 Dochmey %1 pus",
+ "LISTS_LENGTH_TITLE": "chuq %1",
+ "LISTS_ISEMPTY_TITLE": "%1 chIm'a'",
+ "LISTS_INLIST": "tetlhDaq",
+ "LISTS_INDEX_OF_FIRST": "Doch sam wa'DIch",
+ "LISTS_INDEX_OF_LAST": "Doch sam Qav",
+ "LISTS_GET_INDEX_GET": "Suq",
+ "LISTS_GET_INDEX_GET_REMOVE": "Suq vaj pej",
+ "LISTS_GET_INDEX_REMOVE": "pej",
+ "LISTS_GET_INDEX_FROM_START": "#",
+ "LISTS_GET_INDEX_FROM_END": "# Qav",
+ "LISTS_GET_INDEX_FIRST": "wa'DIch",
+ "LISTS_GET_INDEX_LAST": "Qav",
+ "LISTS_GET_INDEX_RANDOM": "Sahbe'",
+ "LISTS_GET_INDEX_TAIL": "",
+ "LISTS_SET_INDEX_SET": "choH",
+ "LISTS_SET_INDEX_INSERT": "lIH",
+ "LISTS_SET_INDEX_INPUT_TO": "Dos",
+ "LISTS_GET_SUBLIST_START_FROM_START": "tetlhHom moHaq #",
+ "LISTS_GET_SUBLIST_START_FROM_END": "tetlhHom moHaq # Qav",
+ "LISTS_GET_SUBLIST_START_FIRST": "tetlhHom moHaq wa'DIch",
+ "LISTS_GET_SUBLIST_END_FROM_START": "mojaQ #",
+ "LISTS_GET_SUBLIST_END_FROM_END": "mojaQ # Qav",
+ "LISTS_GET_SUBLIST_END_LAST": "mojaQ Qav",
+ "LISTS_GET_SUBLIST_TAIL": "Suq",
+ "LISTS_SPLIT_LIST_FROM_TEXT": "tetlh ghermeH ghItlh wav",
+ "LISTS_SPLIT_TEXT_FROM_LIST": "ghItlh chenmoHmeH tetlh gherHa'",
+ "LISTS_SPLIT_WITH_DELIMITER": "rarwI'Hom lo'",
+ "ORDINAL_NUMBER_SUFFIX": "",
+ "VARIABLES_GET_CREATE_SET": "chel 'choH %1'",
+ "VARIABLES_SET": "choH %1 %2",
+ "VARIABLES_SET_CREATE_GET": "chel 'Suq %1'",
+ "PROCEDURES_DEFNORETURN_TITLE": "ruch",
+ "PROCEDURES_DEFNORETURN_PROCEDURE": "mIw",
+ "PROCEDURES_BEFORE_PARAMS": "qel:",
+ "PROCEDURES_CALL_BEFORE_PARAMS": "qel:",
+ "PROCEDURES_DEFNORETURN_DO": "",
+ "PROCEDURES_DEFNORETURN_COMMENT": "mIw yIDel...",
+ "PROCEDURES_DEFRETURN_RETURN": "chegh",
+ "PROCEDURES_ALLOW_STATEMENTS": "mu'tlhegh chaw'",
+ "PROCEDURES_DEF_DUPLICATE_WARNING": "ghuHmoHna': qelwI' cha'logh chen.",
+ "PROCEDURES_MUTATORCONTAINER_TITLE": "qelwI'mey",
+ "PROCEDURES_MUTATORARG_TITLE": "pong:",
+ "PROCEDURES_HIGHLIGHT_DEF": "mIwna' wew",
+ "PROCEDURES_CREATE_DO": "chel '%1'",
+ "PROCEDURES_IFRETURN_WARNING": "ghoHmoHna': ngoghvam ngaSbe' mIwDaq."
+}
diff --git a/blockly/msg/json/tr.json b/blockly/msg/json/tr.json
new file mode 100644
index 0000000..1db02bd
--- /dev/null
+++ b/blockly/msg/json/tr.json
@@ -0,0 +1,351 @@
+{
+ "@metadata": {
+ "authors": [
+ "Meelo",
+ "Joseph",
+ "WikiBronze",
+ "Mavrikant",
+ "아라",
+ "Watermelon juice",
+ "Uğurkent",
+ "McAang",
+ "Gurkanht",
+ "HakanIST",
+ "Imabadplayer",
+ "Kumkumuk",
+ "Alpkant"
+ ]
+ },
+ "VARIABLES_DEFAULT_NAME": "öge",
+ "TODAY": "Bugün",
+ "DUPLICATE_BLOCK": "Çoğalt",
+ "ADD_COMMENT": "Yorum Ekle",
+ "REMOVE_COMMENT": "Yorumu Sil",
+ "EXTERNAL_INPUTS": "Harici Girişler",
+ "INLINE_INPUTS": "Satır içi girdiler",
+ "DELETE_BLOCK": "Bloğu Sil",
+ "DELETE_X_BLOCKS": "%1 Blokları Sil",
+ "DELETE_ALL_BLOCKS": "Tüm %1 blok silinsin mi?",
+ "CLEAN_UP": "Blokları temizle",
+ "COLLAPSE_BLOCK": "Blok'u Daralt",
+ "COLLAPSE_ALL": "Blokları Daralt",
+ "EXPAND_BLOCK": "Bloğu Genişlet",
+ "EXPAND_ALL": "Blokları Genişlet",
+ "DISABLE_BLOCK": "Bloğu Devre Dışı Bırak",
+ "ENABLE_BLOCK": "Bloğu Etkinleştir",
+ "HELP": "Yardım",
+ "UNDO": "Geri al",
+ "REDO": "Yinele",
+ "CHANGE_VALUE_TITLE": "Değeri değiştir:",
+ "RENAME_VARIABLE": "Değişkeni yeniden adlandır...",
+ "RENAME_VARIABLE_TITLE": "Tüm '%1' değişkenlerini yeniden isimlendir:",
+ "NEW_VARIABLE": "Değişken oluştur...",
+ "NEW_VARIABLE_TITLE": "Yeni değişken ismi :",
+ "VARIABLE_ALREADY_EXISTS": "'%1' isimli değişken adı zaten var.",
+ "DELETE_VARIABLE_CONFIRMATION": "'%2' değişkeninin %1 kullanımını silmek istiyor musunuz?",
+ "DELETE_VARIABLE": "'%1' değişkenini silmek istiyor musunuz?",
+ "COLOUR_PICKER_HELPURL": "https://tr.wikipedia.org/wiki/Renk",
+ "COLOUR_PICKER_TOOLTIP": "Paletten bir renk seçin.",
+ "COLOUR_RANDOM_TITLE": "rastgele renk",
+ "COLOUR_RANDOM_TOOLTIP": "Rastgele bir renk seçin.",
+ "COLOUR_RGB_HELPURL": "http://www.december.com/html/spec/colorper.html",
+ "COLOUR_RGB_TITLE": "renk değerleri",
+ "COLOUR_RGB_RED": "kırmızı",
+ "COLOUR_RGB_GREEN": "yeşil",
+ "COLOUR_RGB_BLUE": "mavi",
+ "COLOUR_RGB_TOOLTIP": "Kırmızı, yeşil ve mavinin belirtilen miktarıyla bir renk oluşturun. Tüm değerler 0 ile 100 arasında olmalıdır.",
+ "COLOUR_BLEND_HELPURL": "http://meyerweb.com/eric/tools/color-blend/",
+ "COLOUR_BLEND_TITLE": "karıştır",
+ "COLOUR_BLEND_COLOUR1": "renk 1",
+ "COLOUR_BLEND_COLOUR2": "renk 2",
+ "COLOUR_BLEND_RATIO": "oran",
+ "COLOUR_BLEND_TOOLTIP": "Verilen bir orana bağlı olarak iki rengi karıştırır. (0.0 - 1.0).",
+ "CONTROLS_REPEAT_HELPURL": "https://tr.wikipedia.org/wiki/For_d%C3%B6ng%C3%BCs%C3%BC",
+ "CONTROLS_REPEAT_TITLE": "%1 kez tekrarla",
+ "CONTROLS_REPEAT_INPUT_DO": "yap",
+ "CONTROLS_REPEAT_TOOLTIP": "Bazı işlemleri birkaç kez yap.",
+ "CONTROLS_WHILEUNTIL_OPERATOR_WHILE": "tekrar ederken",
+ "CONTROLS_WHILEUNTIL_OPERATOR_UNTIL": "kadar tekrarla",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_WHILE": "Bir değer doğru olduğunda bazı beyanlarda bulun.",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL": "Bir değer yanlış olduğunda bazı beyanlarda bulun.",
+ "CONTROLS_FOR_TOOLTIP": "Başlangıç sayısından bitiş sayısına kadar belirtilen aralık ve belirtilen engeller ile devam eden değerler alan '%1' değişkeni oluştur.",
+ "CONTROLS_FOR_TITLE": "ile sayılır %1 %2 den %3 ye, her adımda %4 değişim",
+ "CONTROLS_FOREACH_TITLE": "her öğe için %1 listede %2",
+ "CONTROLS_FOREACH_TOOLTIP": "Bir listedeki her öğe için '%1' değişkenini maddeye atayın ve bundan sonra bazı açıklamalar yapın.",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK": "döngüden çık",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE": "döngünün sonraki adımından devam et",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK": "İçeren döngüden çık.",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE": "Bu döngünün geri kalanını atlayın ve sonraki adım ile devam edin.",
+ "CONTROLS_FLOW_STATEMENTS_WARNING": "Uyarı: Bu blok sadece bir döngü içinde kullanılabilir.",
+ "CONTROLS_IF_TOOLTIP_1": "Eğer değişken true , yani gerçekleşmiş ise , ardından gelen işlemi yerine getir .",
+ "CONTROLS_IF_TOOLTIP_2": "Eğer değişken true, yani gerçekleşiyor ise ilk blok'taki işlemleri yerine getir, Aksi halde ikinci blok'taki işlemleri yerine getir.",
+ "CONTROLS_IF_TOOLTIP_3": "Eğer ilk değişken true, yani koşul gerçekleşmiş ise ilk blok içerisindeki işlem(ler)i gerçekleştir. Eğer ikinci değişken true ise, ikinci bloktaki işlem(ler)i gerçekleştir .",
+ "CONTROLS_IF_TOOLTIP_4": "Eğer ilk değer true, yani olumlu ise, ilk blok'taki işlem(ler)i gerçekleştir. İlk değer true değil ama ikinci değer true ise, ikinci bloktaki işlem(ler)i gerçekleştir. Eğer değerlerin hiçbiri true değil ise son blok'taki işlem(ler)i gerçekleştir.",
+ "CONTROLS_IF_MSG_IF": "eğer",
+ "CONTROLS_IF_MSG_ELSEIF": "değilse eğer",
+ "CONTROLS_IF_MSG_ELSE": "değilse",
+ "CONTROLS_IF_IF_TOOLTIP": "If bloğuna ekle, kaldır veya yeniden düzenleme yap.",
+ "CONTROLS_IF_ELSEIF_TOOLTIP": "If bloğuna bir koşul ekleyin.",
+ "CONTROLS_IF_ELSE_TOOLTIP": "If bloğuna kalan durumları \"yakalayan\" bir son ekle.",
+ "LOGIC_COMPARE_HELPURL": "https://tr.wikipedia.org/wiki/E%C5%9Fitsizlikler",
+ "LOGIC_COMPARE_TOOLTIP_EQ": "Girilen iki değer birbirine eşitse \"True\" değerini verir.",
+ "LOGIC_COMPARE_TOOLTIP_NEQ": "Girilen iki değerde birbirine eşit değilse \"True\" değerini verir.",
+ "LOGIC_COMPARE_TOOLTIP_LT": "Girilen ilk değer ikinci değerden küçükse \"True\" değerini verir.",
+ "LOGIC_COMPARE_TOOLTIP_LTE": "Girilen ilk değer ikinci değerden küçük veya eşitse \"True\" değerini verir.",
+ "LOGIC_COMPARE_TOOLTIP_GT": "Girilen ilk değer ikinci değerden daha büyükse \"True\" değerini verir.",
+ "LOGIC_COMPARE_TOOLTIP_GTE": "Girilen ilk değer ikinci değerden büyük veya eşitse \"True\" değerini verir.",
+ "LOGIC_OPERATION_TOOLTIP_AND": "Girilen iki değerde doğruysa \"True\" değerini verir.",
+ "LOGIC_OPERATION_AND": "ve",
+ "LOGIC_OPERATION_TOOLTIP_OR": "Girilen iki değerden en az biri doğruysa \"True\" değerini verir.",
+ "LOGIC_OPERATION_OR": "veya",
+ "LOGIC_NEGATE_TITLE": "%1 değil",
+ "LOGIC_NEGATE_TOOLTIP": "Girilen değer yanlışsa \"True\" değerini verir.Girilen değer doğruysa \"False\" değerini verir.",
+ "LOGIC_BOOLEAN_TRUE": "Olumlu",
+ "LOGIC_BOOLEAN_FALSE": "false = Olumsuz",
+ "LOGIC_BOOLEAN_TOOLTIP": "Ya 'True' yada 'False' değerini verir.",
+ "LOGIC_NULL_HELPURL": "https://en.wikipedia.org/wiki/Nullable_type",
+ "LOGIC_NULL": "sıfır",
+ "LOGIC_NULL_TOOLTIP": "sıfır verir.",
+ "LOGIC_TERNARY_HELPURL": "https://en.wikipedia.org/wiki/%3F:",
+ "LOGIC_TERNARY_CONDITION": "test",
+ "LOGIC_TERNARY_IF_TRUE": "doğru ise",
+ "LOGIC_TERNARY_IF_FALSE": "yanlış ise",
+ "LOGIC_TERNARY_TOOLTIP": "'test'deki şartı test eder. Eğer şart doğru ise 'doğru' değeri döndürür, aksi halde 'yanlış' değeri döndürür.",
+ "MATH_NUMBER_HELPURL": "https://en.wikipedia.org/wiki/Number",
+ "MATH_NUMBER_TOOLTIP": "Bir sayı.",
+ "MATH_ADDITION_SYMBOL": "+",
+ "MATH_SUBTRACTION_SYMBOL": "tire",
+ "MATH_DIVISION_SYMBOL": "÷",
+ "MATH_MULTIPLICATION_SYMBOL": "x",
+ "MATH_POWER_SYMBOL": "üst alma",
+ "MATH_TRIG_SIN": "Sinüs",
+ "MATH_TRIG_COS": "kosünüs",
+ "MATH_TRIG_TAN": "tanjant",
+ "MATH_TRIG_ASIN": "asinüs",
+ "MATH_TRIG_ACOS": "akosünüs",
+ "MATH_TRIG_ATAN": "atanjant",
+ "MATH_ARITHMETIC_HELPURL": "https://tr.wikipedia.org/wiki/Aritmetik",
+ "MATH_ARITHMETIC_TOOLTIP_ADD": "İki rakamın toplamını döndür.",
+ "MATH_ARITHMETIC_TOOLTIP_MINUS": "İki sayını farkını döndür.",
+ "MATH_ARITHMETIC_TOOLTIP_MULTIPLY": "İki sayının çarpımını döndür.",
+ "MATH_ARITHMETIC_TOOLTIP_DIVIDE": "İki sayının bölümünü döndür.",
+ "MATH_ARITHMETIC_TOOLTIP_POWER": "İlk sayinin ikincinin kuvvetine yükseltilmişini döndür.",
+ "MATH_SINGLE_HELPURL": "https://tr.wikipedia.org/wiki/Karek%C3%B6k",
+ "MATH_SINGLE_OP_ROOT": "Kare kök",
+ "MATH_SINGLE_TOOLTIP_ROOT": "Bir sayının karekökü nü döndür .",
+ "MATH_SINGLE_OP_ABSOLUTE": "Kesin",
+ "MATH_SINGLE_TOOLTIP_ABS": "Bir sayının tam değerini döndür .",
+ "MATH_SINGLE_TOOLTIP_NEG": "Bir sayıyı geçersiz olarak döndür .",
+ "MATH_SINGLE_TOOLTIP_LN": "Bir sayının doğal logaritmasını döndür .",
+ "MATH_SINGLE_TOOLTIP_LOG10": "Bir sayının 10 temelinde logaritmasını döndür .",
+ "MATH_SINGLE_TOOLTIP_EXP": "Bir sayının e ' inci kuvvetini döndür .",
+ "MATH_SINGLE_TOOLTIP_POW10": "Bir sayının 10. kuvvetini döndür .",
+ "MATH_TRIG_HELPURL": "https://tr.wikipedia.org/wiki/Trigonometrik_fonksiyonlar",
+ "MATH_TRIG_TOOLTIP_SIN": "Bir açının sinüsünü döndür(radyan olarak değil).",
+ "MATH_TRIG_TOOLTIP_COS": "Bir açının kosinüsünü döndür(radyan olarak değil).",
+ "MATH_TRIG_TOOLTIP_TAN": "Bir açının tanjantını döndür(radyan olarak değil).",
+ "MATH_TRIG_TOOLTIP_ASIN": "Bir sayının ters sinüsünü döndür .",
+ "MATH_TRIG_TOOLTIP_ACOS": "Bir sayının ters kosunusunu döndür .",
+ "MATH_TRIG_TOOLTIP_ATAN": "Bir sayının ters tanjantını döndür .",
+ "MATH_CONSTANT_HELPURL": "https://en.wikipedia.org/wiki/Mathematical_constant",
+ "MATH_CONSTANT_TOOLTIP": "Yaygın sabitlerden birini döndür:π (3.141…), e (2.718…), φ (1.618…), sqrt(2) (1.414…), sqrt(½) (0.707…), or ∞ (sonsuz).",
+ "MATH_IS_EVEN": "çift",
+ "MATH_IS_ODD": "tek",
+ "MATH_IS_PRIME": "asal",
+ "MATH_IS_WHOLE": "Bütün olduğunu",
+ "MATH_IS_POSITIVE": "pozitif",
+ "MATH_IS_NEGATIVE": "negatif",
+ "MATH_IS_DIVISIBLE_BY": "bölünebilir",
+ "MATH_IS_TOOLTIP": "Bir sayinin çift mi tek mi , tam mı, asal mı , pozitif mi, negatif mi, veya tam bir sayıyla bölünebilirliğini kontrol et.'True' veya 'False' değerini döndür.",
+ "MATH_CHANGE_HELPURL": "https://en.wikipedia.org/wiki/Programming_idiom#Incrementing_a_counter",
+ "MATH_CHANGE_TITLE": "%1'i %2 kadar değiştir",
+ "MATH_CHANGE_TOOLTIP": "'%1' değişkenine bir sayı ekle.",
+ "MATH_ROUND_HELPURL": "https://en.wikipedia.org/wiki/Rounding Yuvarlama fonksiyonu için araştırma yapınız, sayfanın Türkçe çevirisi henüz mevcut değil.",
+ "MATH_ROUND_TOOLTIP": "Bir sayı yı yukarı yada aşağı yuvarla .",
+ "MATH_ROUND_OPERATOR_ROUND": "Yuvarla",
+ "MATH_ROUND_OPERATOR_ROUNDUP": "yukarı yuvarla",
+ "MATH_ROUND_OPERATOR_ROUNDDOWN": "aşağı yuvarla",
+ "MATH_ONLIST_HELPURL": "",
+ "MATH_ONLIST_OPERATOR_SUM": "Listenin toplamı",
+ "MATH_ONLIST_TOOLTIP_SUM": "Listede ki tüm sayıların toplamını döndür.",
+ "MATH_ONLIST_OPERATOR_MIN": "Listenin en küçüğü",
+ "MATH_ONLIST_TOOLTIP_MIN": "Listenin en küçüğünü döndür.",
+ "MATH_ONLIST_OPERATOR_MAX": "en büyük sayı",
+ "MATH_ONLIST_TOOLTIP_MAX": "Listenin en büyüğünü döndür.",
+ "MATH_ONLIST_OPERATOR_AVERAGE": "listenin ortalaması",
+ "MATH_ONLIST_TOOLTIP_AVERAGE": "Listedeki sayısal değerlerin ortalamasını (aritmetik anlamda) döndür.",
+ "MATH_ONLIST_OPERATOR_MEDIAN": "Listenin medyanı",
+ "MATH_ONLIST_TOOLTIP_MEDIAN": "Listenin medyanını döndür.",
+ "MATH_ONLIST_OPERATOR_MODE": "Listenin modları",
+ "MATH_ONLIST_TOOLTIP_MODE": "Listede ki en yaygın öğe veya öğelerinin listesini döndür.",
+ "MATH_ONLIST_OPERATOR_STD_DEV": "Listenin standart sapması",
+ "MATH_ONLIST_TOOLTIP_STD_DEV": "Listenin standart sapmasını döndür.",
+ "MATH_ONLIST_OPERATOR_RANDOM": "Listenin rastgele öğesi",
+ "MATH_ONLIST_TOOLTIP_RANDOM": "Listeden rastgele bir element döndür.",
+ "MATH_MODULO_HELPURL": "https://en.wikipedia.org/wiki/Modulo_operation",
+ "MATH_MODULO_TITLE": "%1 ÷ %2 nin kalanı",
+ "MATH_MODULO_TOOLTIP": "İki sayının bölümünden kalanı döndür.",
+ "MATH_CONSTRAIN_TITLE": "%1 i en düşük %2 en yüksek %3 ile sınırla",
+ "MATH_CONSTRAIN_TOOLTIP": "Bir sayıyı belirli iki sayı arasında sınırlandır(dahil).",
+ "MATH_RANDOM_INT_HELPURL": "https://tr.wikipedia.org/wiki/Rastgele_say%C4%B1_%C3%BCretimi",
+ "MATH_RANDOM_INT_TITLE": "%1 ile %2 arasında rastgele tam sayı üret",
+ "MATH_RANDOM_INT_TOOLTIP": "Herhangi iki sayı arasında , sayılar dahil olmak üzere , rastgele bir tam sayı döndür.",
+ "MATH_RANDOM_FLOAT_HELPURL": "https://tr.wikipedia.org/wiki/Rastgele_say%C4%B1_%C3%BCretimi",
+ "MATH_RANDOM_FLOAT_TITLE_RANDOM": "Rast gele kesirli sayı , yada parça",
+ "MATH_RANDOM_FLOAT_TOOLTIP": "0.0(dahil) ve 1.0 (hariç) sayıları arasında bir sayı döndür .",
+ "TEXT_TEXT_HELPURL": "https://en.wikipedia.org/wiki/String_(computer_science)",
+ "TEXT_TEXT_TOOLTIP": "Metnin bir harfi,kelimesi veya satırı.",
+ "TEXT_JOIN_TITLE_CREATEWITH": "ile metin oluştur",
+ "TEXT_JOIN_TOOLTIP": "Herhangi bir sayıda ki öğeleri bir araya getirerek metnin bir parçasını oluştur.",
+ "TEXT_CREATE_JOIN_TITLE_JOIN": "Katıl",
+ "TEXT_CREATE_JOIN_TOOLTIP": "Bu metin bloğunu düzenlemek için bölüm ekle,sil veya yeniden görevlendir.",
+ "TEXT_CREATE_JOIN_ITEM_TOOLTIP": "Metine bir öğe ekle.",
+ "TEXT_APPEND_TO": "e",
+ "TEXT_APPEND_APPENDTEXT": "Metin Ekle",
+ "TEXT_APPEND_TOOLTIP": "Değişken '%1' e bazı metinler ekleyin.",
+ "TEXT_LENGTH_TITLE": "%1 in uzunluğu",
+ "TEXT_LENGTH_TOOLTIP": "Yazı içerisinde verilen harflerin ( harf arasındaki boşluklar dahil) sayısını verir .",
+ "TEXT_ISEMPTY_TITLE": "%1 boş",
+ "TEXT_ISEMPTY_TOOLTIP": "Verilen metin boşsa true(doğru) değerini verir.",
+ "TEXT_INDEXOF_TOOLTIP": "İlk metnin ikinci metnin içindeki ilk ve son varoluşlarının indeksini döndürür.Metin bulunamadıysa %1 döndürür.",
+ "TEXT_INDEXOF_INPUT_INTEXT": "metinde",
+ "TEXT_INDEXOF_OPERATOR_FIRST": "Metnin ilk varolduğu yeri bul",
+ "TEXT_INDEXOF_OPERATOR_LAST": "Metnin son varolduğu yeri bul",
+ "TEXT_INDEXOF_TAIL": "",
+ "TEXT_CHARAT_INPUT_INTEXT": "metinde",
+ "TEXT_CHARAT_FROM_START": "# harfini al",
+ "TEXT_CHARAT_FROM_END": "# dan sona harfleri al",
+ "TEXT_CHARAT_FIRST": "İlk harfini al",
+ "TEXT_CHARAT_LAST": "son harfi al",
+ "TEXT_CHARAT_RANDOM": "Rastgele bir harf al",
+ "TEXT_CHARAT_TAIL": "",
+ "TEXT_CHARAT_TOOLTIP": "Belirli pozisyonda ki bir harfi döndürür.",
+ "TEXT_GET_SUBSTRING_TOOLTIP": "Metinin belirli bir kısmını döndürür.",
+ "TEXT_GET_SUBSTRING_INPUT_IN_TEXT": "metinde",
+ "TEXT_GET_SUBSTRING_START_FROM_START": "n inci harften alt-string alma",
+ "TEXT_GET_SUBSTRING_START_FROM_END": "n inci harften sona kadar alt-string alma",
+ "TEXT_GET_SUBSTRING_START_FIRST": "ilk harften başlayarak alt-string alma",
+ "TEXT_GET_SUBSTRING_END_FROM_START": "# harfe",
+ "TEXT_GET_SUBSTRING_END_FROM_END": "Sondan # harfe",
+ "TEXT_GET_SUBSTRING_END_LAST": "son harfe",
+ "TEXT_GET_SUBSTRING_TAIL": "",
+ "TEXT_CHANGECASE_TOOLTIP": "Metnin bir kopyasını farklı bir harf durumunda (HEPSİ BÜYÜK - hepsi küçük) getirir.",
+ "TEXT_CHANGECASE_OPERATOR_UPPERCASE": "büyük harf",
+ "TEXT_CHANGECASE_OPERATOR_LOWERCASE": "küçük harf",
+ "TEXT_CHANGECASE_OPERATOR_TITLECASE": "Baş Harfler Büyük",
+ "TEXT_TRIM_TOOLTIP": "Metnin bir veya her iki sondan da boşlukları silinmiş şekilde kopyasını verir.",
+ "TEXT_TRIM_OPERATOR_BOTH": "iki tarafından da boşlukları temizle",
+ "TEXT_TRIM_OPERATOR_LEFT": "solundan boşlukları temizle",
+ "TEXT_TRIM_OPERATOR_RIGHT": "sağından boşlukları temizle",
+ "TEXT_PRINT_TITLE": "%1 ' i Yaz",
+ "TEXT_PRINT_TOOLTIP": "Belirli bir metni,sayıyı veya başka bir değeri yaz.",
+ "TEXT_PROMPT_TYPE_TEXT": "Kullanıcıdan yazım al , istek mesajıyla",
+ "TEXT_PROMPT_TYPE_NUMBER": "Kullanıcıdan sayı al , istek mesajı göstererek",
+ "TEXT_PROMPT_TOOLTIP_NUMBER": "Kullanıcıdan sayı al .",
+ "TEXT_PROMPT_TOOLTIP_TEXT": "Kullanıcıdan Yazım al .",
+ "LISTS_CREATE_EMPTY_HELPURL": "https://github.com/google/blockly/wiki/Lists#create-empty-list",
+ "LISTS_CREATE_EMPTY_TITLE": "Boş liste oluştur",
+ "LISTS_CREATE_EMPTY_TOOLTIP": "Veri kaydı içermeyen uzunluğu 0 olan bir listeyi verir",
+ "LISTS_CREATE_WITH_TOOLTIP": "Herhangi sayıda nesne içeren bir liste oluştur.",
+ "LISTS_CREATE_WITH_INPUT_WITH": "İle liste oluşturma",
+ "LISTS_CREATE_WITH_CONTAINER_TITLE_ADD": "liste",
+ "LISTS_CREATE_WITH_CONTAINER_TOOLTIP": "Bu liste bloğunu yeniden yapılandırmak için bölüm ekle,kaldır veya yeniden çağır.",
+ "LISTS_CREATE_WITH_ITEM_TOOLTIP": "Listeye bir nesne ekle.",
+ "LISTS_REPEAT_TOOLTIP": "Verilen bir değerin , belirli bir sayıda tekrarlanmasından oluşan bir liste yaratır .",
+ "LISTS_REPEAT_TITLE": "%1 nesnenin %2 kez tekrarlandığı bir liste yarat",
+ "LISTS_LENGTH_TITLE": "%1'in uzunluğu",
+ "LISTS_LENGTH_TOOLTIP": "Bir listenin uzunluğunu verir.",
+ "LISTS_ISEMPTY_TITLE": "%1 boş",
+ "LISTS_ISEMPTY_TOOLTIP": "Eğer liste boş ise true döndürür .",
+ "LISTS_INLIST": "Listede",
+ "LISTS_INDEX_OF_FIRST": "Öğenin ilk varolduğu yeri bul",
+ "LISTS_INDEX_OF_LAST": "Öğenin son varolduğu yeri bul",
+ "LISTS_INDEX_OF_TOOLTIP": "Listedeki öğenin ilk/son oluşumunun indeksini döndürür. Eğer öğe bulunamaz ise %1 döndürür.",
+ "LISTS_GET_INDEX_GET": "Al",
+ "LISTS_GET_INDEX_GET_REMOVE": "al ve kaldır",
+ "LISTS_GET_INDEX_REMOVE": "kaldır",
+ "LISTS_GET_INDEX_FROM_START": "# Kare",
+ "LISTS_GET_INDEX_FROM_END": "# sonundan",
+ "LISTS_GET_INDEX_FIRST": "ilk",
+ "LISTS_GET_INDEX_LAST": "son",
+ "LISTS_GET_INDEX_RANDOM": "rastgele",
+ "LISTS_GET_INDEX_TAIL": "",
+ "LISTS_INDEX_FROM_START_TOOLTIP": "%1 ilk öğedir.",
+ "LISTS_INDEX_FROM_END_TOOLTIP": "%1 son öğedir.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_FROM": "Listede belirli pozisyondaki bir öğeyi verir.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_FIRST": "Listedeki ilk öğeyi verir.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_LAST": "Listedeki son öğeyi verir.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_RANDOM": "Listedeki rastgele bir öğeyi verir.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM": "Kaldırır ve listede belirtilen konumdaki bir öğeyi döndürür.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST": "Kaldırır ve listedeki ilk öğeyi döndürür.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST": "Kaldırır ve listedeki son öğeyi döndürür.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM": "Kaldırır ve listedeki rastgele bir öğeyi verir.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM": "Bir liste içerisinde , tanımlanan pozisyonda ki öğeyi kaldırır.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST": "Listedeki ilk nesneyi kaldırır.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST": "Listedeki son nesneyi kaldırır.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM": "Listedeki rastgele bir nesneyi kaldırır.",
+ "LISTS_SET_INDEX_SET": "yerleştir",
+ "LISTS_SET_INDEX_INSERT": "e yerleştir",
+ "LISTS_SET_INDEX_INPUT_TO": "olarak",
+ "LISTS_SET_INDEX_TOOLTIP_SET_FROM": "Bir öğeyi belirtilen yere göre listeye yerleştirir .",
+ "LISTS_SET_INDEX_TOOLTIP_SET_FIRST": "Bir listenin ilk öğesini yerleştirir .",
+ "LISTS_SET_INDEX_TOOLTIP_SET_LAST": "Bir listedeki son öğeyi yerleştirir .",
+ "LISTS_SET_INDEX_TOOLTIP_SET_RANDOM": "Listeye rast gele bir öğe yerleştirir .",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_FROM": "Bir öğeyi belirtilen pozisyona göre listeye yerleştirir .",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST": "Nesneyi listenin başlangıcına ekler.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_LAST": "Öğeyi listenin sonuna ekle .",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM": "Bir öğeyi listeye rast gele ekler .",
+ "LISTS_GET_SUBLIST_START_FROM_START": "# dan alt liste al",
+ "LISTS_GET_SUBLIST_START_FROM_END": "# işaretinden sonra gelen ifadeye göre alt liste al , # sondan",
+ "LISTS_GET_SUBLIST_START_FIRST": "ilk öğeden alt liste al",
+ "LISTS_GET_SUBLIST_END_FROM_START": "#'a",
+ "LISTS_GET_SUBLIST_END_FROM_END": "Sondan #'a kadar",
+ "LISTS_GET_SUBLIST_END_LAST": "Sona kadar",
+ "LISTS_GET_SUBLIST_TAIL": "",
+ "LISTS_GET_SUBLIST_TOOLTIP": "Listenin belirli bir kısmının kopyasını yaratır.",
+ "LISTS_SORT_HELPURL": "https://github.com/google/blockly/wiki/Lists#sorting-a-list",
+ "LISTS_SORT_TITLE": "kısa %1 %2 %3",
+ "LISTS_SORT_TOOLTIP": "Listenin kısa bir kopyası.",
+ "LISTS_SORT_ORDER_ASCENDING": "artan",
+ "LISTS_SORT_ORDER_DESCENDING": "azalan",
+ "LISTS_SORT_TYPE_NUMERIC": "sayısal",
+ "LISTS_SORT_TYPE_TEXT": "alfabetik",
+ "LISTS_SORT_TYPE_IGNORECASE": "alfabetik, gözardı et",
+ "LISTS_SPLIT_LIST_FROM_TEXT": "metinden liste yap",
+ "LISTS_SPLIT_TEXT_FROM_LIST": "listeden metin yap",
+ "LISTS_SPLIT_WITH_DELIMITER": "sınırlayıcı ile",
+ "LISTS_SPLIT_TOOLTIP_SPLIT": "Her sınırlayıcıda kesen metinleri bir metin listesine ayır.",
+ "LISTS_SPLIT_TOOLTIP_JOIN": "Bir sınırlayıcı tarafından kesilen metinlerin listesini bir metine ekle.",
+ "ORDINAL_NUMBER_SUFFIX": "",
+ "VARIABLES_GET_TOOLTIP": "Bu değişkenin değerini verir.",
+ "VARIABLES_GET_CREATE_SET": "'set %1' oluştur",
+ "VARIABLES_SET": "Atamak %1 e %2",
+ "VARIABLES_SET_TOOLTIP": "Bu değişkeni girilen değere eşitler.",
+ "VARIABLES_SET_CREATE_GET": "'get %1' oluştur",
+ "PROCEDURES_DEFNORETURN_HELPURL": "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29",
+ "PROCEDURES_DEFNORETURN_TITLE": "e",
+ "PROCEDURES_DEFNORETURN_PROCEDURE": "birşey yap",
+ "PROCEDURES_BEFORE_PARAMS": "ile :",
+ "PROCEDURES_CALL_BEFORE_PARAMS": "ile :",
+ "PROCEDURES_DEFNORETURN_DO": "",
+ "PROCEDURES_DEFNORETURN_TOOLTIP": "Çıktı vermeyen bir fonksiyon yaratır .",
+ "PROCEDURES_DEFNORETURN_COMMENT": "Bu işlevi açıkla...",
+ "PROCEDURES_DEFRETURN_HELPURL": "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29",
+ "PROCEDURES_DEFRETURN_RETURN": "Geri dön",
+ "PROCEDURES_DEFRETURN_TOOLTIP": "Çıktı veren bir fonksiyon oluşturur.",
+ "PROCEDURES_ALLOW_STATEMENTS": "Eğer ifadelerine izin ver",
+ "PROCEDURES_DEF_DUPLICATE_WARNING": "Uyarı: Bu fonksiyon yinelenen parametreler vardır.",
+ "PROCEDURES_CALLNORETURN_HELPURL": "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29",
+ "PROCEDURES_CALLNORETURN_TOOLTIP": "Kullanıcı tanımlı fonksiyonu çalıştır '%1' .",
+ "PROCEDURES_CALLRETURN_HELPURL": "https://en.wikipedia.org/wiki/Procedure_%28computer_science%29",
+ "PROCEDURES_CALLRETURN_TOOLTIP": "Kullanıcı tanımlı fonksiyonu çalıştır '%1' ve çıktısını kullan .",
+ "PROCEDURES_MUTATORCONTAINER_TITLE": "girdiler",
+ "PROCEDURES_MUTATORCONTAINER_TOOLTIP": "Bu işlevin girdilerini ekleyin, çıkarın, ya da yeniden sıralayın.",
+ "PROCEDURES_MUTATORARG_TITLE": "girdi adı:",
+ "PROCEDURES_MUTATORARG_TOOLTIP": "İşleve bir girdi ekleyin.",
+ "PROCEDURES_HIGHLIGHT_DEF": "Fonksiyon tanımı vurgulamak",
+ "PROCEDURES_CREATE_DO": "'%1' oluştur",
+ "PROCEDURES_IFRETURN_TOOLTIP": "Eğer değer doğruysa, ikinci değere geri dön.",
+ "PROCEDURES_IFRETURN_HELPURL": "http://c2.com/cgi/wiki?GuardClause",
+ "PROCEDURES_IFRETURN_WARNING": "Uyarı: Bu blok yalnızca bir fonksiyon tanımı içinde kullanılır."
+}
diff --git a/blockly/msg/json/uk.json b/blockly/msg/json/uk.json
new file mode 100644
index 0000000..158d9d8
--- /dev/null
+++ b/blockly/msg/json/uk.json
@@ -0,0 +1,332 @@
+{
+ "@metadata": {
+ "authors": [
+ "Andriykopanytsia",
+ "Base",
+ "Igor Zavadsky",
+ "Lxlalexlxl",
+ "아라",
+ "Visem"
+ ]
+ },
+ "VARIABLES_DEFAULT_NAME": "елемент",
+ "TODAY": "Сьогодні",
+ "DUPLICATE_BLOCK": "Дублювати",
+ "ADD_COMMENT": "Додати коментар",
+ "REMOVE_COMMENT": "Видалити коментар",
+ "EXTERNAL_INPUTS": "Зовнішні входи",
+ "INLINE_INPUTS": "Вбудовані входи",
+ "DELETE_BLOCK": "Видалити блок",
+ "DELETE_X_BLOCKS": "Видалити %1 блоків",
+ "DELETE_ALL_BLOCKS": "Вилучити всі блоки %1?",
+ "CLEAN_UP": "Вирівняти блоки",
+ "COLLAPSE_BLOCK": "Згорнути блок",
+ "COLLAPSE_ALL": "Згорнути блоки",
+ "EXPAND_BLOCK": "Розгорнути блок",
+ "EXPAND_ALL": "Розгорнути блоки",
+ "DISABLE_BLOCK": "Вимкнути блок",
+ "ENABLE_BLOCK": "Увімкнути блок",
+ "HELP": "Довідка",
+ "UNDO": "Скасувати",
+ "REDO": "Повторити",
+ "CHANGE_VALUE_TITLE": "Змінити значення:",
+ "RENAME_VARIABLE": "Перейменувати змінну...",
+ "RENAME_VARIABLE_TITLE": "Перейменувати усі змінні \"%1\" до:",
+ "NEW_VARIABLE": "Нова змінна...",
+ "NEW_VARIABLE_TITLE": "Нова назва змінної:",
+ "COLOUR_PICKER_HELPURL": "https://uk.wikipedia.org/wiki/Колір",
+ "COLOUR_PICKER_TOOLTIP": "Вибрати колір з палітри.",
+ "COLOUR_RANDOM_TITLE": "випадковий колір",
+ "COLOUR_RANDOM_TOOLTIP": "Вибрати колір навмання.",
+ "COLOUR_RGB_HELPURL": "http://www.december.com/html/spec/colorper.html",
+ "COLOUR_RGB_TITLE": "колір з",
+ "COLOUR_RGB_RED": "червоний",
+ "COLOUR_RGB_GREEN": "зелений",
+ "COLOUR_RGB_BLUE": "синій",
+ "COLOUR_RGB_TOOLTIP": "Створити колір зі вказаними рівнями червоного, зеленого та синього. Усі значення мають бути від 0 до 100.",
+ "COLOUR_BLEND_HELPURL": "http://meyerweb.com/eric/tools/color-blend/",
+ "COLOUR_BLEND_TITLE": "змішати",
+ "COLOUR_BLEND_COLOUR1": "колір 1",
+ "COLOUR_BLEND_COLOUR2": "колір 2",
+ "COLOUR_BLEND_RATIO": "співвідношення",
+ "COLOUR_BLEND_TOOLTIP": "Змішує два кольори разом у вказаному співвідношені (0.0 - 1.0).",
+ "CONTROLS_REPEAT_HELPURL": "https://uk.wikipedia.org/wiki/Цикл_(програмування)#.D0.A6.D0.B8.D0.BA.D0.BB_.D0.B7_.D0.BB.D1.96.D1.87.D0.B8.D0.BB.D1.8C.D0.BD.D0.B8.D0.BA.D0.BE.D0.BC",
+ "CONTROLS_REPEAT_TITLE": "повторити %1 разів",
+ "CONTROLS_REPEAT_INPUT_DO": "виконати",
+ "CONTROLS_REPEAT_TOOLTIP": "Виконати певні дії декілька разів.",
+ "CONTROLS_WHILEUNTIL_OPERATOR_WHILE": "повторювати поки",
+ "CONTROLS_WHILEUNTIL_OPERATOR_UNTIL": "повторювати, доки не",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_WHILE": "Поки значення істинне, виконувати певні дії.",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL": "Поки значення хибне, виконувати певні дії.",
+ "CONTROLS_FOR_TOOLTIP": "Наявна змінна \"%1\" набуває значень від початкового до кінцевого, враховуючи заданий інтервал, і виконуються вказані блоки.",
+ "CONTROLS_FOR_TITLE": "рахувати з %1 від %2 до %3 через %4",
+ "CONTROLS_FOREACH_TITLE": "для кожного елемента %1 у списку %2",
+ "CONTROLS_FOREACH_TOOLTIP": "Для кожного елемента в списку змінна '%1' отримує значення елемента, а потім виконуються певні дії.",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK": "перервати цикл",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE": "продовжити з наступної ітерації циклу",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK": "Перервати виконання циклу.",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE": "Пропустити залишок цього циклу і перейти до виконання наступної ітерації.",
+ "CONTROLS_FLOW_STATEMENTS_WARNING": "Попередження: цей блок може бути використаний тільки в межах циклу.",
+ "CONTROLS_IF_TOOLTIP_1": "Якщо значення істинне, то виконати певні дії.",
+ "CONTROLS_IF_TOOLTIP_2": "Якщо значення істинне, то виконується перший блок операторів. В іншому випадку виконується другий блок операторів.",
+ "CONTROLS_IF_TOOLTIP_3": "Якщо перше значення істинне, то виконується перший блок операторів. В іншому випадку, якщо друге значення істина, то виконується другий блок операторів.",
+ "CONTROLS_IF_TOOLTIP_4": "Якщо перше значення істинне, то виконується перший блок операторів. В іншому випадку, якщо друге значення істинне, то виконується другий блок операторів. Якщо жодне із значень не є істинним, то виконується останній блок операторів.",
+ "CONTROLS_IF_MSG_IF": "якщо",
+ "CONTROLS_IF_MSG_ELSEIF": "інакше якщо",
+ "CONTROLS_IF_MSG_ELSE": "інакше",
+ "CONTROLS_IF_IF_TOOLTIP": "Додайте, вилучіть або змініть порядок секцій, щоб переналаштувати цей блок 'якщо'.",
+ "CONTROLS_IF_ELSEIF_TOOLTIP": "Додайте умову до блока 'якщо'.",
+ "CONTROLS_IF_ELSE_TOOLTIP": "Додати остаточну, всеосяжну умову до блоку 'якщо'.",
+ "LOGIC_COMPARE_HELPURL": "https://uk.wikipedia.org/wiki/Нерівність",
+ "LOGIC_COMPARE_TOOLTIP_EQ": "Повертає істину, якщо обидва входи рівні один одному.",
+ "LOGIC_COMPARE_TOOLTIP_NEQ": "Повертає істину, якщо обидва входи не дорівнюють один одному.",
+ "LOGIC_COMPARE_TOOLTIP_LT": "Повертає істину, якщо перше вхідне значення менше, ніж друге.",
+ "LOGIC_COMPARE_TOOLTIP_LTE": "Повертає істину, якщо перше вхідне значення менше або дорівнює другому.",
+ "LOGIC_COMPARE_TOOLTIP_GT": "Повертає істину, якщо перше вхідне значення більше, ніж друге.",
+ "LOGIC_COMPARE_TOOLTIP_GTE": "Повертає істину, якщо перше вхідне значення більше або дорівнює другому.",
+ "LOGIC_OPERATION_TOOLTIP_AND": "Повертає істину, якщо обидва входи істинні.",
+ "LOGIC_OPERATION_AND": "та",
+ "LOGIC_OPERATION_TOOLTIP_OR": "Повертає істину, якщо принаймні один з входів істинний.",
+ "LOGIC_OPERATION_OR": "або",
+ "LOGIC_NEGATE_TITLE": "не %1",
+ "LOGIC_NEGATE_TOOLTIP": "Повертає істину, якщо вхідне значення хибне. Повертає хибність, якщо вхідне значення істинне.",
+ "LOGIC_BOOLEAN_TRUE": "істина",
+ "LOGIC_BOOLEAN_FALSE": "хибність",
+ "LOGIC_BOOLEAN_TOOLTIP": "Повертає значення істина або хибність.",
+ "LOGIC_NULL_HELPURL": "https://en.wikipedia.org/wiki/Nullable_type",
+ "LOGIC_NULL": "ніщо",
+ "LOGIC_NULL_TOOLTIP": "Повертає ніщо.",
+ "LOGIC_TERNARY_HELPURL": "https://en.wikipedia.org/wiki/%3F:",
+ "LOGIC_TERNARY_CONDITION": "тест",
+ "LOGIC_TERNARY_IF_TRUE": "якщо істина",
+ "LOGIC_TERNARY_IF_FALSE": "якщо хибність",
+ "LOGIC_TERNARY_TOOLTIP": "Перевіряє умову в 'тест'. Якщо умова істинна, то повертає значення 'якщо істина'; в іншому випадку повертає значення 'якщо хибність'.",
+ "MATH_NUMBER_HELPURL": "https://uk.wikipedia.org/wiki/Число",
+ "MATH_NUMBER_TOOLTIP": "Число.",
+ "MATH_ARITHMETIC_HELPURL": "https://uk.wikipedia.org/wiki/Арифметика",
+ "MATH_ARITHMETIC_TOOLTIP_ADD": "Повертає суму двох чисел.",
+ "MATH_ARITHMETIC_TOOLTIP_MINUS": "Повертає різницю двох чисел.",
+ "MATH_ARITHMETIC_TOOLTIP_MULTIPLY": "Повертає добуток двох чисел.",
+ "MATH_ARITHMETIC_TOOLTIP_DIVIDE": "Повертає частку двох чисел.",
+ "MATH_ARITHMETIC_TOOLTIP_POWER": "Повертає перше число, піднесене до степеня, вираженого другим числом.",
+ "MATH_SINGLE_HELPURL": "https://uk.wikipedia.org/wiki/Квадратний_корінь",
+ "MATH_SINGLE_OP_ROOT": "квадратний корінь",
+ "MATH_SINGLE_TOOLTIP_ROOT": "Повертає квадратний корінь з числа.",
+ "MATH_SINGLE_OP_ABSOLUTE": "модуль",
+ "MATH_SINGLE_TOOLTIP_ABS": "Повертає модуль числа.",
+ "MATH_SINGLE_TOOLTIP_NEG": "Повертає протилежне число.",
+ "MATH_SINGLE_TOOLTIP_LN": "Повертає натуральний логарифм числа.",
+ "MATH_SINGLE_TOOLTIP_LOG10": "Повертає десятковий логарифм числа.",
+ "MATH_SINGLE_TOOLTIP_EXP": "Повертає e у степені.",
+ "MATH_SINGLE_TOOLTIP_POW10": "Повертає 10 у степені.",
+ "MATH_TRIG_HELPURL": "https://uk.wikipedia.org/wiki/Тригонометричні_функції",
+ "MATH_TRIG_TOOLTIP_SIN": "Повертає синус кута в градусах (не в радіанах).",
+ "MATH_TRIG_TOOLTIP_COS": "Повертає косинус кута в градусах (не в радіанах).",
+ "MATH_TRIG_TOOLTIP_TAN": "Повертає тангенс кута в градусах (не в радіанах).",
+ "MATH_TRIG_TOOLTIP_ASIN": "Повертає арксинус числа.",
+ "MATH_TRIG_TOOLTIP_ACOS": "Повертає арккосинус числа.",
+ "MATH_TRIG_TOOLTIP_ATAN": "Повертає арктангенс числа.",
+ "MATH_CONSTANT_HELPURL": "https://uk.wikipedia.org/wiki/Математична_константа",
+ "MATH_CONSTANT_TOOLTIP": "Повертає одну з поширених констант: π (3.141...), e (2.718...), φ (1,618...), sqrt(2) (1.414...), sqrt(½) (0.707...) або ∞ (нескінченність).",
+ "MATH_IS_EVEN": "парне",
+ "MATH_IS_ODD": "непарне",
+ "MATH_IS_PRIME": "просте",
+ "MATH_IS_WHOLE": "ціле",
+ "MATH_IS_POSITIVE": "додатне",
+ "MATH_IS_NEGATIVE": "від'ємне",
+ "MATH_IS_DIVISIBLE_BY": "ділиться на",
+ "MATH_IS_TOOLTIP": "Перевіряє, чи число парне, непарне, просте, ціле, додатне, від'ємне або чи воно ділиться на певне число без остачі. Повертає істину або хибність.",
+ "MATH_CHANGE_HELPURL": "https://en.wikipedia.org/wiki/Programming_idiom#Incrementing_a_counter",
+ "MATH_CHANGE_TITLE": "змінити %1 на %2",
+ "MATH_CHANGE_TOOLTIP": "Додати число до змінної '%1'.",
+ "MATH_ROUND_HELPURL": "https://uk.wikipedia.org/wiki/Округлення",
+ "MATH_ROUND_TOOLTIP": "Округлення числа до більшого або до меншого.",
+ "MATH_ROUND_OPERATOR_ROUND": "округлити",
+ "MATH_ROUND_OPERATOR_ROUNDUP": "округлити до більшого",
+ "MATH_ROUND_OPERATOR_ROUNDDOWN": "округлити до меншого",
+ "MATH_ONLIST_HELPURL": "http://www.mapleprimes.com/questions/100441-Applying-Function-To-List-Of-Numbers",
+ "MATH_ONLIST_OPERATOR_SUM": "сума списку",
+ "MATH_ONLIST_TOOLTIP_SUM": "Повертає суму всіх чисел у списку.",
+ "MATH_ONLIST_OPERATOR_MIN": "мінімум списку",
+ "MATH_ONLIST_TOOLTIP_MIN": "Повертає найменше число у списку.",
+ "MATH_ONLIST_OPERATOR_MAX": "максимум списку",
+ "MATH_ONLIST_TOOLTIP_MAX": "Повертає найбільше число у списку.",
+ "MATH_ONLIST_OPERATOR_AVERAGE": "середнє списку",
+ "MATH_ONLIST_TOOLTIP_AVERAGE": "Повертає середнє (арифметичне) числових значень у списку.",
+ "MATH_ONLIST_OPERATOR_MEDIAN": "медіана списку",
+ "MATH_ONLIST_TOOLTIP_MEDIAN": "Повертає медіану списку.",
+ "MATH_ONLIST_OPERATOR_MODE": "моди списку",
+ "MATH_ONLIST_TOOLTIP_MODE": "Повертає перелік найпоширеніших елементів у списку.",
+ "MATH_ONLIST_OPERATOR_STD_DEV": "стандартне відхилення списку",
+ "MATH_ONLIST_TOOLTIP_STD_DEV": "Повертає стандартне відхилення списку.",
+ "MATH_ONLIST_OPERATOR_RANDOM": "випадковий елемент списку",
+ "MATH_ONLIST_TOOLTIP_RANDOM": "Повертає випадковий елемент зі списку.",
+ "MATH_MODULO_HELPURL": "https://uk.wikipedia.org/wiki/Ділення_з_остачею",
+ "MATH_MODULO_TITLE": "остача від %1 ÷ %2",
+ "MATH_MODULO_TOOLTIP": "Повертає остачу від ділення двох чисел.",
+ "MATH_CONSTRAIN_TITLE": "обмежити %1 від %2 до %3",
+ "MATH_CONSTRAIN_TOOLTIP": "Обмежує число вказаними межами (включно).",
+ "MATH_RANDOM_INT_HELPURL": "https://uk.wikipedia.org/wiki/Генерація_випадкових_чисел",
+ "MATH_RANDOM_INT_TITLE": "випадкове ціле число від %1 до %2",
+ "MATH_RANDOM_INT_TOOLTIP": "Повертає випадкове ціле число між двома заданими межами включно.",
+ "MATH_RANDOM_FLOAT_HELPURL": "https://uk.wikipedia.org/wiki/Генерація_випадкових_чисел",
+ "MATH_RANDOM_FLOAT_TITLE_RANDOM": "випадковий дріб",
+ "MATH_RANDOM_FLOAT_TOOLTIP": "Повертає випадковий дріб від 0,0 (включно) та 1.0 (не включно).",
+ "TEXT_TEXT_HELPURL": "https://uk.wikipedia.org/wiki/Рядок_(програмування)",
+ "TEXT_TEXT_TOOLTIP": "Символ, слово або рядок тексту.",
+ "TEXT_JOIN_HELPURL": "http://www.chemie.fu-berlin.de/chemnet/use/info/make/make_8.html",
+ "TEXT_JOIN_TITLE_CREATEWITH": "створити текст з",
+ "TEXT_JOIN_TOOLTIP": "Створити фрагмент тексту шляхом з'єднування будь-якого числа елементів.",
+ "TEXT_CREATE_JOIN_TITLE_JOIN": "приєднати",
+ "TEXT_CREATE_JOIN_TOOLTIP": "Додайте, вилучіть або змініть порядок секцій для переналаштування текстового блоку.",
+ "TEXT_CREATE_JOIN_ITEM_TOOLTIP": "Додати елемент до тексту.",
+ "TEXT_APPEND_TO": "до",
+ "TEXT_APPEND_APPENDTEXT": "додати текст",
+ "TEXT_APPEND_TOOLTIP": "Додати деякий текст до змінної '%1'.",
+ "TEXT_LENGTH_TITLE": "довжина %1",
+ "TEXT_LENGTH_TOOLTIP": "Повертає число символів (включно з пропусками) у даному тексті.",
+ "TEXT_ISEMPTY_TITLE": "%1 є порожнім",
+ "TEXT_ISEMPTY_TOOLTIP": "Повертає істину, якщо вказаний текст порожній.",
+ "TEXT_INDEXOF_TOOLTIP": "Повертає індекс першого/останнього входження першого тексту в другий. Повертає %1, якщо текст не знайдено.",
+ "TEXT_INDEXOF_INPUT_INTEXT": "у тексті",
+ "TEXT_INDEXOF_OPERATOR_FIRST": "знайти перше входження тексту",
+ "TEXT_INDEXOF_OPERATOR_LAST": "знайти останнє входження тексту",
+ "TEXT_INDEXOF_TAIL": ".",
+ "TEXT_CHARAT_HELPURL": "http://publib.boulder.ibm.com/infocenter/lnxpcomp/v8v101/index.jsp?topic=%2Fcom.ibm.xlcpp8l.doc%2Flanguage%2Fref%2Farsubex.htm",
+ "TEXT_CHARAT_INPUT_INTEXT": "у тексті",
+ "TEXT_CHARAT_FROM_START": "отримати символ #",
+ "TEXT_CHARAT_FROM_END": "отримати символ # з кінця",
+ "TEXT_CHARAT_FIRST": "отримати перший символ",
+ "TEXT_CHARAT_LAST": "отримати останній символ",
+ "TEXT_CHARAT_RANDOM": "отримати випадковий символ",
+ "TEXT_CHARAT_TAIL": "-ий.",
+ "TEXT_CHARAT_TOOLTIP": "Повертає символ у зазначеній позиції.",
+ "TEXT_GET_SUBSTRING_TOOLTIP": "Повертає заданий фрагмент тексту.",
+ "TEXT_GET_SUBSTRING_INPUT_IN_TEXT": "у тексті",
+ "TEXT_GET_SUBSTRING_START_FROM_START": "отримати підрядок від символу #",
+ "TEXT_GET_SUBSTRING_START_FROM_END": "отримати підрядок від символу # з кінця",
+ "TEXT_GET_SUBSTRING_START_FIRST": "отримати підрядок від першого символу",
+ "TEXT_GET_SUBSTRING_END_FROM_START": "до символу #",
+ "TEXT_GET_SUBSTRING_END_FROM_END": "до символу # з кінця",
+ "TEXT_GET_SUBSTRING_END_LAST": "до останнього символу",
+ "TEXT_GET_SUBSTRING_TAIL": "-ого.",
+ "TEXT_CHANGECASE_TOOLTIP": "В іншому випадку повертає копію тексту.",
+ "TEXT_CHANGECASE_OPERATOR_UPPERCASE": "до ВЕРХНЬОГО регістру",
+ "TEXT_CHANGECASE_OPERATOR_LOWERCASE": "до нижнього регістру",
+ "TEXT_CHANGECASE_OPERATOR_TITLECASE": "Великі Перші Букви",
+ "TEXT_TRIM_TOOLTIP": "Повертає копію тексту з вилученими пропусками з одного або обох кінців.",
+ "TEXT_TRIM_OPERATOR_BOTH": "вилучити крайні пропуски з обох кінців",
+ "TEXT_TRIM_OPERATOR_LEFT": "вилучити пропуски з лівого боку",
+ "TEXT_TRIM_OPERATOR_RIGHT": "вилучити пропуски з правого боку",
+ "TEXT_PRINT_TITLE": "друк %1",
+ "TEXT_PRINT_TOOLTIP": "Надрукувати заданий текст, числа або інші значення.",
+ "TEXT_PROMPT_TYPE_TEXT": "запит тексту з повідомленням",
+ "TEXT_PROMPT_TYPE_NUMBER": "запит числа з повідомленням",
+ "TEXT_PROMPT_TOOLTIP_NUMBER": "Запитати у користувача число.",
+ "TEXT_PROMPT_TOOLTIP_TEXT": "Запитати у користувача деякий текст.",
+ "LISTS_CREATE_EMPTY_HELPURL": "https://github.com/google/blockly/wiki/Lists#create-empty-list",
+ "LISTS_CREATE_EMPTY_TITLE": "створити порожній список",
+ "LISTS_CREATE_EMPTY_TOOLTIP": "Повертає список, довжиною 0, що не містить записів даних",
+ "LISTS_CREATE_WITH_TOOLTIP": "Створює список з будь-якою кількістю елементів.",
+ "LISTS_CREATE_WITH_INPUT_WITH": "створити список з",
+ "LISTS_CREATE_WITH_CONTAINER_TITLE_ADD": "список",
+ "LISTS_CREATE_WITH_CONTAINER_TOOLTIP": "Додайте, вилучіть або змініть порядок секцій для переналаштування блока списку.",
+ "LISTS_CREATE_WITH_ITEM_TOOLTIP": "Додати елемент до списку.",
+ "LISTS_REPEAT_TOOLTIP": "Створює список, що складається з заданого значення повтореного задану кількість разів.",
+ "LISTS_REPEAT_TITLE": "створити список з елемента %1 повтореного %2 разів",
+ "LISTS_LENGTH_TITLE": "довжина %1",
+ "LISTS_LENGTH_TOOLTIP": "Повертає довжину списку.",
+ "LISTS_ISEMPTY_TITLE": "%1 є порожнім",
+ "LISTS_ISEMPTY_TOOLTIP": "Повертає істину, якщо список порожній.",
+ "LISTS_INLIST": "у списку",
+ "LISTS_INDEX_OF_FIRST": "знайти перше входження елемента",
+ "LISTS_INDEX_OF_LAST": "знайти останнє входження елемента",
+ "LISTS_INDEX_OF_TOOLTIP": "Повертає індекс першого/останнього входження елемента у списку. Повертає %1, якщо елемент не знайдено.",
+ "LISTS_GET_INDEX_GET": "отримати",
+ "LISTS_GET_INDEX_GET_REMOVE": "отримати і вилучити",
+ "LISTS_GET_INDEX_REMOVE": "вилучити",
+ "LISTS_GET_INDEX_FROM_START": "#",
+ "LISTS_GET_INDEX_FROM_END": "# з кінця",
+ "LISTS_GET_INDEX_FIRST": "перший",
+ "LISTS_GET_INDEX_LAST": "останній",
+ "LISTS_GET_INDEX_RANDOM": "випадковий",
+ "LISTS_GET_INDEX_TAIL": "-ий.",
+ "LISTS_INDEX_FROM_START_TOOLTIP": "%1 - це перший елемент.",
+ "LISTS_INDEX_FROM_END_TOOLTIP": "%1 - це останній елемент.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_FROM": "Повертає елемент у заданій позиції у списку.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_FIRST": "Повертає перший елемент списку.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_LAST": "Повертає останній елемент списку.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_RANDOM": "Повертає випадковий елемент списку.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM": "Видаляє і повертає елемент у заданій позиції у списку.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST": "Видаляє і повертає перший елемент списку.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST": "Видаляє і повертає останній елемент списку.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM": "Видаляє і повертає випадковий елемент списоку.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM": "Вилучає зі списку елемент у вказаній позиції.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST": "Вилучає перший елемент списку.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST": "Вилучає останній елемент списку.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM": "Вилучає випадковий елемент списку.",
+ "LISTS_SET_INDEX_SET": "встановити",
+ "LISTS_SET_INDEX_INSERT": "вставити в",
+ "LISTS_SET_INDEX_INPUT_TO": "як",
+ "LISTS_SET_INDEX_TOOLTIP_SET_FROM": "Задає елемент списку у вказаній позиції.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_FIRST": "Задає перший елемент списку.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_LAST": "Задає останній елемент списку.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_RANDOM": "Задає випадковий елемент у списку.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_FROM": "Вставка елемента у вказану позицію списку.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST": "Вставляє елемент на початок списку.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_LAST": "Додає елемент у кінці списку.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM": "Випадковим чином вставляє елемент у список.",
+ "LISTS_GET_SUBLIST_START_FROM_START": "отримати вкладений список з #",
+ "LISTS_GET_SUBLIST_START_FROM_END": "отримати вкладений список від # з кінця",
+ "LISTS_GET_SUBLIST_START_FIRST": "отримати вкладений список з першого",
+ "LISTS_GET_SUBLIST_END_FROM_START": "до #",
+ "LISTS_GET_SUBLIST_END_FROM_END": "до # з кінця",
+ "LISTS_GET_SUBLIST_END_LAST": "до останнього",
+ "LISTS_GET_SUBLIST_TAIL": "символу.",
+ "LISTS_GET_SUBLIST_TOOLTIP": "Створює копію вказаної частини списку.",
+ "LISTS_SORT_HELPURL": "https://github.com/google/blockly/wiki/Lists#sorting-a-list",
+ "LISTS_SORT_TITLE": "сортувати %3 %1 %2",
+ "LISTS_SORT_TOOLTIP": "Сортувати копію списку.",
+ "LISTS_SORT_ORDER_ASCENDING": "за зростанням",
+ "LISTS_SORT_ORDER_DESCENDING": "за спаданням",
+ "LISTS_SORT_TYPE_NUMERIC": "як числа",
+ "LISTS_SORT_TYPE_TEXT": "за абеткою",
+ "LISTS_SORT_TYPE_IGNORECASE": "за абеткою, ігноруючи регістр",
+ "LISTS_SPLIT_LIST_FROM_TEXT": "зробити з тексту список",
+ "LISTS_SPLIT_TEXT_FROM_LIST": "зробити зі списку текст",
+ "LISTS_SPLIT_WITH_DELIMITER": "з розділювачем",
+ "LISTS_SPLIT_TOOLTIP_SPLIT": "Поділити текст на список текстів, розриваючи на кожному розділювачі.",
+ "LISTS_SPLIT_TOOLTIP_JOIN": "Злити список текстів у єдиний текст, відокремивши розділювачами.",
+ "ORDINAL_NUMBER_SUFFIX": "-ий.",
+ "VARIABLES_GET_TOOLTIP": "Повертає значення цієї змінної.",
+ "VARIABLES_GET_CREATE_SET": "Створити 'встановити %1'",
+ "VARIABLES_SET": "встановити %1 до %2",
+ "VARIABLES_SET_TOOLTIP": "Задає цю змінну рівною входу.",
+ "VARIABLES_SET_CREATE_GET": "Створити 'отримати %1'",
+ "PROCEDURES_DEFNORETURN_HELPURL": "https://uk.wikipedia.org/wiki/Підпрограма",
+ "PROCEDURES_DEFNORETURN_TITLE": "до",
+ "PROCEDURES_DEFNORETURN_PROCEDURE": "щось зробити",
+ "PROCEDURES_BEFORE_PARAMS": "з:",
+ "PROCEDURES_CALL_BEFORE_PARAMS": "з:",
+ "PROCEDURES_DEFNORETURN_DO": "блок тексту",
+ "PROCEDURES_DEFNORETURN_TOOLTIP": "Створює функцію без виводу.",
+ "PROCEDURES_DEFNORETURN_COMMENT": "Опишіть цю функцію...",
+ "PROCEDURES_DEFRETURN_HELPURL": "https://uk.wikipedia.org/wiki/Підпрограма",
+ "PROCEDURES_DEFRETURN_RETURN": "повернути",
+ "PROCEDURES_DEFRETURN_TOOLTIP": "Створює функцію з виводом.",
+ "PROCEDURES_ALLOW_STATEMENTS": "дозволити дії",
+ "PROCEDURES_DEF_DUPLICATE_WARNING": "Увага: ця функція має дубльовані параметри.",
+ "PROCEDURES_CALLNORETURN_HELPURL": "https://uk.wikipedia.org/wiki/Підпрограма",
+ "PROCEDURES_CALLNORETURN_TOOLTIP": "Запустити користувацьку функцію \"%1\".",
+ "PROCEDURES_CALLRETURN_HELPURL": "https://uk.wikipedia.org/wiki/Підпрограма",
+ "PROCEDURES_CALLRETURN_TOOLTIP": "Запустити користувацьку функцію \"%1\" і використати її вивід.",
+ "PROCEDURES_MUTATORCONTAINER_TITLE": "входи",
+ "PROCEDURES_MUTATORCONTAINER_TOOLTIP": "Додайте, вилучіть або змініть порядок вхідних параметрів для цієї функції.",
+ "PROCEDURES_MUTATORARG_TITLE": "назва входу:",
+ "PROCEDURES_MUTATORARG_TOOLTIP": "Додати до функції вхідні параметри.",
+ "PROCEDURES_HIGHLIGHT_DEF": "Підсвітити визначення функції",
+ "PROCEDURES_CREATE_DO": "Створити \"%1\"",
+ "PROCEDURES_IFRETURN_TOOLTIP": "Якщо значення істинне, то повернути друге значення.",
+ "PROCEDURES_IFRETURN_HELPURL": "http://c2.com/cgi/wiki?GuardClause",
+ "PROCEDURES_IFRETURN_WARNING": "Попередження: цей блок може використовуватися лише в межах визначення функції."
+}
diff --git a/blockly/msg/json/vi.json b/blockly/msg/json/vi.json
new file mode 100644
index 0000000..cfe6c7d
--- /dev/null
+++ b/blockly/msg/json/vi.json
@@ -0,0 +1,298 @@
+{
+ "@metadata": {
+ "authors": [
+ "Baonguyen21022003",
+ "Espertus",
+ "Qneutron",
+ "Withoutaname",
+ "Dstream"
+ ]
+ },
+ "VARIABLES_DEFAULT_NAME": "vật",
+ "DUPLICATE_BLOCK": "Tạo Bản Sao",
+ "ADD_COMMENT": "Thêm Chú Giải",
+ "REMOVE_COMMENT": "Xóa Chú Giải",
+ "EXTERNAL_INPUTS": "Chỗ Gắn Bên Ngoài",
+ "INLINE_INPUTS": "Chỗ Gắn Cùng Dòng",
+ "DELETE_BLOCK": "Xóa Mảnh Này",
+ "DELETE_X_BLOCKS": "Xóa %1 Mảnh",
+ "DELETE_ALL_BLOCKS": "Xóa hết %1 mảnh?",
+ "COLLAPSE_BLOCK": "Thu Nhỏ Mảnh",
+ "COLLAPSE_ALL": "Thu Nhỏ Mọi Mảnh",
+ "EXPAND_BLOCK": "Mở Lớn Mảnh",
+ "EXPAND_ALL": "Mở Lớn Mọi Mảnh",
+ "DISABLE_BLOCK": "Ngưng Tác Dụng",
+ "ENABLE_BLOCK": "Phục Hồi Tác Dụng",
+ "HELP": "Trợ Giúp",
+ "CHANGE_VALUE_TITLE": "Thay giá trị thành:",
+ "RENAME_VARIABLE": "Thay tên biến...",
+ "RENAME_VARIABLE_TITLE": "Thay tên tất cả \"%1\" biến này thành:",
+ "NEW_VARIABLE": "Biến mới...",
+ "NEW_VARIABLE_TITLE": "Tên của biến mới:",
+ "COLOUR_PICKER_HELPURL": "https://vi.wikipedia.org/wiki/M%C3%A0u_s%E1%BA%AFc",
+ "COLOUR_PICKER_TOOLTIP": "Chọn một màu từ bảng màu.",
+ "COLOUR_RANDOM_TITLE": "màu bất kỳ",
+ "COLOUR_RANDOM_TOOLTIP": "chọn một màu bất kỳ.",
+ "COLOUR_RGB_TITLE": "Tạo màu từ",
+ "COLOUR_RGB_RED": "màu đỏ",
+ "COLOUR_RGB_GREEN": "màu xanh lá cây",
+ "COLOUR_RGB_BLUE": "màu xanh dương",
+ "COLOUR_RGB_TOOLTIP": "Tạo màu từ ba màu: đỏ, xanh lá cây, xanh dương với số lượng cụ thể. Mỗi số phải có giá trị từ 0 đến 100.",
+ "COLOUR_BLEND_TITLE": "pha",
+ "COLOUR_BLEND_COLOUR1": "màu 1",
+ "COLOUR_BLEND_COLOUR2": "màu 2",
+ "COLOUR_BLEND_RATIO": "tỉ lệ",
+ "COLOUR_BLEND_TOOLTIP": "Pha hai màu với nhau theo tỉ lệ (0 - 100).",
+ "CONTROLS_REPEAT_HELPURL": "https://en.wikipedia.org/wiki/For_loop",
+ "CONTROLS_REPEAT_TITLE": "lặp lại %1 lần",
+ "CONTROLS_REPEAT_INPUT_DO": "thực hiện",
+ "CONTROLS_REPEAT_TOOLTIP": "Thực hiện các lệnh vài lần.",
+ "CONTROLS_WHILEUNTIL_OPERATOR_WHILE": "lặp lại trong khi",
+ "CONTROLS_WHILEUNTIL_OPERATOR_UNTIL": "lặp lại cho đến khi",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_WHILE": "Miễn là điều kiện còn đúng, thì thực hiện các lệnh.",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL": "Miễn là điều kiện còn sai, thì thực hiện các lệnh. Khi điều kiện đúng thì ngưng.",
+ "CONTROLS_FOR_TOOLTIP": "Đếm từ số đầu đến số cuối. Khi đến mỗi số, gán số vào biến \"%1\" rồi thực hiện các lệnh.",
+ "CONTROLS_FOR_TITLE": "đếm theo %1 từ %2 đến %3 mỗi lần thêm %4",
+ "CONTROLS_FOREACH_TITLE": "với mỗi thành phần %1 trong danh sách %2",
+ "CONTROLS_FOREACH_TOOLTIP": "Trong một danh sách, lấy từng thành phần, gán vào biến \"%1\", rồi thực hiện một số lệnh.",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK": "thoát",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE": "sang lần lặp tiếp theo",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK": "Thoát khỏi vòng lặp hiện tại.",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE": "Bỏ qua phần còn lại trong vòng lặp này, và sang lần lặp tiếp theo.",
+ "CONTROLS_FLOW_STATEMENTS_WARNING": "Chú ý: Mảnh này chỉ có thế dùng trong các vòng lặp.",
+ "CONTROLS_IF_TOOLTIP_1": "Nếu điều kiện đúng, thực hiện các lệnh.",
+ "CONTROLS_IF_TOOLTIP_2": "Nếu điều kiện đúng, thực hiện các lệnh đầu. Nếu sai, thực hiện các lệnh sau.",
+ "CONTROLS_IF_TOOLTIP_3": "Nếu điều kiện đúng, thực hiện các lệnh đầu. Nếu không, nếu điều kiện thứ hai đúng, thực hiện các lệnh thứ hai.",
+ "CONTROLS_IF_TOOLTIP_4": "Nếu điều kiện đúng, thực hiện các lệnh đầu. Nếu không, nếu điều kiện thứ hai đúng, thực hiện các lệnh thứ hai. Nếu không điều kiện nào đúng, thực hiện các lệnh cuối cùng.",
+ "CONTROLS_IF_MSG_IF": "nếu",
+ "CONTROLS_IF_MSG_ELSEIF": "nếu không nếu",
+ "CONTROLS_IF_MSG_ELSE": "nếu không",
+ "CONTROLS_IF_IF_TOOLTIP": "Thêm, bỏ, hoặc đổi thứ tự các mảnh con để tạo cấu trúc mới cho mảnh nếu.",
+ "CONTROLS_IF_ELSEIF_TOOLTIP": "Thêm một điều kiện vào mảnh nếu.",
+ "CONTROLS_IF_ELSE_TOOLTIP": "Cuối cùng, khi không điều kiện nào đúng.",
+ "LOGIC_COMPARE_HELPURL": "https://vi.wikipedia.org/wiki/B%E1%BA%A5t_%C4%91%E1%BA%B3ng_th%E1%BB%A9c",
+ "LOGIC_COMPARE_TOOLTIP_EQ": "Hoàn trả giá trị \"đúng\" (true) nếu giá trị hai đầu vào bằng nhau.",
+ "LOGIC_COMPARE_TOOLTIP_NEQ": "Hoàn trả giá trị \"đúng\" (true) nếu giá trị hai đầu vào không bằng nhau.",
+ "LOGIC_COMPARE_TOOLTIP_LT": "Hoàn trả giá trị \"đúng\" (true) nếu đầu vào thứ nhất nhỏ hơn đầu vào thứ hai.",
+ "LOGIC_COMPARE_TOOLTIP_LTE": "Hoàn trả giá trị \"đúng\" (true) nếu đầu vào thứ nhất nhỏ hơn hoặc bằng đầu vào thứ hai.",
+ "LOGIC_COMPARE_TOOLTIP_GT": "Hoàn trả giá trị \"đúng\" (true) nếu đầu vào thứ nhất lớn hơn đầu vào thứ hai.",
+ "LOGIC_COMPARE_TOOLTIP_GTE": "Hoàn trả giá trị \"đúng\" (true) nếu đầu vào thứ nhất lớn hơn hoặc bằng đầu vào thứ hai.",
+ "LOGIC_OPERATION_TOOLTIP_AND": "Hoàn trả \"đúng\" (true) nếu cả hai đầu vào đều đúng.",
+ "LOGIC_OPERATION_AND": "và",
+ "LOGIC_OPERATION_TOOLTIP_OR": "Hoàn trả \"đúng\" (true) nếu ít nhất một trong hai đầu vào đúng.",
+ "LOGIC_OPERATION_OR": "hoặc",
+ "LOGIC_NEGATE_TITLE": "không %1",
+ "LOGIC_NEGATE_TOOLTIP": "Hoàn trả \"đúng\" (true) nếu đầu vào sai. Hoàn trả \"sai\" (false) nếu đầu vào đúng.",
+ "LOGIC_BOOLEAN_TRUE": "đúng",
+ "LOGIC_BOOLEAN_FALSE": "sai",
+ "LOGIC_BOOLEAN_TOOLTIP": "Hoàn trả \"đúng\" hoặc \"sai\".",
+ "LOGIC_NULL": "trống không",
+ "LOGIC_NULL_TOOLTIP": "Hoàn trả trống không.",
+ "LOGIC_TERNARY_CONDITION": "kiểm tra",
+ "LOGIC_TERNARY_IF_TRUE": "nếu đúng",
+ "LOGIC_TERNARY_IF_FALSE": "nếu sai",
+ "LOGIC_TERNARY_TOOLTIP": "Kiểm tra điều kiện. Nếu điều kiện đúng, hoàn trả giá trị từ mệnh đề \"nếu đúng\" nếu không đúng, hoàn trả giá trị từ mệnh đề \"nếu sai\".",
+ "MATH_NUMBER_HELPURL": "https://vi.wikipedia.org/wiki/S%E1%BB%91",
+ "MATH_NUMBER_TOOLTIP": "Một con số.",
+ "MATH_ARITHMETIC_HELPURL": "https://vi.wikipedia.org/wiki/S%E1%BB%91_h%E1%BB%8Dc",
+ "MATH_ARITHMETIC_TOOLTIP_ADD": "Hoàn trả tổng của hai con số.",
+ "MATH_ARITHMETIC_TOOLTIP_MINUS": "Hoàn trả hiệu của hai con số.",
+ "MATH_ARITHMETIC_TOOLTIP_MULTIPLY": "Hoàn trả tích của hai con số.",
+ "MATH_ARITHMETIC_TOOLTIP_DIVIDE": "Hoàn trả thương của hai con số.",
+ "MATH_ARITHMETIC_TOOLTIP_POWER": "Hoàn trả số lũy thừa với số thứ nhất là cơ số và số thứ hai là số mũ.",
+ "MATH_SINGLE_HELPURL": "https://vi.wikipedia.org/wiki/C%C4%83n_b%E1%BA%ADc_hai",
+ "MATH_SINGLE_OP_ROOT": "căn bật hai",
+ "MATH_SINGLE_TOOLTIP_ROOT": "Hoàn trả căn bật hai của số đầu vào.",
+ "MATH_SINGLE_OP_ABSOLUTE": "giá trị tuyệt đối",
+ "MATH_SINGLE_TOOLTIP_ABS": "Hoàn trả giá trị tuyệt đối của số đầu vào.",
+ "MATH_SINGLE_TOOLTIP_NEG": "Đổi dấu của số đầu vào: âm thành dương và dương thành âm, và hoàn trả số mới.",
+ "MATH_SINGLE_TOOLTIP_LN": "Hoàn trả lôgarit tự nhiên của số đầu vào.",
+ "MATH_SINGLE_TOOLTIP_LOG10": "Hoàn trả lôgarit cơ số 10 của số đầu vào.",
+ "MATH_SINGLE_TOOLTIP_EXP": "Hoàn trả lũy thừa của số e với số mũ đầu vào.",
+ "MATH_SINGLE_TOOLTIP_POW10": "Hoàn trả lũy thừa của số 10 với số mũ đầu vào.",
+ "MATH_TRIG_HELPURL": "https://vi.wikipedia.org/wiki/H%C3%A0m_l%C6%B0%E1%BB%A3ng_gi%C3%A1c",
+ "MATH_TRIG_TOOLTIP_SIN": "Hoàn trả Sin của một góc (theo độ).",
+ "MATH_TRIG_TOOLTIP_COS": "Hoàn trả Cos của một góc (theo độ).",
+ "MATH_TRIG_TOOLTIP_TAN": "Hoàn trả Tang của một góc (theo độ).",
+ "MATH_TRIG_TOOLTIP_ASIN": "Hoàn trả Arcsin của một góc (theo độ).",
+ "MATH_TRIG_TOOLTIP_ACOS": "Hoàn trả Arccos của một góc (theo độ).",
+ "MATH_TRIG_TOOLTIP_ATAN": "Hoàn trả Arctang của một góc (theo độ).",
+ "MATH_CONSTANT_HELPURL": "https://en.wikipedia.org/wiki/Mathematical_constant",
+ "MATH_CONSTANT_TOOLTIP": "Hoàn trả các đẳng số thường gặp: π (3.141…), e (2.718…), φ (1.618…), sqrt(2) (1.414…), sqrt(½) (0.707…), or ∞ (vô cực).",
+ "MATH_IS_EVEN": "chẵn",
+ "MATH_IS_ODD": "lẻ",
+ "MATH_IS_PRIME": "là số nguyên tố",
+ "MATH_IS_WHOLE": "là số nguyên",
+ "MATH_IS_POSITIVE": "là số dương",
+ "MATH_IS_NEGATIVE": "là số âm",
+ "MATH_IS_DIVISIBLE_BY": "chia hết cho",
+ "MATH_IS_TOOLTIP": "Kiểm tra con số xem nó có phải là số chẵn, lẻ, nguyên tố, nguyên, dương, âm, hay xem nó có chia hết cho số đầu vào hay không. Hoàn trả đúng hay sai.",
+ "MATH_CHANGE_HELPURL": "https://vi.wikipedia.org/wiki/Ph%C3%A9p_c%E1%BB%99ng",
+ "MATH_CHANGE_TITLE": "cộng vào %1 giá trị %2",
+ "MATH_CHANGE_TOOLTIP": "Cộng số đầu vào vào biến \"%1\".",
+ "MATH_ROUND_HELPURL": "https://en.wikipedia.org/wiki/Rounding",
+ "MATH_ROUND_TOOLTIP": "Làm tròn lên hoặc tròn xuống số đầu vào.",
+ "MATH_ROUND_OPERATOR_ROUND": "làm tròn",
+ "MATH_ROUND_OPERATOR_ROUNDUP": "làm tròn lên",
+ "MATH_ROUND_OPERATOR_ROUNDDOWN": "làm tròn xuống",
+ "MATH_ONLIST_HELPURL": "",
+ "MATH_ONLIST_OPERATOR_SUM": "tổng của một danh sách",
+ "MATH_ONLIST_TOOLTIP_SUM": "Hoàn trả tổng số của tất cả các số trong danh sách.",
+ "MATH_ONLIST_OPERATOR_MIN": "số nhỏ nhất của một danh sách",
+ "MATH_ONLIST_TOOLTIP_MIN": "Hoàn trả số nhỏ nhất trong tất cả các số trong danh sách.",
+ "MATH_ONLIST_OPERATOR_MAX": "số lớn nhât của một danh sách",
+ "MATH_ONLIST_TOOLTIP_MAX": "Hoàn trả số lớn nhất trong tất cả các số trong danh sách.",
+ "MATH_ONLIST_OPERATOR_AVERAGE": "giá trị trung bình của một danh sách",
+ "MATH_ONLIST_TOOLTIP_AVERAGE": "Hoàn trả giá trị trung bình từ của danh sách số.",
+ "MATH_ONLIST_OPERATOR_MEDIAN": "số trung vị của một danh sách",
+ "MATH_ONLIST_TOOLTIP_MEDIAN": "Hoàn trả số trung vị của danh sách số.",
+ "MATH_ONLIST_OPERATOR_MODE": "các mode của một danh sách",
+ "MATH_ONLIST_TOOLTIP_MODE": "Hoàn trả các số có mặt nhiều nhất trong danh sách.",
+ "MATH_ONLIST_OPERATOR_STD_DEV": "độ lệch chuẩn của một danh sách",
+ "MATH_ONLIST_TOOLTIP_STD_DEV": "Hoàn trả độ lệch chuẩn của danh sách số.",
+ "MATH_ONLIST_OPERATOR_RANDOM": "một số bất kỳ của một danh sách",
+ "MATH_ONLIST_TOOLTIP_RANDOM": "Hoàn trả một số bất kỳ từ các số trong danh sách.",
+ "MATH_MODULO_HELPURL": "https://en.wikipedia.org/wiki/Modulo_operation",
+ "MATH_MODULO_TITLE": "số dư của %1 ÷ %2",
+ "MATH_MODULO_TOOLTIP": "Chia số thứ nhất cho số thứ hai rồi hoàn trả số dư từ.",
+ "MATH_CONSTRAIN_TITLE": "giới hạn %1 không dưới %2 không hơn %3",
+ "MATH_CONSTRAIN_TOOLTIP": "Giới hạn số đầu vào để không dưới số thứ nhất và không hơn số thứ hai.",
+ "MATH_RANDOM_INT_HELPURL": "https://en.wikipedia.org/wiki/Random_number_generation",
+ "MATH_RANDOM_INT_TITLE": "Một số nguyên bất kỳ từ %1 đến %2",
+ "MATH_RANDOM_INT_TOOLTIP": "Hoàn trả một số nguyên bất kỳ lớn hơn hoặc bằng số đầu và nhỏ hơn hoặc bằng số sau.",
+ "MATH_RANDOM_FLOAT_HELPURL": "https://en.wikipedia.org/wiki/Random_number_generation",
+ "MATH_RANDOM_FLOAT_TITLE_RANDOM": "phân số bất kỳ",
+ "MATH_RANDOM_FLOAT_TOOLTIP": "Hoàn trả một phân số bất kỳ không nhỏ hơn 0.0 và không lớn hơn 1.0.",
+ "TEXT_TEXT_HELPURL": "https://en.wikipedia.org/wiki/string_(computer_science)",
+ "TEXT_TEXT_TOOLTIP": "Một ký tự, một từ, hay một dòng.",
+ "TEXT_JOIN_HELPURL": "",
+ "TEXT_JOIN_TITLE_CREATEWITH": "tạo văn bản từ",
+ "TEXT_JOIN_TOOLTIP": "Tạo một văn bản từ các thành phần.",
+ "TEXT_CREATE_JOIN_TITLE_JOIN": "kết nối",
+ "TEXT_CREATE_JOIN_TOOLTIP": "Thêm, bỏ, hoặc sắp xếp lại các thành phần để tạo dựng mảnh văn bản này.",
+ "TEXT_CREATE_JOIN_ITEM_TOOLTIP": "thêm vật mới vào văn bản.",
+ "TEXT_APPEND_TO": "ở cuối",
+ "TEXT_APPEND_APPENDTEXT": "thêm văn bản",
+ "TEXT_APPEND_TOOLTIP": "Thêm một mảng văn bản vào biến \"%1\".",
+ "TEXT_LENGTH_TITLE": "độ dài của %1",
+ "TEXT_LENGTH_TOOLTIP": "Hoàn trả số lượng ký tự (kể cả khoảng trắng) trong văn bản đầu vào.",
+ "TEXT_ISEMPTY_TITLE": "%1 trống không",
+ "TEXT_ISEMPTY_TOOLTIP": "Hoàn trả “đúng nếu văn bản không có ký tự nào.",
+ "TEXT_INDEXOF_TOOLTIP": "Hoàn trả vị trí xuất hiện đầu/cuối của văn bản thứ nhất trong văn bản thứ hai. Nếu không tìm thấy thì hoàn trả số %1.",
+ "TEXT_INDEXOF_INPUT_INTEXT": "trong văn bản",
+ "TEXT_INDEXOF_OPERATOR_FIRST": "tìm sự có mặt đầu tiên của",
+ "TEXT_INDEXOF_OPERATOR_LAST": "tìm sự có mặt cuối cùng của",
+ "TEXT_CHARAT_INPUT_INTEXT": "trong văn bản",
+ "TEXT_CHARAT_FROM_START": "lấy ký tự thứ",
+ "TEXT_CHARAT_FROM_END": "lấy từ phía cuối, ký tự thứ",
+ "TEXT_CHARAT_FIRST": "lấy ký tự đầu tiên",
+ "TEXT_CHARAT_LAST": "lấy ký tự cuối cùng",
+ "TEXT_CHARAT_RANDOM": "lấy ký tự bất kỳ",
+ "TEXT_CHARAT_TAIL": "",
+ "TEXT_CHARAT_TOOLTIP": "Hoàn trả ký tự ở vị trí đặt ra.",
+ "TEXT_GET_SUBSTRING_TOOLTIP": "Hoàn trả một mảng ký tự ấn định từ trong văn bản.",
+ "TEXT_GET_SUBSTRING_INPUT_IN_TEXT": "trong văn bản",
+ "TEXT_GET_SUBSTRING_START_FROM_START": "lấy từ ký tự thứ",
+ "TEXT_GET_SUBSTRING_START_FROM_END": "lấy từ phía cuối, ký tự thứ",
+ "TEXT_GET_SUBSTRING_START_FIRST": "lấy từ ký tự đầu tiên",
+ "TEXT_GET_SUBSTRING_END_FROM_START": "đến ký tự thứ",
+ "TEXT_GET_SUBSTRING_END_FROM_END": "đến từ phía cuối, ký tự thứ",
+ "TEXT_GET_SUBSTRING_END_LAST": "đến ký tự cuối cùng",
+ "TEXT_GET_SUBSTRING_TAIL": "",
+ "TEXT_CHANGECASE_TOOLTIP": "Hoàn trả văn bản sau khi chuyển đổi chữ in hoa hay thường.",
+ "TEXT_CHANGECASE_OPERATOR_UPPERCASE": "thành CHỮ IN HOA",
+ "TEXT_CHANGECASE_OPERATOR_LOWERCASE": "thành chữ thường",
+ "TEXT_CHANGECASE_OPERATOR_TITLECASE": "thành Chữ In Đầu Mỗi Từ",
+ "TEXT_TRIM_TOOLTIP": "Hoàn trả bản sao của văn bản sau khi xóa khoảng trắng từ một hoặc hai bên.",
+ "TEXT_TRIM_OPERATOR_BOTH": "cắt các không gian từ cả hai mặt của",
+ "TEXT_TRIM_OPERATOR_LEFT": "cắt các không gian từ bên trái của",
+ "TEXT_TRIM_OPERATOR_RIGHT": "cắt các không gian từ bên phải của",
+ "TEXT_PRINT_TITLE": "in lên màng hình %1",
+ "TEXT_PRINT_TOOLTIP": "In ra màng hình một văn bản, con số, hay một giá trị đầu vào khác.",
+ "TEXT_PROMPT_TYPE_TEXT": "Xin người dùng nhập vào văn bản với dòng hướng dẫn",
+ "TEXT_PROMPT_TYPE_NUMBER": "Xin người dùng nhập vào con số với dòng hướng dẫn",
+ "TEXT_PROMPT_TOOLTIP_NUMBER": "Xin người dùng nhập vào một con số.",
+ "TEXT_PROMPT_TOOLTIP_TEXT": "Xin người dùng nhập vào một văn bản.",
+ "LISTS_CREATE_EMPTY_TITLE": "tạo danh sách trống",
+ "LISTS_CREATE_EMPTY_TOOLTIP": "Hoàn trả một danh sách, với độ dài 0, không có thành tố nào cả",
+ "LISTS_CREATE_WITH_TOOLTIP": "Tạo một danh sách bao gồm nhiều vậts, với một số lượng bất kỳ.",
+ "LISTS_CREATE_WITH_INPUT_WITH": "tạo danh sách gồm",
+ "LISTS_CREATE_WITH_CONTAINER_TITLE_ADD": "danh sách",
+ "LISTS_CREATE_WITH_CONTAINER_TOOLTIP": "Thêm, bỏ, hoặc sắp xếp lại các thành phần để tạo dựng mảnh danh sách này.",
+ "LISTS_CREATE_WITH_ITEM_TOOLTIP": "Thêm vật vào danh sách.",
+ "LISTS_REPEAT_TOOLTIP": "Tạo danh sách gồm một số lượng vật nhất định với mỗi vật đều giống nhau.",
+ "LISTS_REPEAT_TITLE": "tạo danh sách gồm một vật %1 lặp lại %2 lần",
+ "LISTS_LENGTH_TITLE": "độ dài của %1",
+ "LISTS_LENGTH_TOOLTIP": "Hoàn trả độ dài của một danh sách.",
+ "LISTS_ISEMPTY_TITLE": "%1 trống rỗng",
+ "LISTS_ISEMPTY_TOOLTIP": "Hoàn trả “đúng\" nếu danh sách không có thành tử nào.",
+ "LISTS_INLIST": "trong dánh sách",
+ "LISTS_INDEX_OF_FIRST": "tìm sự có mặt đầu tiên của vật",
+ "LISTS_INDEX_OF_LAST": "tìm sự có mặt cuối cùng của vật",
+ "LISTS_INDEX_OF_TOOLTIP": "Hoàn trả vị trí xuất hiện đầu/cuối của vật trong danh sách. Nếu không tìm thấy thì hoàn trả số %1.",
+ "LISTS_GET_INDEX_GET": "lấy thành tố",
+ "LISTS_GET_INDEX_GET_REMOVE": "lấy và xóa thành tố",
+ "LISTS_GET_INDEX_REMOVE": "xóa thành tố",
+ "LISTS_GET_INDEX_FROM_START": "thứ",
+ "LISTS_GET_INDEX_FROM_END": "(đếm từ cuối) thứ",
+ "LISTS_GET_INDEX_FIRST": "đầu tiên",
+ "LISTS_GET_INDEX_LAST": "cuối cùng",
+ "LISTS_GET_INDEX_RANDOM": "bất kỳ",
+ "LISTS_INDEX_FROM_START_TOOLTIP": "%1 là thành tố đầu tiên.",
+ "LISTS_INDEX_FROM_END_TOOLTIP": "%1 là thành tố cuối cùng.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_FROM": "Hoàn trả thành tố trong danh sách ở vị trí ấn định.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_FIRST": "Hoàn trả thành tố đầu tiên trong danh sách.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_LAST": "Hoàn trả thành tố cuối cùng trong danh sách.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_RANDOM": "Hoàn trả một thành tố bất kỳ trong danh sách.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM": "Hoàn trả và xóa thành tố trong danh sách ở vị trí ấn định.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST": "Hoàn trả và xóa thành tố đầu tiên trong danh sách.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST": "Hoàn trả và xóa thành tố cuối cùng trong danh sách.",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM": "Hoàn trả và xóa mộtthành tố bất kỳ trong danh sách.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM": "Xóa thành tố trong danh sách ở vị trí ấn định.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST": "Xóa thành tố đầu tiên trong danh sách.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST": "Xóa thành tố cuối cùng trong danh sách.",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM": "Xóa thành tố bất kỳ trong danh sách.",
+ "LISTS_SET_INDEX_SET": "đặt thành tố",
+ "LISTS_SET_INDEX_INSERT": "gắn chèn vào vị trí",
+ "LISTS_SET_INDEX_INPUT_TO": "giá trị",
+ "LISTS_SET_INDEX_TOOLTIP_SET_FROM": "Đặt giá trị của thành tố ở vị trí ấn định trong một danh sách.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_FIRST": "Đặt giá trị của thành tố đầu tiên trong danh sách.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_LAST": "Đặt giá trị của thành tố cuối cùng trong danh sách.",
+ "LISTS_SET_INDEX_TOOLTIP_SET_RANDOM": "Đặt giá trị của thành tố ngẫu nhiên trong danh sách.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_FROM": "Gắn chèn vật vào danh sách theo vị trí ấn định.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST": "Gắn chèn vật vào đầu danh sách.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_LAST": "Gắn thêm vật vào cuối danh sách.",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM": "Gắn chèn vật vào danh sách ở vị trí ngẫu nhiên.",
+ "LISTS_GET_SUBLIST_START_FROM_START": "lấy một danh sách con từ thứ",
+ "LISTS_GET_SUBLIST_START_FROM_END": "lấy một danh sách con từ (đếm từ cuối) thứ",
+ "LISTS_GET_SUBLIST_START_FIRST": "lấy một danh sách con từ đầu tiên",
+ "LISTS_GET_SUBLIST_END_FROM_START": "đến thứ",
+ "LISTS_GET_SUBLIST_END_FROM_END": "đến (đếm từ cuối) thứ",
+ "LISTS_GET_SUBLIST_END_LAST": "đến cuối cùng",
+ "LISTS_GET_SUBLIST_TOOLTIP": "Lấy một mảng của danh sách này để tạo danh sách con.",
+ "VARIABLES_GET_TOOLTIP": "Hoàn trả giá trị của.",
+ "VARIABLES_GET_CREATE_SET": "Tạo mảnh \"đặt vào %1\"",
+ "VARIABLES_SET": "cho %1 bằng %2",
+ "VARIABLES_SET_TOOLTIP": "Đặt giá trị của biến này thành...",
+ "VARIABLES_SET_CREATE_GET": "Tạo mảnh \"lấy %1\"",
+ "PROCEDURES_DEFNORETURN_TITLE": "",
+ "PROCEDURES_DEFNORETURN_PROCEDURE": "thủ tục",
+ "PROCEDURES_BEFORE_PARAMS": "với:",
+ "PROCEDURES_CALL_BEFORE_PARAMS": "với:",
+ "PROCEDURES_DEFNORETURN_DO": "",
+ "PROCEDURES_DEFNORETURN_TOOLTIP": "Một thủ tục không có giá trị hoàn trả.",
+ "PROCEDURES_DEFRETURN_RETURN": "hoàn trả",
+ "PROCEDURES_DEFRETURN_TOOLTIP": "Một thủ tục có giá trị hoàn trả.",
+ "PROCEDURES_ALLOW_STATEMENTS": "cho phép báo cáo",
+ "PROCEDURES_DEF_DUPLICATE_WARNING": "Chú ý: Thủ tục này có lặp lại tên các tham số.",
+ "PROCEDURES_CALLNORETURN_TOOLTIP": "Chạy một thủ tục không có giá trị hoàn trả.",
+ "PROCEDURES_CALLRETURN_TOOLTIP": "Chạy một thủ tục có giá trị hoàn trả.",
+ "PROCEDURES_MUTATORCONTAINER_TITLE": "các tham số",
+ "PROCEDURES_MUTATORCONTAINER_TOOLTIP": "Thêm, xóa hoặc sắp xếp lại các đầu vào cho hàm này.",
+ "PROCEDURES_MUTATORARG_TITLE": "biến:",
+ "PROCEDURES_MUTATORARG_TOOLTIP": "Thêm một đầu vào cho hàm.",
+ "PROCEDURES_HIGHLIGHT_DEF": "Làm nổi bật thủ tục",
+ "PROCEDURES_CREATE_DO": "Tạo mảnh \"thực hiện %1\"",
+ "PROCEDURES_IFRETURN_TOOLTIP": "Khi điều kiện đúng thì hoàn trả một giá trị.",
+ "PROCEDURES_IFRETURN_WARNING": "Chú ý: Mảnh này chỉ có thể dùng trong một thủ tục."
+}
diff --git a/blockly/msg/json/zh-hans.json b/blockly/msg/json/zh-hans.json
new file mode 100644
index 0000000..a4af49e
--- /dev/null
+++ b/blockly/msg/json/zh-hans.json
@@ -0,0 +1,336 @@
+{
+ "@metadata": {
+ "authors": [
+ "Espertus",
+ "Liuxinyu970226",
+ "Luotiancheng",
+ "Qiyue2001",
+ "Xiaomingyan",
+ "Yfdyh000",
+ "아라",
+ "Hudafu",
+ "Shatteredwind",
+ "Duzc2"
+ ]
+ },
+ "VARIABLES_DEFAULT_NAME": "项目",
+ "TODAY": "今天",
+ "DUPLICATE_BLOCK": "复制",
+ "ADD_COMMENT": "添加注释",
+ "REMOVE_COMMENT": "删除注释",
+ "EXTERNAL_INPUTS": "外部输入",
+ "INLINE_INPUTS": "单行输入",
+ "DELETE_BLOCK": "删除块",
+ "DELETE_X_BLOCKS": "删除 %1 块",
+ "DELETE_ALL_BLOCKS": "删除所有%1块吗?",
+ "CLEAN_UP": "整理块",
+ "COLLAPSE_BLOCK": "折叠块",
+ "COLLAPSE_ALL": "折叠块",
+ "EXPAND_BLOCK": "展开块",
+ "EXPAND_ALL": "展开块",
+ "DISABLE_BLOCK": "禁用块",
+ "ENABLE_BLOCK": "启用块",
+ "HELP": "帮助",
+ "UNDO": "撤销",
+ "REDO": "重做",
+ "CHANGE_VALUE_TITLE": "更改值:",
+ "RENAME_VARIABLE": "重命名变量...",
+ "RENAME_VARIABLE_TITLE": "将所有“%1”变量重命名为:",
+ "NEW_VARIABLE": "创建变量...",
+ "NEW_VARIABLE_TITLE": "新变量的名称:",
+ "VARIABLE_ALREADY_EXISTS": "已存在名为“%1”的变量。",
+ "DELETE_VARIABLE_CONFIRMATION": "删除“%2”变量的%1种用途么?",
+ "DELETE_VARIABLE": "删除“%1”变量",
+ "COLOUR_PICKER_HELPURL": "https://zh.wikipedia.org/wiki/颜色",
+ "COLOUR_PICKER_TOOLTIP": "从调色板中选择一种颜色。",
+ "COLOUR_RANDOM_TITLE": "随机颜色",
+ "COLOUR_RANDOM_TOOLTIP": "随机选择一种颜色。",
+ "COLOUR_RGB_TITLE": "颜色",
+ "COLOUR_RGB_RED": "红色",
+ "COLOUR_RGB_GREEN": "绿色",
+ "COLOUR_RGB_BLUE": "蓝色",
+ "COLOUR_RGB_TOOLTIP": "通过指定红色、绿色和蓝色的量创建一种颜色。所有的值必须介于0和100之间。",
+ "COLOUR_BLEND_TITLE": "混合",
+ "COLOUR_BLEND_COLOUR1": "颜色1",
+ "COLOUR_BLEND_COLOUR2": "颜色2",
+ "COLOUR_BLEND_RATIO": "比例",
+ "COLOUR_BLEND_TOOLTIP": "用一个给定的比率(0.0-1.0)混合两种颜色。",
+ "CONTROLS_REPEAT_HELPURL": "https://zh.wikipedia.org/wiki/For循环",
+ "CONTROLS_REPEAT_TITLE": "重复 %1 次",
+ "CONTROLS_REPEAT_INPUT_DO": "执行",
+ "CONTROLS_REPEAT_TOOLTIP": "多次执行一些语句。",
+ "CONTROLS_WHILEUNTIL_OPERATOR_WHILE": "重复当",
+ "CONTROLS_WHILEUNTIL_OPERATOR_UNTIL": "重复直到",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_WHILE": "只要值为真,执行一些语句。",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL": "只要值为假,执行一些语句。",
+ "CONTROLS_FOR_TOOLTIP": "从起始数到结尾数中取出变量“%1”的值,按指定的时间间隔,执行指定的块。",
+ "CONTROLS_FOR_TITLE": "使用 %1 从范围 %2 到 %3 每隔 %4",
+ "CONTROLS_FOREACH_TITLE": "为每个项目 %1 在列表中 %2",
+ "CONTROLS_FOREACH_TOOLTIP": "遍历每个列表中的项目,将变量“%1”设定到该项中,然后执行某些语句。",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK": "中断循环",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE": "继续下一次循环",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK": "中断包含它的循环。",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE": "跳过这个循环的剩余部分,并继续下一次迭代。",
+ "CONTROLS_FLOW_STATEMENTS_WARNING": "警告:此块仅可用于在一个循环内。",
+ "CONTROLS_IF_TOOLTIP_1": "如果值为真,执行一些语句。",
+ "CONTROLS_IF_TOOLTIP_2": "如果值为真,则执行第一块语句。否则,则执行第二块语句。",
+ "CONTROLS_IF_TOOLTIP_3": "如果第一个值为真,则执行第一块的语句。否则,如果第二个值为真,则执行第二块的语句。",
+ "CONTROLS_IF_TOOLTIP_4": "如果第一个值为真,则执行第一块对语句。否则,如果第二个值为真,则执行语句的第二块。如果没有值为真,则执行最后一块的语句。",
+ "CONTROLS_IF_MSG_IF": "如果",
+ "CONTROLS_IF_MSG_ELSEIF": "否则如果",
+ "CONTROLS_IF_MSG_ELSE": "否则",
+ "CONTROLS_IF_IF_TOOLTIP": "增加、删除或重新排列各节来重新配置“if”块。",
+ "CONTROLS_IF_ELSEIF_TOOLTIP": "在if语句块中增加一个条件。",
+ "CONTROLS_IF_ELSE_TOOLTIP": "添加一个最终的,包括所有情况的节到if块中。",
+ "LOGIC_COMPARE_HELPURL": "https://zh.wikipedia.org/wiki/不等",
+ "LOGIC_COMPARE_TOOLTIP_EQ": "如果两个输入结果相等,则返回真。",
+ "LOGIC_COMPARE_TOOLTIP_NEQ": "如果两个输入结果不相等,则返回真。",
+ "LOGIC_COMPARE_TOOLTIP_LT": "如果第一个输入结果比第二个小,则返回真。",
+ "LOGIC_COMPARE_TOOLTIP_LTE": "如果第一个输入结果小于或等于第二个输入结果,则返回真。",
+ "LOGIC_COMPARE_TOOLTIP_GT": "如果第一个输入结果比第二个大,则返回真。",
+ "LOGIC_COMPARE_TOOLTIP_GTE": "如果第一个输入结果大于或等于第二个输入结果,则返回真。",
+ "LOGIC_OPERATION_TOOLTIP_AND": "如果两个输入结果都为真,则返回真。",
+ "LOGIC_OPERATION_AND": "和",
+ "LOGIC_OPERATION_TOOLTIP_OR": "如果至少有一个输入结果为真,则返回真。",
+ "LOGIC_OPERATION_OR": "或",
+ "LOGIC_NEGATE_HELPURL": "https://github.com/google/blockly/wiki/Logic#not",
+ "LOGIC_NEGATE_TITLE": "非%1",
+ "LOGIC_NEGATE_TOOLTIP": "如果输入结果为假,则返回真;如果输入结果为真,则返回假。",
+ "LOGIC_BOOLEAN_TRUE": "真",
+ "LOGIC_BOOLEAN_FALSE": "假",
+ "LOGIC_BOOLEAN_TOOLTIP": "返回真或假。",
+ "LOGIC_NULL": "空",
+ "LOGIC_NULL_TOOLTIP": "返回空值。",
+ "LOGIC_TERNARY_HELPURL": "https://zh.wikipedia.org/wiki/条件运算符",
+ "LOGIC_TERNARY_CONDITION": "测试",
+ "LOGIC_TERNARY_IF_TRUE": "如果为真",
+ "LOGIC_TERNARY_IF_FALSE": "如果为假",
+ "LOGIC_TERNARY_TOOLTIP": "检查“test”中的条件。如果条件为真,则返回“if true”的值,否则,则返回“if false”的值。",
+ "MATH_NUMBER_HELPURL": "https://zh.wikipedia.org/wiki/数",
+ "MATH_NUMBER_TOOLTIP": "一个数字。",
+ "MATH_ARITHMETIC_HELPURL": "https://zh.wikipedia.org/wiki/算术",
+ "MATH_ARITHMETIC_TOOLTIP_ADD": "返回两个数字的和。",
+ "MATH_ARITHMETIC_TOOLTIP_MINUS": "返回两个数字的区别。",
+ "MATH_ARITHMETIC_TOOLTIP_MULTIPLY": "返回两个数字的乘积。",
+ "MATH_ARITHMETIC_TOOLTIP_DIVIDE": "返回两个数字的商。",
+ "MATH_ARITHMETIC_TOOLTIP_POWER": "返回第一个数的第二个数次幂。",
+ "MATH_SINGLE_HELPURL": "https://zh.wikipedia.org/wiki/平方根",
+ "MATH_SINGLE_OP_ROOT": "平方根",
+ "MATH_SINGLE_TOOLTIP_ROOT": "返回数的平方根。",
+ "MATH_SINGLE_OP_ABSOLUTE": "绝对",
+ "MATH_SINGLE_TOOLTIP_ABS": "返回一个数的绝对值。",
+ "MATH_SINGLE_TOOLTIP_NEG": "返回数的逻辑非。",
+ "MATH_SINGLE_TOOLTIP_LN": "返回一个数的自然对数。",
+ "MATH_SINGLE_TOOLTIP_LOG10": "返回数字的对数。",
+ "MATH_SINGLE_TOOLTIP_EXP": "返回数的e次幂。",
+ "MATH_SINGLE_TOOLTIP_POW10": "返回数的10次幂。",
+ "MATH_TRIG_HELPURL": "https://zh.wikipedia.org/wiki/三角函数",
+ "MATH_TRIG_TOOLTIP_SIN": "返回指定角度的正弦值(非弧度)。",
+ "MATH_TRIG_TOOLTIP_COS": "返回指定角度的余弦值(非弧度)。",
+ "MATH_TRIG_TOOLTIP_TAN": "返回指定角度的正切值(非弧度)。",
+ "MATH_TRIG_TOOLTIP_ASIN": "返回一个数的反正弦值。",
+ "MATH_TRIG_TOOLTIP_ACOS": "返回一个数的反余弦值。",
+ "MATH_TRIG_TOOLTIP_ATAN": "返回指定角度的反正切值。",
+ "MATH_CONSTANT_HELPURL": "https://zh.wikipedia.org/wiki/数学常数",
+ "MATH_CONSTANT_TOOLTIP": "返回一个常见常量:π (3.141......),e (2.718...)、φ (1.618...)、 sqrt(2) (1.414......)、sqrt(½) (0.707......)或 ∞(无穷大)。",
+ "MATH_IS_EVEN": "是偶数",
+ "MATH_IS_ODD": "是奇数",
+ "MATH_IS_PRIME": "是质数",
+ "MATH_IS_WHOLE": "为整数",
+ "MATH_IS_POSITIVE": "为正",
+ "MATH_IS_NEGATIVE": "为负",
+ "MATH_IS_DIVISIBLE_BY": "可被整除",
+ "MATH_IS_TOOLTIP": "如果数字是偶数、奇数、非负整数、正数、负数或如果它可被某数字整除,则返回真或假。",
+ "MATH_CHANGE_HELPURL": "https://zh.wikipedia.org/wiki/%E5%8A%A0%E6%B3%95",
+ "MATH_CHANGE_TITLE": "更改 %1 由 %2",
+ "MATH_CHANGE_TOOLTIP": "将一个数添加到变量“%1”。",
+ "MATH_ROUND_HELPURL": "https://zh.wikipedia.org/wiki/数值修约",
+ "MATH_ROUND_TOOLTIP": "数字向上或向下舍入。",
+ "MATH_ROUND_OPERATOR_ROUND": "向下舍入",
+ "MATH_ROUND_OPERATOR_ROUNDUP": "向上舍入",
+ "MATH_ROUND_OPERATOR_ROUNDDOWN": "向下舍入",
+ "MATH_ONLIST_OPERATOR_SUM": "列表中的数的总和",
+ "MATH_ONLIST_TOOLTIP_SUM": "返回列表中的所有数字的和。",
+ "MATH_ONLIST_OPERATOR_MIN": "列表中的最小值",
+ "MATH_ONLIST_TOOLTIP_MIN": "返回列表中最小数。",
+ "MATH_ONLIST_OPERATOR_MAX": "列表中的最大值",
+ "MATH_ONLIST_TOOLTIP_MAX": "返回列表中最大数。",
+ "MATH_ONLIST_OPERATOR_AVERAGE": "列表中的平均数",
+ "MATH_ONLIST_TOOLTIP_AVERAGE": "返回列表中的数值的平均值。",
+ "MATH_ONLIST_OPERATOR_MEDIAN": "列表中位数",
+ "MATH_ONLIST_TOOLTIP_MEDIAN": "返回列表中的中位数。",
+ "MATH_ONLIST_OPERATOR_MODE": "列表模式",
+ "MATH_ONLIST_TOOLTIP_MODE": "返回列表中的最常见的项的列表。",
+ "MATH_ONLIST_OPERATOR_STD_DEV": "列表中的标准差",
+ "MATH_ONLIST_TOOLTIP_STD_DEV": "返回列表的标准偏差。",
+ "MATH_ONLIST_OPERATOR_RANDOM": "列表的随机项",
+ "MATH_ONLIST_TOOLTIP_RANDOM": "从列表中返回一个随机的元素。",
+ "MATH_MODULO_HELPURL": "https://zh.wikipedia.org/wiki/模除",
+ "MATH_MODULO_TITLE": "取余数自 %1 ÷ %2",
+ "MATH_MODULO_TOOLTIP": "返回这两个数字相除后的余数。",
+ "MATH_CONSTRAIN_TITLE": "限制数字 %1 介于 (低) %2 到 (高) %3",
+ "MATH_CONSTRAIN_TOOLTIP": "限制数字介于两个指定的数字之间",
+ "MATH_RANDOM_INT_HELPURL": "https://zh.wikipedia.org/wiki/随机数生成器",
+ "MATH_RANDOM_INT_TITLE": "从 %1 到 %2 之间的随机整数",
+ "MATH_RANDOM_INT_TOOLTIP": "返回两个指定的范围(含)之间的随机整数。",
+ "MATH_RANDOM_FLOAT_HELPURL": "https://zh.wikipedia.org/wiki/随机数生成器",
+ "MATH_RANDOM_FLOAT_TITLE_RANDOM": "随机分数",
+ "MATH_RANDOM_FLOAT_TOOLTIP": "返回介于(包含)0.0到1.0之间的随机数。",
+ "TEXT_TEXT_HELPURL": "https://zh.wikipedia.org/wiki/字符串",
+ "TEXT_TEXT_TOOLTIP": "一个字母、单词或一行文本。",
+ "TEXT_JOIN_TITLE_CREATEWITH": "建立字串使用",
+ "TEXT_JOIN_TOOLTIP": "通过串起任意数量的项以建立一段文字。",
+ "TEXT_CREATE_JOIN_TITLE_JOIN": "加入",
+ "TEXT_CREATE_JOIN_TOOLTIP": "添加、移除或重新排列各节来重新配置这个文本块。",
+ "TEXT_CREATE_JOIN_ITEM_TOOLTIP": "将一个项添加到文本中。",
+ "TEXT_APPEND_TO": "在",
+ "TEXT_APPEND_APPENDTEXT": "追加文本",
+ "TEXT_APPEND_TOOLTIP": "将一些文本追加到变量“%1”。",
+ "TEXT_LENGTH_TITLE": "%1的长度",
+ "TEXT_LENGTH_TOOLTIP": "返回提供文本的字母数(包括空格)。",
+ "TEXT_ISEMPTY_TITLE": "%1是空的",
+ "TEXT_ISEMPTY_TOOLTIP": "如果提供的文本为空,则返回真。",
+ "TEXT_INDEXOF_TOOLTIP": "返回在第二个字串中的第一/最后一个匹配项的索引值。如果未找到则返回%1。",
+ "TEXT_INDEXOF_INPUT_INTEXT": "自文本",
+ "TEXT_INDEXOF_OPERATOR_FIRST": "寻找第一个出现的文本",
+ "TEXT_INDEXOF_OPERATOR_LAST": "寻找最后一个出现的文本",
+ "TEXT_INDEXOF_TAIL": "空白",
+ "TEXT_CHARAT_INPUT_INTEXT": "于文本中",
+ "TEXT_CHARAT_FROM_START": "获得字符#",
+ "TEXT_CHARAT_FROM_END": "获得倒数第#个字符",
+ "TEXT_CHARAT_FIRST": "获得第一个字符",
+ "TEXT_CHARAT_LAST": "获得最后一个字符",
+ "TEXT_CHARAT_RANDOM": "获取随机的字母",
+ "TEXT_CHARAT_TAIL": "空白",
+ "TEXT_CHARAT_TOOLTIP": "返回位于指定位置的字母。",
+ "TEXT_GET_SUBSTRING_TOOLTIP": "返回指定的部分文本。",
+ "TEXT_GET_SUBSTRING_INPUT_IN_TEXT": "自文本",
+ "TEXT_GET_SUBSTRING_START_FROM_START": "取得一段字串自#",
+ "TEXT_GET_SUBSTRING_START_FROM_END": "取得一段字串自倒数第#个字符",
+ "TEXT_GET_SUBSTRING_START_FIRST": "取得一段字串自第一个字符",
+ "TEXT_GET_SUBSTRING_END_FROM_START": "到字符#",
+ "TEXT_GET_SUBSTRING_END_FROM_END": "到倒数第#个字符",
+ "TEXT_GET_SUBSTRING_END_LAST": "到最后一个字符",
+ "TEXT_GET_SUBSTRING_TAIL": "空白",
+ "TEXT_CHANGECASE_TOOLTIP": "使用不同的大小写复制这段文字。",
+ "TEXT_CHANGECASE_OPERATOR_UPPERCASE": "为大写",
+ "TEXT_CHANGECASE_OPERATOR_LOWERCASE": "为小写",
+ "TEXT_CHANGECASE_OPERATOR_TITLECASE": "为首字母大写",
+ "TEXT_TRIM_TOOLTIP": "复制这段文字的同时删除两端多余的空格。",
+ "TEXT_TRIM_OPERATOR_BOTH": "消除两侧空格",
+ "TEXT_TRIM_OPERATOR_LEFT": "消除左侧空格",
+ "TEXT_TRIM_OPERATOR_RIGHT": "消除右侧空格",
+ "TEXT_PRINT_TITLE": "打印%1",
+ "TEXT_PRINT_TOOLTIP": "打印指定的文字、数字或其他值。",
+ "TEXT_PROMPT_TYPE_TEXT": "输入数字并显示提示消息",
+ "TEXT_PROMPT_TYPE_NUMBER": "输入数字并显示提示消息",
+ "TEXT_PROMPT_TOOLTIP_NUMBER": "提示用户输入数字。",
+ "TEXT_PROMPT_TOOLTIP_TEXT": "提示用户输入一些文本。",
+ "LISTS_CREATE_EMPTY_HELPURL": "https://github.com/google/blockly/wiki/Lists#create-empty-list",
+ "LISTS_CREATE_EMPTY_TITLE": "创建空列表",
+ "LISTS_CREATE_EMPTY_TOOLTIP": "返回一个列表,长度为 0,不包含任何数据记录",
+ "LISTS_CREATE_WITH_HELPURL": "https://github.com/google/blockly/wiki/Lists#create-list-with",
+ "LISTS_CREATE_WITH_TOOLTIP": "建立一个具有任意数量项目的列表。",
+ "LISTS_CREATE_WITH_INPUT_WITH": "建立字串使用",
+ "LISTS_CREATE_WITH_CONTAINER_TITLE_ADD": "列表",
+ "LISTS_CREATE_WITH_CONTAINER_TOOLTIP": "增加、删除或重新排列各部分以此重新配置这个列表块。",
+ "LISTS_CREATE_WITH_ITEM_TOOLTIP": "将一个项添加到列表中。",
+ "LISTS_REPEAT_TOOLTIP": "建立包含指定重复次数的值的列表。",
+ "LISTS_REPEAT_TITLE": "建立列表使用项 %1 重复 %2 次",
+ "LISTS_LENGTH_TITLE": "%1的长度",
+ "LISTS_LENGTH_TOOLTIP": "返回列表的长度。",
+ "LISTS_ISEMPTY_TITLE": "%1是空的",
+ "LISTS_ISEMPTY_TOOLTIP": "如果改列表为空,则返回真。",
+ "LISTS_INLIST": "在列表中",
+ "LISTS_INDEX_OF_FIRST": "找出第一个项出现",
+ "LISTS_INDEX_OF_LAST": "找出最后一个项出现",
+ "LISTS_INDEX_OF_TOOLTIP": "返回在列表中的第一/最后一个匹配项的索引值。如果找不到项目则返回%1。",
+ "LISTS_GET_INDEX_GET": "获得",
+ "LISTS_GET_INDEX_GET_REMOVE": "取出并移除",
+ "LISTS_GET_INDEX_REMOVE": "移除",
+ "LISTS_GET_INDEX_FROM_START": "#",
+ "LISTS_GET_INDEX_FROM_END": "倒数第#",
+ "LISTS_GET_INDEX_FIRST": "第一",
+ "LISTS_GET_INDEX_LAST": "最后",
+ "LISTS_GET_INDEX_RANDOM": "随机",
+ "LISTS_GET_INDEX_TAIL": "空白",
+ "LISTS_INDEX_FROM_START_TOOLTIP": "%1是第一个项目。",
+ "LISTS_INDEX_FROM_END_TOOLTIP": "%1是最后一项。",
+ "LISTS_GET_INDEX_TOOLTIP_GET_FROM": "返回在列表中的指定位置的项。",
+ "LISTS_GET_INDEX_TOOLTIP_GET_FIRST": "返回列表中的第一个项目。",
+ "LISTS_GET_INDEX_TOOLTIP_GET_LAST": "返回列表中的最后一项。",
+ "LISTS_GET_INDEX_TOOLTIP_GET_RANDOM": "随机返回列表中的一个项目。",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM": "移除并返回列表中的指定位置的项。",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST": "移除并返回列表中的第一个项目。",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST": "移除并返回列表中的最后一个项目。",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM": "移除并返回列表中的一个随机项目中。",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM": "移除在列表中的指定位置的项。",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST": "移除列表中的第一项",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST": "移除列表中的最后一项",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM": "删除列表中的一个随机的项。",
+ "LISTS_SET_INDEX_SET": "设置",
+ "LISTS_SET_INDEX_INSERT": "插入在",
+ "LISTS_SET_INDEX_INPUT_TO": "为",
+ "LISTS_SET_INDEX_TOOLTIP_SET_FROM": "设置在列表中指定位置的项。",
+ "LISTS_SET_INDEX_TOOLTIP_SET_FIRST": "设置列表中的第一个项目。",
+ "LISTS_SET_INDEX_TOOLTIP_SET_LAST": "设置列表中的最后一项。",
+ "LISTS_SET_INDEX_TOOLTIP_SET_RANDOM": "设置列表中一个随机的项目。",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_FROM": "插入在列表中指定位置的项。",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST": "在列表的起始处添加该项。",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_LAST": "将该项追加到列表的末尾。",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM": "在列表中随机插入项。",
+ "LISTS_GET_SUBLIST_START_FROM_START": "从#取得子列表",
+ "LISTS_GET_SUBLIST_START_FROM_END": "从倒数#取得子列表",
+ "LISTS_GET_SUBLIST_START_FIRST": "从头获得子列表",
+ "LISTS_GET_SUBLIST_END_FROM_START": "到#",
+ "LISTS_GET_SUBLIST_END_FROM_END": "到倒数第#",
+ "LISTS_GET_SUBLIST_END_LAST": "到最后",
+ "LISTS_GET_SUBLIST_TAIL": "空白",
+ "LISTS_GET_SUBLIST_TOOLTIP": "复制列表中指定的部分。",
+ "LISTS_SORT_HELPURL": "https://github.com/google/blockly/wiki/Lists#sorting-a-list",
+ "LISTS_SORT_TITLE": "排序%1 %2 %3",
+ "LISTS_SORT_TOOLTIP": "排序一个列表的拷贝。",
+ "LISTS_SORT_ORDER_ASCENDING": "升序",
+ "LISTS_SORT_ORDER_DESCENDING": "降序",
+ "LISTS_SORT_TYPE_NUMERIC": "按数字排序",
+ "LISTS_SORT_TYPE_TEXT": "按字母排序",
+ "LISTS_SORT_TYPE_IGNORECASE": "按字母排序,忽略大小写",
+ "LISTS_SPLIT_HELPURL": "https://github.com/google/blockly/wiki/Lists#splitting-strings-and-joining-lists",
+ "LISTS_SPLIT_LIST_FROM_TEXT": "从文本制作列表",
+ "LISTS_SPLIT_TEXT_FROM_LIST": "从列表拆出文本",
+ "LISTS_SPLIT_WITH_DELIMITER": "用分隔符",
+ "LISTS_SPLIT_TOOLTIP_SPLIT": "拆分文本到文本列表,按每个分隔符拆分。",
+ "LISTS_SPLIT_TOOLTIP_JOIN": "加入文本列表至一个文本,由分隔符分隔。",
+ "ORDINAL_NUMBER_SUFFIX": "空白",
+ "VARIABLES_GET_TOOLTIP": "返回此变量的值。",
+ "VARIABLES_GET_CREATE_SET": "创建“设定%1”",
+ "VARIABLES_SET": "赋值 %1 到 %2",
+ "VARIABLES_SET_TOOLTIP": "设置此变量,以使它和输入值相等。",
+ "VARIABLES_SET_CREATE_GET": "创建“获得%1”",
+ "PROCEDURES_DEFNORETURN_HELPURL": "https://zh.wikipedia.org/wiki/子程序",
+ "PROCEDURES_DEFNORETURN_TITLE": "至",
+ "PROCEDURES_DEFNORETURN_PROCEDURE": "做点什么",
+ "PROCEDURES_BEFORE_PARAMS": "与:",
+ "PROCEDURES_CALL_BEFORE_PARAMS": "与:",
+ "PROCEDURES_DEFNORETURN_DO": "空白",
+ "PROCEDURES_DEFNORETURN_TOOLTIP": "创建一个不带输出值的函数。",
+ "PROCEDURES_DEFNORETURN_COMMENT": "描述该功能...",
+ "PROCEDURES_DEFRETURN_HELPURL": "https://zh.wikipedia.org/wiki/子程序",
+ "PROCEDURES_DEFRETURN_RETURN": "返回",
+ "PROCEDURES_DEFRETURN_TOOLTIP": "创建一个有输出值的函数。",
+ "PROCEDURES_ALLOW_STATEMENTS": "允许声明",
+ "PROCEDURES_DEF_DUPLICATE_WARNING": "警告: 此函数具有重复参数。",
+ "PROCEDURES_CALLNORETURN_HELPURL": "https://zh.wikipedia.org/wiki/子程序",
+ "PROCEDURES_CALLNORETURN_TOOLTIP": "运行用户定义的函数“%1”。",
+ "PROCEDURES_CALLRETURN_HELPURL": "https://zh.wikipedia.org/wiki/子程序",
+ "PROCEDURES_CALLRETURN_TOOLTIP": "运行用户定义的函数“%1”,并使用它的输出值。",
+ "PROCEDURES_MUTATORCONTAINER_TITLE": "输入",
+ "PROCEDURES_MUTATORCONTAINER_TOOLTIP": "添加、删除或重新排此函数的输入。",
+ "PROCEDURES_MUTATORARG_TITLE": "输入名称:",
+ "PROCEDURES_MUTATORARG_TOOLTIP": "添加函数输入。",
+ "PROCEDURES_HIGHLIGHT_DEF": "突出显示函数定义",
+ "PROCEDURES_CREATE_DO": "创建“%1”",
+ "PROCEDURES_IFRETURN_TOOLTIP": "如果值为真,则返回第二个值。",
+ "PROCEDURES_IFRETURN_HELPURL": "http://c2.com/cgi/wiki?GuardClause",
+ "PROCEDURES_IFRETURN_WARNING": "警告: 仅在定义函数内可使用此块。"
+}
diff --git a/blockly/msg/json/zh-hant.json b/blockly/msg/json/zh-hant.json
new file mode 100644
index 0000000..3931ca8
--- /dev/null
+++ b/blockly/msg/json/zh-hant.json
@@ -0,0 +1,319 @@
+{
+ "@metadata": {
+ "authors": [
+ "Gasolin",
+ "Wehwei",
+ "Liuxinyu970226",
+ "LNDDYL",
+ "Cwlin0416",
+ "Kasimtan",
+ "Kly"
+ ]
+ },
+ "VARIABLES_DEFAULT_NAME": "變數",
+ "TODAY": "今天",
+ "DUPLICATE_BLOCK": "複製",
+ "ADD_COMMENT": "加入註解",
+ "REMOVE_COMMENT": "移除註解",
+ "EXTERNAL_INPUTS": "多行輸入",
+ "INLINE_INPUTS": "單行輸入",
+ "DELETE_BLOCK": "刪除積木",
+ "DELETE_X_BLOCKS": "刪除 %1 塊積木",
+ "DELETE_ALL_BLOCKS": "刪除共 %1 塊積木?",
+ "CLEAN_UP": "清理積木",
+ "COLLAPSE_BLOCK": "收合積木",
+ "COLLAPSE_ALL": "收合積木",
+ "EXPAND_BLOCK": "展開積木",
+ "EXPAND_ALL": "展開積木",
+ "DISABLE_BLOCK": "停用積木",
+ "ENABLE_BLOCK": "啟用積木",
+ "HELP": "說明",
+ "UNDO": "還原",
+ "REDO": "重試",
+ "CHANGE_VALUE_TITLE": "修改值:",
+ "RENAME_VARIABLE": "重新命名變數...",
+ "RENAME_VARIABLE_TITLE": "將所有 \"%1\" 變數重新命名為:",
+ "NEW_VARIABLE": "建立變數...",
+ "NEW_VARIABLE_TITLE": "新變數名稱:",
+ "VARIABLE_ALREADY_EXISTS": "一個名為%1的變數已存在。",
+ "DELETE_VARIABLE_CONFIRMATION": "刪除%1使用的%2變數?",
+ "DELETE_VARIABLE": "刪除%1變數",
+ "COLOUR_PICKER_HELPURL": "https://zh.wikipedia.org/wiki/顏色",
+ "COLOUR_PICKER_TOOLTIP": "從調色板中選擇一種顏色。",
+ "COLOUR_RANDOM_TITLE": "隨機顏色",
+ "COLOUR_RANDOM_TOOLTIP": "隨機選擇一種顏色。",
+ "COLOUR_RGB_TITLE": "顏色",
+ "COLOUR_RGB_RED": "紅",
+ "COLOUR_RGB_GREEN": "綠",
+ "COLOUR_RGB_BLUE": "藍",
+ "COLOUR_RGB_TOOLTIP": "透過指定紅、綠、 藍色的值來建立一種顏色。所有的值必須介於 0 和 100 之間。",
+ "COLOUR_BLEND_TITLE": "混合",
+ "COLOUR_BLEND_COLOUR1": "顏色 1",
+ "COLOUR_BLEND_COLOUR2": "顏色 2",
+ "COLOUR_BLEND_RATIO": "比例",
+ "COLOUR_BLEND_TOOLTIP": "透過一個比率 (0.0-1.0)來混合兩種顏色。",
+ "CONTROLS_REPEAT_HELPURL": "https://zh.wikipedia.org/wiki/For迴圈",
+ "CONTROLS_REPEAT_TITLE": "重複 %1 次",
+ "CONTROLS_REPEAT_INPUT_DO": "執行",
+ "CONTROLS_REPEAT_TOOLTIP": "多次執行一些語句",
+ "CONTROLS_WHILEUNTIL_OPERATOR_WHILE": "重複 當",
+ "CONTROLS_WHILEUNTIL_OPERATOR_UNTIL": "重複 直到",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_WHILE": "當值為真時,執行一些語句",
+ "CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL": "當值為否時,執行一些語句",
+ "CONTROLS_FOR_TOOLTIP": "從起始數到結尾數中取出變數 \"%1\" 的值,按指定的時間間隔,執行指定的積木。",
+ "CONTROLS_FOR_TITLE": "使用 %1 從範圍 %2 到 %3 每隔 %4",
+ "CONTROLS_FOREACH_TITLE": "取出每個 %1 自列表 %2",
+ "CONTROLS_FOREACH_TOOLTIP": "遍歷每個列表中的項目,將變數 '%1' 設定到該項目中,然後執行某些語句",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK": "停止 迴圈",
+ "CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE": "繼續下一個 迴圈",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK": "離開當前的 迴圈",
+ "CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE": "跳過這個迴圈的其餘步驟,並繼續下一次的迴圈運算。",
+ "CONTROLS_FLOW_STATEMENTS_WARNING": "警告: 此積木僅可用於迴圈內。",
+ "CONTROLS_IF_TOOLTIP_1": "當值為真時,執行一些語句",
+ "CONTROLS_IF_TOOLTIP_2": "當值為真時,執行第一個語句,否則則執行第二個語句",
+ "CONTROLS_IF_TOOLTIP_3": "如果第一個值為真,則執行第一個語句。否則當第二個值為真時,則執行第二個語句",
+ "CONTROLS_IF_TOOLTIP_4": "如果第一個值為真,則執行第一個語句。否則當第二個值為真時,則執行第二個語句。如果前幾個敘述都不為真,則執行最後一個語句",
+ "CONTROLS_IF_MSG_IF": "如果",
+ "CONTROLS_IF_MSG_ELSEIF": "否則如果",
+ "CONTROLS_IF_MSG_ELSE": "否則",
+ "CONTROLS_IF_IF_TOOLTIP": "添加、 刪除或重新排列各區塊來此重新配置這個'如果'積木。",
+ "CONTROLS_IF_ELSEIF_TOOLTIP": "將條件添加到'如果'積木。",
+ "CONTROLS_IF_ELSE_TOOLTIP": "加入一個最終,所有條件下都都執行的區塊到'如果'積木中",
+ "LOGIC_COMPARE_HELPURL": "https://zh.wikipedia.org/wiki/不等",
+ "LOGIC_COMPARE_TOOLTIP_EQ": "如果這兩個輸入區塊內容相等,返回 真。",
+ "LOGIC_COMPARE_TOOLTIP_NEQ": "如果這兩個輸入區塊內容不相等,返回 真。",
+ "LOGIC_COMPARE_TOOLTIP_LT": "如果第一個輸入小於第二個輸入,返回 真。",
+ "LOGIC_COMPARE_TOOLTIP_LTE": "如果第一個輸入是小於或等於第二個輸入,返回 真。",
+ "LOGIC_COMPARE_TOOLTIP_GT": "如果第一個輸入大於第二個輸入,返回 真。",
+ "LOGIC_COMPARE_TOOLTIP_GTE": "如果第一個輸入大於或等於第二個輸入,返回 真。",
+ "LOGIC_OPERATION_TOOLTIP_AND": "如果這兩個輸入值都為 真,則返回 真。",
+ "LOGIC_OPERATION_AND": "且",
+ "LOGIC_OPERATION_TOOLTIP_OR": "如果至少一個輸入的值為 真,返回 真。",
+ "LOGIC_OPERATION_OR": "或",
+ "LOGIC_NEGATE_TITLE": "非 %1",
+ "LOGIC_NEGATE_TOOLTIP": "如果輸入的值是 否,則返回 真。如果輸入的值是 真 返回 否。",
+ "LOGIC_BOOLEAN_TRUE": "真",
+ "LOGIC_BOOLEAN_FALSE": "否",
+ "LOGIC_BOOLEAN_TOOLTIP": "返回 真 或 否。",
+ "LOGIC_NULL": "空",
+ "LOGIC_NULL_TOOLTIP": "返回 空。",
+ "LOGIC_TERNARY_HELPURL": "https://zh.wikipedia.org/wiki/條件運算符",
+ "LOGIC_TERNARY_CONDITION": "測試",
+ "LOGIC_TERNARY_IF_TRUE": "如果為真",
+ "LOGIC_TERNARY_IF_FALSE": "如果為非",
+ "LOGIC_TERNARY_TOOLTIP": "檢查 'test' 中的條件。如果條件為 真,將返回 '如果為 真' 值 ;否則,返回 '如果為 否' 的值。",
+ "MATH_NUMBER_HELPURL": "https://zh.wikipedia.org/wiki/數",
+ "MATH_NUMBER_TOOLTIP": "一個數字。",
+ "MATH_ARITHMETIC_HELPURL": "https://zh.wikipedia.org/wiki/算術",
+ "MATH_ARITHMETIC_TOOLTIP_ADD": "返回兩個數字的總和。",
+ "MATH_ARITHMETIC_TOOLTIP_MINUS": "返回兩個數字的差。",
+ "MATH_ARITHMETIC_TOOLTIP_MULTIPLY": "返回兩個數字的乘積。",
+ "MATH_ARITHMETIC_TOOLTIP_DIVIDE": "返回兩個數字的商。",
+ "MATH_ARITHMETIC_TOOLTIP_POWER": "返回第二個數字的指數的第一個數字。",
+ "MATH_SINGLE_HELPURL": "https://zh.wikipedia.org/wiki/平方根",
+ "MATH_SINGLE_OP_ROOT": "開根號",
+ "MATH_SINGLE_TOOLTIP_ROOT": "返回指定數字的平方根。",
+ "MATH_SINGLE_OP_ABSOLUTE": "絕對值",
+ "MATH_SINGLE_TOOLTIP_ABS": "返回指定數字的絕對值。",
+ "MATH_SINGLE_TOOLTIP_NEG": "返回指定數字的 negation。",
+ "MATH_SINGLE_TOOLTIP_LN": "返回指定數字的自然對數。",
+ "MATH_SINGLE_TOOLTIP_LOG10": "返回指定數字的對數。",
+ "MATH_SINGLE_TOOLTIP_EXP": "返回指定數字指數的 e",
+ "MATH_SINGLE_TOOLTIP_POW10": "返回指定數字指數的10的冪次。",
+ "MATH_TRIG_HELPURL": "https://zh.wikipedia.org/wiki/三角函數",
+ "MATH_TRIG_TOOLTIP_SIN": "返回指定角度的正弦值(非弧度)。",
+ "MATH_TRIG_TOOLTIP_COS": "返回指定角度的餘弦值(非弧度)。",
+ "MATH_TRIG_TOOLTIP_TAN": "返回指定角度的正切值(非弧度)。",
+ "MATH_TRIG_TOOLTIP_ASIN": "返回指定角度的反正弦值(非弧度)。",
+ "MATH_TRIG_TOOLTIP_ACOS": "返回指定角度的反餘弦值(非弧度)。",
+ "MATH_TRIG_TOOLTIP_ATAN": "返回指定角度的反正切值。",
+ "MATH_CONSTANT_HELPURL": "https://zh.wikipedia.org/wiki/數學常數",
+ "MATH_CONSTANT_TOOLTIP": "返回一個的常見常量: π (3.141......),e (2.718...)、 φ (1.618...)、 開方(2) (1.414......)、 開方(½) (0.707......) 或 ∞ (無窮大)。",
+ "MATH_IS_EVEN": "是偶數",
+ "MATH_IS_ODD": "是奇數",
+ "MATH_IS_PRIME": "是質數",
+ "MATH_IS_WHOLE": "是非負整數",
+ "MATH_IS_POSITIVE": "是正值",
+ "MATH_IS_NEGATIVE": "是負值",
+ "MATH_IS_DIVISIBLE_BY": "可被整除",
+ "MATH_IS_TOOLTIP": "如果數字是偶數,奇數,非負整數,正數、 負數或如果它是可被某數字整除,則返回 真 或 否。",
+ "MATH_CHANGE_HELPURL": "https://zh.wikipedia.org/wiki/加法",
+ "MATH_CHANGE_TITLE": "修改 %1 自 %2",
+ "MATH_CHANGE_TOOLTIP": "將數字添加到變數 '%1'。",
+ "MATH_ROUND_HELPURL": "https://zh.wikipedia.org/wiki/數值簡化",
+ "MATH_ROUND_TOOLTIP": "將數字向上或向下舍入。",
+ "MATH_ROUND_OPERATOR_ROUND": "四捨五入",
+ "MATH_ROUND_OPERATOR_ROUNDUP": "無條件進位",
+ "MATH_ROUND_OPERATOR_ROUNDDOWN": "無條件捨去",
+ "MATH_ONLIST_OPERATOR_SUM": "總和 自列表",
+ "MATH_ONLIST_TOOLTIP_SUM": "返回列表中的所有數字的總和。",
+ "MATH_ONLIST_OPERATOR_MIN": "最小值 自列表",
+ "MATH_ONLIST_TOOLTIP_MIN": "返回列表中的最小數字。",
+ "MATH_ONLIST_OPERATOR_MAX": "最大值 自列表",
+ "MATH_ONLIST_TOOLTIP_MAX": "返回列表中的最大數字。",
+ "MATH_ONLIST_OPERATOR_AVERAGE": "平均值 自列表",
+ "MATH_ONLIST_TOOLTIP_AVERAGE": "返回列表中數值的平均值 (算術平均值)。",
+ "MATH_ONLIST_OPERATOR_MEDIAN": "中位數 自列表",
+ "MATH_ONLIST_TOOLTIP_MEDIAN": "返回列表中數值的中位數。",
+ "MATH_ONLIST_OPERATOR_MODE": "比較眾數 自列表",
+ "MATH_ONLIST_TOOLTIP_MODE": "返回一個列表中的最常見項目的列表。",
+ "MATH_ONLIST_OPERATOR_STD_DEV": "標準差 自列表",
+ "MATH_ONLIST_TOOLTIP_STD_DEV": "返回列表中數字的標準差。",
+ "MATH_ONLIST_OPERATOR_RANDOM": "隨機抽取 自列表",
+ "MATH_ONLIST_TOOLTIP_RANDOM": "從列表中返回一個隨機的項目。",
+ "MATH_MODULO_HELPURL": "https://zh.wikipedia.org/wiki/模除",
+ "MATH_MODULO_TITLE": "取餘數自 %1 ÷ %2",
+ "MATH_MODULO_TOOLTIP": "回傳兩個數字相除的餘數",
+ "MATH_CONSTRAIN_TITLE": "限制數字 %1 介於 (低) %2 到 (高) %3",
+ "MATH_CONSTRAIN_TOOLTIP": "限制數字介於兩個指定的數字之間",
+ "MATH_RANDOM_INT_HELPURL": "https://zh.wikipedia.org/wiki/隨機數生成器",
+ "MATH_RANDOM_INT_TITLE": "取隨機整數介於 (低) %1 到 %2",
+ "MATH_RANDOM_INT_TOOLTIP": "回傳限制的數字區間內的隨機數字",
+ "MATH_RANDOM_FLOAT_HELPURL": "https://zh.wikipedia.org/wiki/隨機數生成器",
+ "MATH_RANDOM_FLOAT_TITLE_RANDOM": "取隨機分數",
+ "MATH_RANDOM_FLOAT_TOOLTIP": "返回介於 (包含) 0.0 到 1.0 之間的隨機數。",
+ "TEXT_TEXT_HELPURL": "https://zh.wikipedia.org/wiki/字串",
+ "TEXT_TEXT_TOOLTIP": "字元、 單詞或一行文字。",
+ "TEXT_JOIN_TITLE_CREATEWITH": "建立字串使用",
+ "TEXT_JOIN_TOOLTIP": "通過串起任意數量的項目來建立一段文字。",
+ "TEXT_CREATE_JOIN_TITLE_JOIN": "加入",
+ "TEXT_CREATE_JOIN_TOOLTIP": "添加、 刪除或重新排列各區塊來此重新配置這個文字積木。",
+ "TEXT_CREATE_JOIN_ITEM_TOOLTIP": "將一個項目加入到字串中。",
+ "TEXT_APPEND_TO": "在",
+ "TEXT_APPEND_APPENDTEXT": "後加入文字",
+ "TEXT_APPEND_TOOLTIP": "將一些文字追加到變數 '%1'。",
+ "TEXT_LENGTH_TITLE": "長度 %1",
+ "TEXT_LENGTH_TOOLTIP": "返回這串文字的字元數(含空格) 。",
+ "TEXT_ISEMPTY_TITLE": "%1 為空",
+ "TEXT_ISEMPTY_TOOLTIP": "如果提供的字串為空,則返回 真。",
+ "TEXT_INDEXOF_TOOLTIP": "返回在第二個字串中的第一個/最後一個匹配項目的索引值。如果未找到則返回 %1。",
+ "TEXT_INDEXOF_INPUT_INTEXT": "在字串",
+ "TEXT_INDEXOF_OPERATOR_FIRST": "尋找 第一個 出現的字串",
+ "TEXT_INDEXOF_OPERATOR_LAST": "尋找 最後一個 出現的字串",
+ "TEXT_CHARAT_INPUT_INTEXT": "的字元在字串",
+ "TEXT_CHARAT_FROM_START": "取得 字元 #",
+ "TEXT_CHARAT_FROM_END": "取得 倒數第 # 個字元",
+ "TEXT_CHARAT_FIRST": "取第一個字元",
+ "TEXT_CHARAT_LAST": "取最後一個字元",
+ "TEXT_CHARAT_RANDOM": "取隨機一個字元",
+ "TEXT_CHARAT_TAIL": "",
+ "TEXT_CHARAT_TOOLTIP": "返回位於指定位置的字元。",
+ "TEXT_GET_SUBSTRING_TOOLTIP": "返回指定的部分文字。",
+ "TEXT_GET_SUBSTRING_INPUT_IN_TEXT": "自字串",
+ "TEXT_GET_SUBSTRING_START_FROM_START": "取得一段字串自 #",
+ "TEXT_GET_SUBSTRING_START_FROM_END": "取得一段字串自 #",
+ "TEXT_GET_SUBSTRING_START_FIRST": "取得一段字串 自 第一個字元",
+ "TEXT_GET_SUBSTRING_END_FROM_START": "到 字元 #",
+ "TEXT_GET_SUBSTRING_END_FROM_END": "到 倒數第 # 個字元",
+ "TEXT_GET_SUBSTRING_END_LAST": "到 最後一個字元",
+ "TEXT_CHANGECASE_TOOLTIP": "使用不同的大小寫複製這段文字。",
+ "TEXT_CHANGECASE_OPERATOR_UPPERCASE": "轉成 大寫",
+ "TEXT_CHANGECASE_OPERATOR_LOWERCASE": "轉成 小寫",
+ "TEXT_CHANGECASE_OPERATOR_TITLECASE": "轉成 首字母大寫",
+ "TEXT_TRIM_TOOLTIP": "複製這段文字的同時刪除兩端多餘的空格。",
+ "TEXT_TRIM_OPERATOR_BOTH": "消除兩側空格",
+ "TEXT_TRIM_OPERATOR_LEFT": "消除左側空格",
+ "TEXT_TRIM_OPERATOR_RIGHT": "消除右側空格",
+ "TEXT_PRINT_TITLE": "印出 %1",
+ "TEXT_PRINT_TOOLTIP": "印出指定的文字、 數字或其他值。",
+ "TEXT_PROMPT_TYPE_TEXT": "輸入 文字 並顯示提示訊息",
+ "TEXT_PROMPT_TYPE_NUMBER": "輸入 數字 並顯示提示訊息",
+ "TEXT_PROMPT_TOOLTIP_NUMBER": "輸入數字",
+ "TEXT_PROMPT_TOOLTIP_TEXT": "輸入文字",
+ "LISTS_CREATE_EMPTY_TITLE": "建立空列表",
+ "LISTS_CREATE_EMPTY_TOOLTIP": "返回一個長度為 0 的列表,不包含任何資料記錄",
+ "LISTS_CREATE_WITH_TOOLTIP": "建立一個具備任意數量項目的列表。",
+ "LISTS_CREATE_WITH_INPUT_WITH": "使用這些值建立列表",
+ "LISTS_CREATE_WITH_CONTAINER_TITLE_ADD": "列表",
+ "LISTS_CREATE_WITH_CONTAINER_TOOLTIP": "添加、 刪除或重新排列各區塊來此重新配置這個 列表 積木。",
+ "LISTS_CREATE_WITH_ITEM_TOOLTIP": "將一個項目加入到列表中。",
+ "LISTS_REPEAT_TOOLTIP": "建立包含指定重複次數的 值 的列表。",
+ "LISTS_REPEAT_TITLE": "建立列表使用項目 %1 重複 %2 次數",
+ "LISTS_LENGTH_TITLE": "長度 %1",
+ "LISTS_LENGTH_TOOLTIP": "返回列表的長度。",
+ "LISTS_ISEMPTY_TITLE": "%1 值為空",
+ "LISTS_ISEMPTY_TOOLTIP": "如果該列表為空,則返回 真。",
+ "LISTS_INLIST": "自列表",
+ "LISTS_INDEX_OF_FIRST": "找出 第一個 項目出現",
+ "LISTS_INDEX_OF_LAST": "找出 最後一個 項目出現",
+ "LISTS_INDEX_OF_TOOLTIP": "返回在列表中的第一個/最後一個匹配項目的索引值。如果未找到則返回 %1。",
+ "LISTS_GET_INDEX_GET": "取值",
+ "LISTS_GET_INDEX_GET_REMOVE": "取出並移除",
+ "LISTS_GET_INDEX_REMOVE": "移除",
+ "LISTS_GET_INDEX_FROM_END": "倒數第#筆",
+ "LISTS_GET_INDEX_FIRST": "第一筆",
+ "LISTS_GET_INDEX_LAST": "最後一筆",
+ "LISTS_GET_INDEX_RANDOM": "隨機",
+ "LISTS_INDEX_FROM_START_TOOLTIP": "%1 是第一個項目。",
+ "LISTS_INDEX_FROM_END_TOOLTIP": "%1 是最後一個項目。",
+ "LISTS_GET_INDEX_TOOLTIP_GET_FROM": "返回在列表中的指定位置的項目。",
+ "LISTS_GET_INDEX_TOOLTIP_GET_FIRST": "返回列表中的第一個項目",
+ "LISTS_GET_INDEX_TOOLTIP_GET_LAST": "返回列表中的最後一個項目",
+ "LISTS_GET_INDEX_TOOLTIP_GET_RANDOM": "返回列表中隨機的一個項目",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM": "移除並返回列表中的指定位置的項目。",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST": "移除並返回列表中的第一個項目",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST": "移除並返回列表中的最後一個項目",
+ "LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM": "移除並返回列表中的隨機一個項目",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM": "移除在列表中的指定位置的項目。",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST": "移除列表中的第一個項目",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST": "移除列表中的最後一個項目",
+ "LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM": "移除列表中隨機的一個項目",
+ "LISTS_SET_INDEX_SET": "設定",
+ "LISTS_SET_INDEX_INSERT": "插入在",
+ "LISTS_SET_INDEX_INPUT_TO": "為",
+ "LISTS_SET_INDEX_TOOLTIP_SET_FROM": "設定在列表中的指定位置的項目。",
+ "LISTS_SET_INDEX_TOOLTIP_SET_FIRST": "設定列表中的第一個項目",
+ "LISTS_SET_INDEX_TOOLTIP_SET_LAST": "設定列表中的最後一個項目",
+ "LISTS_SET_INDEX_TOOLTIP_SET_RANDOM": "設定列表中隨機的一個項目",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_FROM": "插入在列表中的指定位置的項目。",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST": "在列表的起始處添加一個項目",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_LAST": "在列表的尾端加入一個項目",
+ "LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM": "在列表中隨機插入項目",
+ "LISTS_GET_SUBLIST_START_FROM_START": "從 # 取得子列表",
+ "LISTS_GET_SUBLIST_START_FROM_END": "從倒數 # 取得子列表",
+ "LISTS_GET_SUBLIST_START_FIRST": "從 頭 取得子列表",
+ "LISTS_GET_SUBLIST_END_FROM_START": "到 #",
+ "LISTS_GET_SUBLIST_END_FROM_END": "到 倒數 # 位",
+ "LISTS_GET_SUBLIST_END_LAST": "到 最後",
+ "LISTS_GET_SUBLIST_TOOLTIP": "複製列表中指定的部分。",
+ "LISTS_SORT_HELPURL": "https://github.com/google/blockly/wiki/Lists#sorting-a-list",
+ "LISTS_SORT_TITLE": "依%1%2%3排序",
+ "LISTS_SORT_TOOLTIP": "排序清單的複製內容",
+ "LISTS_SORT_ORDER_ASCENDING": "升冪排序",
+ "LISTS_SORT_ORDER_DESCENDING": "降冪排序",
+ "LISTS_SORT_TYPE_NUMERIC": "依數字排序",
+ "LISTS_SORT_TYPE_TEXT": "依字母排序",
+ "LISTS_SORT_TYPE_IGNORECASE": "依字母排序並忽略大小寫",
+ "LISTS_SPLIT_LIST_FROM_TEXT": "從文本製作列表",
+ "LISTS_SPLIT_TEXT_FROM_LIST": "從列表拆出文本",
+ "LISTS_SPLIT_WITH_DELIMITER": "用分隔符",
+ "LISTS_SPLIT_TOOLTIP_SPLIT": "拆分文本到文本列表,按每個分隔符拆分。",
+ "LISTS_SPLIT_TOOLTIP_JOIN": "串起文本列表成一個文本,由分隔符分隔。",
+ "VARIABLES_GET_TOOLTIP": "返回此變數的值。",
+ "VARIABLES_GET_CREATE_SET": "建立 '設定 %1'",
+ "VARIABLES_SET": "賦值 %1 到 %2",
+ "VARIABLES_SET_TOOLTIP": "設定此變數,好和輸入值相等。",
+ "VARIABLES_SET_CREATE_GET": "建立 '取得 %1'",
+ "PROCEDURES_DEFNORETURN_TITLE": "到",
+ "PROCEDURES_DEFNORETURN_PROCEDURE": "流程",
+ "PROCEDURES_BEFORE_PARAMS": "與:",
+ "PROCEDURES_CALL_BEFORE_PARAMS": "與:",
+ "PROCEDURES_DEFNORETURN_TOOLTIP": "創建一個無回傳值的函數。",
+ "PROCEDURES_DEFNORETURN_COMMENT": "描述此函數...",
+ "PROCEDURES_DEFRETURN_RETURN": "回傳",
+ "PROCEDURES_DEFRETURN_TOOLTIP": "創建一個有回傳值的函數。",
+ "PROCEDURES_ALLOW_STATEMENTS": "允許語句",
+ "PROCEDURES_DEF_DUPLICATE_WARNING": "警告: 此函數中有重複的參數。",
+ "PROCEDURES_CALLNORETURN_HELPURL": "https://zh.wikipedia.org/wiki/子程式",
+ "PROCEDURES_CALLNORETURN_TOOLTIP": "執行使用者定義的函數 '%1'。",
+ "PROCEDURES_CALLRETURN_HELPURL": "https://zh.wikipedia.org/wiki/子程式",
+ "PROCEDURES_CALLRETURN_TOOLTIP": "執行使用者定義的函數 '%1' 並使用它的回傳值",
+ "PROCEDURES_MUTATORCONTAINER_TITLE": "參數",
+ "PROCEDURES_MUTATORCONTAINER_TOOLTIP": "添加、刪除或重新排列此函數的輸入。",
+ "PROCEDURES_MUTATORARG_TITLE": "變數:",
+ "PROCEDURES_MUTATORARG_TOOLTIP": "添加函數輸入。",
+ "PROCEDURES_HIGHLIGHT_DEF": "反白顯示函式定義",
+ "PROCEDURES_CREATE_DO": "建立 '%1'",
+ "PROCEDURES_IFRETURN_TOOLTIP": "如果值為 真,則返回第二個值。",
+ "PROCEDURES_IFRETURN_WARNING": "警告: 此積木僅可在定義函式時使用。"
+}
diff --git a/blockly/msg/messages.js b/blockly/msg/messages.js
new file mode 100644
index 0000000..f4b0559
--- /dev/null
+++ b/blockly/msg/messages.js
@@ -0,0 +1,1113 @@
+/**
+ * @license
+ * Visual Blocks Language
+ *
+ * Copyright 2012 Google Inc.
+ * https://developers.google.com/blockly/
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * @fileoverview English strings.
+ * @author fraser@google.com (Neil Fraser)
+ *
+ * After modifying this file, either run "build.py" from the parent directory,
+ * or run (from this directory):
+ * ../i18n/js_to_json.py
+ * to regenerate json/{en,qqq,synonyms}.json.
+ *
+ * To convert all of the json files to .js files, run:
+ * ../i18n/create_messages.py json/*.json
+ */
+'use strict';
+
+goog.provide('Blockly.Msg.en');
+
+goog.require('Blockly.Msg');
+
+
+/**
+ * Due to the frequency of long strings, the 80-column wrap rule need not apply
+ * to message files.
+ */
+
+/**
+ * Each message is preceded with a tripple-slash comment that becomes the
+ * message descriptor. The build process extracts these descriptors, adds
+ * them to msg/json/qqq.json, and they show up in the translation console.
+ */
+
+/// default name - A simple, general default name for a variable, preferably short.
+/// For more context, see
+/// [[Translating:Blockly#infrequent_message_types]].\n{{Identical|Item}}
+Blockly.Msg.VARIABLES_DEFAULT_NAME = 'item';
+/// button text - Button that sets a calendar to today's date.\n{{Identical|Today}}
+Blockly.Msg.TODAY = 'Today';
+
+// Context menus.
+/// context menu - Make a copy of the selected block (and any blocks it contains).\n{{Identical|Duplicate}}
+Blockly.Msg.DUPLICATE_BLOCK = 'Duplicate';
+/// context menu - Add a descriptive comment to the selected block.
+Blockly.Msg.ADD_COMMENT = 'Add Comment';
+/// context menu - Remove the descriptive comment from the selected block.
+Blockly.Msg.REMOVE_COMMENT = 'Remove Comment';
+/// context menu - Change from 'external' to 'inline' mode for displaying blocks used as inputs to the selected block. See [[Translating:Blockly#context_menus]].
+Blockly.Msg.EXTERNAL_INPUTS = 'External Inputs';
+/// context menu - Change from 'internal' to 'external' mode for displaying blocks used as inputs to the selected block. See [[Translating:Blockly#context_menus]].
+Blockly.Msg.INLINE_INPUTS = 'Inline Inputs';
+/// context menu - Permanently delete the selected block.
+Blockly.Msg.DELETE_BLOCK = 'Delete Block';
+/// context menu - Permanently delete the %1 selected blocks.\n\nParameters:\n* %1 - an integer greater than 1.
+Blockly.Msg.DELETE_X_BLOCKS = 'Delete %1 Blocks';
+/// confirmation prompt - Question the user if they really wanted to permanently delete all %1 blocks.\n\nParameters:\n* %1 - an integer greater than 1.
+Blockly.Msg.DELETE_ALL_BLOCKS = 'Delete all %1 blocks?';
+/// context menu - Reposition all the blocks so that they form a neat line.
+Blockly.Msg.CLEAN_UP = 'Clean up Blocks';
+/// context menu - Make the appearance of the selected block smaller by hiding some information about it.
+Blockly.Msg.COLLAPSE_BLOCK = 'Collapse Block';
+/// context menu - Make the appearance of all blocks smaller by hiding some information about it. Use the same terminology as in the previous message.
+Blockly.Msg.COLLAPSE_ALL = 'Collapse Blocks';
+/// context menu - Restore the appearance of the selected block by showing information about it that was hidden (collapsed) earlier.
+Blockly.Msg.EXPAND_BLOCK = 'Expand Block';
+/// context menu - Restore the appearance of all blocks by showing information about it that was hidden (collapsed) earlier. Use the same terminology as in the previous message.
+Blockly.Msg.EXPAND_ALL = 'Expand Blocks';
+/// context menu - Make the selected block have no effect (unless reenabled).
+Blockly.Msg.DISABLE_BLOCK = 'Disable Block';
+/// context menu - Make the selected block have effect (after having been disabled earlier).
+Blockly.Msg.ENABLE_BLOCK = 'Enable Block';
+/// context menu - Provide helpful information about the selected block.\n{{Identical|Help}}
+Blockly.Msg.HELP = 'Help';
+/// context menu - Undo the previous action.\n{{Identical|Undo}}
+Blockly.Msg.UNDO = 'Undo';
+/// context menu - Undo the previous undo action.\n{{Identical|Redo}}
+Blockly.Msg.REDO = 'Redo';
+
+// Variable renaming.
+/// prompt - This message is only seen in the Opera browser. With most browsers, users can edit numeric values in blocks by just clicking and typing. Opera does not allows this, so we have to open a new window and prompt users with this message to chanage a value.
+Blockly.Msg.CHANGE_VALUE_TITLE = 'Change value:';
+/// dropdown choice - When the user clicks on a variable block, this is one of the dropdown menu choices. It is used to rename the current variable. See [https://github.com/google/blockly/wiki/Variables#dropdown-menu https://github.com/google/blockly/wiki/Variables#dropdown-menu].
+Blockly.Msg.RENAME_VARIABLE = 'Rename variable...';
+/// prompt - Prompts the user to enter the new name for the selected variable. See [https://github.com/google/blockly/wiki/Variables#dropdown-menu https://github.com/google/blockly/wiki/Variables#dropdown-menu].\n\nParameters:\n* %1 - the name of the variable to be renamed.
+Blockly.Msg.RENAME_VARIABLE_TITLE = 'Rename all "%1" variables to:';
+
+// Variable creation
+/// button text - Text on the button used to launch the variable creation dialogue.
+Blockly.Msg.NEW_VARIABLE = 'Create variable...';
+/// prompt - Prompts the user to enter the name for a new variable. See [https://github.com/google/blockly/wiki/Variables#dropdown-menu https://github.com/google/blockly/wiki/Variables#dropdown-menu].
+Blockly.Msg.NEW_VARIABLE_TITLE = 'New variable name:';
+/// alert - Tells the user that the name they entered is already in use.
+Blockly.Msg.VARIABLE_ALREADY_EXISTS = 'A variable named "%1" already exists.'
+
+// Variable deletion.
+/// confirm - Ask the user to confirm their deletion of multiple uses of a variable.
+Blockly.Msg.DELETE_VARIABLE_CONFIRMATION = 'Delete %1 uses of the "%2" variable?';
+/// alert - Tell the user that they can't delete a variable because it's part of the definition of a procedure.
+Blockly.Msg.CANNOT_DELETE_VARIABLE_PROCEDURE = 'Can\'t delete the variable "%1" because it is part of the definition of the procedure "%2"';
+/// dropdown choice - Delete the currently selected variable.
+Blockly.Msg.DELETE_VARIABLE = 'Delete the "%1" variable';
+
+// Colour Blocks.
+/// url - Information about colour.
+Blockly.Msg.COLOUR_PICKER_HELPURL = 'https://en.wikipedia.org/wiki/Color';
+/// tooltip - See [https://github.com/google/blockly/wiki/Colour#picking-a-colour-from-a-palette https://github.com/google/blockly/wiki/Colour#picking-a-colour-from-a-palette].
+Blockly.Msg.COLOUR_PICKER_TOOLTIP = 'Choose a colour from the palette.';
+/// url - A link that displays a random colour each time you visit it.
+Blockly.Msg.COLOUR_RANDOM_HELPURL = 'http://randomcolour.com';
+/// block text - Title of block that generates a colour at random.
+Blockly.Msg.COLOUR_RANDOM_TITLE = 'random colour';
+/// tooltip - See [https://github.com/google/blockly/wiki/Colour#generating-a-random-colour https://github.com/google/blockly/wiki/Colour#generating-a-random-colour].
+Blockly.Msg.COLOUR_RANDOM_TOOLTIP = 'Choose a colour at random.';
+/// url - A link for color codes with percentages (0-100%) for each component, instead of the more common 0-255, which may be more difficult for beginners.
+Blockly.Msg.COLOUR_RGB_HELPURL = 'http://www.december.com/html/spec/colorper.html';
+/// block text - Title of block for [https://github.com/google/blockly/wiki/Colour#creating-a-colour-from-red-green-and-blue-components https://github.com/google/blockly/wiki/Colour#creating-a-colour-from-red-green-and-blue-components].
+Blockly.Msg.COLOUR_RGB_TITLE = 'colour with';
+/// block input text - The amount of red (from 0 to 100) to use when [https://github.com/google/blockly/wiki/Colour#creating-a-colour-from-red-green-and-blue-components https://github.com/google/blockly/wiki/Colour#creating-a-colour-from-red-green-and-blue-components].\n{{Identical|Red}}
+Blockly.Msg.COLOUR_RGB_RED = 'red';
+/// block input text - The amount of green (from 0 to 100) to use when [https://github.com/google/blockly/wiki/Colour#creating-a-colour-from-red-green-and-blue-components https://github.com/google/blockly/wiki/Colour#creating-a-colour-from-red-green-and-blue-components].
+Blockly.Msg.COLOUR_RGB_GREEN = 'green';
+/// block input text - The amount of blue (from 0 to 100) to use when [https://github.com/google/blockly/wiki/Colour#creating-a-colour-from-red-green-and-blue-components https://github.com/google/blockly/wiki/Colour#creating-a-colour-from-red-green-and-blue-components].\n{{Identical|Blue}}
+Blockly.Msg.COLOUR_RGB_BLUE = 'blue';
+/// tooltip - See [https://github.com/google/blockly/wiki/Colour#creating-a-colour-from-red-green-and-blue-components https://github.com/google/blockly/wiki/Colour#creating-a-colour-from-red-green-and-blue-components].
+Blockly.Msg.COLOUR_RGB_TOOLTIP = 'Create a colour with the specified amount of red, green, and blue. All values must be between 0 and 100.';
+/// url - A useful link that displays blending of two colors.
+Blockly.Msg.COLOUR_BLEND_HELPURL = 'http://meyerweb.com/eric/tools/color-blend/';
+/// block text - A verb for blending two shades of paint.
+Blockly.Msg.COLOUR_BLEND_TITLE = 'blend';
+/// block input text - The first of two colours to [https://github.com/google/blockly/wiki/Colour#blending-colours blend].
+Blockly.Msg.COLOUR_BLEND_COLOUR1 = 'colour 1';
+/// block input text - The second of two colours to [https://github.com/google/blockly/wiki/Colour#blending-colours blend].
+Blockly.Msg.COLOUR_BLEND_COLOUR2 = 'colour 2';
+/// block input text - The proportion of the [https://github.com/google/blockly/wiki/Colour#blending-colours blend] containing the first color; the remaining proportion is of the second colour. For example, if the first colour is red and the second color blue, a ratio of 1 would yield pure red, a ratio of .5 would yield purple (equal amounts of red and blue), and a ratio of 0 would yield pure blue.\n{{Identical|Ratio}}
+Blockly.Msg.COLOUR_BLEND_RATIO = 'ratio';
+/// tooltip - See [https://github.com/google/blockly/wiki/Colour#blending-colours https://github.com/google/blockly/wiki/Colour#blending-colours].
+Blockly.Msg.COLOUR_BLEND_TOOLTIP = 'Blends two colours together with a given ratio (0.0 - 1.0).';
+
+// Loop Blocks.
+/// url - Describes 'repeat loops' in computer programs; consider using the translation of the page [https://en.wikipedia.org/wiki/Control_flow http://en.wikipedia.org/wiki/Control_flow].
+Blockly.Msg.CONTROLS_REPEAT_HELPURL = 'https://en.wikipedia.org/wiki/For_loop';
+/// block input text - Title of [https://github.com/google/blockly/wiki/Loops#repeat repeat block].\n\nParameters:\n* %1 - the number of times the body of the loop should be repeated.
+Blockly.Msg.CONTROLS_REPEAT_TITLE = 'repeat %1 times';
+/// block text - Preceding the blocks in the body of the loop. See [https://github.com/google/blockly/wiki/Loops https://github.com/google/blockly/wiki/Loops].\n{{Identical|Do}}
+Blockly.Msg.CONTROLS_REPEAT_INPUT_DO = 'do';
+/// tooltip - See [https://github.com/google/blockly/wiki/Loops#repeat https://github.com/google/blockly/wiki/Loops#repeat].
+Blockly.Msg.CONTROLS_REPEAT_TOOLTIP = 'Do some statements several times.';
+/// url - Describes 'while loops' in computer programs; consider using the translation of [https://en.wikipedia.org/wiki/While_loop https://en.wikipedia.org/wiki/While_loop], if present, or [https://en.wikipedia.org/wiki/Control_flow https://en.wikipedia.org/wiki/Control_flow].
+Blockly.Msg.CONTROLS_WHILEUNTIL_HELPURL = 'https://github.com/google/blockly/wiki/Loops#repeat';
+Blockly.Msg.CONTROLS_WHILEUNTIL_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+/// dropdown - Specifies that a loop should [https://github.com/google/blockly/wiki/Loops#repeat-while repeat while] the following condition is true.
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = 'repeat while';
+/// dropdown - Specifies that a loop should [https://github.com/google/blockly/wiki/Loops#repeat-until repeat until] the following condition becomes true.
+Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = 'repeat until';
+/// tooltip - See [https://github.com/google/blockly/wiki/Loops#repeat-while Loops#repeat-while https://github.com/google/blockly/wiki/Loops#repeat-while Loops#repeat-while].
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = 'While a value is true, then do some statements.';
+/// tooltip - See [https://github.com/google/blockly/wiki/Loops#repeat-until https://github.com/google/blockly/wiki/Loops#repeat-until].
+Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = 'While a value is false, then do some statements.';
+
+/// url - Describes 'for loops' in computer programs. Consider using your language's translation of [https://en.wikipedia.org/wiki/For_loop https://en.wikipedia.org/wiki/For_loop], if present.
+Blockly.Msg.CONTROLS_FOR_HELPURL = 'https://github.com/google/blockly/wiki/Loops#count-with';
+/// tooltip - See [https://github.com/google/blockly/wiki/Loops#count-with https://github.com/google/blockly/wiki/Loops#count-with].\n\nParameters:\n* %1 - the name of the loop variable.
+Blockly.Msg.CONTROLS_FOR_TOOLTIP = 'Have the variable "%1" take on the values from the start number to the end number, counting by the specified interval, and do the specified blocks.';
+/// block text - Repeatedly counts a variable (%1)
+/// starting with a (usually lower) number in a range (%2),
+/// ending with a (usually higher) number in a range (%3), and counting the
+/// iterations by a number of steps (%4). As in
+/// [https://github.com/google/blockly/wiki/Loops#count-with
+/// https://github.com/google/blockly/wiki/Loops#count-with].
+/// [[File:Blockly-count-with.png]]
+Blockly.Msg.CONTROLS_FOR_TITLE = 'count with %1 from %2 to %3 by %4';
+Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+
+/// url - Describes 'for-each loops' in computer programs. Consider using your language's translation of [https://en.wikipedia.org/wiki/Foreach https://en.wikipedia.org/wiki/Foreach] if present.
+Blockly.Msg.CONTROLS_FOREACH_HELPURL = 'https://github.com/google/blockly/wiki/Loops#for-each';
+/// block text - Title of [https://github.com/google/blockly/wiki/Loops#for-each for each block].
+/// Sequentially assigns every item in array %2 to the valiable %1.
+Blockly.Msg.CONTROLS_FOREACH_TITLE = 'for each item %1 in list %2';
+Blockly.Msg.CONTROLS_FOREACH_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+/// block text - Description of [https://github.com/google/blockly/wiki/Loops#for-each for each blocks].\n\nParameters:\n* %1 - the name of the loop variable.
+Blockly.Msg.CONTROLS_FOREACH_TOOLTIP = 'For each item in a list, set the variable "%1" to the item, and then do some statements.';
+
+/// url - Describes control flow in computer programs. Consider using your language's translation of [https://en.wikipedia.org/wiki/Control_flow https://en.wikipedia.org/wiki/Control_flow], if it exists.
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_HELPURL = 'https://github.com/google/blockly/wiki/Loops#loop-termination-blocks';
+/// dropdown - The current loop should be exited. See [https://github.com/google/blockly/wiki/Loops#break https://github.com/google/blockly/wiki/Loops#break].
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK = 'break out of loop';
+/// dropdown - The current iteration of the loop should be ended and the next should begin. See [https://github.com/google/blockly/wiki/Loops#continue-with-next-iteration https://github.com/google/blockly/wiki/Loops#continue-with-next-iteration].
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE = 'continue with next iteration of loop';
+/// tooltip - See [https://github.com/google/blockly/wiki/Loops#break-out-of-loop https://github.com/google/blockly/wiki/Loops#break-out-of-loop].
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK = 'Break out of the containing loop.';
+/// tooltip - See [https://github.com/google/blockly/wiki/Loops#continue-with-next-iteration https://github.com/google/blockly/wiki/Loops#continue-with-next-iteration].
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE = 'Skip the rest of this loop, and continue with the next iteration.';
+/// warning - The user has tried placing a block outside of a loop (for each, while, repeat, etc.), but this type of block may only be used within a loop. See [https://github.com/google/blockly/wiki/Loops#loop-termination-blocks https://github.com/google/blockly/wiki/Loops#loop-termination-blocks].
+Blockly.Msg.CONTROLS_FLOW_STATEMENTS_WARNING = 'Warning: This block may only be used within a loop.';
+
+// Logic Blocks.
+/// url - Describes conditional statements (if-then-else) in computer programs. Consider using your language's translation of [https://en.wikipedia.org/wiki/If_else https://en.wikipedia.org/wiki/If_else], if present.
+Blockly.Msg.CONTROLS_IF_HELPURL = 'https://github.com/google/blockly/wiki/IfElse';
+/// tooltip - Describes [https://github.com/google/blockly/wiki/IfElse#if-blocks 'if' blocks]. Consider using your language's translation of [https://en.wikipedia.org/wiki/If_statement https://en.wikipedia.org/wiki/If_statement], if present.
+Blockly.Msg.CONTROLS_IF_TOOLTIP_1 = 'If a value is true, then do some statements.';
+/// tooltip - Describes [https://github.com/google/blockly/wiki/IfElse#if-else-blocks if-else blocks]. Consider using your language's translation of [https://en.wikipedia.org/wiki/If_statement https://en.wikipedia.org/wiki/If_statement], if present.
+Blockly.Msg.CONTROLS_IF_TOOLTIP_2 = 'If a value is true, then do the first block of statements. Otherwise, do the second block of statements.';
+/// tooltip - Describes [https://github.com/google/blockly/wiki/IfElse#if-else-if-blocks if-else-if blocks]. Consider using your language's translation of [https://en.wikipedia.org/wiki/If_statement https://en.wikipedia.org/wiki/If_statement], if present.
+Blockly.Msg.CONTROLS_IF_TOOLTIP_3 = 'If the first value is true, then do the first block of statements. Otherwise, if the second value is true, do the second block of statements.';
+/// tooltip - Describes [https://github.com/google/blockly/wiki/IfElse#if-else-if-else-blocks if-else-if-else blocks]. Consider using your language's translation of [https://en.wikipedia.org/wiki/If_statement https://en.wikipedia.org/wiki/If_statement], if present.
+Blockly.Msg.CONTROLS_IF_TOOLTIP_4 = 'If the first value is true, then do the first block of statements. Otherwise, if the second value is true, do the second block of statements. If none of the values are true, do the last block of statements.';
+/// block text - See [https://github.com/google/blockly/wiki/IfElse https://github.com/google/blockly/wiki/IfElse].
+/// It is recommended, but not essential, that this have text in common with the translation of 'else if'
+Blockly.Msg.CONTROLS_IF_MSG_IF = 'if';
+/// block text - See [https://github.com/google/blockly/wiki/IfElse https://github.com/google/blockly/wiki/IfElse]. The English words "otherwise if" would probably be clearer than "else if", but the latter is used because it is traditional and shorter.
+Blockly.Msg.CONTROLS_IF_MSG_ELSEIF = 'else if';
+/// block text - See [https://github.com/google/blockly/wiki/IfElse https://github.com/google/blockly/wiki/IfElse]. The English word "otherwise" would probably be superior to "else", but the latter is used because it is traditional and shorter.
+Blockly.Msg.CONTROLS_IF_MSG_ELSE = 'else';
+Blockly.Msg.CONTROLS_IF_MSG_THEN = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;
+Blockly.Msg.CONTROLS_IF_IF_TITLE_IF = Blockly.Msg.CONTROLS_IF_MSG_IF;
+/// tooltip - Describes [https://github.com/google/blockly/wiki/IfElse#block-modification if block modification].
+Blockly.Msg.CONTROLS_IF_IF_TOOLTIP = 'Add, remove, or reorder sections to reconfigure this if block.';
+Blockly.Msg.CONTROLS_IF_ELSEIF_TITLE_ELSEIF = Blockly.Msg.CONTROLS_IF_MSG_ELSEIF;
+/// tooltip - Describes the 'else if' subblock during [https://github.com/google/blockly/wiki/IfElse#block-modification if block modification].
+Blockly.Msg.CONTROLS_IF_ELSEIF_TOOLTIP = 'Add a condition to the if block.';
+Blockly.Msg.CONTROLS_IF_ELSE_TITLE_ELSE = Blockly.Msg.CONTROLS_IF_MSG_ELSE;
+/// tooltip - Describes the 'else' subblock during [https://github.com/google/blockly/wiki/IfElse#block-modification if block modification].
+Blockly.Msg.CONTROLS_IF_ELSE_TOOLTIP = 'Add a final, catch-all condition to the if block.';
+
+/// url - Information about comparisons.
+Blockly.Msg.LOGIC_COMPARE_HELPURL = 'https://en.wikipedia.org/wiki/Inequality_(mathematics)';
+/// tooltip - Describes the equals (=) block.
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_EQ = 'Return true if both inputs equal each other.';
+/// tooltip - Describes the not equals (≠) block.
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_NEQ = 'Return true if both inputs are not equal to each other.';
+/// tooltip - Describes the less than (<) block.
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LT = 'Return true if the first input is smaller than the second input.';
+/// tooltip - Describes the less than or equals (≤) block.
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LTE = 'Return true if the first input is smaller than or equal to the second input.';
+/// tooltip - Describes the greater than (>) block.
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GT = 'Return true if the first input is greater than the second input.';
+/// tooltip - Describes the greater than or equals (≥) block.
+Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GTE = 'Return true if the first input is greater than or equal to the second input.';
+
+/// url - Information about the Boolean conjunction ("and") and disjunction ("or") operators. Consider using the translation of [https://en.wikipedia.org/wiki/Boolean_logic https://en.wikipedia.org/wiki/Boolean_logic], if it exists in your language.
+Blockly.Msg.LOGIC_OPERATION_HELPURL = 'https://github.com/google/blockly/wiki/Logic#logical-operations';
+/// tooltip - See [https://en.wikipedia.org/wiki/Logical_conjunction https://en.wikipedia.org/wiki/Logical_conjunction].
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_AND = 'Return true if both inputs are true.';
+/// block text - See [https://en.wikipedia.org/wiki/Logical_conjunction https://en.wikipedia.org/wiki/Logical_conjunction].\n{{Identical|And}}
+Blockly.Msg.LOGIC_OPERATION_AND = 'and';
+/// block text - See [https://en.wikipedia.org/wiki/Disjunction https://en.wikipedia.org/wiki/Disjunction].
+Blockly.Msg.LOGIC_OPERATION_TOOLTIP_OR = 'Return true if at least one of the inputs is true.';
+/// block text - See [https://en.wikipedia.org/wiki/Disjunction https://en.wikipedia.org/wiki/Disjunction].\n{{Identical|Or}}
+Blockly.Msg.LOGIC_OPERATION_OR = 'or';
+
+/// url - Information about logical negation. The translation of [https://en.wikipedia.org/wiki/Logical_negation https://en.wikipedia.org/wiki/Logical_negation] is recommended if it exists in the target language.
+Blockly.Msg.LOGIC_NEGATE_HELPURL = 'https://github.com/google/blockly/wiki/Logic#not';
+/// block text - This is a unary operator that returns ''false'' when the input is ''true'', and ''true'' when the input is ''false''.
+/// \n\nParameters:\n* %1 - the input (which should be either the value "true" or "false")
+Blockly.Msg.LOGIC_NEGATE_TITLE = 'not %1';
+/// tooltip - See [https://en.wikipedia.org/wiki/Logical_negation https://en.wikipedia.org/wiki/Logical_negation].
+Blockly.Msg.LOGIC_NEGATE_TOOLTIP = 'Returns true if the input is false. Returns false if the input is true.';
+
+/// url - Information about the logic values ''true'' and ''false''. Consider using the translation of [https://en.wikipedia.org/wiki/Truth_value https://en.wikipedia.org/wiki/Truth_value] if it exists in your language.
+Blockly.Msg.LOGIC_BOOLEAN_HELPURL = 'https://github.com/google/blockly/wiki/Logic#values';
+/// block text - The word for the [https://en.wikipedia.org/wiki/Truth_value logical value] ''true''.\n{{Identical|True}}
+Blockly.Msg.LOGIC_BOOLEAN_TRUE = 'true';
+/// block text - The word for the [https://en.wikipedia.org/wiki/Truth_value logical value] ''false''.\n{{Identical|False}}
+Blockly.Msg.LOGIC_BOOLEAN_FALSE = 'false';
+/// tooltip - Indicates that the block returns either of the two possible [https://en.wikipedia.org/wiki/Truth_value logical values].
+Blockly.Msg.LOGIC_BOOLEAN_TOOLTIP = 'Returns either true or false.';
+
+/// url - Provide a link to the translation of [https://en.wikipedia.org/wiki/Nullable_type https://en.wikipedia.org/wiki/Nullable_type], if it exists in your language; otherwise, do not worry about translating this advanced concept.
+Blockly.Msg.LOGIC_NULL_HELPURL = 'https://en.wikipedia.org/wiki/Nullable_type';
+/// block text - In computer languages, ''null'' is a special value that indicates that no value has been set. You may use your language's word for "nothing" or "invalid".\n{{Identical|Null}}
+Blockly.Msg.LOGIC_NULL = 'null';
+/// tooltip - This should use the word from the previous message.
+Blockly.Msg.LOGIC_NULL_TOOLTIP = 'Returns null.';
+
+/// url - Describes the programming language operator known as the ''ternary'' or ''conditional'' operator. It is recommended that you use the translation of [https://en.wikipedia.org/wiki/%3F: https://en.wikipedia.org/wiki/%3F:] if it exists.
+Blockly.Msg.LOGIC_TERNARY_HELPURL = 'https://en.wikipedia.org/wiki/%3F:';
+/// block input text - Label for the input whose value determines which of the other two inputs is returned. In some programming languages, this is called a ''''predicate''''.
+Blockly.Msg.LOGIC_TERNARY_CONDITION = 'test';
+/// block input text - Indicates that the following input should be returned (used as output) if the test input is true. Remember to try to keep block text terse (short).
+Blockly.Msg.LOGIC_TERNARY_IF_TRUE = 'if true';
+/// block input text - Indicates that the following input should be returned (used as output) if the test input is false.
+Blockly.Msg.LOGIC_TERNARY_IF_FALSE = 'if false';
+/// tooltip - See [https://en.wikipedia.org/wiki/%3F: https://en.wikipedia.org/wiki/%3F:].
+Blockly.Msg.LOGIC_TERNARY_TOOLTIP = 'Check the condition in "test". If the condition is true, returns the "if true" value; otherwise returns the "if false" value.';
+
+// Math Blocks.
+/// url - Information about (real) numbers.
+Blockly.Msg.MATH_NUMBER_HELPURL = 'https://en.wikipedia.org/wiki/Number';
+/// tooltip - Any positive or negative number, not necessarily an integer.
+Blockly.Msg.MATH_NUMBER_TOOLTIP = 'A number.';
+
+/// {{optional}}\nmath - The symbol for the binary operation addition.
+Blockly.Msg.MATH_ADDITION_SYMBOL = '+';
+/// {{optional}}\nmath - The symbol for the binary operation indicating that the right operand should be
+/// subtracted from the left operand.
+Blockly.Msg.MATH_SUBTRACTION_SYMBOL = '-';
+/// {{optional}}\nmath - The binary operation indicating that the left operand should be divided by
+/// the right operand.
+Blockly.Msg.MATH_DIVISION_SYMBOL = '÷';
+/// {{optional}}\nmath - The symbol for the binary operation multiplication.
+Blockly.Msg.MATH_MULTIPLICATION_SYMBOL = '×';
+/// {{optional}}\nmath - The symbol for the binary operation exponentiation. Specifically, if the
+/// value of the left operand is L and the value of the right operand (the exponent) is
+/// R, multiply L by itself R times. (Fractional and negative exponents are also legal.)
+Blockly.Msg.MATH_POWER_SYMBOL = '^';
+
+/// math - The short name of the trigonometric function
+/// [https://en.wikipedia.org/wiki/Trigonometric_functions#Sine.2C_cosine_and_tangent sine].
+Blockly.Msg.MATH_TRIG_SIN = 'sin';
+/// math - The short name of the trigonometric function
+/// [https://en.wikipedia.org/wiki/Trigonometric_functions#Sine.2C_cosine_and_tangent cosine].
+Blockly.Msg.MATH_TRIG_COS = 'cos';
+/// math - The short name of the trigonometric function
+/// [https://en.wikipedia.org/wiki/Trigonometric_functions#Sine.2C_cosine_and_tangent tangent].
+Blockly.Msg.MATH_TRIG_TAN = 'tan';
+/// math - The short name of the ''inverse of'' the trigonometric function
+/// [https://en.wikipedia.org/wiki/Trigonometric_functions#Sine.2C_cosine_and_tangent sine].
+Blockly.Msg.MATH_TRIG_ASIN = 'asin';
+/// math - The short name of the ''inverse of'' the trigonometric function
+/// [https://en.wikipedia.org/wiki/Trigonometric_functions#Sine.2C_cosine_and_tangent cosine].
+Blockly.Msg.MATH_TRIG_ACOS = 'acos';
+/// math - The short name of the ''inverse of'' the trigonometric function
+/// [https://en.wikipedia.org/wiki/Trigonometric_functions#Sine.2C_cosine_and_tangent tangent].
+Blockly.Msg.MATH_TRIG_ATAN = 'atan';
+
+/// url - Information about addition, subtraction, multiplication, division, and exponentiation.
+Blockly.Msg.MATH_ARITHMETIC_HELPURL = 'https://en.wikipedia.org/wiki/Arithmetic';
+/// tooltip - See [https://en.wikipedia.org/wiki/Addition https://en.wikipedia.org/wiki/Addition].
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_ADD = 'Return the sum of the two numbers.';
+/// tooltip - See [https://en.wikipedia.org/wiki/Subtraction https://en.wikipedia.org/wiki/Subtraction].
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MINUS = 'Return the difference of the two numbers.';
+/// tooltip - See [https://en.wikipedia.org/wiki/Multiplication https://en.wikipedia.org/wiki/Multiplication].
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MULTIPLY = 'Return the product of the two numbers.';
+/// tooltip - See [https://en.wikipedia.org/wiki/Division_(mathematics) https://en.wikipedia.org/wiki/Division_(mathematics)].
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE = 'Return the quotient of the two numbers.';
+/// tooltip - See [https://en.wikipedia.org/wiki/Exponentiation https://en.wikipedia.org/wiki/Exponentiation].
+Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_POWER = 'Return the first number raised to the power of the second number.';
+
+/// url - Information about the square root operation.
+Blockly.Msg.MATH_SINGLE_HELPURL = 'https://en.wikipedia.org/wiki/Square_root';
+/// dropdown - This computes the positive [https://en.wikipedia.org/wiki/Square_root square root] of its input. For example, the square root of 16 is 4.
+Blockly.Msg.MATH_SINGLE_OP_ROOT = 'square root';
+/// tooltip - Please use the same term as in the previous message.
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ROOT = 'Return the square root of a number.';
+/// dropdown - This leaves positive numeric inputs changed and inverts negative inputs. For example, the absolute value of 5 is 5; the absolute value of -5 is also 5. For more information, see [https://en.wikipedia.org/wiki/Absolute_value https://en.wikipedia.org/wiki/Absolute_value].
+Blockly.Msg.MATH_SINGLE_OP_ABSOLUTE = 'absolute';
+/// tooltip - Please use the same term as in the previous message.
+Blockly.Msg.MATH_SINGLE_TOOLTIP_ABS = 'Return the absolute value of a number.';
+
+/// tooltip - Calculates '''0-n''', where '''n''' is the single numeric input.
+Blockly.Msg.MATH_SINGLE_TOOLTIP_NEG = 'Return the negation of a number.';
+/// tooltip - Calculates the [https://en.wikipedia.org/wiki/Natural_logarithm|natural logarithm] of its single numeric input.
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LN = 'Return the natural logarithm of a number.';
+/// tooltip - Calculates the [https://en.wikipedia.org/wiki/Common_logarithm common logarithm] of its single numeric input.
+Blockly.Msg.MATH_SINGLE_TOOLTIP_LOG10 = 'Return the base 10 logarithm of a number.';
+/// tooltip - Multiplies [https://en.wikipedia.org/wiki/E_%28mathematical_constant%29 e] by itself n times, where n is the single numeric input.
+Blockly.Msg.MATH_SINGLE_TOOLTIP_EXP = 'Return e to the power of a number.';
+/// tooltip - Multiplies 10 by itself n times, where n is the single numeric input.
+Blockly.Msg.MATH_SINGLE_TOOLTIP_POW10 = 'Return 10 to the power of a number.';
+
+/// url - Information about the trigonometric functions sine, cosine, tangent, and their inverses (ideally using degrees, not radians).
+Blockly.Msg.MATH_TRIG_HELPURL = 'https://en.wikipedia.org/wiki/Trigonometric_functions';
+/// tooltip - Return the [https://en.wikipedia.org/wiki/Trigonometric_functions#Sine.2C_cosine_and_tangent sine] of an [https://en.wikipedia.org/wiki/Degree_(angle) angle in degrees], not radians.
+Blockly.Msg.MATH_TRIG_TOOLTIP_SIN = 'Return the sine of a degree (not radian).';
+/// tooltip - Return the [https://en.wikipedia.org/wiki/Trigonometric_functions#Sine.2C_cosine_and_tangent cosine] of an [https://en.wikipedia.org/wiki/Degree_(angle) angle in degrees], not radians.
+Blockly.Msg.MATH_TRIG_TOOLTIP_COS = 'Return the cosine of a degree (not radian).';
+/// tooltip - Return the [https://en.wikipedia.org/wiki/Trigonometric_functions#Sine.2C_cosine_and_tangent tangent] of an [https://en.wikipedia.org/wiki/Degree_(angle) angle in degrees], not radians.
+Blockly.Msg.MATH_TRIG_TOOLTIP_TAN = 'Return the tangent of a degree (not radian).';
+/// tooltip - The [https://en.wikipedia.org/wiki/Inverse_trigonometric_functions inverse] of the [https://en.wikipedia.org/wiki/Cosine#Sine.2C_cosine_and_tangent sine function], using [https://en.wikipedia.org/wiki/Degree_(angle) degrees], not radians.
+Blockly.Msg.MATH_TRIG_TOOLTIP_ASIN = 'Return the arcsine of a number.';
+/// tooltip - The [https://en.wikipedia.org/wiki/Inverse_trigonometric_functions inverse] of the [https://en.wikipedia.org/wiki/Cosine#Sine.2C_cosine_and_tangent cosine] function, using [https://en.wikipedia.org/wiki/Degree_(angle) degrees], not radians.
+Blockly.Msg.MATH_TRIG_TOOLTIP_ACOS = 'Return the arccosine of a number.';
+/// tooltip - The [https://en.wikipedia.org/wiki/Inverse_trigonometric_functions inverse] of the [https://en.wikipedia.org/wiki/Cosine#Sine.2C_cosine_and_tangent tangent] function, using [https://en.wikipedia.org/wiki/Degree_(angle) degrees], not radians.
+Blockly.Msg.MATH_TRIG_TOOLTIP_ATAN = 'Return the arctangent of a number.';
+
+/// url - Information about the mathematical constants Pi (π), e, the golden ratio (φ), √ 2, √ 1/2, and infinity (∞).
+Blockly.Msg.MATH_CONSTANT_HELPURL = 'https://en.wikipedia.org/wiki/Mathematical_constant';
+/// tooltip - Provides the specified [https://en.wikipedia.org/wiki/Mathematical_constant mathematical constant].
+Blockly.Msg.MATH_CONSTANT_TOOLTIP = 'Return one of the common constants: π (3.141…), e (2.718…), φ (1.618…), sqrt(2) (1.414…), sqrt(½) (0.707…), or ∞ (infinity).';
+/// dropdown - A number is '''even''' if it is a multiple of 2. For example, 4 is even (yielding true), but 3 is not (false).
+Blockly.Msg.MATH_IS_EVEN = 'is even';
+/// dropdown - A number is '''odd''' if it is not a multiple of 2. For example, 3 is odd (yielding true), but 4 is not (false). The opposite of "odd" is "even".
+Blockly.Msg.MATH_IS_ODD = 'is odd';
+/// dropdown - A number is [https://en.wikipedia.org/wiki/Prime prime] if it cannot be evenly divided by any positive integers except for 1 and itself. For example, 5 is prime, but 6 is not because 2 × 3 = 6.
+Blockly.Msg.MATH_IS_PRIME = 'is prime';
+/// dropdown - A number is '''whole''' if it is an [https://en.wikipedia.org/wiki/Integer integer]. For example, 5 is whole, but 5.1 is not.
+Blockly.Msg.MATH_IS_WHOLE = 'is whole';
+/// dropdown - A number is '''positive''' if it is greater than 0. (0 is neither negative nor positive.)
+Blockly.Msg.MATH_IS_POSITIVE = 'is positive';
+/// dropdown - A number is '''negative''' if it is less than 0. (0 is neither negative nor positive.)
+Blockly.Msg.MATH_IS_NEGATIVE = 'is negative';
+/// dropdown - A number x is divisible by y if y goes into x evenly. For example, 10 is divisible by 5, but 10 is not divisible by 3.
+Blockly.Msg.MATH_IS_DIVISIBLE_BY = 'is divisible by';
+/// tooltip - This block lets the user specify via a dropdown menu whether to check if the numeric input is even, odd, prime, whole, positive, negative, or divisible by a given value.
+Blockly.Msg.MATH_IS_TOOLTIP = 'Check if a number is an even, odd, prime, whole, positive, negative, or if it is divisible by certain number. Returns true or false.';
+
+/// url - Information about incrementing (increasing the value of) a variable.
+/// For other languages, just use the translation of the Wikipedia page about
+/// addition ([https://en.wikipedia.org/wiki/Addition https://en.wikipedia.org/wiki/Addition]).
+Blockly.Msg.MATH_CHANGE_HELPURL = 'https://en.wikipedia.org/wiki/Programming_idiom#Incrementing_a_counter';
+/// - As in: ''change'' [the value of variable] ''item'' ''by'' 1 (e.g., if the variable named 'item' had the value 5, change it to 6).
+/// %1 is a variable name.
+/// %2 is the amount of change.
+Blockly.Msg.MATH_CHANGE_TITLE = 'change %1 by %2';
+Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+/// tooltip - This updates the value of the variable by adding to it the following numeric input.\n\nParameters:\n* %1 - the name of the variable whose value should be increased.
+Blockly.Msg.MATH_CHANGE_TOOLTIP = 'Add a number to variable "%1".';
+
+/// url - Information about how numbers are rounded to the nearest integer
+Blockly.Msg.MATH_ROUND_HELPURL = 'https://en.wikipedia.org/wiki/Rounding';
+/// tooltip - See [https://en.wikipedia.org/wiki/Rounding https://en.wikipedia.org/wiki/Rounding].
+Blockly.Msg.MATH_ROUND_TOOLTIP = 'Round a number up or down.';
+/// dropdown - This rounds its input to the nearest whole number. For example, 3.4 is rounded to 3.
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUND = 'round';
+/// dropdown - This rounds its input up to the nearest whole number. For example, if the input was 2.2, the result would be 3.
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDUP = 'round up';
+/// dropdown - This rounds its input down to the nearest whole number. For example, if the input was 3.8, the result would be 3.
+Blockly.Msg.MATH_ROUND_OPERATOR_ROUNDDOWN = 'round down';
+
+/// url - Information about applying a function to a list of numbers. (We were unable to find such information in English. Feel free to skip this and any other URLs that are difficult.)
+Blockly.Msg.MATH_ONLIST_HELPURL = '';
+/// dropdown - This computes the sum of the numeric elements in the list. For example, the sum of the list {1, 4} is 5.
+Blockly.Msg.MATH_ONLIST_OPERATOR_SUM = 'sum of list';
+/// tooltip - Please use the same term for "sum" as in the previous message.
+Blockly.Msg.MATH_ONLIST_TOOLTIP_SUM = 'Return the sum of all the numbers in the list.';
+/// dropdown - This finds the smallest (minimum) number in a list. For example, the smallest number in the list [-5, 0, 3] is -5.
+Blockly.Msg.MATH_ONLIST_OPERATOR_MIN = 'min of list';
+/// tooltip - Please use the same term for "min" or "minimum" as in the previous message.
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MIN = 'Return the smallest number in the list.';
+/// dropdown - This finds the largest (maximum) number in a list. For example, the largest number in the list [-5, 0, 3] is 3.
+Blockly.Msg.MATH_ONLIST_OPERATOR_MAX = 'max of list';
+/// tooltip
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MAX = 'Return the largest number in the list.';
+/// dropdown - This adds up all of the numbers in a list and divides the sum by the number of elements in the list. For example, the [https://en.wikipedia.org/wiki/Arithmetic_mean average] of the list [1, 2, 3, 4] is 2.5 (10/4).
+Blockly.Msg.MATH_ONLIST_OPERATOR_AVERAGE = 'average of list';
+/// tooltip - See [https://en.wikipedia.org/wiki/Arithmetic_mean https://en.wikipedia.org/wiki/Arithmetic_mean] for more informatin.
+Blockly.Msg.MATH_ONLIST_TOOLTIP_AVERAGE = 'Return the average (arithmetic mean) of the numeric values in the list.';
+/// dropdown - This finds the [https://en.wikipedia.org/wiki/Median median] of the numeric values in a list. For example, the median of the list {1, 2, 7, 12, 13} is 7.
+Blockly.Msg.MATH_ONLIST_OPERATOR_MEDIAN = 'median of list';
+/// tooltip - See [https://en.wikipedia.org/wiki/Median median https://en.wikipedia.org/wiki/Median median] for more information.
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MEDIAN = 'Return the median number in the list.';
+/// dropdown - This finds the most common numbers ([https://en.wikipedia.org/wiki/Mode_(statistics) modes]) in a list. For example, the modes of the list {1, 3, 9, 3, 9} are {3, 9}.
+Blockly.Msg.MATH_ONLIST_OPERATOR_MODE = 'modes of list';
+/// tooltip - See [https://en.wikipedia.org/wiki/Mode_(statistics) https://en.wikipedia.org/wiki/Mode_(statistics)] for more information.
+Blockly.Msg.MATH_ONLIST_TOOLTIP_MODE = 'Return a list of the most common item(s) in the list.';
+/// dropdown - This finds the [https://en.wikipedia.org/wiki/Standard_deviation standard deviation] of the numeric values in a list.
+Blockly.Msg.MATH_ONLIST_OPERATOR_STD_DEV = 'standard deviation of list';
+/// tooltip - See [https://en.wikipedia.org/wiki/Standard_deviation https://en.wikipedia.org/wiki/Standard_deviation] for more information.
+Blockly.Msg.MATH_ONLIST_TOOLTIP_STD_DEV = 'Return the standard deviation of the list.';
+/// dropdown - This choose an element at random from a list. Each element is chosen with equal probability.
+Blockly.Msg.MATH_ONLIST_OPERATOR_RANDOM = 'random item of list';
+/// tooltip - Please use same term for 'random' as in previous entry.
+Blockly.Msg.MATH_ONLIST_TOOLTIP_RANDOM = 'Return a random element from the list.';
+
+/// url - information about the modulo (remainder) operation.
+Blockly.Msg.MATH_MODULO_HELPURL = 'https://en.wikipedia.org/wiki/Modulo_operation';
+/// block text - Title of block providing the remainder when dividing the first numerical input by the second. For example, the remainder of 10 divided by 3 is 1.\n\nParameters:\n* %1 - the dividend (10, in our example)\n* %2 - the divisor (3 in our example).
+Blockly.Msg.MATH_MODULO_TITLE = 'remainder of %1 ÷ %2';
+/// tooltip - For example, the remainder of 10 divided by 3 is 1.
+Blockly.Msg.MATH_MODULO_TOOLTIP = 'Return the remainder from dividing the two numbers.';
+
+/// url - Information about constraining a numeric value to be in a specific range. (The English URL is not ideal. Recall that translating URLs is the lowest priority.)
+Blockly.Msg.MATH_CONSTRAIN_HELPURL = 'https://en.wikipedia.org/wiki/Clamping_%28graphics%29';
+/// block text - The title of the block that '''constrain'''s (forces) a number to be in a given range.
+///For example, if the number 150 is constrained to be between 5 and 100, the result will be 100.
+///\n\nParameters:\n* %1 - the value to constrain (e.g., 150)\n* %2 - the minimum value (e.g., 5)\n* %3 - the maximum value (e.g., 100).
+Blockly.Msg.MATH_CONSTRAIN_TITLE = 'constrain %1 low %2 high %3';
+/// tooltip - This compares a number ''x'' to a low value ''L'' and a high value ''H''. If ''x'' is less then ''L'', the result is ''L''. If ''x'' is greater than ''H'', the result is ''H''. Otherwise, the result is ''x''.
+Blockly.Msg.MATH_CONSTRAIN_TOOLTIP = 'Constrain a number to be between the specified limits (inclusive).';
+
+/// url - Information about how computers generate random numbers.
+Blockly.Msg.MATH_RANDOM_INT_HELPURL = 'https://en.wikipedia.org/wiki/Random_number_generation';
+/// block text - The title of the block that generates a random integer (whole number) in the specified range. For example, if the range is from 5 to 7, this returns 5, 6, or 7 with equal likelihood. %1 is a placeholder for the lower number, %2 is the placeholder for the larger number.
+Blockly.Msg.MATH_RANDOM_INT_TITLE = 'random integer from %1 to %2';
+/// tooltip - Return a random integer between two values specified as inputs. For example, if one input was 7 and another 9, any of the numbers 7, 8, or 9 could be produced.
+Blockly.Msg.MATH_RANDOM_INT_TOOLTIP = 'Return a random integer between the two specified limits, inclusive.';
+
+/// url - Information about how computers generate random numbers (specifically, numbers in the range from 0 to just below 1).
+Blockly.Msg.MATH_RANDOM_FLOAT_HELPURL = 'https://en.wikipedia.org/wiki/Random_number_generation';
+/// block text - The title of the block that generates a random number greater than or equal to 0 and less than 1.
+Blockly.Msg.MATH_RANDOM_FLOAT_TITLE_RANDOM = 'random fraction';
+/// tooltip - Return a random fraction between 0 and 1. The value may be equal to 0 but must be less than 1.
+Blockly.Msg.MATH_RANDOM_FLOAT_TOOLTIP = 'Return a random fraction between 0.0 (inclusive) and 1.0 (exclusive).';
+
+// Text Blocks.
+/// url - Information about how computers represent text (sometimes referred to as ''string''s).
+Blockly.Msg.TEXT_TEXT_HELPURL = 'https://en.wikipedia.org/wiki/String_(computer_science)';
+/// tooltip - See [https://github.com/google/blockly/wiki/Text https://github.com/google/blockly/wiki/Text].
+Blockly.Msg.TEXT_TEXT_TOOLTIP = 'A letter, word, or line of text.';
+
+/// url - Information on concatenating/appending pieces of text.
+Blockly.Msg.TEXT_JOIN_HELPURL = 'https://github.com/google/blockly/wiki/Text#text-creation';
+/// block text - See [https://github.com/google/blockly/wiki/Text#text-creation https://github.com/google/blockly/wiki/Text#text-creation].
+Blockly.Msg.TEXT_JOIN_TITLE_CREATEWITH = 'create text with';
+/// tooltip - See [https://github.com/google/blockly/wiki/Text#text-creation create text with] for more information.
+Blockly.Msg.TEXT_JOIN_TOOLTIP = 'Create a piece of text by joining together any number of items.';
+
+/// block text - This is shown when the programmer wants to change the number of pieces of text being joined together. See [https://github.com/google/blockly/wiki/Text#text-creation https://github.com/google/blockly/wiki/Text#text-creation], specifically the last picture in the 'Text creation' section.\n{{Identical|Join}}
+Blockly.Msg.TEXT_CREATE_JOIN_TITLE_JOIN = 'join';
+/// tooltip - See [https://github.com/google/blockly/wiki/Text#text-creation https://github.com/google/blockly/wiki/Text#text-creation], specifically the last picture in the 'Text creation' section.
+Blockly.Msg.TEXT_CREATE_JOIN_TOOLTIP = 'Add, remove, or reorder sections to reconfigure this text block.';
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+/// block text - See [https://github.com/google/blockly/wiki/Text#text-creation https://github.com/google/blockly/wiki/Text#text-creation], specifically the last picture in the 'Text creation' section.
+Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TOOLTIP = 'Add an item to the text.';
+
+/// url - This and the other text-related URLs are going to be hard to translate. As always, it is okay to leave untranslated or paste in the English-language URL. For these URLs, you might also consider a general URL about how computers represent text (such as the translation of [https://en.wikipedia.org/wiki/String_(computer_science) this Wikipedia page]).
+Blockly.Msg.TEXT_APPEND_HELPURL = 'https://github.com/google/blockly/wiki/Text#text-modification';
+/// block input text - Message preceding the name of a variable to which text should be appended.
+/// [[File:blockly-append-text.png]]
+Blockly.Msg.TEXT_APPEND_TO = 'to';
+/// block input text - Message following the variable and preceding the piece of text that should
+/// be appended, as shown below.
+/// [[File:blockly-append-text.png]]
+Blockly.Msg.TEXT_APPEND_APPENDTEXT = 'append text';
+Blockly.Msg.TEXT_APPEND_VARIABLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+/// tooltip - See [https://github.com/google/blockly/wiki/Text#text-modification https://github.com/google/blockly/wiki/Text#text-modification] for more information.\n\nParameters:\n* %1 - the name of the variable to which text should be appended
+Blockly.Msg.TEXT_APPEND_TOOLTIP = 'Append some text to variable "%1".';
+
+/// url - Information about text on computers (usually referred to as 'strings').
+Blockly.Msg.TEXT_LENGTH_HELPURL = 'https://github.com/google/blockly/wiki/Text#text-modification';
+/// block text - See [https://github.com/google/blockly/wiki/Text#text-length https://github.com/google/blockly/wiki/Text#text-length].
+/// \n\nParameters:\n* %1 - the piece of text to take the length of
+Blockly.Msg.TEXT_LENGTH_TITLE = 'length of %1';
+/// tooltip - See [https://github.com/google/blockly/wiki/Text#text-length https://github.com/google/blockly/wiki/Text#text-length].
+Blockly.Msg.TEXT_LENGTH_TOOLTIP = 'Returns the number of letters (including spaces) in the provided text.';
+
+/// url - Information about empty pieces of text on computers (usually referred to as 'empty strings').
+Blockly.Msg.TEXT_ISEMPTY_HELPURL = 'https://github.com/google/blockly/wiki/Text#checking-for-empty-text';
+/// block text - See [https://github.com/google/blockly/wiki/Text#checking-for-empty-text https://github.com/google/blockly/wiki/Text#checking-for-empty-text].
+/// \n\nParameters:\n* %1 - the piece of text to test for emptiness
+Blockly.Msg.TEXT_ISEMPTY_TITLE = '%1 is empty';
+/// tooltip - See [https://github.com/google/blockly/wiki/Text#checking-for-empty-text https://github.com/google/blockly/wiki/Text#checking-for-empty-text].
+Blockly.Msg.TEXT_ISEMPTY_TOOLTIP = 'Returns true if the provided text is empty.';
+
+/// url - Information about finding a character in a piece of text.
+Blockly.Msg.TEXT_INDEXOF_HELPURL = 'https://github.com/google/blockly/wiki/Text#finding-text';
+/// tooltip - %1 will be replaced by either the number 0 or -1 depending on the indexing mode. See [https://github.com/google/blockly/wiki/Text#finding-text https://github.com/google/blockly/wiki/Text#finding-text].
+Blockly.Msg.TEXT_INDEXOF_TOOLTIP = 'Returns the index of the first/last occurrence of the first text in the second text. Returns %1 if text is not found.';
+/// block text - Title of blocks allowing users to find text. See
+/// [https://github.com/google/blockly/wiki/Text#finding-text
+/// https://github.com/google/blockly/wiki/Text#finding-text].
+/// [[File:Blockly-find-text.png]].
+Blockly.Msg.TEXT_INDEXOF_INPUT_INTEXT = 'in text';
+/// dropdown - See [https://github.com/google/blockly/wiki/Text#finding-text
+/// https://github.com/google/blockly/wiki/Text#finding-text].
+/// [[File:Blockly-find-text.png]].
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_FIRST = 'find first occurrence of text';
+/// dropdown - See [https://github.com/google/blockly/wiki/Text#finding-text
+/// https://github.com/google/blockly/wiki/Text#finding-text]. This would
+/// replace "find first occurrence of text" below. (For more information on
+/// how common text is factored out of dropdown menus, see
+/// [https://translatewiki.net/wiki/Translating:Blockly#Drop-Down_Menus
+/// https://translatewiki.net/wiki/Translating:Blockly#Drop-Down_Menus)].)
+/// [[File:Blockly-find-text.png]].
+Blockly.Msg.TEXT_INDEXOF_OPERATOR_LAST = 'find last occurrence of text';
+/// block text - Optional text to follow the rightmost block in a
+/// [https://github.com/google/blockly/wiki/Text#finding-text
+/// https://github.com/google/blockly/wiki/Text#finding-text in text ... find block]
+/// (after the "a" in the below picture). This will be the empty string in most languages.
+/// [[File:Blockly-find-text.png]].
+Blockly.Msg.TEXT_INDEXOF_TAIL = '';
+
+/// url - Information about extracting characters (letters, number, symbols, etc.) from text.
+Blockly.Msg.TEXT_CHARAT_HELPURL = 'https://github.com/google/blockly/wiki/Text#extracting-text';
+/// block text - Appears before the piece of text from which a letter (or number,
+/// punctuation character, etc.) should be extracted, as shown below. See
+/// [https://github.com/google/blockly/wiki/Text#extracting-a-single-character
+/// https://github.com/google/blockly/wiki/Text#extracting-a-single-character].
+/// [[File:Blockly-text-get.png]]
+Blockly.Msg.TEXT_CHARAT_INPUT_INTEXT = 'in text';
+/// dropdown - Indicates that the letter (or number, punctuation character, etc.) with the
+/// specified index should be obtained from the preceding piece of text. See
+/// [https://github.com/google/blockly/wiki/Text#extracting-a-single-character
+/// https://github.com/google/blockly/wiki/Text#extracting-a-single-character].
+/// [[File:Blockly-text-get.png]]
+Blockly.Msg.TEXT_CHARAT_FROM_START = 'get letter #';
+/// block text - Indicates that the letter (or number, punctuation character, etc.) with the
+/// specified index from the end of a given piece of text should be obtained. See
+/// [https://github.com/google/blockly/wiki/Text#extracting-a-single-character
+/// https://github.com/google/blockly/wiki/Text#extracting-a-single-character].
+/// [[File:Blockly-text-get.png]]
+Blockly.Msg.TEXT_CHARAT_FROM_END = 'get letter # from end';
+/// block text - Indicates that the first letter of the following piece of text should be
+/// retrieved. See [https://github.com/google/blockly/wiki/Text#extracting-a-single-character
+/// https://github.com/google/blockly/wiki/Text#extracting-a-single-character].
+/// [[File:Blockly-text-get.png]]
+Blockly.Msg.TEXT_CHARAT_FIRST = 'get first letter';
+/// block text - Indicates that the last letter (or number, punctuation mark, etc.) of the
+/// following piece of text should be retrieved. See
+/// [https://github.com/google/blockly/wiki/Text#extracting-a-single-character
+/// https://github.com/google/blockly/wiki/Text#extracting-a-single-character].
+/// [[File:Blockly-text-get.png]]
+Blockly.Msg.TEXT_CHARAT_LAST = 'get last letter';
+/// block text - Indicates that any letter (or number, punctuation mark, etc.) in the
+/// following piece of text should be randomly selected. See
+/// [https://github.com/google/blockly/wiki/Text#extracting-a-single-character
+/// https://github.com/google/blockly/wiki/Text#extracting-a-single-character].
+/// [[File:Blockly-text-get.png]]
+Blockly.Msg.TEXT_CHARAT_RANDOM = 'get random letter';
+/// block text - Text that goes after the rightmost block/dropdown when getting a single letter from
+/// a piece of text, as in [https://blockly-demo.appspot.com/static/apps/code/index.html#3m23km these
+/// blocks] or shown below. For most languages, this will be blank.
+/// [[File:Blockly-text-get.png]]
+Blockly.Msg.TEXT_CHARAT_TAIL = '';
+/// tooltip - See [https://github.com/google/blockly/wiki/Text#extracting-a-single-character
+/// https://github.com/google/blockly/wiki/Text#extracting-a-single-character].
+/// [[File:Blockly-text-get.png]]
+Blockly.Msg.TEXT_CHARAT_TOOLTIP = 'Returns the letter at the specified position.';
+
+/// See [https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text
+/// https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text].
+Blockly.Msg.TEXT_GET_SUBSTRING_TOOLTIP = 'Returns a specified portion of the text.';
+/// url - Information about extracting characters from text. Reminder: urls are the
+/// lowest priority translations. Feel free to skip.
+Blockly.Msg.TEXT_GET_SUBSTRING_HELPURL = 'https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text';
+/// block text - Precedes a piece of text from which a portion should be extracted.
+/// [[File:Blockly-get-substring.png]]
+Blockly.Msg.TEXT_GET_SUBSTRING_INPUT_IN_TEXT = 'in text';
+/// dropdown - Indicates that the following number specifies the position (relative to the start
+/// position) of the beginning of the region of text that should be obtained from the preceding
+/// piece of text. See [https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text
+/// https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text].
+/// [[File:Blockly-get-substring.png]]
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_START = 'get substring from letter #';
+/// dropdown - Indicates that the following number specifies the position (relative to the end
+/// position) of the beginning of the region of text that should be obtained from the preceding
+/// piece of text. See [https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text
+/// https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text].
+/// Note: If {{msg-Blockly|ORDINAL_NUMBER_SUFFIX}} is defined, it will
+/// automatically appear ''after'' this and any other
+/// [https://translatewiki.net/wiki/Translating:Blockly#Ordinal_numbers ordinal numbers]
+/// on this block.
+/// [[File:Blockly-get-substring.png]]
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FROM_END = 'get substring from letter # from end';
+/// block text - Indicates that a region starting with the first letter of the preceding piece
+/// of text should be extracted. See
+/// [https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text
+/// https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text].
+/// [[File:Blockly-get-substring.png]]
+Blockly.Msg.TEXT_GET_SUBSTRING_START_FIRST = 'get substring from first letter';
+/// dropdown - Indicates that the following number specifies the position (relative to
+/// the start position) of the end of the region of text that should be obtained from the
+/// preceding piece of text. See
+/// [https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text
+/// https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text].
+/// [[File:Blockly-get-substring.png]]
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_START = 'to letter #';
+/// dropdown - Indicates that the following number specifies the position (relative to the
+/// end position) of the end of the region of text that should be obtained from the preceding
+/// piece of text. See
+/// [https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text
+/// https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text].
+/// [[File:Blockly-get-substring.png]]
+Blockly.Msg.TEXT_GET_SUBSTRING_END_FROM_END = 'to letter # from end';
+/// block text - Indicates that a region ending with the last letter of the preceding piece
+/// of text should be extracted. See
+/// [https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text
+/// https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text].
+/// [[File:Blockly-get-substring.png]]
+Blockly.Msg.TEXT_GET_SUBSTRING_END_LAST = 'to last letter';
+/// block text - Text that should go after the rightmost block/dropdown when
+/// [https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text
+/// extracting a region of text]. In most languages, this will be the empty string.
+/// [[File:Blockly-get-substring.png]]
+Blockly.Msg.TEXT_GET_SUBSTRING_TAIL = '';
+
+/// url - Information about the case of letters (upper-case and lower-case).
+Blockly.Msg.TEXT_CHANGECASE_HELPURL = 'https://github.com/google/blockly/wiki/Text#adjusting-text-case';
+/// tooltip - Describes a block to adjust the case of letters. For more information on this block,
+/// see [https://github.com/google/blockly/wiki/Text#adjusting-text-case
+/// https://github.com/google/blockly/wiki/Text#adjusting-text-case].
+Blockly.Msg.TEXT_CHANGECASE_TOOLTIP = 'Return a copy of the text in a different case.';
+/// block text - Indicates that all of the letters in the following piece of text should be
+/// capitalized. If your language does not use case, you may indicate that this is not
+/// applicable to your language. For more information on this block, see
+/// [https://github.com/google/blockly/wiki/Text#adjusting-text-case
+/// https://github.com/google/blockly/wiki/Text#adjusting-text-case].
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_UPPERCASE = 'to UPPER CASE';
+/// block text - Indicates that all of the letters in the following piece of text should be converted to lower-case. If your language does not use case, you may indicate that this is not applicable to your language. For more information on this block, see [https://github.com/google/blockly/wiki/Text#adjusting-text-case https://github.com/google/blockly/wiki/Text#adjusting-text-case].
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_LOWERCASE = 'to lower case';
+/// block text - Indicates that the first letter of each of the following words should be capitalized and the rest converted to lower-case. If your language does not use case, you may indicate that this is not applicable to your language. For more information on this block, see [https://github.com/google/blockly/wiki/Text#adjusting-text-case https://github.com/google/blockly/wiki/Text#adjusting-text-case].
+Blockly.Msg.TEXT_CHANGECASE_OPERATOR_TITLECASE = 'to Title Case';
+
+/// url - Information about trimming (removing) text off the beginning and ends of pieces of text.
+Blockly.Msg.TEXT_TRIM_HELPURL = 'https://github.com/google/blockly/wiki/Text#trimming-removing-spaces';
+/// tooltip - See [https://github.com/google/blockly/wiki/Text#trimming-removing-spaces
+/// https://github.com/google/blockly/wiki/Text#trimming-removing-spaces].
+Blockly.Msg.TEXT_TRIM_TOOLTIP = 'Return a copy of the text with spaces removed from one or both ends.';
+/// dropdown - Removes spaces from the beginning and end of a piece of text. See
+/// [https://github.com/google/blockly/wiki/Text#trimming-removing-spaces
+/// https://github.com/google/blockly/wiki/Text#trimming-removing-spaces]. Note that neither
+/// this nor the other options modify the original piece of text (that follows);
+/// the block just returns a version of the text without the specified spaces.
+Blockly.Msg.TEXT_TRIM_OPERATOR_BOTH = 'trim spaces from both sides of';
+/// dropdown - Removes spaces from the beginning of a piece of text. See
+/// [https://github.com/google/blockly/wiki/Text#trimming-removing-spaces
+/// https://github.com/google/blockly/wiki/Text#trimming-removing-spaces].
+/// Note that in right-to-left scripts, this will remove spaces from the right side.
+Blockly.Msg.TEXT_TRIM_OPERATOR_LEFT = 'trim spaces from left side of';
+/// dropdown - Removes spaces from the end of a piece of text. See
+/// [https://github.com/google/blockly/wiki/Text#trimming-removing-spaces
+/// https://github.com/google/blockly/wiki/Text#trimming-removing-spaces].
+/// Note that in right-to-left scripts, this will remove spaces from the left side.
+Blockly.Msg.TEXT_TRIM_OPERATOR_RIGHT = 'trim spaces from right side of';
+
+/// url - Information about displaying text on computers.
+Blockly.Msg.TEXT_PRINT_HELPURL = 'https://github.com/google/blockly/wiki/Text#printing-text';
+/// block text - Display the input on the screen. See
+/// [https://github.com/google/blockly/wiki/Text#printing-text
+/// https://github.com/google/blockly/wiki/Text#printing-text].
+/// \n\nParameters:\n* %1 - the value to print
+Blockly.Msg.TEXT_PRINT_TITLE = 'print %1';
+/// tooltip - See [https://github.com/google/blockly/wiki/Text#printing-text
+/// https://github.com/google/blockly/wiki/Text#printing-text].
+Blockly.Msg.TEXT_PRINT_TOOLTIP = 'Print the specified text, number or other value.';
+/// url - Information about getting text from users.
+Blockly.Msg.TEXT_PROMPT_HELPURL = 'https://github.com/google/blockly/wiki/Text#getting-input-from-the-user';
+/// dropdown - Specifies that a piece of text should be requested from the user with
+/// the following message. See [https://github.com/google/blockly/wiki/Text#printing-text
+/// https://github.com/google/blockly/wiki/Text#printing-text].
+Blockly.Msg.TEXT_PROMPT_TYPE_TEXT = 'prompt for text with message';
+/// dropdown - Specifies that a number should be requested from the user with the
+/// following message. See [https://github.com/google/blockly/wiki/Text#printing-text
+/// https://github.com/google/blockly/wiki/Text#printing-text].
+Blockly.Msg.TEXT_PROMPT_TYPE_NUMBER = 'prompt for number with message';
+/// dropdown - Precedes the message with which the user should be prompted for
+/// a number. See [https://github.com/google/blockly/wiki/Text#printing-text
+/// https://github.com/google/blockly/wiki/Text#printing-text].
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_NUMBER = 'Prompt for user for a number.';
+/// dropdown - Precedes the message with which the user should be prompted for some text.
+/// See [https://github.com/google/blockly/wiki/Text#printing-text
+/// https://github.com/google/blockly/wiki/Text#printing-text].
+Blockly.Msg.TEXT_PROMPT_TOOLTIP_TEXT = 'Prompt for user for some text.';
+
+// Lists Blocks.
+/// url - Information on empty lists.
+Blockly.Msg.LISTS_CREATE_EMPTY_HELPURL = 'https://github.com/google/blockly/wiki/Lists#create-empty-list';
+/// block text - See [https://github.com/google/blockly/wiki/Lists#create-empty-list https://github.com/google/blockly/wiki/Lists#create-empty-list].
+Blockly.Msg.LISTS_CREATE_EMPTY_TITLE = 'create empty list';
+/// block text - See [https://github.com/google/blockly/wiki/Lists#create-empty-list https://github.com/google/blockly/wiki/Lists#create-empty-list].
+Blockly.Msg.LISTS_CREATE_EMPTY_TOOLTIP = 'Returns a list, of length 0, containing no data records';
+
+/// url - Information on building lists.
+Blockly.Msg.LISTS_CREATE_WITH_HELPURL = 'https://github.com/google/blockly/wiki/Lists#create-list-with';
+/// tooltip - See [https://github.com/google/blockly/wiki/Lists#create-list-with https://github.com/google/blockly/wiki/Lists#create-list-with].
+Blockly.Msg.LISTS_CREATE_WITH_TOOLTIP = 'Create a list with any number of items.';
+/// block text - See [https://github.com/google/blockly/wiki/Lists#create-list-with https://github.com/google/blockly/wiki/Lists#create-list-with].
+Blockly.Msg.LISTS_CREATE_WITH_INPUT_WITH = 'create list with';
+/// block text - This appears in a sub-block when [https://github.com/google/blockly/wiki/Lists#changing-number-of-inputs changing the number of inputs in a ''''create list with'''' block].\n{{Identical|List}}
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TITLE_ADD = 'list';
+/// tooltip - See [https://github.com/google/blockly/wiki/Lists#changing-number-of-inputs https://github.com/google/blockly/wiki/Lists#changing-number-of-inputs].
+Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TOOLTIP = 'Add, remove, or reorder sections to reconfigure this list block.';
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TITLE = Blockly.Msg.VARIABLES_DEFAULT_NAME;
+/// tooltip - See [https://github.com/google/blockly/wiki/Lists#changing-number-of-inputs https://github.com/google/blockly/wiki/Lists#changing-number-of-inputs].
+Blockly.Msg.LISTS_CREATE_WITH_ITEM_TOOLTIP = 'Add an item to the list.';
+
+/// url - Information about [https://github.com/google/blockly/wiki/Lists#create-list-with creating a list with multiple copies of a single item].
+Blockly.Msg.LISTS_REPEAT_HELPURL = 'https://github.com/google/blockly/wiki/Lists#create-list-with';
+/// url - See [https://github.com/google/blockly/wiki/Lists#create-list-with creating a list with multiple copies of a single item].
+Blockly.Msg.LISTS_REPEAT_TOOLTIP = 'Creates a list consisting of the given value repeated the specified number of times.';
+/// block text - See [https://github.com/google/blockly/wiki/Lists#create-list-with
+/// https://github.com/google/blockly/wiki/Lists#create-list-with].
+///\n\nParameters:\n* %1 - the item (text) to be repeated\n* %2 - the number of times to repeat it
+Blockly.Msg.LISTS_REPEAT_TITLE = 'create list with item %1 repeated %2 times';
+
+/// url - Information about how the length of a list is computed (i.e., by the total number of elements, not the number of different elements).
+Blockly.Msg.LISTS_LENGTH_HELPURL = 'https://github.com/google/blockly/wiki/Lists#length-of';
+/// block text - See [https://github.com/google/blockly/wiki/Lists#length-of https://github.com/google/blockly/wiki/Lists#length-of].
+/// \n\nParameters:\n* %1 - the list whose length is desired
+Blockly.Msg.LISTS_LENGTH_TITLE = 'length of %1';
+/// tooltip - See [https://github.com/google/blockly/wiki/Lists#length-of https://github.com/google/blockly/wiki/Lists#length-of Blockly:Lists:length of].
+Blockly.Msg.LISTS_LENGTH_TOOLTIP = 'Returns the length of a list.';
+
+/// url - See [https://github.com/google/blockly/wiki/Lists#is-empty https://github.com/google/blockly/wiki/Lists#is-empty].
+Blockly.Msg.LISTS_ISEMPTY_HELPURL = 'https://github.com/google/blockly/wiki/Lists#is-empty';
+/// block text - See [https://github.com/google/blockly/wiki/Lists#is-empty
+/// https://github.com/google/blockly/wiki/Lists#is-empty].
+/// \n\nParameters:\n* %1 - the list to test
+Blockly.Msg.LISTS_ISEMPTY_TITLE = '%1 is empty';
+/// block tooltip - See [https://github.com/google/blockly/wiki/Lists#is-empty
+/// https://github.com/google/blockly/wiki/Lists#is-empty].
+Blockly.Msg.LISTS_ISEMPTY_TOOLTIP = 'Returns true if the list is empty.';
+
+/// block text - Title of blocks operating on [https://github.com/google/blockly/wiki/Lists lists].
+Blockly.Msg.LISTS_INLIST = 'in list';
+
+/// url - See [https://github.com/google/blockly/wiki/Lists#getting-items-from-a-list
+/// https://github.com/google/blockly/wiki/Lists#getting-items-from-a-list].
+Blockly.Msg.LISTS_INDEX_OF_HELPURL = 'https://github.com/google/blockly/wiki/Lists#getting-items-from-a-list';
+Blockly.Msg.LISTS_INDEX_OF_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+/// dropdown - See [https://github.com/google/blockly/wiki/Lists#finding-items-in-a-list
+/// Lists#finding-items-in-a-list].
+/// [[File:Blockly-list-find.png]]
+Blockly.Msg.LISTS_INDEX_OF_FIRST = 'find first occurrence of item';
+/// dropdown - See [https://github.com/google/blockly/wiki/Lists#finding-items-in-a-list
+/// https://github.com/google/blockly/wiki/Lists#finding-items-in-a-list].
+/// [[File:Blockly-list-find.png]]
+Blockly.Msg.LISTS_INDEX_OF_LAST = 'find last occurrence of item';
+/// tooltip - %1 will be replaced by either the number 0 or -1 depending on the indexing mode. See [https://github.com/google/blockly/wiki/Lists#finding-items-in-a-list
+/// https://github.com/google/blockly/wiki/Lists#finding-items-in-a-list].
+/// [[File:Blockly-list-find.png]]
+Blockly.Msg.LISTS_INDEX_OF_TOOLTIP = 'Returns the index of the first/last occurrence of the item in the list. Returns %1 if item is not found.';
+
+Blockly.Msg.LISTS_GET_INDEX_HELPURL = Blockly.Msg.LISTS_INDEX_OF_HELPURL;
+/// dropdown - Indicates that the user wishes to
+/// [https://github.com/google/blockly/wiki/Lists#getting-a-single-item
+/// get an item from a list] without removing it from the list.
+Blockly.Msg.LISTS_GET_INDEX_GET = 'get';
+/// dropdown - Indicates that the user wishes to
+/// [https://github.com/google/blockly/wiki/Lists#getting-a-single-item
+/// get and remove an item from a list], as opposed to merely getting
+/// it without modifying the list.
+Blockly.Msg.LISTS_GET_INDEX_GET_REMOVE = 'get and remove';
+/// dropdown - Indicates that the user wishes to
+/// [https://github.com/google/blockly/wiki/Lists#removing-an-item
+/// remove an item from a list].\n{{Identical|Remove}}
+Blockly.Msg.LISTS_GET_INDEX_REMOVE = 'remove';
+/// dropdown - Indicates that an index relative to the front of the list should be used to
+/// [https://github.com/google/blockly/wiki/Lists#getting-a-single-item get and/or remove
+/// an item from a list]. Note: If {{msg-Blockly|ORDINAL_NUMBER_SUFFIX}} is defined, it will
+/// automatically appear ''after'' this number (and any other ordinal numbers on this block).
+/// See [[Translating:Blockly#Ordinal_numbers]] for more information on ordinal numbers in Blockly.
+/// [[File:Blockly-list-get-item.png]]
+Blockly.Msg.LISTS_GET_INDEX_FROM_START = '#';
+/// dropdown - Indicates that an index relative to the end of the list should be used
+/// to [https://github.com/google/blockly/wiki/Lists#getting-a-single-item access an item in a list].
+/// [[File:Blockly-list-get-item.png]]
+Blockly.Msg.LISTS_GET_INDEX_FROM_END = '# from end';
+/// dropdown - Indicates that the '''first''' item should be
+/// [https://github.com/google/blockly/wiki/Lists#getting-a-single-item accessed in a list].
+/// [[File:Blockly-list-get-item.png]]
+Blockly.Msg.LISTS_GET_INDEX_FIRST = 'first';
+/// dropdown - Indicates that the '''last''' item should be
+/// [https://github.com/google/blockly/wiki/Lists#getting-a-single-item accessed in a list].
+/// [[File:Blockly-list-get-item.png]]
+Blockly.Msg.LISTS_GET_INDEX_LAST = 'last';
+/// dropdown - Indicates that a '''random''' item should be
+/// [https://github.com/google/blockly/wiki/Lists#getting-a-single-item accessed in a list].
+/// [[File:Blockly-list-get-item.png]]
+Blockly.Msg.LISTS_GET_INDEX_RANDOM = 'random';
+/// block text - Text that should go after the rightmost block/dropdown when
+/// [https://github.com/google/blockly/wiki/Lists#getting-a-single-item
+/// accessing an item from a list]. In most languages, this will be the empty string.
+/// [[File:Blockly-list-get-item.png]]
+Blockly.Msg.LISTS_GET_INDEX_TAIL = '';
+Blockly.Msg.LISTS_GET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+/// tooltip - Indicates the ordinal number that the first item in a list is referenced by. %1 will be replaced by either "#0" or "#1" depending on the indexing mode.
+Blockly.Msg.LISTS_INDEX_FROM_START_TOOLTIP = '%1 is the first item.';
+/// tooltip - Indicates the ordinal number that the last item in a list is referenced by. %1 will be replaced by either "#0" or "#1" depending on the indexing mode.
+Blockly.Msg.LISTS_INDEX_FROM_END_TOOLTIP = '%1 is the last item.';
+/// tooltip - See [https://github.com/google/blockly/wiki/Lists#getting-a-single-item https://github.com/google/blockly/wiki/Lists#getting-a-single-item] for more information.
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FROM = 'Returns the item at the specified position in a list.';
+/// tooltip - See [https://github.com/google/blockly/wiki/Lists#getting-a-single-item https://github.com/google/blockly/wiki/Lists#getting-a-single-item] for more information.
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FIRST = 'Returns the first item in a list.';
+/// tooltip - See [https://github.com/google/blockly/wiki/Lists#getting-a-single-item https://github.com/google/blockly/wiki/Lists#getting-a-single-item] for more information.
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_LAST = 'Returns the last item in a list.';
+/// tooltip - See [https://github.com/google/blockly/wiki/Lists#getting-a-single-item https://github.com/google/blockly/wiki/Lists#getting-a-single-item] for more information.
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_RANDOM = 'Returns a random item in a list.';
+/// tooltip - See [https://github.com/google/blockly/wiki/Lists#getting-and-removing-an-item] (for remove and return) and [https://github.com/google/blockly/wiki/Lists#getting-a-single-item] for '#' or '# from end'.
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM = 'Removes and returns the item at the specified position in a list.';
+/// tooltip - See [https://github.com/google/blockly/wiki/Lists#getting-and-removing-an-item] (for remove and return) and [https://github.com/google/blockly/wiki/Lists#getting-a-single-item] for 'first'.
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST = 'Removes and returns the first item in a list.';
+/// tooltip - See [https://github.com/google/blockly/wiki/Lists#getting-and-removing-an-item] (for remove and return) and [https://github.com/google/blockly/wiki/Lists#getting-a-single-item] for 'last'.
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST = 'Removes and returns the last item in a list.';
+/// tooltip - See [https://github.com/google/blockly/wiki/Lists#getting-and-removing-an-item] (for remove and return) and [https://github.com/google/blockly/wiki/Lists#getting-a-single-item] for 'random'.
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM = 'Removes and returns a random item in a list.';
+/// tooltip - See [https://github.com/google/blockly/wiki/Lists#getting-and-removing-an-item] (for remove and return) and [https://github.com/google/blockly/wiki/Lists#getting-a-single-item] for '#' or '# from end'.
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM = 'Removes the item at the specified position in a list.';
+/// tooltip - See [https://github.com/google/blockly/wiki/Lists#getting-and-removing-an-item] (for remove and return) and [https://github.com/google/blockly/wiki/Lists#getting-a-single-item] for 'first'.
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST = 'Removes the first item in a list.';
+/// tooltip - See [https://github.com/google/blockly/wiki/Lists#getting-and-removing-an-item] (for remove and return) and [https://github.com/google/blockly/wiki/Lists#getting-a-single-item] for 'last'.
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST = 'Removes the last item in a list.';
+/// tooltip - See [https://github.com/google/blockly/wiki/Lists#getting-and-removing-an-item] (for remove and return) and [https://github.com/google/blockly/wiki/Lists#getting-a-single-item] for 'random'.
+Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM = 'Removes a random item in a list.';
+/// url - Information about putting items in lists.
+Blockly.Msg.LISTS_SET_INDEX_HELPURL = 'https://github.com/google/blockly/wiki/Lists#in-list--set';
+Blockly.Msg.LISTS_SET_INDEX_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+/// block text - [https://github.com/google/blockly/wiki/Lists#in-list--set
+/// Replaces an item in a list].
+/// [[File:Blockly-in-list-set-insert.png]]
+Blockly.Msg.LISTS_SET_INDEX_SET = 'set';
+/// block text - [https://github.com/google/blockly/wiki/Lists#in-list--insert-at
+/// Inserts an item into a list].
+/// [[File:Blockly-in-list-set-insert.png]]
+Blockly.Msg.LISTS_SET_INDEX_INSERT = 'insert at';
+/// block text - The word(s) after the position in the list and before the item to be set/inserted.
+/// [[File:Blockly-in-list-set-insert.png]]
+Blockly.Msg.LISTS_SET_INDEX_INPUT_TO = 'as';
+/// tooltip - See [https://github.com/google/blockly/wiki/Lists#getting-a-single-item} (even though the page describes the "get" block, the idea is the same for the "set" block).
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FROM = 'Sets the item at the specified position in a list.';
+/// tooltip - See [https://github.com/google/blockly/wiki/Lists#getting-a-single-item} (even though the page describes the "get" block, the idea is the same for the "set" block).
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FIRST = 'Sets the first item in a list.';
+/// tooltip - See [https://github.com/google/blockly/wiki/Lists#getting-a-single-item} (even though the page describes the "get" block, the idea is the same for the "set" block).
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_LAST = 'Sets the last item in a list.';
+/// tooltip - See [https://github.com/google/blockly/wiki/Lists#getting-a-single-item} (even though the page describes the "get" block, the idea is the same for the "set" block).
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_RANDOM = 'Sets a random item in a list.';
+/// tooltip - See [https://github.com/google/blockly/wiki/Lists#getting-a-single-item} (even though the page describes the "get" block, the idea is the same for the "insert" block).
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FROM = 'Inserts the item at the specified position in a list.';
+/// tooltip - See [https://github.com/google/blockly/wiki/Lists#getting-a-single-item} (even though the page describes the "get" block, the idea is the same for the "insert" block).
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST = 'Inserts the item at the start of a list.';
+/// tooltip - See [https://github.com/google/blockly/wiki/Lists#getting-a-single-item} (even though the page describes the "get" block, the idea is the same for the "insert" block).
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_LAST = 'Append the item to the end of a list.';
+/// tooltip - See [https://github.com/google/blockly/wiki/Lists#getting-a-single-item} (even though the page describes the "get" block, the idea is the same for the "insert" block).
+Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM = 'Inserts the item randomly in a list.';
+
+/// url - Information describing extracting a sublist from an existing list.
+Blockly.Msg.LISTS_GET_SUBLIST_HELPURL = 'https://github.com/google/blockly/wiki/Lists#getting-a-sublist';
+Blockly.Msg.LISTS_GET_SUBLIST_INPUT_IN_LIST = Blockly.Msg.LISTS_INLIST;
+/// dropdown - Indicates that an index relative to the front of the list should be used
+/// to specify the beginning of the range from which to
+/// [https://github.com/google/blockly/wiki/Lists#getting-a-sublist get a sublist].
+/// [[File:Blockly-get-sublist.png]]
+/// Note: If {{msg-Blockly|ORDINAL_NUMBER_SUFFIX}} is defined, it will
+/// automatically appear ''after'' this number (and any other ordinal numbers on this block).
+/// See [[Translating:Blockly#Ordinal_numbers]] for more information on ordinal numbers in Blockly.
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_START = 'get sub-list from #';
+/// dropdown - Indicates that an index relative to the end of the list should be used
+/// to specify the beginning of the range from which to
+/// [https://github.com/google/blockly/wiki/Lists#getting-a-sublist get a sublist].
+Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_END = 'get sub-list from # from end';
+/// dropdown - Indicates that the
+/// [https://github.com/google/blockly/wiki/Lists#getting-a-sublist sublist to extract]
+/// should begin with the list's first item.
+Blockly.Msg.LISTS_GET_SUBLIST_START_FIRST = 'get sub-list from first';
+/// dropdown - Indicates that an index relative to the front of the list should be
+/// used to specify the end of the range from which to
+/// [https://github.com/google/blockly/wiki/Lists#getting-a-sublist get a sublist].
+/// [[File:Blockly-get-sublist.png]]
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_START = 'to #';
+/// dropdown - Indicates that an index relative to the end of the list should be
+/// used to specify the end of the range from which to
+/// [https://github.com/google/blockly/wiki/Lists#getting-a-sublist get a sublist].
+/// [[File:Blockly-get-sublist.png]]
+Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_END = 'to # from end';
+/// dropdown - Indicates that the '''last''' item in the given list should be
+/// [https://github.com/google/blockly/wiki/Lists#getting-a-sublist the end
+/// of the selected sublist].
+/// [[File:Blockly-get-sublist.png]]
+Blockly.Msg.LISTS_GET_SUBLIST_END_LAST = 'to last';
+/// block text - This appears in the rightmost position ("tail") of the
+/// sublist block, as described at
+/// [https://github.com/google/blockly/wiki/Lists#getting-a-sublist
+/// https://github.com/google/blockly/wiki/Lists#getting-a-sublist].
+/// In English and most other languages, this is the empty string.
+/// [[File:Blockly-get-sublist.png]]
+Blockly.Msg.LISTS_GET_SUBLIST_TAIL = '';
+/// tooltip - See [https://github.com/google/blockly/wiki/Lists#getting-a-sublist
+/// https://github.com/google/blockly/wiki/Lists#getting-a-sublist] for more information.
+/// [[File:Blockly-get-sublist.png]]
+Blockly.Msg.LISTS_GET_SUBLIST_TOOLTIP = 'Creates a copy of the specified portion of a list.';
+
+/// url - Information describing sorting a list.
+Blockly.Msg.LISTS_SORT_HELPURL = 'https://github.com/google/blockly/wiki/Lists#sorting-a-list';
+/// Sort as type %1 (numeric or alphabetic) in order %2 (ascending or descending) a list of items %3.\n{{Identical|Sort}}
+Blockly.Msg.LISTS_SORT_TITLE = 'sort %1 %2 %3';
+/// tooltip - See [https://github.com/google/blockly/wiki/Lists#sorting-a-list].
+Blockly.Msg.LISTS_SORT_TOOLTIP = 'Sort a copy of a list.';
+/// sorting order or direction from low to high value for numeric, or A-Z for alphabetic.\n{{Identical|Ascending}}
+Blockly.Msg.LISTS_SORT_ORDER_ASCENDING = 'ascending';
+/// sorting order or direction from high to low value for numeric, or Z-A for alphabetic.\n{{Identical|Descending}}
+Blockly.Msg.LISTS_SORT_ORDER_DESCENDING = 'descending';
+/// sort by treating each item as a number.
+Blockly.Msg.LISTS_SORT_TYPE_NUMERIC = 'numeric';
+/// sort by treating each item alphabetically, case-sensitive.
+Blockly.Msg.LISTS_SORT_TYPE_TEXT = 'alphabetic';
+/// sort by treating each item alphabetically, ignoring differences in case.
+Blockly.Msg.LISTS_SORT_TYPE_IGNORECASE = 'alphabetic, ignore case';
+
+/// url - Information describing splitting text into a list, or joining a list into text.
+Blockly.Msg.LISTS_SPLIT_HELPURL = 'https://github.com/google/blockly/wiki/Lists#splitting-strings-and-joining-lists';
+/// dropdown - Indicates that text will be split up into a list (e.g. "a-b-c" -> ["a", "b", "c"]).
+Blockly.Msg.LISTS_SPLIT_LIST_FROM_TEXT = 'make list from text';
+/// dropdown - Indicates that a list will be joined together to form text (e.g. ["a", "b", "c"] -> "a-b-c").
+Blockly.Msg.LISTS_SPLIT_TEXT_FROM_LIST = 'make text from list';
+/// block text - Prompts for a letter to be used as a separator when splitting or joining text.
+Blockly.Msg.LISTS_SPLIT_WITH_DELIMITER = 'with delimiter';
+/// tooltip - See [https://github.com/google/blockly/wiki/Lists#make-list-from-text
+/// https://github.com/google/blockly/wiki/Lists#make-list-from-text] for more information.
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_SPLIT = 'Split text into a list of texts, breaking at each delimiter.';
+/// tooltip - See [https://github.com/google/blockly/wiki/Lists#make-text-from-list
+/// https://github.com/google/blockly/wiki/Lists#make-text-from-list] for more information.
+Blockly.Msg.LISTS_SPLIT_TOOLTIP_JOIN = 'Join a list of texts into one text, separated by a delimiter.';
+
+/// grammar - Text that follows an ordinal number (a number that indicates
+/// position relative to other numbers). In most languages, such text appears
+/// before the number, so this should be blank. An exception is Hungarian.
+/// See [[Translating:Blockly#Ordinal_numbers]] for more information.
+Blockly.Msg.ORDINAL_NUMBER_SUFFIX = '';
+
+// Variables Blocks.
+/// url - Information about ''variables'' in computer programming. Consider using your language's translation of [https://en.wikipedia.org/wiki/Variable_(computer_science) https://en.wikipedia.org/wiki/Variable_(computer_science)], if it exists.
+Blockly.Msg.VARIABLES_GET_HELPURL = 'https://github.com/google/blockly/wiki/Variables#get';
+/// tooltip - This gets the value of the named variable without modifying it.
+Blockly.Msg.VARIABLES_GET_TOOLTIP = 'Returns the value of this variable.';
+/// context menu - Selecting this creates a block to set (change) the value of this variable.
+/// \n\nParameters:\n* %1 - the name of the variable.
+Blockly.Msg.VARIABLES_GET_CREATE_SET = 'Create "set %1"';
+
+/// url - Information about ''variables'' in computer programming. Consider using your language's translation of [https://en.wikipedia.org/wiki/Variable_(computer_science) https://en.wikipedia.org/wiki/Variable_(computer_science)], if it exists.
+Blockly.Msg.VARIABLES_SET_HELPURL = 'https://github.com/google/blockly/wiki/Variables#set';
+/// block text - Change the value of a mathematical variable: '''set [the value of] x to 7'''.\n\nParameters:\n* %1 - the name of the variable.\n* %2 - the value to be assigned.
+Blockly.Msg.VARIABLES_SET = 'set %1 to %2';
+/// tooltip - This initializes or changes the value of the named variable.
+Blockly.Msg.VARIABLES_SET_TOOLTIP = 'Sets this variable to be equal to the input.';
+/// context menu - Selecting this creates a block to get (change) the value of
+/// this variable.\n\nParameters:\n* %1 - the name of the variable.
+Blockly.Msg.VARIABLES_SET_CREATE_GET = 'Create "get %1"';
+
+// Procedures Blocks.
+/// url - Information about defining [https://en.wikipedia.org/wiki/Procedure_(computer_science) functions] that do not have return values.
+Blockly.Msg.PROCEDURES_DEFNORETURN_HELPURL = 'https://en.wikipedia.org/wiki/Procedure_%28computer_science%29';
+/// block text - This precedes the name of the function when defining it. See
+/// [https://blockly-demo.appspot.com/static/apps/code/index.html?lang=en#c84aoc this sample
+/// function definition].
+Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE = 'to';
+/// default name - This acts as a placeholder for the name of a function on a
+/// function definition block, as shown on
+/// [https://blockly-demo.appspot.com/static/apps/code/index.html?lang=en#w7cfju this block].
+/// The user will replace it with the function's name.
+Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE = 'do something';
+/// block text - This precedes the list of parameters on a function's defiition block. See
+/// [https://blockly-demo.appspot.com/static/apps/code/index.html?lang=en#voztpd this sample
+/// function with parameters].
+Blockly.Msg.PROCEDURES_BEFORE_PARAMS = 'with:';
+/// block text - This precedes the list of parameters on a function's caller block. See
+/// [https://blockly-demo.appspot.com/static/apps/code/index.html?lang=en#voztpd this sample
+/// function with parameters].
+Blockly.Msg.PROCEDURES_CALL_BEFORE_PARAMS = 'with:';
+/// block text - This appears next to the function's "body", the blocks that should be
+/// run when the function is called, as shown in
+/// [https://blockly-demo.appspot.com/static/apps/code/index.html?lang=en#voztpd this sample
+/// function definition].
+Blockly.Msg.PROCEDURES_DEFNORETURN_DO = '';
+/// tooltip
+Blockly.Msg.PROCEDURES_DEFNORETURN_TOOLTIP = 'Creates a function with no output.';
+/// Placeholder text that the user is encouraged to replace with a description of what their function does.
+Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT = 'Describe this function...';
+/// url - Information about defining [https://en.wikipedia.org/wiki/Procedure_(computer_science) functions] that have return values.
+Blockly.Msg.PROCEDURES_DEFRETURN_HELPURL = 'https://en.wikipedia.org/wiki/Procedure_%28computer_science%29';
+Blockly.Msg.PROCEDURES_DEFRETURN_TITLE = Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE;
+Blockly.Msg.PROCEDURES_DEFRETURN_PROCEDURE = Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE;
+Blockly.Msg.PROCEDURES_DEFRETURN_DO = Blockly.Msg.PROCEDURES_DEFNORETURN_DO;
+Blockly.Msg.PROCEDURES_DEFRETURN_COMMENT = Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT;
+/// block text - This imperative or infinite verb precedes the value that is used as the return value
+/// (output) of this function. See
+/// [https://blockly-demo.appspot.com/static/apps/code/index.html?lang=en#6ot5y5 this sample
+/// function that returns a value].
+Blockly.Msg.PROCEDURES_DEFRETURN_RETURN = 'return';
+/// tooltip
+Blockly.Msg.PROCEDURES_DEFRETURN_TOOLTIP = 'Creates a function with an output.';
+/// Label for a checkbox that controls if statements are allowed in a function.
+Blockly.Msg.PROCEDURES_ALLOW_STATEMENTS = 'allow statements';
+
+/// alert - The user has created a function with two parameters that have the same name. Every parameter must have a different name.
+Blockly.Msg.PROCEDURES_DEF_DUPLICATE_WARNING = 'Warning: This function has duplicate parameters.';
+
+/// url - Information about calling [https://en.wikipedia.org/wiki/Procedure_(computer_science) functions] that do not return values.
+Blockly.Msg.PROCEDURES_CALLNORETURN_HELPURL = 'https://en.wikipedia.org/wiki/Procedure_%28computer_science%29';
+/// tooltip - This block causes the body (blocks inside) of the named function definition to be run.
+Blockly.Msg.PROCEDURES_CALLNORETURN_TOOLTIP = 'Run the user-defined function "%1".';
+
+/// url - Information about calling [https://en.wikipedia.org/wiki/Procedure_(computer_science) functions] that return values.
+Blockly.Msg.PROCEDURES_CALLRETURN_HELPURL = 'https://en.wikipedia.org/wiki/Procedure_%28computer_science%29';
+/// tooltip - This block causes the body (blocks inside) of the named function definition to be run.\n\nParameters:\n* %1 - the name of the function.
+Blockly.Msg.PROCEDURES_CALLRETURN_TOOLTIP = 'Run the user-defined function "%1" and use its output.';
+
+/// block text - This text appears on a block in a window that appears when the user clicks
+/// on the plus sign or star on a function definition block. It refers to the set of parameters
+/// (referred to by the simpler term "inputs") to the function. See
+/// [[Translating:Blockly#function_definitions]].
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TITLE = 'inputs';
+/// tooltip
+Blockly.Msg.PROCEDURES_MUTATORCONTAINER_TOOLTIP = 'Add, remove, or reorder inputs to this function.';
+/// block text - This text appears on a block in a window that appears when the user clicks
+/// on the plus sign or star on a function definition block]. It appears on the block for
+/// adding an individual parameter (referred to by the simpler term "inputs") to the function.
+/// See [[Translating:Blockly#function_definitions]].
+Blockly.Msg.PROCEDURES_MUTATORARG_TITLE = 'input name:';
+/// tooltip
+Blockly.Msg.PROCEDURES_MUTATORARG_TOOLTIP = 'Add an input to the function.';
+
+/// context menu - This appears on the context menu for function calls. Selecting
+/// it causes the corresponding function definition to be highlighted (as shown at
+/// [[Translating:Blockly#context_menus]].
+Blockly.Msg.PROCEDURES_HIGHLIGHT_DEF = 'Highlight function definition';
+/// context menu - This appears on the context menu for function definitions.
+/// Selecting it creates a block to call the function.\n\nParameters:\n* %1 - the name of the function.\n{{Identical|Create}}
+Blockly.Msg.PROCEDURES_CREATE_DO = 'Create "%1"';
+
+/// tooltip - If the first value is true, this causes the second value to be returned
+/// immediately from the enclosing function.
+Blockly.Msg.PROCEDURES_IFRETURN_TOOLTIP = 'If a value is true, then return a second value.';
+/// url - Information about guard clauses.
+Blockly.Msg.PROCEDURES_IFRETURN_HELPURL = 'http://c2.com/cgi/wiki?GuardClause';
+/// warning - This appears if the user tries to use this block outside of a function definition.
+Blockly.Msg.PROCEDURES_IFRETURN_WARNING = 'Warning: This block may be used only within a function definition.';