-
Notifications
You must be signed in to change notification settings - Fork 120
/
blocks_words.js
640 lines (565 loc) · 336 KB
/
blocks_words.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
if (typeof Blockly === 'undefined') {
var Blockly = {};
}
// translations
Blockly.Words = {};
// --- GLOBAL --------------------------------------------------
Blockly.Words['select_id'] = {'en': 'select ID', 'de': 'ID auswählen', 'ru': 'Выбрать ID', 'pt': 'selecione ID', 'nl': 'selecteer ID', 'fr': 'sélectionnez ID', 'it': 'seleziona ID', 'es': 'seleccionar ID', 'pl': 'select ID', 'zh-cn': '对象ID', 'uk': 'виберіть ID'};
// --- OBJECT --------------------------------------------------
Blockly.Words['Object'] = {'en': 'Object', 'de': 'Objekt', 'ru': 'Объект', 'pt': 'Objeto', 'nl': 'Doel', 'fr': 'Objet', 'it': 'Oggetto', 'es': 'Objeto', 'pl': 'Obiekt', 'zh-cn': '对象', 'uk': 'Об\'єкт'};
Blockly.Words['object_new'] = {'en': 'New object', 'de': 'Neues Objekt', 'ru': 'Новый объект', 'pt': 'Novo objeto', 'nl': 'Nieuw object', 'fr': 'Nouvel objet', 'it': 'Nuovo oggetto', 'es': 'Nuevo objeto', 'pl': 'Nowy obiekt', 'zh-cn': '新对象', 'uk': 'Новий об\'єкт'};
Blockly.Words['object_new_attributes'] = {'en': 'Attributes', 'de': 'Attribute', 'ru': 'Атрибуты', 'pt': 'Atributos', 'nl': 'Attributen', 'fr': 'Attributs', 'it': 'Attributi', 'es': 'Atributos', 'pl': 'Atrybuty', 'zh-cn': '属性', 'uk': 'Атрибути'};
Blockly.Words['object_new_attribute'] = {'en': 'Attribute', 'de': 'Attribut', 'ru': 'Attribute', 'pt': 'Atributo', 'nl': 'Attribuut', 'fr': 'Attribut', 'it': 'Attribuzione', 'es': 'Attribute', 'pl': 'Atrybut', 'zh-cn': '属性', 'uk': 'Атрибут'};
Blockly.Words['object_new_tooltip'] = {'en': 'New object', 'de': 'Neues Objekt', 'ru': 'Новый объект', 'pt': 'Novo objeto', 'nl': 'Nieuw object', 'fr': 'Nouvel objet', 'it': 'Nuovo oggetto', 'es': 'Nuevo objeto', 'pl': 'Nowy obiekt', 'zh-cn': '新对象', 'uk': 'Новий об\'єкт'};
Blockly.Words['object_set_attr'] = {'en': 'Set attribute', 'de': 'Setze Attribut', 'ru': 'Свой атрибут', 'pt': 'Definir atributo', 'nl': 'Attribuut instellen', 'fr': 'Définir l\'attribut', 'it': 'Attributo di set', 'es': 'Atributo de configuración', 'pl': 'Ustaw atrybut', 'zh-cn': '设置属性', 'uk': 'Встановити атрибут'};
Blockly.Words['object_set_attr_object'] = {'en': 'of object', 'de': 'des Objekts', 'ru': 'объекта', 'pt': 'de objeto', 'nl': 'van object', 'fr': 'objet', 'it': 'di oggetto', 'es': 'de objeto', 'pl': 'obiekt', 'zh-cn': '对象', 'uk': 'об\'єкта'};
Blockly.Words['object_set_attr_value'] = {'en': 'to value', 'de': 'auf Wert', 'ru': 'по стоимости', 'pt': 'ao valor', 'nl': 'waarde', 'fr': 'valeur', 'it': 'a valore', 'es': 'al valor', 'pl': 'wartość', 'zh-cn': '到数值', 'uk': 'до значення'};
Blockly.Words['object_del_attr'] = {'en': 'Remove attribute', 'de': 'Entferne Attribut', 'ru': 'Удалить атрибут', 'pt': 'Remover atributo', 'nl': 'Attribuut verwijderen', 'fr': 'Supprimer l\'attribut', 'it': 'Rimuovi attributo', 'es': 'Eliminar el atributo', 'pl': 'Usuń atrybut', 'zh-cn': '删除属性', 'uk': 'Видалити атрибут'};
Blockly.Words['object_del_attr_object'] = {'en': 'of object', 'de': 'des Objekts', 'ru': 'объекта', 'pt': 'de objeto', 'nl': 'van object', 'fr': 'objet', 'it': 'di oggetto', 'es': 'de objeto', 'pl': 'obiekt', 'zh-cn': '对象', 'uk': 'об\'єкта'};
Blockly.Words['object_has_attr'] = {'en': 'Object', 'de': 'Objekt', 'ru': 'Объект', 'pt': 'Objeto', 'nl': 'Doel', 'fr': 'Objet', 'it': 'Oggetto', 'es': 'Objeto', 'pl': 'Obiekt', 'zh-cn': '对象', 'uk': 'Об\'єкт'};
Blockly.Words['object_has_attr_attr'] = {'en': 'has attribute', 'de': 'hat Attribut', 'ru': 'имеет атрибут', 'pt': 'tem atributo', 'nl': 'heeft eigenschap', 'fr': 'a un attribut', 'it': 'ha attributo', 'es': 'tiene atributo', 'pl': 'posiada atrybut', 'zh-cn': '有属性', 'uk': 'має атрибут'};
Blockly.Words['object_keys'] = {'en': 'Attributes of object', 'de': 'Attribute des Objekts', 'ru': 'Атрибуты объекта', 'pt': 'Atributos de objeto', 'nl': 'Attributen van object', 'fr': 'Attributs de l\'objet', 'it': 'Attributi dell\'oggetto', 'es': 'Atributos de objeto', 'pl': 'Atrybuty obiektu', 'zh-cn': '对象属性', 'uk': 'Атрибути об\'єкта'};
// --- ACTION --------------------------------------------------
Blockly.Words['Action'] = {'en': 'Actions', 'de': 'Aktionen', 'ru': 'Действия', 'pt': 'Ações', 'nl': 'Acties', 'fr': 'Actes', 'it': 'Azioni', 'es': 'Comportamiento', 'pl': 'Actions', 'zh-cn': '系统指令', 'uk': 'Дії'};
// --- action selector --------------------------------------------------
Blockly.Words['selector'] = {'en': 'IDs from Selector', 'de': 'IDs vom Selektor', 'ru': 'Идентификаторы из селектора', 'pt': 'IDs do seletor', 'nl': 'Id\'s van selector', 'fr': 'ID du sélecteur', 'it': 'ID dal selettore', 'es': 'Identificadores de selector', 'pl': 'IDs from Selector', 'zh-cn': '选择器中的 Id', 'uk': 'Ідентифікатори від Selector'};
// --- action exec --------------------------------------------------
Blockly.Words['exec'] = {'en': 'exec', 'de': 'exec', 'ru': 'exec', 'pt': 'exec', 'nl': 'exec', 'fr': 'exec', 'it': 'exec', 'es': 'ejecutivo', 'pl': 'exec', 'zh-cn': '执行指令', 'uk': 'викон'};
Blockly.Words['exec_statement'] = {'en': 'with results', 'de': 'mit Ergebnissen', 'ru': 'анализировать результаты', 'pt': 'com resultados', 'nl': 'met resultaten', 'fr': 'avec des résultats', 'it': 'con risultati', 'es': 'con resultados', 'pl': 'with results', 'zh-cn': '处理返回值', 'uk': 'з результатами'};
Blockly.Words['exec_command'] = {'en': 'command', 'de': 'Befehl', 'ru': 'команда', 'pt': 'comando', 'nl': 'opdracht', 'fr': 'commander', 'it': 'comando', 'es': 'mando', 'pl': 'command', 'zh-cn': '命令行指令', 'uk': 'команда'};
Blockly.Words['exec_tooltip'] = {'en': 'Execute some command', 'de': 'Einen System-Befehl ausführen', 'ru': 'Выполнить системную команду', 'pt': 'Executar um comando do sistema', 'nl': 'Voer een commando uit', 'fr': 'Exécuter une commande', 'it': 'Esegui un comando', 'es': 'Ejecuta algún comando', 'pl': 'Execute some command', 'zh-cn': '执行一些指令', 'uk': 'Виконати якусь команду'};
Blockly.Words['exec_help'] = {'en': 'exec---execute-some-os-command-like-cp-file1-file2', 'de': 'exec---execute-some-os-command-like-cp-file1-file2', 'ru': 'exec---execute-some-os-command-like-cp-file1-file2', 'pt': 'exec---execute-some-os-command-like-cp-file1-file2', 'nl': 'exec---execute-some-os-command-like-cp-file1-file2', 'fr': 'exec---execute-some-os-command-like-cp-file1-file2', 'it': 'exec---execute-some-os-command-like-cp-file1-file2', 'es': 'exec---execute-some-os-command-like-cp-file1-file2', 'pl': 'exec---execute-some-os-command-like-cp-file1-file2', 'zh-cn': 'exec---execute-some-os-command-like-cp-file1-file2', 'uk': 'exec---execute-some-os-command-like-cp-file1-file2'};
Blockly.Words['exec_log'] = {'en': 'log level', 'de': 'Loglevel', 'ru': 'Протокол', 'pt': 'nível de log', 'nl': 'Log niveau', 'fr': 'niveau de journalisation', 'it': 'livello di registro', 'es': 'nivel de registro', 'pl': 'log level', 'zh-cn': '日志级别', 'uk': 'рівень журналу'};
Blockly.Words['exec_log_none'] = {'en': 'none', 'de': 'keins', 'ru': 'нет', 'pt': 'nenhum', 'nl': 'geen', 'fr': 'aucun', 'it': 'nessuna', 'es': 'ninguna', 'pl': 'none', 'zh-cn': '不输出', 'uk': 'немає'};
Blockly.Words['exec_log_info'] = {'en': 'info', 'de': 'info', 'ru': 'инфо', 'pt': 'informação', 'nl': 'info', 'fr': 'Info', 'it': 'Informazioni', 'es': 'información', 'pl': 'info', 'zh-cn': '必要信息', 'uk': 'інформація'};
Blockly.Words['exec_log_debug'] = {'en': 'debug', 'de': 'debug', 'ru': 'debug', 'pt': 'depurar', 'nl': 'debug', 'fr': 'déboguer', 'it': 'mettere a punto', 'es': 'depurar', 'pl': 'debug', 'zh-cn': '调试信息', 'uk': 'відлагоджувати'};
Blockly.Words['exec_log_warn'] = {'en': 'warning', 'de': 'warning', 'ru': 'warning', 'pt': 'atenção', 'nl': 'waarschuwing', 'fr': 'Attention', 'it': 'avvertimento', 'es': 'advertencia', 'pl': 'warning', 'zh-cn': '警告信息', 'uk': 'УВАГА'};
Blockly.Words['exec_log_error'] = {'en': 'error', 'de': 'error', 'ru': 'ошибка', 'pt': 'erro', 'nl': 'fout', 'fr': 'Erreur', 'it': 'errore', 'es': 'error', 'pl': 'error', 'zh-cn': '错误信息', 'uk': 'помилка'};
// --- action http --------------------------------------------------
Blockly.Words['http_timeout'] = {'en': 'timeout', 'de': 'Timeout', 'ru': 'timeout', 'pt': 'timeout', 'nl': 'timeout', 'fr': 'timeout', 'it': 'timeout', 'es': 'timeout', 'pl': 'timeout', 'zh-cn': 'timeout', 'uk': 'timeout'};
Blockly.Words['http_timeout_ms'] = {'en': 'ms', 'de': 'ms', 'ru': 'мс', 'pt': 'ms', 'nl': 'Mevrouw', 'fr': 'Mme', 'it': 'Signorina', 'es': 'Sra', 'pl': 'ms', 'zh-cn': '毫秒', 'uk': 'РС'};
Blockly.Words['http_timeout_sec'] = {'en': 'sec', 'de': 'Sek', 'ru': 'сек.', 'pt': 'seg', 'nl': 'sec', 'fr': 'seconde', 'it': 'secondo', 'es': 'segundo', 'pl': 'sec', 'zh-cn': '秒', 'uk': 'сек'};
Blockly.Words['http_type'] = {'en': 'response data type', 'de': 'Antwort-Datentyp', 'ru': 'Тип данных', 'pt': 'Tipo de dados de resposta', 'nl': 'Type responsgegevens', 'fr': 'Type de données de réponse', 'it': 'Tipo di dati di risposta', 'es': 'Tipo de datos de respuesta', 'pl': 'Typ danych odpowiedzi', 'zh-cn': '响应数据类型', 'uk': 'Тип даних відповіді'};
Blockly.Words['http_type_text'] = {'en': 'text', 'de': 'Text', 'ru': 'Текст', 'pt': 'Texto', 'nl': 'Tekst', 'fr': 'Texte', 'it': 'Testo', 'es': 'Texto', 'pl': 'Tekst', 'zh-cn': '文本', 'uk': 'Головна'};
Blockly.Words['http_type_arraybuffer'] = {'en': 'arraybuffer', 'de': 'Arraybuffer', 'ru': 'arraybuffer', 'pt': 'arraybuffer', 'nl': 'arraybuffer', 'fr': 'arraybuffer', 'it': 'arraybuffer', 'es': 'arraybuffer', 'pl': 'arraybuffer', 'zh-cn': 'arraybuffer', 'uk': 'arraybuffer'};
// --- action http_get --------------------------------------------------
Blockly.Words['http_get'] = {'en': 'http (GET)', 'de': 'http (GET)', 'ru': 'http (GET)', 'pt': 'http (GET)', 'nl': 'http (GET)', 'fr': 'http (GET)', 'it': 'http (GET)', 'es': 'http (GET)', 'pl': 'http (GET)', 'zh-cn': 'http (GET)', 'uk': 'http (GET)'};
Blockly.Words['http_get_tooltip'] = {'en': 'Request ressources via http', 'de': 'Ressourcen anfordern via http', 'ru': 'Запрос ресурсов через http', 'pt': 'Solicitar recursos via http', 'nl': 'Resources aanvragen via http', 'fr': 'Demander des ressources via http', 'it': 'Richiesta di risorse via http', 'es': 'Solicitar ressources via http', 'pl': 'Wniosek o ponowne źródła informacji za pośrednictwem http', 'zh-cn': '通过 http 请求资源源', 'uk': 'Запит ресурсів через HTTP'};
Blockly.Words['http_get_help'] = {'en': 'httpGet', 'de': 'httpGet', 'ru': 'httpGet', 'pt': 'httpGet', 'nl': 'httpGet', 'fr': 'httpGet', 'it': 'httpGet', 'es': 'httpGet', 'pl': 'httpGet', 'zh-cn': 'httpGet', 'uk': 'httpGet'};
// --- action http_post --------------------------------------------------
Blockly.Words['http_post'] = {'en': 'http (POST)', 'de': 'http (POST)', 'ru': 'http (POST)', 'pt': 'http (POST)', 'nl': 'http (POST)', 'fr': 'http (POST)', 'it': 'http (POST)', 'es': 'http (POST)', 'pl': 'http (POST)', 'zh-cn': 'http (POST)', 'uk': 'http (POST)'};
Blockly.Words['http_post_data'] = {'en': 'data', 'de': 'Daten', 'ru': 'данные', 'pt': 'dados', 'nl': 'data', 'fr': 'données', 'it': 'dati', 'es': 'datos', 'pl': 'dane', 'zh-cn': '数据', 'uk': 'даних'};
Blockly.Words['http_post_tooltip'] = {'en': 'Request ressources via http', 'de': 'Ressourcen anfordern via http', 'ru': 'Запрос ресурсов через http', 'pt': 'Solicitar recursos via http', 'nl': 'Resources aanvragen via http', 'fr': 'Demander des ressources via http', 'it': 'Richiesta di risorse via http', 'es': 'Solicitar ressources via http', 'pl': 'Wniosek o ponowne źródła informacji za pośrednictwem http', 'zh-cn': '通过 http 请求资源源', 'uk': 'Запит ресурсів через HTTP'};
Blockly.Words['http_post_help'] = {'en': 'httpPost', 'de': 'httpPost', 'ru': 'httpPost', 'pt': 'httpPost', 'nl': 'httpPost', 'fr': 'httpPost', 'it': 'httpPost', 'es': 'httpPost', 'pl': 'httpPost', 'zh-cn': 'httpPost', 'uk': 'httpPost'};
// --- action http_response --------------------------------------------------
Blockly.Words['http_response_data'] = {'en': 'data', 'de': 'Data', 'ru': 'data', 'pt': 'data', 'nl': 'data', 'fr': 'data', 'it': 'data', 'es': 'data', 'pl': 'data', 'zh-cn': 'data', 'uk': 'data'};
Blockly.Words['http_response_statuscode'] = {'en': 'status code', 'de': 'Status code', 'ru': 'status code', 'pt': 'status code', 'nl': 'status code', 'fr': 'status code', 'it': 'status code', 'es': 'status code', 'pl': 'status code', 'zh-cn': 'status code', 'uk': 'status code'};
Blockly.Words['http_response_warning'] = {'en': 'This block must be used inside of http blocks', 'de': 'Dieser Block muss innerhalb von http-Blöcken verwendet werden', 'ru': 'Этот блок должен быть использован внутри блоков http', 'pt': 'Este bloco deve ser usado dentro de blocos http', 'nl': 'Dit blok moet worden gebruikt binnen http-blokken', 'fr': 'Ce bloc doit être utilisé à l\'intérieur des blocs http', 'it': 'Questo blocco deve essere utilizzato all\'interno dei blocchi http', 'es': 'Este bloque debe ser utilizado dentro de bloques http', 'pl': 'Ten blok musi być używany wewnątrz bloków http', 'zh-cn': '此块必须在 http 块内使用', 'uk': 'Цей блок повинен використовуватися всередині блоків'};
Blockly.Words['http_response_tooltip'] = {'en': 'Response information', 'de': 'Information aus der Antwort', 'ru': 'Информация о мерах реагирования', 'pt': 'InformaçÃμes de resposta', 'nl': 'Responsinformatie', 'fr': 'Réponse', 'it': 'Informazioni sulla risposta', 'es': 'Información sobre la respuesta', 'pl': 'Informacje o odpowiedzi', 'zh-cn': '答复信息', 'uk': 'Інформація про відповідь'};
// --- action file_write --------------------------------------------------
Blockly.Words['file_write'] = {'en': 'file write', 'de': 'Datei schreiben', 'ru': 'Запись файла', 'pt': 'Escrever arquivo', 'nl': 'Bestand schrijven', 'fr': 'Écrire un fichier', 'it': 'Scrivere file', 'es': 'Libro', 'pl': 'Plik zapisu', 'zh-cn': '文件写入', 'uk': 'Ім\'я файла'};
Blockly.Words['file_write_filename'] = {'en': 'file name', 'de': 'Dateiname', 'ru': 'Имя файла', 'pt': 'Nome do arquivo', 'nl': 'Bestandnaam', 'fr': 'Nom du fichier', 'it': 'Nome del file', 'es': 'Nombre del archivo', 'pl': 'Nazwa pliku', 'zh-cn': '文件名', 'uk': 'Ім\'я файла'};
Blockly.Words['file_write_data'] = {'en': 'data', 'de': 'Daten', 'ru': 'данные', 'pt': 'dados', 'nl': 'data', 'fr': 'données', 'it': 'dati', 'es': 'datos', 'pl': 'dane', 'zh-cn': '数据', 'uk': 'даних'};
Blockly.Words['file_write_tooltip'] = {'en': 'Write data into file system', 'de': 'Daten in Dateisystem schreiben', 'ru': 'Записать данные в файловую систему', 'pt': 'Escreva dados no sistema de arquivos', 'nl': 'Gegevens naar bestandssysteem schrijven', 'fr': 'Ecrire les données dans le système de fichiers', 'it': 'Scrivere i dati nel file system', 'es': 'Escriba datos en el sistema de archivos', 'pl': 'Zapisz dane do systemu plików', 'zh-cn': '将数据写入文件系统', 'uk': 'Напишіть дані у файлову систему'};
Blockly.Words['file_write_help'] = {'en': 'writefile', 'de': 'writefile', 'ru': 'writefile', 'pt': 'writefile', 'nl': 'writefile', 'fr': 'writefile', 'it': 'writefile', 'es': 'writefile', 'pl': 'writefile', 'zh-cn': 'writefile', 'uk': 'writefile'};
// --- action file_read --------------------------------------------------
Blockly.Words['file_read'] = {'en': 'file read', 'de': 'Datei lesen', 'ru': 'Файл:', 'pt': 'Leitura do arquivo', 'nl': 'Bestand gelezen', 'fr': 'Fichier lu', 'it': 'Informazioni sul file', 'es': 'Archivo leído', 'pl': 'Odczyt pliku', 'zh-cn': '文件已读取', 'uk': 'Файл читати'};
Blockly.Words['file_read_filename'] = {'en': 'file name', 'de': 'Dateiname', 'ru': 'Имя файла', 'pt': 'Nome do arquivo', 'nl': 'Bestandnaam', 'fr': 'Nom du fichier', 'it': 'Nome del file', 'es': 'Nombre del archivo', 'pl': 'Nazwa pliku', 'zh-cn': '文件名', 'uk': 'Ім\'я файла'};
Blockly.Words['file_read_tooltip'] = {'en': 'Read file from file system', 'de': 'Datei aus Dateisystem lesen', 'ru': 'Читать файл из файловой системы', 'pt': 'Leia o arquivo do sistema de arquivos', 'nl': 'Bestand uit bestandssysteem lezen', 'fr': 'Lire le fichier depuis le système de fichiers', 'it': 'Leggi file dal file system', 'es': 'Lea el archivo del sistema de archivos', 'pl': 'Odczyt pliku z systemu plików', 'zh-cn': '从文件系统读取文件', 'uk': 'Читати файл з файлової системи'};
Blockly.Words['file_read_help'] = {'en': 'readfile', 'de': 'readfile', 'ru': 'readfile', 'pt': 'readfile', 'nl': 'readfile', 'fr': 'readfile', 'it': 'readfile', 'es': 'readfile', 'pl': 'readfile', 'zh-cn': 'readfile', 'uk': 'readfile'};
// --- action file_data --------------------------------------------------
Blockly.Words['file_data_data'] = {'en': 'data', 'de': 'Data', 'ru': 'data', 'pt': 'data', 'nl': 'data', 'fr': 'data', 'it': 'data', 'es': 'data', 'pl': 'data', 'zh-cn': 'data', 'uk': 'data'};
Blockly.Words['file_data_mimeType'] = {'en': 'mimeType', 'de': 'mimeType', 'ru': 'mimeType', 'pt': 'mimeType', 'nl': 'mimeType', 'fr': 'mimeType', 'it': 'mimeType', 'es': 'mimeType', 'pl': 'mimeType', 'zh-cn': 'mimeType', 'uk': 'mimeType'};
Blockly.Words['file_data_warning'] = {'en': 'This block must be used inside of file blocks', 'de': 'Dieser Block muss innerhalb von Dateiblöcken verwendet werden', 'ru': 'Этот блок должен быть использован внутри файловых блоков', 'pt': 'Este bloco deve ser usado dentro de blocos de arquivos', 'nl': 'Dit blok moet gebruikt worden binnen bestandsblokken', 'fr': 'Ce bloc doit être utilisé dans les blocs de fichiers', 'it': 'Questo blocco deve essere utilizzato all\'interno dei blocchi di file', 'es': 'Este bloque debe ser utilizado dentro de bloques de archivos', 'pl': 'Ten blok musi być użyty wewnątrz bloków plików', 'zh-cn': '此块必须在文件块内使用', 'uk': 'Цей блок необхідно використовувати всередині файлових блоків'};
Blockly.Words['file_data_tooltip'] = {'en': 'File information', 'de': 'Informationen zur Datei', 'ru': 'Информация о файлах', 'pt': 'Informações do arquivo', 'nl': 'Bestandsinformatie', 'fr': 'Informations sur le fichier', 'it': 'Informazioni sul file', 'es': 'Información de archivos', 'pl': 'Informacje o pliku', 'zh-cn': '文件信息', 'uk': 'Інформація про файли'};
// --- action request --------------------------------------------------
Blockly.Words['request'] = {'en': 'request (deprecated)', 'de': 'request (deprecated)', 'ru': 'request (deprecated)', 'pt': 'request (deprecated)', 'nl': 'verzoek (deprecated)', 'fr': 'demande (deprecated)', 'it': 'richiesta (deprecated)', 'es': 'solicitud (deprecated)', 'pl': 'request (deprecated)', 'zh-cn': '请求网址 (deprecated)', 'uk': 'запит (deprecated)'};
Blockly.Words['request_url'] = {'en': 'URL', 'de': 'URL', 'ru': 'URL', 'pt': 'URL', 'nl': 'URL', 'fr': 'URL', 'it': 'URL', 'es': 'URL', 'pl': 'URL', 'zh-cn': '网址', 'uk': 'URL'};
Blockly.Words['request_statement'] = {'en': 'with results', 'de': 'mit Ergebnissen', 'ru': 'анализировать результаты', 'pt': 'com resultados', 'nl': 'met resultaten', 'fr': 'avec des résultats', 'it': 'con risultati', 'es': 'con resultados', 'pl': 'with results', 'zh-cn': '处理返回值', 'uk': 'з результатами'};
Blockly.Words['request_tooltip'] = {'en': 'Request URL', 'de': 'URL abfragen', 'ru': 'Запросить URL', 'pt': 'URL solitado', 'nl': 'Verzoek om URL', 'fr': 'Demander une URL', 'it': 'URL di richiesta', 'es': 'URL de solicitud', 'pl': 'Request URL', 'zh-cn': '请求网址', 'uk': 'URL запиту'};
Blockly.Words['request_help'] = {'en': 'https://github.com/request/request', 'de': 'https://github.com/request/request', 'ru': 'https://github.com/request/request', 'pt': 'https://github.com/request/request', 'nl': 'https://github.com/request/request', 'fr': 'https://github.com/request/request', 'it': 'https://github.com/request/request', 'es': 'https://github.com/request/request', 'pl': 'https://github.com/request/request', 'zh-cn': 'https://github.com/request/request', 'uk': 'https://github.com/request/request'};
Blockly.Words['request_log'] = {'en': 'log level', 'de': 'Loglevel', 'ru': 'Протокол', 'pt': 'nível de log', 'nl': 'Log niveau', 'fr': 'niveau de journalisation', 'it': 'livello di registro', 'es': 'nivel de registro', 'pl': 'log level', 'zh-cn': '日志级别', 'uk': 'рівень журналу'};
Blockly.Words['request_log_none'] = {'en': 'none', 'de': 'keins', 'ru': 'нет', 'pt': 'Nenhum', 'nl': 'geen', 'fr': 'aucun', 'it': 'nessuna', 'es': 'ninguna', 'pl': 'none', 'zh-cn': '不输出', 'uk': 'немає'};
Blockly.Words['request_log_info'] = {'en': 'info', 'de': 'info', 'ru': 'инфо', 'pt': 'informação', 'nl': 'info', 'fr': 'Info', 'it': 'Informazioni', 'es': 'información', 'pl': 'info', 'zh-cn': '必要信息', 'uk': 'інформація'};
Blockly.Words['request_log_debug'] = {'en': 'debug', 'de': 'debug', 'ru': 'debug', 'pt': 'depurar', 'nl': 'debug', 'fr': 'déboguer', 'it': 'mettere a punto', 'es': 'depurar', 'pl': 'debug', 'zh-cn': '调试信息', 'uk': 'відлагоджувати'};
Blockly.Words['request_log_warn'] = {'en': 'warning', 'de': 'warning', 'ru': 'warning', 'pt': 'atenção', 'nl': 'waarschuwing', 'fr': 'Attention', 'it': 'avvertimento', 'es': 'advertencia', 'pl': 'warning', 'zh-cn': '警告信息', 'uk': 'УВАГА'};
Blockly.Words['request_log_error'] = {'en': 'error', 'de': 'error', 'ru': 'ошибка', 'pt': 'erro', 'nl': 'fout', 'fr': 'Erreur', 'it': 'errore', 'es': 'error', 'pl': 'error', 'zh-cn': '错误信息', 'uk': 'помилка'};
// --- CONVERT --------------------------------------------------
Blockly.Words['Convert'] = {'en': 'Convert', 'de': 'Konvertierung', 'ru': 'Конвертация', 'pt': 'Converter', 'nl': 'Converteren', 'fr': 'Convertir', 'it': 'Convertire', 'es': 'Convertir', 'pl': 'Convert', 'zh-cn': '转换', 'uk': 'конвертувати'};
// --- convert convert --------------------------------------------------
Blockly.Words['convert_tonumber'] = {'en': 'toNumber', 'de': 'nach Zahl', 'ru': 'в число', 'pt': 'por número', 'nl': 'toNumber', 'fr': 'toNumber', 'it': 'ToNumber', 'es': 'Al numero', 'pl': 'toNumber', 'zh-cn': '至数字', 'uk': 'toNumber'};
Blockly.Words['convert_tonumber_tooltip'] = {'en': 'Cast input to number', 'de': 'Wandle Eingang nach Zahl', 'ru': 'Преобразовать вход в число', 'pt': 'Trasformar entrada para número', 'nl': 'Cast input naar nummer', 'fr': 'Transmettre l\'entrée au numéro', 'it': 'Trasmetti l\'input al numero', 'es': 'Emitir entrada al número', 'pl': 'Cast input to number', 'zh-cn': '将输入转换为数字', 'uk': 'Перевести вхід до числа'};
Blockly.Words['convert_toboolean'] = {'en': 'toBoolean', 'de': 'nach Logikwert', 'ru': 'в булево значение', 'pt': 'para booleano', 'nl': 'toBoolean', 'fr': 'toBooléen', 'it': 'toBoolean', 'es': 'toBoolean', 'pl': 'toBoolean', 'zh-cn': '至布尔值', 'uk': 'toBoolean'};
Blockly.Words['convert_toboolean_tooltip'] = {'en': 'Cast input to boolean', 'de': 'Wandle Input nach Logikwert', 'ru': 'Преобразовать вход в булево значение', 'pt': 'Trasformar entrada para booleano', 'nl': 'Cast input naar boolean', 'fr': 'Transmettre l\'entrée au booléen', 'it': 'Trasmetti l\'input a booleano', 'es': 'Enviar entrada a boolean', 'pl': 'Cast input to boolean', 'zh-cn': '将输入转换为布尔值', 'uk': 'Перевести вхід до логічного значення'};
Blockly.Words['convert_tostring'] = {'en': 'toString', 'de': 'nach String', 'ru': 'в строку', 'pt': 'para texto', 'nl': 'toString', 'fr': 'toString', 'it': 'accordare', 'es': 'Encadenar', 'pl': 'toString', 'zh-cn': '至字符串', 'uk': 'toString'};
Blockly.Words['convert_tostring_tooltip'] = {'en': 'Cast input to string', 'de': 'Wandle Input nach String', 'ru': 'Преобразовать вход в строку', 'pt': 'Trasformar entrada para texto', 'nl': 'Cast input naar nummer', 'fr': 'Transmettre l\'entrée au numéro', 'it': 'Trasmetti l\'input al numero', 'es': 'Emitir entrada al número', 'pl': 'Cast input to number', 'zh-cn': '将输入转换为字符串', 'uk': 'Перевести вхідні дані в рядок'};
Blockly.Words['convert_type'] = {'en': 'type of', 'de': 'Typ von', 'ru': 'взять тип', 'pt': 'tipo de', 'nl': 'soort van', 'fr': 'Type de', 'it': 'tipo di', 'es': 'tipo de', 'pl': 'type of', 'zh-cn': '获取类型', 'uk': 'тип'};
Blockly.Words['convert_type_tooltip'] = {'en': 'Returns type of input', 'de': 'Typ von Input', 'ru': 'Взять тип входа', 'pt': 'Retorna o tipo da entrada', 'nl': 'Retourneert het type invoer', 'fr': 'Renvoie le type d\'entrée', 'it': 'Restituisce il tipo di input', 'es': 'Devuelve tipo de entrada', 'pl': 'Returns type of input', 'zh-cn': '返回输入类型', 'uk': 'Повертає тип введення'};
Blockly.Words['convert_to_date'] = {'en': 'to Date/Time', 'de': 'nach Datum/Zeit', 'ru': 'в дату/время', 'pt': 'até a data/hora', 'nl': 'tot datum/tijd', 'fr': 'à date/heure', 'it': 'alla data/ora', 'es': 'hasta la fecha/hora', 'pl': 'to Date/Time', 'zh-cn': '至日期/时间', 'uk': 'до дати/часу'};
Blockly.Words['convert_to_date_tooltip'] = {'en': 'Cast input to date', 'de': 'Wandle Input nach Datum', 'ru': 'Преобразовать вход в дату', 'pt': 'Trasformar entrada para data', 'nl': 'Cast input tot op heden', 'fr': 'Diffuser l\'entrée à ce jour', 'it': 'Trasmetti l\'input fino alla data', 'es': 'Emitir entrada hasta la fecha', 'pl': 'Cast input to date', 'zh-cn': '将输入转换为至日期/时间', 'uk': 'Трансляція введення на дату'};
Blockly.Words['convert_from_date'] = {'en': 'date/time', 'de': 'Datum/Zeit', 'ru': 'дату/время', 'pt': 'data/hora', 'nl': 'datum Tijd', 'fr': 'date/heure', 'it': 'appuntamento', 'es': 'fecha y hora', 'pl': 'date/time', 'zh-cn': '从日期/时间', 'uk': 'дата, час'};
Blockly.Words['convert_to'] = {'en': 'to', 'de': 'nach', 'ru': 'в', 'pt': 'para', 'nl': 'naar', 'fr': 'à', 'it': 'a', 'es': 'a', 'pl': 'to', 'zh-cn': '至', 'uk': 'до'};
Blockly.Words['convert_from_date_tooltip'] = {'en': 'Cast input from date', 'de': 'erzeuge Input aus Datum', 'ru': 'Преобразовать вход из даты', 'pt': 'criar entrada pela data', 'nl': 'Cast-invoer vanaf datum', 'fr': 'Transmettre l\'entrée de la date', 'it': 'Trasmetti input dalla data', 'es': 'Emitir entrada desde la fecha', 'pl': 'Cast input from date', 'zh-cn': '将输入时间转换目标格式的时间', 'uk': 'Трансляція введення з дати'};
Blockly.Words['convert_json2object'] = {'en': 'JSON to object', 'de': 'JSON nach Objekt', 'ru': 'JSON в объект', 'pt': 'JSON para objeto', 'nl': 'JSON om bezwaar aan te tekenen', 'fr': 'JSON à objet', 'it': 'JSON per obiettare', 'es': 'JSON para objetar', 'pl': 'JSON to object', 'zh-cn': '从JSON到对象', 'uk': 'JSON для об’єкта'};
Blockly.Words['convert_json2object_tooltip'] = {'en': 'Parse JSON string', 'de': 'Parse JSON', 'ru': 'Преобразовать JSON в объект', 'pt': 'Parse JSON', 'nl': 'Ontleed JSON-tekenreeks', 'fr': 'Parse JSON chaîne', 'it': 'Analizza la stringa JSON', 'es': 'Cadena Parson JSON', 'pl': 'Parse JSON string', 'zh-cn': '解析JSON字符串', 'uk': 'Проаналізуйте рядок JSON'};
Blockly.Words['convert_object2json'] = {'en': 'object to JSON', 'de': 'Objekt nach JSON', 'ru': 'объект в JSON', 'pt': 'Objeto para JSON', 'nl': 'bezwaar tegen JSON', 'fr': 'objet à JSON', 'it': 'oggetto a JSON', 'es': 'objetar a JSON', 'pl': 'object to JSON', 'zh-cn': '从对象到JSON', 'uk': 'об\'єкт для JSON'};
Blockly.Words['convert_object2json_tooltip'] = {'en': 'Stringify object', 'de': 'Objekt nach JSON', 'ru': 'Преобразовать объект в JSON', 'pt': 'Objeto para JSON', 'nl': 'Strinify-object', 'fr': 'Strinify objet', 'it': 'Strinificare l\'oggetto', 'es': 'Objeto Strinify', 'pl': 'Strinify object', 'zh-cn': '将对象转为JSON字符串', 'uk': 'Стрінгіфікувати об\'єкт'};
Blockly.Words['convert_object2json_prettify'] = {'en': 'prettify', 'de': 'formatieren', 'ru': 'форматировать', 'pt': 'formatar', 'nl': 'leuk maken', 'fr': 'enjoliver', 'it': 'abbellire', 'es': 'embellecer', 'pl': 'prettify', 'zh-cn': '并格式化', 'uk': 'прикрашати'};
Blockly.Words['convert_jsonata'] = {'en': 'JSONata expression', 'de': 'JSONata Ausdruck', 'ru': 'JSONata выражение', 'pt': 'Expressão JSONata', 'nl': 'JSONata-expressie', 'fr': 'Expression JSONata', 'it': 'Espressione JSONata', 'es': 'Expresión JSONata', 'pl': 'Wyrażenie JSONata', 'zh-cn': 'JSONata表达式', 'uk': 'Вираз JSONata'};
Blockly.Words['convert_jsonata_target'] = {'en': 'apply to', 'de': 'anwenden auf', 'ru': 'применить к', 'pt': 'aplicar a', 'nl': 'van toepassing op', 'fr': 'postuler à', 'it': 'applica a', 'es': 'aplicar para', 'pl': 'ubiegać się o', 'zh-cn': '适用于', 'uk': 'застосувати до'};
Blockly.Words['convert_jsonata_tooltip'] = {'en': 'Convert by JSONata Expression', 'de': 'Mit JSONata konvertieren', 'ru': 'Преобразовать по выражению JSONata', 'pt': 'Converter por expressão JSONata', 'nl': 'Converteer door JSONata-expressie', 'fr': 'Conversion par expression JSONata', 'it': 'Convertire da JSONata Expression', 'es': 'Convertir por expresión JSONata', 'pl': 'Konwertuj przez wyrażenie JSONata', 'zh-cn': '通过JSONata表达式转换', 'uk': 'Перетворення за допомогою виразу JSONata'};
Blockly.Words['convert_time_difference'] = {'en': 'Format time difference', 'de': 'Zeitdifferenz formatieren', 'ru': 'Формат разницы во времени', 'pt': 'Formatar uma diferença de tempo', 'nl': 'Vernietig een tijdsverschil', 'fr': 'Formater une différence de temps', 'it': 'Formattare una differenza di tempo', 'es': 'Formato de la diferencia de tiempo', 'pl': 'Różnica czasowa', 'uk': 'Формат різниці часу', 'zh-cn': '时间差异'};
Blockly.Words['time_difference_hh:mm:ss'] = {'en': 'hh:mm:ss', 'de': 'hh:mm:ss', 'ru': 'чч:мм:ss', 'pt': 'hh:mm:ss', 'nl': 'hh:mm:ss', 'fr': 'hh:mm:ss', 'it': 'hh:mm:ss', 'es': 'hh:mm:ss', 'pl': 'h:mm:ss', 'uk': 'hh:mm:ss', 'zh-cn': 'hh:mm:ss'};
Blockly.Words['time_difference_h:m:s'] = {'en': 'h:m:s', 'de': 'h:m:s', 'ru': 'ч:м:s', 'pt': 'h:m:s', 'nl': 'h:m:s', 'fr': 'h:m:s', 'it': 'h:m:s', 'es': 'h:m:s', 'pl': 'h:m:s', 'uk': 'h:m:s', 'zh-cn': 'h:m:s'};
Blockly.Words['time_difference_hh:mm'] = {'en': 'hh:mm', 'de': 'hh:mm', 'ru': 'чч:мм', 'pt': 'hh:mm', 'nl': 'hh:mm', 'fr': 'hh:mm', 'it': 'hh:mm', 'es': 'hh:mm', 'pl': 'h:mm', 'uk': 'hh:mm', 'zh-cn': 'hh:mm'};
Blockly.Words['time_difference_h:m'] = {'en': 'h:m', 'de': 'h:m', 'ru': 'ч:м', 'pt': 'h:m', 'nl': 'h:m', 'fr': 'h:m', 'it': 'h:m', 'es': 'h:m', 'pl': 'h:m', 'uk': 'h:m', 'zh-cn': 'h:m'};
Blockly.Words['time_difference_mm:ss'] = {'en': 'm:s', 'de': 'm:s', 'ru': 'м:s', 'pt': 'm:s', 'nl': 'm:s', 'fr': 'm:s', 'it': 'm:s', 'es': 'm:s', 'pl': 'h:mm', 'uk': 'm:s', 'zh-cn': 'm:s'};
Blockly.Words['time_difference_m:s'] = {'en': 'mm:ss', 'de': 'mm:ss', 'ru': 'мм:ss', 'pt': 'mm:ss', 'nl': 'mm:ss', 'fr': 'mm:ss', 'it': 'mm:ss', 'es': 'mm:ss', 'pl': 'h:mm', 'uk': 'mm:ss', 'zh-cn': 'mm:ss'};
Blockly.Words['time_difference_custom'] = {'en': 'custom format', 'de': 'anwenderformatiert', 'ru': 'произвольный формат', 'pt': 'formato personalizado', 'nl': 'aangepast formaat', 'fr': 'format personnalisé', 'it': 'formato personalizzato', 'es': 'formato personalizado', 'pl': 'custom format', 'zh-cn': '自定义格式', 'uk': 'спеціальний формат'};
Blockly.Words['time_difference_default_format'] = {'en': 'hh:mm:ss', 'de': 'hh:mm:ss', 'ru': 'чч:мм:ss', 'pt': 'hh:mm:ss', 'nl': 'hh:mm:ss', 'fr': 'hh:mm:ss', 'it': 'hh:mm:ss', 'es': 'hh:mm:ss', 'pl': 'h:mm:ss', 'uk': 'hh:mm:ss', 'zh-cn': 'hh:mm:ss'};
Blockly.Words['convert_time_difference_tooltip'] = {'en': 'Converts milliseconds to a readable format', 'de': 'Millisekunden in ein lesbares Format umwandeln', 'ru': 'Преобразует миллисекунды в читаемый формат', 'pt': 'Converte milissegundos em um formato legível', 'nl': 'Converteert milliseconden aan een leesbaar formaat','fr': 'Convertir des millisecondes en format lisible', 'it': 'Converte i millisecondi in un formato leggibile', 'es': 'Convertir milisegundos en un formato legible', 'pl': 'Konwertuje milisekundy do gotowego formatu', 'uk': 'Конвертує мілісекунди до читабельного формату', 'zh-cn': '溶剂'};
// --- SENDTO --------------------------------------------------
Blockly.Words['Sendto'] = {'en': 'Sendto', 'de': 'Sendto', 'ru': 'Sendto', 'pt': 'Enviar para', 'nl': 'Verzenden naar', 'fr': 'Envoyer à', 'it': 'Inviare a', 'es': 'Enviar a', 'pl': 'Sendto', 'zh-cn': '发消息', 'uk': 'Відправити'};
// --- sendto sendto --------------------------------------------------
Blockly.Words['sendto_message'] = {'en': 'message', 'de': 'Meldung', 'ru': 'сообщение', 'pt': 'mensagem', 'nl': 'bericht', 'fr': 'message', 'it': 'Messaggio', 'es': 'mensaje', 'pl': 'message', 'zh-cn': '消息', 'uk': 'повідомлення'};
Blockly.Words['sendto_custom'] = {'en': 'sendTo', 'de': 'sendTo', 'ru': 'sendTo', 'pt': 'enviar para', 'nl': 'verzenden naar', 'fr': 'envoyer à', 'it': 'inviare a', 'es': 'enviar a', 'pl': 'sendTo', 'zh-cn': '发消息给', 'uk': 'відправити'};
Blockly.Words['sendto_custom_tooltip'] = {'en': 'Text to speech', 'de': 'Text zu Sprache', 'ru': 'Произнести сообщение', 'pt': 'Texto para Língua', 'nl': 'Tekst naar spraak', 'fr': 'Texte pour parler', 'it': 'Sintesi vocale', 'es': 'Texto a voz', 'pl': 'Text to speech', 'zh-cn': '给适配器发消息', 'uk': 'Перетворення тексту на мовлення'};
Blockly.Words['sendto_custom_help'] = {'en': 'sendto', 'de': 'sendto', 'ru': 'sendto', 'pt': 'enviar para', 'nl': 'verzenden naar', 'fr': 'envoyer à', 'it': 'inviare a', 'es': 'enviar a', 'pl': 'sendto', 'zh-cn': '发消息给', 'uk': 'відправити'};
Blockly.Words['sendto_custom_arguments'] = {'en': 'parameters', 'de': 'Parameter', 'ru': 'параметры', 'pt': 'parâmetros', 'nl': 'parameters', 'fr': 'paramètres', 'it': 'parametri', 'es': 'parámetros', 'pl': 'parameters', 'zh-cn': '参数组', 'uk': 'параметри'};
Blockly.Words['sendto_custom_command'] = {'en': 'command', 'de': 'Befehl', 'ru': 'команда', 'pt': 'comando', 'nl': 'opdracht', 'fr': 'commander', 'it': 'comando', 'es': 'mando', 'pl': 'command', 'zh-cn': '命令', 'uk': 'команда'};
Blockly.Words['sendto_custom_argument'] = {'en': 'parameter', 'de': 'Parameter', 'ru': 'параметр', 'pt': 'parâmetro', 'nl': 'parameter', 'fr': 'paramètre', 'it': 'parametro', 'es': 'parámetro', 'pl': 'parameter', 'zh-cn': '参数', 'uk': 'параметр'};
Blockly.Words['sendto_custom_arg_tooltip'] = {'en': 'Add parameter to sendTo object.', 'de': 'Parameter zum sendTo-Objekt hinzufügen', 'ru': 'Добавить параметр к sendTo объекту', 'pt': 'Adicionar parâmetros ao objeto "enviar para"', 'nl': 'Parameter toevoegen aan het object sendTo.', 'fr': 'Ajouter un paramètre à l\'objet sendTo.', 'it': 'Aggiungi parametro all\'oggetto sendTo.', 'es': 'Agregar parámetro al objeto sendTo.', 'pl': 'Add parameter to sendTo object.', 'zh-cn': '增加发送消息的参数', 'uk': 'Додайте параметр до об’єкта sendTo.'};
Blockly.Words['sendto_no_instances'] = {'en': 'No instances', 'de': 'Keine Instanzen', 'ru': 'Нет экземпляров', 'pt': 'Nenhuma instância', 'nl': 'No instances', 'fr': 'No instances', 'it': 'No instances', 'es': 'No instances', 'pl': 'No instances', 'zh-cn': '没有实例', 'uk': 'Жодних випадків'};
Blockly.Words['sendto_log'] = {'en': 'log level', 'de': 'Loglevel', 'ru': 'Протокол', 'pt': 'nível de log', 'nl': 'Log niveau', 'fr': 'niveau de journalisation', 'it': 'livello di registro', 'es': 'nivel de registro', 'pl': 'log level', 'zh-cn': '日志级别', 'uk': 'рівень журналу'};
Blockly.Words['sendto_log_none'] = {'en': 'none', 'de': 'keins', 'ru': 'нет', 'pt': 'nenhum', 'nl': 'geen', 'fr': 'aucun', 'it': 'nessuna', 'es': 'ninguna', 'pl': 'none', 'zh-cn': '不输出', 'uk': 'немає'};
Blockly.Words['sendto_log_info'] = {'en': 'info', 'de': 'info', 'ru': 'инфо', 'pt': 'informação', 'nl': 'info', 'fr': 'Info', 'it': 'Informazioni', 'es': 'información', 'pl': 'info', 'zh-cn': '必要信息', 'uk': 'інформація'};
Blockly.Words['sendto_log_debug'] = {'en': 'debug', 'de': 'debug', 'ru': 'debug', 'pt': 'depurar', 'nl': 'debug', 'fr': 'déboguer', 'it': 'mettere a punto', 'es': 'depurar', 'pl': 'debug', 'zh-cn': '调试信息', 'uk': 'відлагоджувати'};
Blockly.Words['sendto_log_warn'] = {'en': 'warning', 'de': 'warning', 'ru': 'warning', 'pt': 'atenção', 'nl': 'waarschuwing', 'fr': 'Attention', 'it': 'avvertimento', 'es': 'advertencia', 'pl': 'warning', 'zh-cn': '警告信息', 'uk': 'УВАГА'};
Blockly.Words['sendto_log_error'] = {'en': 'error', 'de': 'error', 'ru': 'ошибка', 'pt': 'erro', 'nl': 'fout', 'fr': 'Erreur', 'it': 'errore', 'es': 'error', 'pl': 'error', 'zh-cn': '错误信息', 'uk': 'помилка'};
// --- sendto gethistory --------------------------------------------------
Blockly.Words['sendto_gethistory_name'] = {'en': 'getHistory', 'de': 'getHistory', 'ru': 'getHistory', 'pt': 'getHistory', 'nl': 'getHistory', 'fr': 'getHistory', 'it': 'getHistory', 'es': 'getHistory', 'pl': 'getHistory', 'zh-cn': 'getHistory', 'uk': 'getHistory'};
Blockly.Words['sendto_gethistory_instance'] = {'en': 'Instance', 'de': 'Instanz', 'ru': 'Экземпляр', 'pt': 'instância', 'nl': 'Voorbeeld', 'fr': 'Exemple', 'it': 'Esempio', 'es': 'Instancia', 'pl': 'Instancja', 'zh-cn': '实例', 'uk': 'екземпляр'};
Blockly.Words['sendto_gethistory_oid'] = {'en': 'Object ID', 'de': 'Objekt ID', 'ru': 'ID объекта', 'pt': 'ID do objeto', 'nl': 'Object ID', 'fr': 'ID de l\'objet', 'it': 'ID oggetto', 'es': 'ID del objeto', 'pl': 'Object ID', 'zh-cn': '获取对象ID', 'uk': 'ID об\'єкта'};
Blockly.Words['sendto_gethistory_start'] = {'en': 'From (time)', 'de': 'Von (Zeit)', 'ru': 'Из (время)', 'pt': 'De (hora)', 'nl': 'Van..', 'fr': 'À partir de (temps)', 'it': 'Da (tempo)', 'es': 'De (tiempo)', 'pl': 'Od czasu (pol.)', 'zh-cn': '(时)', 'uk': 'Від (час)'};
Blockly.Words['sendto_gethistory_end'] = {'en': 'Until (time)', 'de': 'Bis (Zeit)', 'ru': 'До (время)', 'pt': 'Até (hora)', 'nl': 'Totdat', 'fr': 'Jusqu\'à (heure)', 'it': 'Fino a (tempo)', 'es': 'Hasta (tiempo)', 'pl': 'Do czasu (pol.)', 'zh-cn': '在此之前(时间)', 'uk': 'До (час)'};
Blockly.Words['sendto_gethistory_aggregate'] = {'en': 'Aggregate by', 'de': 'Aggregieren nach', 'ru': 'Агрегат', 'pt': 'Agregado por', 'nl': 'Aggregate', 'fr': 'Aggregate by', 'it': 'Aggregato da', 'es': 'Aggregate', 'pl': 'Aggregate (ang.)', 'zh-cn': '同意"', 'uk': 'Агрегати'};
Blockly.Words['sendto_gethistory_none'] = {'en': 'none', 'de': 'nichts', 'ru': 'нет', 'pt': 'nenhum', 'nl': 'geen', 'fr': 'aucun', 'it': 'nessuna', 'es': 'ninguna', 'pl': 'none', 'zh-cn': '不输出', 'uk': 'немає'};
Blockly.Words['sendto_gethistory_minimum'] = {'en': 'minimum', 'de': 'Minimum', 'ru': 'минимум', 'pt': 'mínimo', 'nl': 'minimum', 'fr': 'minimum', 'it': 'minimo', 'es': 'mínimo', 'pl': 'minimum', 'zh-cn': '最低限度', 'uk': 'мінімальний'};
Blockly.Words['sendto_gethistory_maximum'] = {'en': 'maximum', 'de': 'Maximum', 'ru': 'максимум', 'pt': 'máximo', 'nl': 'maximale', 'fr': 'maximum', 'it': 'massimo', 'es': 'máximo', 'pl': 'maksymalny', 'zh-cn': '最高限额', 'uk': 'максимум'};
Blockly.Words['sendto_gethistory_cnt'] = {'en': 'count', 'de': 'Anzahl', 'ru': 'счет', 'pt': 'contagem', 'nl': 'telt', 'fr': 'compte', 'it': 'conteggio', 'es': 'cuenta', 'pl': 'hrabia', 'zh-cn': '目 录', 'uk': 'кількість'};
Blockly.Words['sendto_gethistory_avg'] = {'en': 'average', 'de': 'Durchschnitt', 'ru': 'средний', 'pt': 'média', 'nl': 'avery', 'fr': 'moyenne', 'it': 'media media', 'es': 'promedio', 'pl': 'średnia', 'zh-cn': '平均值', 'uk': 'середній'};
Blockly.Words['sendto_gethistory_step'] = {'en': 'Step size', 'de': 'Schrittgröße', 'ru': 'Шаг', 'pt': 'Passo', 'nl': 'Stap in', 'fr': 'Étape', 'it': 'Passo', 'es': 'Paso', 'pl': 'Step', 'zh-cn': '步骤', 'uk': 'Крок'};
Blockly.Words['sendto_gethistory_ms'] = {'en': 'ms', 'de': 'ms', 'ru': 'мс', 'pt': 'ms', 'nl': 'Mevrouw', 'fr': 'Mme', 'it': 'Signorina', 'es': 'Sra', 'pl': 'ms', 'zh-cn': '毫秒', 'uk': 'РС'};
Blockly.Words['sendto_gethistory_sec'] = {'en': 'sec', 'de': 'Sek', 'ru': 'сек.', 'pt': 'seg', 'nl': 'sec', 'fr': 'seconde', 'it': 'secondo', 'es': 'segundo', 'pl': 'sec', 'zh-cn': '秒', 'uk': 'сек'};
Blockly.Words['sendto_gethistory_min'] = {'en': 'min', 'de': 'Min', 'ru': 'мин.', 'pt': 'min', 'nl': 'min', 'fr': 'min', 'it': 'min', 'es': 'min', 'pl': 'min', 'zh-cn': '分', 'uk': 'хв'};
Blockly.Words['sendto_gethistory_hour'] = {'en': 'hours', 'de': 'Stunden', 'ru': 'часы', 'pt': 'horas', 'nl': 'uur', 'fr': 'heures', 'it': 'ore', 'es': 'horas', 'pl': 'hours', 'zh-cn': '小时', 'uk': 'години'};
Blockly.Words['sendto_gethistory_day'] = {'en': 'days', 'de': 'Tage', 'ru': 'дней', 'pt': 'dias', 'nl': 'dagen', 'fr': 'jours', 'it': 'giorni', 'es': 'días', 'pl': 'dni', 'zh-cn': '日 日', 'uk': 'днів'};
Blockly.Words['sendto_gethistory_tooltip'] = {'en': 'Request information from database', 'de': 'Informationen aus der Datenbank anfordern', 'ru': 'Запрос информации из базы данных', 'pt': 'Solicitar informações de banco de dados', 'nl': 'Verzoek informatie uit de database', 'fr': 'Demande d\' information de la base de données', 'it': 'Richiedi informazioni dal database', 'es': 'Solicitar información de la base de datos', 'pl': 'Informacja z bazy danych', 'zh-cn': 'A. 要求数据库资料', 'uk': 'Запит інформації з бази даних'};
Blockly.Words['sendto_gethistory_help'] = {'en': 'gethistory', 'de': 'gethistory', 'ru': 'gethistory', 'pt': 'gethistory', 'nl': 'gethistory', 'fr': 'gethistory', 'it': 'gethistory', 'es': 'gethistory', 'pl': 'gethistory', 'zh-cn': 'gethistory', 'uk': 'gethistory'};
// --- SYSTEM --------------------------------------------------
Blockly.Words['System'] = {'en': 'System', 'de': 'System', 'ru': 'Системные', 'pt': 'Sistema', 'nl': 'Systeem', 'fr': 'Système', 'it': 'Sistema', 'es': 'Sistema', 'pl': 'System', 'zh-cn': '系统', 'uk': 'система'};
// --- system debug --------------------------------------------------
Blockly.Words['debug'] = {'en': 'debug output', 'de': 'debug output', 'ru': 'debug output', 'pt': 'saída de depuração', 'nl': 'debug output', 'fr': 'sortie de débogage', 'it': 'uscita di debug', 'es': 'salida de depuración', 'pl': 'debug output', 'zh-cn': '调试输出', 'uk': 'вихід налагодження'};
Blockly.Words['debug_tooltip'] = {'en': 'Debug', 'de': 'Debug', 'ru': 'Debug', 'pt': 'Depurar', 'nl': 'debug', 'fr': 'Déboguer', 'it': 'mettere a punto', 'es': 'Depurar', 'pl': 'Debug', 'zh-cn': '输出调试信息', 'uk': 'Відлагоджувати'};
Blockly.Words['debug_help'] = {'en': 'log---gives-out-the-message-into-log', 'de': 'log---gives-out-the-message-into-log', 'ru': 'log---gives-out-the-message-into-log', 'pt': 'log---gives-out-the-message-into-log', 'nl': 'log---gives-out-the-message-into-log', 'fr': 'log---gives-out-the-message-into-log', 'it': 'log---gives-out-the-message-into-log', 'es': 'log---gives-out-the-message-into-log', 'pl': 'log---gives-out-the-message-into-log', 'zh-cn': 'log---gives-out-the-message-into-log', 'uk': 'log---gives-out-the-message-into-log'};
// --- system comment --------------------------------------------------
Blockly.Words['comment'] = {'en': 'comment', 'de': 'Kommentar', 'ru': 'описание', 'pt': 'comentário', 'nl': 'commentaar', 'fr': 'commentaire', 'it': 'commento', 'es': 'comentario', 'pl': 'comment', 'zh-cn': '注释', 'uk': 'коментар'};
Blockly.Words['comment_tooltip'] = {'en': 'Enter comment to explain the code', 'de': 'Debug', 'ru': 'Debug', 'pt': 'Digite um comentário para explicar o código', 'nl': 'Voer een opmerking in om de code uit te leggen', 'fr': 'Entrez un commentaire pour expliquer le code', 'it': 'Inserisci il commento per spiegare il codice', 'es': 'Ingrese un comentario para explicar el código', 'pl': 'Enter comment to explain the code', 'zh-cn': '输入注释来解释代码', 'uk': 'Введіть коментар, щоб пояснити код'};
// --- system control --------------------------------------------------
Blockly.Words['control'] = {'en': 'сontrol', 'de': 'steuere', 'ru': 'установить', 'pt': 'controle', 'nl': 'сontrol', 'fr': 'contrôle', 'it': 'сontrol', 'es': 'ontrol', 'pl': 'сontrol', 'zh-cn': '将', 'uk': 'контроль'};
Blockly.Words['control_tooltip'] = {'en': 'Control state', 'de': 'Zustand steuern', 'ru': 'Установить состояние', 'pt': 'Controle o estado', 'nl': 'Controlestatus', 'fr': 'Etat de contrôle', 'it': 'Stato di controllo', 'es': 'Estado de control', 'pl': 'Control state', 'zh-cn': '控制对象', 'uk': 'Контрольний стан'};
Blockly.Words['control_help'] = {'en': 'setstate', 'de': 'setstate', 'ru': 'setstate', 'pt': 'setstate', 'nl': 'setstate', 'fr': 'setstate', 'it': 'setstate', 'es': 'setstate', 'pl': 'setstate', 'zh-cn': '设置状态', 'uk': 'setstate'};
Blockly.Words['control_with'] = {'en': 'with', 'de': 'mit', 'ru': 'на', 'pt': 'com', 'nl': 'met', 'fr': 'avec', 'it': 'con', 'es': 'con', 'pl': 'with', 'zh-cn': '的值设置为', 'uk': 'з'};
Blockly.Words['control_delay'] = {'en': 'with delay', 'de': 'mit Verzögerung', 'ru': 'с задержкой', 'pt': 'com atraso', 'nl': 'met vertraging', 'fr': 'avec du retard', 'it': 'con ritardo', 'es': 'con retraso', 'pl': 'with delay', 'zh-cn': '。要延时', 'uk': 'із запізненням'};
Blockly.Words['control_ms'] = {'en': 'ms', 'de': 'ms', 'ru': 'мс', 'pt': 'ms', 'nl': 'Mevrouw', 'fr': 'Mme', 'it': 'Signorina', 'es': 'Sra', 'pl': 'ms', 'zh-cn': '毫秒', 'uk': 'РС'};
Blockly.Words['control_sec'] = {'en': 'sec', 'de': 'Sek', 'ru': 'сек.', 'pt': 'seg', 'nl': 'sec', 'fr': 'seconde', 'it': 'secondo', 'es': 'segundo', 'pl': 'sec', 'zh-cn': '秒', 'uk': 'сек'};
Blockly.Words['control_min'] = {'en': 'min', 'de': 'Min', 'ru': 'мин.', 'pt': 'min', 'nl': 'min', 'fr': 'min', 'it': 'min', 'es': 'min', 'pl': 'min', 'zh-cn': '分', 'uk': 'хв'};
Blockly.Words['control_clear_running'] = {'en': ', clear running', 'de': ', löschen falls läuft', 'ru': ', остановить уже запущенный', 'pt': ', excluir se estiver executando', 'nl': ', helder rennen', 'fr': ', course libre', 'it': ', chiara corsa', 'es': ', claro funcionamiento', 'pl': ', clear running', 'zh-cn': '后执行。清除未运行的指令', 'uk': ', чіткий біг'};
// --- system toggle --------------------------------------------------
Blockly.Words['toggle'] = {'en': 'toggle', 'de': 'umschalten', 'ru': 'переключить', 'pt': 'alternar', 'nl': 'toggle', 'fr': 'basculer', 'it': 'ginocchiera', 'es': 'palanca', 'pl': 'toggle', 'zh-cn': '将', 'uk': 'перемикач'};
Blockly.Words['toggle_tooltip'] = {'en': 'Toggle state', 'de': 'Zustand umschalten', 'ru': 'Изменить состояние', 'pt': 'Alternar o estado', 'nl': 'Schakel de staat in', 'fr': 'Basculer l\'état', 'it': 'Attiva/disattiva lo stato', 'es': 'Alternar el estado', 'pl': 'Toggle the state', 'zh-cn': '切换状态', 'uk': 'Перемкнути стан'};
Blockly.Words['toggle_help'] = {'en': 'setstate', 'de': 'setstate', 'ru': 'setstate', 'pt': 'setstate', 'nl': 'setstate', 'fr': 'setstate', 'it': 'setstate', 'es': 'setstate', 'pl': 'setstate', 'zh-cn': '设置状态', 'uk': 'setstate'};
Blockly.Words['toggle_with'] = {'en': 'with', 'de': 'mit', 'ru': 'на', 'pt': 'com', 'nl': 'met', 'fr': 'avec', 'it': 'con', 'es': 'con', 'pl': 'with', 'zh-cn': '伴随', 'uk': 'з'};
Blockly.Words['toggle_delay'] = {'en': 'with delay', 'de': 'mit Verzögerung', 'ru': 'с задержкой', 'pt': 'com atraso', 'nl': 'met vertraging', 'fr': 'avec du retard', 'it': 'con ritardo', 'es': 'con retraso', 'pl': 'with delay', 'zh-cn': '的值切换。要延时', 'uk': 'із запізненням'};
Blockly.Words['toggle_ms'] = {'en': 'in ms', 'de': 'in ms', 'ru': 'в мс', 'pt': 'em ms', 'nl': 'in ms', 'fr': 'en ms', 'it': 'in ms', 'es': 'en ms', 'pl': 'in ms', 'zh-cn': '毫秒', 'uk': 'у мс'};
Blockly.Words['toggle_clear_running'] = {'en': ', clear running', 'de': ', löschen falls läuft', 'ru': ', остановить уже запущенный', 'pt': ', excluir se estiver executando', 'nl': ', helder rennen', 'fr': ', course libre', 'it': ', chiara corsa', 'es': ', claro funcionamiento', 'pl': ', clear running', 'zh-cn': '后执行。清除未运行的指令', 'uk': ', чіткий біг'};
// --- system update --------------------------------------------------
Blockly.Words['update'] = {'en': 'update', 'de': 'aktualisiere', 'ru': 'обновить', 'pt': 'atualizar', 'nl': 'bijwerken', 'fr': 'mettre à jour', 'it': 'aggiornare', 'es': 'actualizar', 'pl': 'update', 'zh-cn': '仅将', 'uk': 'оновлення'};
Blockly.Words['update_tooltip'] = {'en': 'Update state', 'de': 'Zustand aktualisieren', 'ru': 'Обновить состояние', 'pt': 'Atualizar estado', 'nl': 'Status bijwerken', 'fr': 'Mettre à jour', 'it': 'Stato di aggiornamento', 'es': 'Actualizar estado', 'pl': 'Update state', 'zh-cn': '仅更新值', 'uk': 'Стан оновлення'};
Blockly.Words['update_help'] = {'en': 'setstate', 'de': 'setstate', 'ru': 'setstate', 'pt': 'settate', 'nl': 'setstate', 'fr': 'setstate', 'it': 'setstate', 'es': 'setstate', 'pl': 'setstate', 'zh-cn': '设置状态', 'uk': 'setstate'};
Blockly.Words['update_with'] = {'en': 'with', 'de': 'mit', 'ru': 'с', 'pt': 'com', 'nl': 'met', 'fr': 'avec', 'it': 'con', 'es': 'con', 'pl': 'with', 'zh-cn': '的值更新为', 'uk': 'з'};
Blockly.Words['update_delay'] = {'en': 'with delay', 'de': 'mit Verzögerung', 'ru': 'с задержкой', 'pt': 'com atraso', 'nl': 'met vertraging', 'fr': 'avec du retard', 'it': 'con ritardo', 'es': 'con retraso', 'pl': 'with delay', 'zh-cn': '。要延时', 'uk': 'із запізненням'};
Blockly.Words['update_ms'] = {'en': 'in ms', 'de': 'in ms', 'ru': 'в мс', 'pt': 'em ms', 'nl': 'in ms', 'fr': 'en ms', 'it': 'in ms', 'es': 'en ms', 'pl': 'in ms', 'zh-cn': '毫秒', 'uk': 'у мс'};
// --- system direct --------------------------------------------------
Blockly.Words['direct'] = {'en': 'bind', 'de': 'binde', 'ru': 'связять', 'pt': 'ligar', 'nl': 'binden', 'fr': 'lier', 'it': 'legare', 'es': 'enlazar', 'pl': 'bind', 'zh-cn': '将', 'uk': 'зв\'язати'};
Blockly.Words['direct_tooltip'] = {'en': 'Bind two states with each other', 'de': 'Binde zwei Zustände miteinander', 'ru': 'Связать два состояния между собой', 'pt': 'Vincular dois estados juntos', 'nl': 'Bind twee toestanden met elkaar', 'fr': 'Liez deux états l\'un à l\'autre', 'it': 'Associare due stati tra loro', 'es': 'Enlazar dos estados entre sí', 'pl': 'Bind two states with each other', 'zh-cn': '将两个设备状态绑定在一起', 'uk': 'Зв\'яжіть два стани один з одним'};
Blockly.Words['direct_help'] = {'en': 'setstate', 'de': 'setstate', 'ru': 'setstate', 'pt': 'settate', 'nl': 'setstate', 'fr': 'setstate', 'it': 'setstate', 'es': 'setstate', 'pl': 'setstate', 'zh-cn': '设置状态', 'uk': 'setstate'};
Blockly.Words['direct_oid_src'] = {'en': 'Object', 'de': 'object', 'ru': 'объекта', 'pt': 'objeto', 'nl': 'Object', 'fr': 'd\'objet', 'it': 'oggetto', 'es': 'Object', 'pl': 'Object', 'zh-cn': 'Object', 'uk': 'Об\'єкт'};
Blockly.Words['direct_only_changes'] = {'en': 'only changes', 'de': 'nur Änderungen', 'ru': 'только изменения', 'pt': 'apenas mudanças', 'nl': 'alleen veranderingen', 'fr': 'seulement des changements', 'it': 'solo cambiamenti', 'es': 'solo cambios', 'pl': 'only changes', 'zh-cn': '。仅变化时更新', 'uk': 'тільки зміни'};
Blockly.Words['direct_oid_dst'] = {'en': 'with', 'de': 'mit', 'ru': 'c', 'pt': 'com', 'nl': 'met', 'fr': 'avec', 'it': 'con', 'es': 'con', 'pl': 'with', 'zh-cn': '的状态绑定到', 'uk': 'з'};
// --- system control --------------------------------------------------
Blockly.Words['control_ex'] = {'en': 'write', 'de': 'schreibe', 'ru': 'записать', 'pt': 'escreva', 'nl': 'schrijven', 'fr': 'écrire', 'it': 'Scrivi', 'es': 'escribir', 'pl': 'write', 'zh-cn': '发命令', 'uk': 'писати'};
Blockly.Words['control_ex_tooltip'] = {'en': 'Control state', 'de': 'Steuere Zustand', 'ru': 'Установить состояние', 'pt': 'Controle o estado', 'nl': 'Controlestatus', 'fr': 'Etat de contrôle', 'it': 'Stato di controllo', 'es': 'Estado de control', 'pl': 'Control state', 'zh-cn': '通用发命令块', 'uk': 'Контрольний стан'};
Blockly.Words['control_ex_control'] = {'en': 'сontrol', 'de': 'steuere', 'ru': 'установить', 'pt': 'controle', 'nl': 'сontrol', 'fr': 'contrôle', 'it': 'сontrol', 'es': 'ontrol', 'pl': 'сontrol', 'zh-cn': '控制设备', 'uk': 'контроль'};
Blockly.Words['control_ex_update'] = {'en': 'update', 'de': 'aktualisiere', 'ru': 'обновить', 'pt': 'atualizar', 'nl': 'bijwerken', 'fr': 'mettre à jour', 'it': 'aggiornare', 'es': 'actualizar', 'pl': 'update', 'zh-cn': '仅更新值', 'uk': 'оновлення'};
Blockly.Words['control_ex_delay'] = {'en': 'delay in ms', 'de': 'Verzögerung in ms', 'ru': 'Задержка в мс', 'pt': 'atraso em ms', 'nl': 'vertraging in ms', 'fr': 'retarder en ms', 'it': 'ritardo in ms', 'es': 'retraso en ms', 'pl': 'delay in ms', 'zh-cn': '以毫秒延时执行', 'uk': 'затримка в мс'};
Blockly.Words['control_ex_value'] = {'en': 'value', 'de': 'Wert', 'ru': 'значение', 'pt': 'valor', 'nl': 'waarde', 'fr': 'valeur', 'it': 'valore', 'es': 'valor', 'pl': 'value', 'zh-cn': '值', 'uk': 'значення'};
Blockly.Words['control_ex_clear_running'] = {'en': 'clear running', 'de': 'löschen falls läuft', 'ru': 'остановить уже запущенный', 'pt': 'excluir se estiver executando', 'nl': 'vrijlopen', 'fr': 'clair course', 'it': 'corsa libera', 'es': 'funcionamiento claro', 'pl': 'clear running', 'zh-cn': '清除未运行的指令', 'uk': 'чіткий біг'};
// --- system create --------------------------------------------------
Blockly.Words['create'] = {'en': 'create state', 'de': 'Datenpunkt erzeugen', 'ru': 'создать состояние', 'pt': 'Gerar ponto de dados', 'nl': 'creëer staat', 'fr': 'créer un état', 'it': 'creare stato', 'es': 'crear estado', 'pl': 'create state', 'zh-cn': '创建', 'uk': 'створити державу'};
Blockly.Words['create_jsState'] = {'en': 'jsState', 'de': 'jsState', 'ru': 'jsState', 'pt': 'jsState', 'nl': 'jsState', 'fr': 'jsState', 'it': 'jsState', 'es': 'jsState', 'pl': 'jsState', 'zh-cn': '全局状态', 'uk': 'jsState'};
Blockly.Words['create_oid'] = {'en': 'Object ID', 'de': 'Objekt ID', 'ru': 'ID объекта', 'pt': 'ID do objeto', 'nl': 'Object ID', 'fr': 'ID de l\'objet', 'it': 'ID oggetto', 'es': 'ID del objeto', 'pl': 'Object ID', 'zh-cn': '获取对象ID', 'uk': 'ID об\'єкта'};
Blockly.Words['create_init'] = {'en': 'Init value', 'de': 'Init-Wert', 'ru': 'Значение инициализации', 'pt': 'valor inicial', 'nl': 'Init waarde', 'fr': 'Valeur init', 'it': 'Valore init', 'es': 'Valor init', 'pl': 'Init value', 'zh-cn': '初始值', 'uk': 'Початкове значення'};
Blockly.Words['create_common'] = {'en': 'Common', 'de': 'Common', 'ru': 'Common', 'pt': 'Common', 'nl': 'Common', 'fr': 'Common', 'it': 'Common', 'es': 'Common', 'pl': 'Common', 'zh-cn': 'Common', 'uk': 'Поширений'};
Blockly.Words['create_type'] = {'en': 'State type', 'de': 'Zustandstyp', 'ru': 'Тип состояния', 'pt': 'Tipo de estado', 'nl': 'Staatstype', 'fr': 'Type d\'état', 'it': 'Tipo di stato', 'es': 'Tipo de estado', 'pl': 'Typ stanu', 'zh-cn': '状态类型', 'uk': 'Державний тип'};
Blockly.Words['create_type_string'] = {'en': 'string', 'de': 'Zeichenkette (string)', 'ru': 'Строка (string)', 'pt': 'string (string)', 'nl': 'Tekenreeks (string)', 'fr': 'chaîne (string)', 'it': 'Stringa (string)', 'es': 'cadena de caracteres (string)', 'pl': 'string (string)', 'zh-cn': '串 (string)', 'uk': 'рядок (string)'};
Blockly.Words['create_type_number'] = {'en': 'number', 'de': 'Zahl (number)', 'ru': 'Число (number)', 'pt': 'número (number)', 'nl': 'getal (number)', 'fr': 'nombre (number)', 'it': 'Numero (number)', 'es': 'numero (number)', 'pl': 'numer (number)', 'zh-cn': '数 (number)', 'uk': 'номер (number)'};
Blockly.Words['create_type_boolean'] = {'en': 'boolean', 'de': 'Logikwert (boolean)', 'ru': 'Логическая переменная (boolean)', 'pt': 'valor lógico (boolean)', 'nl': 'boolean (boolean)', 'fr': 'booléen (boolean)', 'it': 'Booleano (boolean)', 'es': 'booleano (boolean)', 'pl': 'boolean (boolean)', 'zh-cn': '布尔 (boolean)', 'uk': 'логічний (boolean)'};
Blockly.Words['create_type_json'] = {'en': 'json', 'de': 'json', 'ru': 'json', 'pt': 'json', 'nl': 'json', 'fr': 'json', 'it': 'json', 'es': 'json', 'pl': 'json', 'zh-cn': 'json', 'uk': 'json'};
Blockly.Words['create_type_object'] = {'en': 'object', 'de': 'Objekt (object)', 'ru': 'объекта (object)', 'pt': 'objeto (object)', 'nl': 'Objekt (object)', 'fr': 'd\'objet (object)', 'it': 'Oggetto (object)', 'es': 'oggetto (object)', 'pl': 'obiekt (object)', 'zh-cn': '设备 (object)', 'uk': 'Об\'єкт (object)'};
Blockly.Words['create_type_array'] = {'en': 'array', 'de': 'Liste (array)', 'ru': 'Массив (array)', 'pt': 'campo (array)', 'nl': 'veld (array)', 'fr': 'tableau (array)', 'it': 'Vettore (array)', 'es': 'campo (array)', 'pl': 'tablica (array)', 'zh-cn': '排列 (array)', 'uk': 'масив (array)'};
Blockly.Words['create_readable'] = {'en': 'Is readable', 'de': 'ist lesbar', 'ru': 'Является читаемым', 'pt': 'O estado é legível', 'nl': 'Staat leesbaar', 'fr': 'L\'état est-il lisible', 'it': 'È leggibile dallo stato', 'es': 'Es estado legible', 'pl': 'Czy stan jest czytelny', 'zh-cn': '状态是否可读', 'uk': 'Чи читається стан'};
Blockly.Words['create_writeable'] = {'en': 'Is writable', 'de': 'ist beschreibbar', 'ru': 'Доступно для записи', 'pt': 'É estado gravável', 'nl': 'Staat beschrijfbaar', 'fr': 'L\'état est-il accessible en écriture', 'it': 'È stato scrivibile', 'es': 'Es el estado escribible', 'pl': 'Czy stan jest zapisywalny', 'zh-cn': '状态是否可写', 'uk': 'Доступний для запису в стані'};
Blockly.Words['create_tooltip'] = {'en': 'create state', 'de': 'Datenpunkt erzeugen', 'ru': 'создать состояние', 'pt': 'Gerar ponto de dados', 'nl': 'creëer staat', 'fr': 'créer un état', 'it': 'creare stato', 'es': 'crear estado', 'pl': 'create state', 'zh-cn': '创建全局可见的状态变量', 'uk': 'створити державу'};
Blockly.Words['create_help'] = {'en': 'createstate', 'de': 'createstate', 'ru': 'createstate', 'pt': 'createstate', 'nl': 'createstate', 'fr': 'createstate', 'it': 'createstate', 'es': 'createstate', 'pl': 'createstate', 'zh-cn': 'createstate', 'uk': 'createstate'};
// --- system get --------------------------------------------------
Blockly.Words['get_value'] = {'en': 'Get state value', 'de': 'Zustandswert nehmen', 'ru': 'Взять значение состояния', 'pt': 'Tome o valor do estado', 'nl': 'Krijg statuswaarde', 'fr': 'Obtenir la valeur de l\'état', 'it': 'Ottieni valore statale', 'es': 'Obtener valor de estado', 'pl': 'Get state value', 'zh-cn': '获取状态的值', 'uk': 'Отримати державне значення'};
Blockly.Words['get_value_OID'] = {'en': 'of Object ID', 'de': 'vom Objekt ID', 'ru': 'у объекта', 'pt': 'pela ID do objeto', 'nl': 'van Object ID', 'fr': 'd\'identifiant d\'objet', 'it': 'di ID oggetto', 'es': 'de Object ID', 'pl': 'of Object ID', 'zh-cn': '来自于', 'uk': 'ідентифікатора об’єкта'};
Blockly.Words['get_value_tooltip'] = {'en': 'Select object ID with dialog', 'de': 'Objekt ID mit Dialog selektieren', 'ru': 'Выбрать ID объекта', 'pt': 'Selecione ID do objeto com diálogo', 'nl': 'Selecteer object-ID met dialoogvenster', 'fr': 'Sélectionnez l\'ID d\'objet avec la boîte de dialogue', 'it': 'Seleziona ID oggetto con finestra di dialogo', 'es': 'Seleccionar ID de objeto con diálogo', 'pl': 'Select object ID with dialog', 'zh-cn': '使用对话框选择对象ID', 'uk': 'Виберіть ідентифікатор об’єкта за допомогою діалогового вікна'};
Blockly.Words['get_value_help'] = {'en': 'getstate', 'de': 'getstate', 'ru': 'getstate', 'pt': 'getstate', 'nl': 'getstate', 'fr': 'getstate', 'it': 'GetState', 'es': 'Gettate', 'pl': 'getstate', 'zh-cn': '获取对象的指定属性值', 'uk': 'getstate'};
Blockly.Words['get_value_val'] = {'en': 'Value', 'de': 'Wert', 'ru': 'Значение', 'pt': 'Valor', 'nl': 'Waarde', 'fr': 'Valeur', 'it': 'Valore', 'es': 'Valor', 'pl': 'Value', 'zh-cn': '值', 'uk': 'Значення'};
Blockly.Words['get_value_ack'] = {'en': 'Acknowledge', 'de': 'bestätigt', 'ru': 'Подтверждение', 'pt': 'confirmado', 'nl': 'Erkennen', 'fr': 'Reconnaître', 'it': 'Riconoscere', 'es': 'Reconocer', 'pl': 'Acknowledge', 'zh-cn': '是否应答', 'uk': 'Визнати'};
Blockly.Words['get_value_ts'] = {'en': 'Timestamp', 'de': 'Zeitstempel', 'ru': 'Время', 'pt': 'Timestamp', 'nl': 'tijdstempel', 'fr': 'Horodatage', 'it': 'timestamp', 'es': 'Marca de tiempo', 'pl': 'Timestamp', 'zh-cn': '当前时间戳', 'uk': 'Мітка часу'};
Blockly.Words['get_value_lc'] = {'en': 'Last change ', 'de': 'Letze Änderung', 'ru': 'Последнее изменеие', 'pt': 'Última mudança', 'nl': 'Laatste wijziging', 'fr': 'Dernier changement', 'it': 'Ultima modifica', 'es': 'Ultimo cambio', 'pl': 'Last change ', 'zh-cn': '上次变更时间', 'uk': 'Остання зміна'};
Blockly.Words['get_value_q'] = {'en': 'Quality', 'de': 'Qualität', 'ru': 'Качество', 'pt': 'Qualidade', 'nl': 'Kwaliteit', 'fr': 'Qualité', 'it': 'Qualità', 'es': 'Calidad', 'pl': 'Quality', 'zh-cn': '状态质量', 'uk': 'якість'};
Blockly.Words['get_value_comment'] = {'en': 'Value comment', 'de': 'Wertkommentar', 'ru': 'Значение комментария', 'pt': 'Comentário de valor', 'nl': 'Waarde opmerking', 'fr': 'Commentaire sur la valeur', 'it': 'Commento di valore', 'es': 'Comentario de valor', 'pl': 'Wartość komentarza', 'zh-cn': '值评论', 'uk': 'Коментар вартості'};
Blockly.Words['get_value_from'] = {'en': 'Source', 'de': 'Quelle', 'ru': 'Происхождение', 'pt': 'Fonte', 'nl': 'Bron', 'fr': 'La source', 'it': 'fonte', 'es': 'Fuente', 'pl': 'Source', 'zh-cn': '上次变更发起者', 'uk': 'Джерело'};
Blockly.Words['get_common_name'] = {'en': 'Object name', 'de': 'Objektname', 'ru': 'Имя объекта', 'pt': 'Nome do objeto', 'nl': 'Object naam', 'fr': 'Nom de l\'objet', 'it': 'Nome oggetto', 'es': 'Nombre del objeto', 'pl': 'Nazwa obiektu', 'zh-cn': '对象名称', 'uk': 'Назва об\'єкта'};
Blockly.Words['get_common_desc'] = {'en': 'Object description', 'de': 'Objektbeschreibung', 'ru': 'Описание объекта', 'pt': 'Descrição do objeto', 'nl': 'Objectbeschrijving', 'fr': 'Descriptif de l\'objet', 'it': 'Descrizione dell\'oggetto', 'es': 'Descripción del objeto', 'pl': 'Opis obiektu', 'zh-cn': '对象描述', 'uk': 'Опис об\'єкта'};
Blockly.Words['get_common_unit'] = {'en': 'State unit', 'de': 'Maßeinheit', 'ru': 'Единица измерения', 'pt': 'unidade estadual', 'nl': 'Staatseenheid', 'fr': 'Unité d\'état', 'it': 'Unità statale', 'es': 'unidad estatal', 'pl': 'Jednostka państwowa', 'zh-cn': '国家单位', 'uk': 'Державна одиниця'};
Blockly.Words['get_common_role'] = {'en': 'Object role', 'de': 'Objektrolle', 'ru': 'Роль объекта', 'pt': 'função do objeto', 'nl': 'Object rol', 'fr': 'Rôle d\'objet', 'it': 'Ruolo dell\'oggetto', 'es': 'Rol de objeto', 'pl': 'Rola obiektu', 'zh-cn': '对象角色', 'uk': 'Об\'єктна роль'};
Blockly.Words['get_common_state_type'] = {'en': 'State type', 'de': 'Zustandstyp', 'ru': 'Тип состояния', 'pt': 'tipo de estado', 'nl': 'Type staat', 'fr': 'Type d\'état', 'it': 'Tipo di stato', 'es': 'tipo de estado', 'pl': 'Typ stanu', 'zh-cn': '状态类型', 'uk': 'Державний тип'};
Blockly.Words['get_common_read'] = {'en': 'Is state readable', 'de': 'Zustand ist lesbar', 'ru': 'Является читаемым', 'pt': 'O estado é legível', 'nl': 'Staat leesbaar', 'fr': 'L\'état est-il lisible', 'it': 'È leggibile dallo stato', 'es': 'Es estado legible', 'pl': 'Czy stan jest czytelny', 'zh-cn': '状态是否可读', 'uk': 'Чи читається стан'};
Blockly.Words['get_common_write'] = {'en': 'Is state writable', 'de': 'Zustand ist beschreibbar', 'ru': 'Доступно для записи', 'pt': 'É estado gravável', 'nl': 'Staat beschrijfbaar', 'fr': 'L\'état est-il accessible en écriture', 'it': 'È stato scrivibile', 'es': 'Es el estado escribible', 'pl': 'Czy stan jest zapisywalny', 'zh-cn': '状态是否可写', 'uk': 'Доступний для запису в стані'};
Blockly.Words['get_value_async'] = {'en': 'Get state value', 'de': 'Zustandswert nehmen', 'ru': 'Взять значение состояния', 'pt': 'Tome o valor do estado', 'nl': 'Krijg statuswaarde', 'fr': 'Obtenir la valeur de l\'état', 'it': 'Ottieni valore statale', 'es': 'Obtener valor de estado', 'pl': 'Get state value', 'zh-cn': '获取状态的值', 'uk': 'Отримати державне значення'};
Blockly.Words['get_object'] = {'en': 'Object', 'de': 'Objekt', 'ru': 'Объект', 'pt': 'Objeto', 'nl': 'Doel', 'fr': 'Objet', 'it': 'Oggetto', 'es': 'Objeto', 'pl': 'Obiekt', 'zh-cn': '对象', 'uk': 'Об\'єкт'};
Blockly.Words['get_object_tooltip'] = {'en': 'Get object defition', 'de': 'Objektdefition laden', 'ru': 'Получить недоверие объекта', 'pt': 'Obter desafio de objetos', 'nl': 'Haal object defectie', 'fr': 'Défition d\'objets', 'it': 'Ottenere defition oggetto', 'es': 'Obtener desafío de objetos', 'pl': 'Definicja obiektu', 'zh-cn': '目的和宗旨', 'uk': 'Отримати дефекцію об\'єкта'};
Blockly.Words['get_object_help'] = {'en': 'getobject', 'de': 'getobject', 'ru': 'getobject', 'pt': 'getobject', 'nl': 'getobject', 'fr': 'getobject', 'it': 'getobject', 'es': 'getobject', 'pl': 'getobject', 'zh-cn': 'getobject', 'uk': 'getobject'};
// --- system field --------------------------------------------------
Blockly.Words['field_oid'] = {'en': 'Select OID', 'de': 'Datenpunkt auswählen', 'ru': 'создать состояние', 'pt': 'Selecionar ponto de dados', 'nl': 'Selecteer OID', 'fr': 'Sélectionnez OID', 'it': 'Seleziona OID', 'es': 'Seleccionar OID', 'pl': 'Select OID', 'zh-cn': '选择对象ID', 'uk': 'Виберіть OID'};
Blockly.Words['field_oid_OID'] = {'en': 'Object ID', 'de': 'Objekt ID', 'ru': 'ID объекта', 'pt': 'ID do objeto', 'nl': 'Object ID', 'fr': 'ID de l\'objet', 'it': 'ID oggetto', 'es': 'ID del objeto', 'pl': 'Object ID', 'zh-cn': '获取对象ID', 'uk': 'ID об\'єкта'};
Blockly.Words['field_oid_OID_meta'] = {'en': 'Object ID (meta)', 'de': 'Objekt ID (meta)', 'ru': 'ID объекта (meta)', 'pt': 'ID do objeto (meta)', 'nl': 'Object ID (meta)', 'fr': 'ID de l\'objet (meta)', 'it': 'ID oggetto (meta)', 'es': 'ID del objeto (meta)', 'pl': 'Object ID (meta)', 'zh-cn': '获取对象ID (meta)', 'uk': 'ID об\'єкта (meta)'};
Blockly.Words['field_oid_OID_script'] = {'en': 'Object ID (script)', 'de': 'Objekt ID (script)', 'ru': 'ID объекта (script)', 'pt': 'ID do objeto (script)', 'nl': 'Object ID (script)', 'fr': 'ID de l\'objet (script)', 'it': 'ID oggetto (script)', 'es': 'ID del objeto (script)', 'pl': 'Object ID (script)', 'zh-cn': '获取对象ID (script)', 'uk': 'ID об\'єкта (script)'};
Blockly.Words['field_oid_tooltip'] = {'en': 'Select object ID with dialog', 'de': 'Objekt ID mit Dialog selektieren', 'ru': 'Выбрать ID объекта', 'pt': 'Selecione ID do objeto com diálogo', 'nl': 'Selecteer object-ID met dialoogvenster', 'fr': 'Sélectionnez l\'ID d\'objet avec la boîte de dialogue', 'it': 'Seleziona ID oggetto con finestra di dialogo', 'es': 'Seleccionar ID de objeto con diálogo', 'pl': 'Select object ID with dialog', 'zh-cn': '使用对话框选择对象ID', 'uk': 'Виберіть ідентифікатор об’єкта за допомогою діалогового вікна'};
// --- system get --------------------------------------------------
Blockly.Words['get_attr'] = {'en': 'Get attribute', 'de': 'Attribut erhalten', 'ru': 'Получить атрибут', 'pt': 'Obter atributo', 'nl': 'Attribuut ophalen', 'fr': 'Obtenir l\'attribut', 'it': 'Ottieni attributo', 'es': 'Obtener atributo', 'pl': 'Get attribute', 'zh-cn': '获取属性', 'uk': 'Отримати атрибут'};
Blockly.Words['get_attr_path'] = {'en': 'Attribute', 'de': 'Attribut', 'ru': 'Атрибут', 'pt': 'Atributo', 'nl': 'Attribuut', 'fr': 'Attribut', 'it': 'Attributo', 'es': 'Atributo', 'pl': 'Attribute', 'zh-cn': '获取', 'uk': 'Атрибут'};
Blockly.Words['get_attr_by'] = {'en': 'of Object', 'de': 'vom Objekt', 'ru': 'у объекта', 'pt': 'do objeto', 'nl': 'van Object', 'fr': 'd\'objet', 'it': 'di oggetto', 'es': 'de Object', 'pl': 'of Object', 'zh-cn': '属性,来自于对象', 'uk': 'об\'єкта'};
Blockly.Words['get_attr_tooltip'] = {'en': 'Get attribute of object or JSON by path, like: \'attr1.attr\'', 'de': 'Erhalte Attribut des Objekts oder JSON nach Pfad, wie: \'attr1.attr\'', 'ru': 'Получить атрибут объекта или JSON по пути, например: \'attr1.attr\'', 'pt': 'Obter atributo do objeto ou JSON pelo caminho, como: \'attr1.attr\'', 'nl': 'Krijg een attribuut van het object of JSON per pad, zoals: \'attr1.attr\'', 'fr': 'Obtenir l\'attribut d\'objet ou JSON par chemin, comme: \'attr1.attr\'', 'it': 'Ottieni attributo di oggetto o JSON per percorso, ad esempio: \'attr1.attr\'', 'es': 'Obtenga el atributo de objeto o JSON por ruta, como: \'attr1.attr\'', 'pl': 'Get attribute of object or JSON by path, like: \'attr1.attr\'', 'zh-cn': '通过规则获取对象或JSON的属性,如:\'attr1.attr\'', 'uk': 'Отримати атрибут об\'єкта або JSON за шляхом, наприклад: \'attr1.attr\''};
Blockly.Words['get_attr_help'] = {'en': 'getattr', 'de': 'getattr', 'ru': 'getattr', 'pt': 'getattr', 'nl': 'getattr', 'fr': 'getattr', 'it': 'getattr', 'es': 'getattr', 'pl': 'getattr', 'zh-cn': '获取属性', 'uk': 'getattr'};
// --- system text --------------------------------------------------
Blockly.Words['text_newline'] = {'en': 'New line', 'de': 'Neue Zeile', 'ru': 'Новая строка', 'pt': 'Nova linha', 'nl': 'Nieuwe lijn', 'fr': 'Nouvelle ligne', 'it': 'Nuova linea', 'es': 'Nueva línea', 'pl': 'New line', 'zh-cn': '换行', 'uk': 'Нова лінія'};
Blockly.Words['text_newline_tooltip'] = {'en': 'Places new line in text', 'de': 'Platziert eine neue Zeile im Text', 'ru': 'Размещение новой строки в тексте', 'pt': 'Coloca nova linha no texto', 'nl': 'Plaatst nieuwe regel in tekst', 'fr': 'Place une nouvelle ligne dans le texte', 'it': 'Inserisce una nuova riga nel testo', 'es': 'Coloca una nueva línea en el texto', 'pl': 'Places new line in text', 'zh-cn': '在文本中添加换行', 'uk': 'Розміщує новий рядок у тексті'};
// --- system math --------------------------------------------------
Blockly.Words['math_rndfixed_round'] = {'en': 'Round', 'de': 'Runde', 'ru': 'Раунд', 'pt': 'Arredondar', 'nl': 'Afronden', 'fr': 'Arrondir', 'it': 'Arrotondare', 'es': 'Redondea', 'pl': 'Round', 'zh-cn': '约', 'uk': 'Круглий'};
Blockly.Words['math_rndfixed_to'] = {'en': 'to', 'de': 'auf', 'ru': 'в', 'pt': 'para', 'nl': 'naar', 'fr': 'à', 'it': 'a', 'es': 'a', 'pl': 'to', 'zh-cn': '至', 'uk': 'до'};
Blockly.Words['math_rndfixed_decplcs'] = {'en': 'decimal places', 'de': 'Nachkommastellen', 'ru': 'десятичные знаки', 'pt': 'casas decimais', 'nl': 'plaatsen na de komma', 'fr': 'décimales', 'it': 'decimali', 'es': 'lugares decimales', 'pl': 'decimal places', 'zh-cn': '小数位', 'uk': 'знаки після коми'};
Blockly.Words['math_rndfixed_tooltip'] = {'en': 'Rounds value to n decimal places', 'de': 'Rundet den Wert auf n Dezimalstellen', 'ru': 'Значение раундов до n знаков после запятой', 'pt': 'Arredonda o valor para n casas decimais', 'nl': 'Rondt waarde af naar n decimale plaatsen', 'fr': 'Arrondit la valeur à n décimales', 'it': 'Arrotonda il valore in n posizioni decimali', 'es': 'Redondea el valor a n lugares decimales', 'pl': 'Rounds value to n decimal places', 'zh-cn': '将值舍入为n个小数位', 'uk': 'Округлює значення до n знаків після коми'};
// --- TIME --------------------------------------------------
Blockly.Words['Time'] = {'en': 'Date and Time', 'de': 'Datum und Zeit', 'ru': 'Дата и время', 'pt': 'Data e hora', 'nl': 'Datum en tijd', 'fr': 'Date et l\'heure', 'it': 'Data e ora', 'es': 'Fecha y hora', 'pl': 'Date and Time', 'zh-cn': '日期和时间', 'uk': 'Дата і час'};
// --- time time --------------------------------------------------
Blockly.Words['time_compare_ex'] = {'en': 'Actual time', 'de': 'Aktuelle Zeit', 'ru': 'Текущее время', 'pt': 'Hora atual', 'nl': 'Werkelijke tijd', 'fr': 'Heure actuelle', 'it': 'Tempo reale', 'es': 'Tiempo actual', 'pl': 'Actual time', 'zh-cn': '当前时间', 'uk': 'Фактичний час'};
Blockly.Words['time_compare_custom_ex'] = {'en': 'Custom time', 'de': 'Zeit', 'ru': 'Время', 'pt': 'Tempo', 'nl': 'Aangepaste tijd', 'fr': 'Temps personnalisé', 'it': 'Tempo personalizzato', 'es': 'Hora personalizada', 'pl': 'Custom time', 'zh-cn': '设定时间', 'uk': 'Індивідуальний час'};
Blockly.Words['time_compare_is_ex'] = {'en': 'is', 'de': 'ist', 'ru': ' ', 'pt': 'é', 'nl': 'is', 'fr': 'est', 'it': 'è', 'es': 'es', 'pl': 'is', 'zh-cn': '是', 'uk': 'є'};
Blockly.Words['time_compare_ex_custom'] = {'en': 'time', 'de': 'Zeit', 'ru': 'Время', 'pt': 'Tempo', 'nl': 'tijd', 'fr': 'temps', 'it': 'tempo', 'es': 'hora', 'pl': 'time', 'zh-cn': '时间', 'uk': 'час'};
Blockly.Words['time_compare_ex_tooltip'] = {'en': 'Compare time', 'de': 'Zeit vergleichen', 'ru': 'Сравнить время', 'pt': 'Compare o tempo', 'nl': 'Vergelijk tijd', 'fr': 'Comparer le temps', 'it': 'Confronta il tempo', 'es': 'Compara el tiempo', 'pl': 'Compare time', 'zh-cn': '比较时间', 'uk': 'Порівняти час'};
Blockly.Words['time_compare_ex_help'] = {'en': 'https://github.com/ioBroker/ioBroker.telegram/blob/master/README.md', 'de': 'https://github.com/ioBroker/ioBroker.telegram/blob/master/README.md', 'ru': 'https://github.com/ioBroker/ioBroker.telegram/blob/master/README.md', 'pt': 'https://github.com/ioBroker/ioBroker.telegram/blob/master/README.md', 'nl': 'https://github.com/ioBroker/ioBroker.telegram/blob/master/README.md', 'fr': 'https://github.com/ioBroker/ioBroker.telegram/blob/master/README.md', 'it': 'https://github.com/ioBroker/ioBroker.telegram/blob/master/README.md', 'es': 'https://github.com/ioBroker/ioBroker.telegram/blob/master/README.md', 'pl': 'https://github.com/ioBroker/ioBroker.telegram/blob/master/README.md', 'zh-cn': 'https://github.com/ioBroker/ioBroker.telegram/blob/master/README.md', 'uk': 'https://github.com/ioBroker/ioBroker.telegram/blob/master/README.md'};
Blockly.Words['time_compare'] = {'en': 'Actual time is', 'de': 'Aktuelle Zeit ist', 'ru': 'Время ', 'pt': 'O horário atual é', 'nl': 'De werkelijke tijd is', 'fr': 'L\'heure actuelle est', 'it': 'Il tempo reale è', 'es': 'El tiempo real es', 'pl': 'Actual time is', 'zh-cn': '当前时间是', 'uk': 'Фактичний час'};
Blockly.Words['time_compare_tooltip'] = {'en': 'Compare current time', 'de': 'Vergleiche mit aktueller Zeit', 'ru': 'Сравнить текущее время', 'pt': 'Compare com o horário atual', 'nl': 'Vergelijk de huidige tijd', 'fr': 'Comparer l\'heure actuelle', 'it': 'Confronta l\'ora corrente', 'es': 'Compara la hora actual', 'pl': 'Compare current time', 'zh-cn': '比较当前时间', 'uk': 'Порівняти поточний час'};
Blockly.Words['time_compare_help'] = {'en': 'https://github.com/ioBroker/ioBroker.telegram/blob/master/README.md', 'de': 'https://github.com/ioBroker/ioBroker.telegram/blob/master/README.md', 'ru': 'https://github.com/ioBroker/ioBroker.telegram/blob/master/README.md', 'pt': 'https://github.com/ioBroker/ioBroker.telegram/blob/master/README.md', 'nl': 'https://github.com/ioBroker/ioBroker.telegram/blob/master/README.md', 'fr': 'https://github.com/ioBroker/ioBroker.telegram/blob/master/README.md', 'it': 'https://github.com/ioBroker/ioBroker.telegram/blob/master/README.md', 'es': 'https://github.com/ioBroker/ioBroker.telegram/blob/master/README.md', 'pl': 'https://github.com/ioBroker/ioBroker.telegram/blob/master/README.md', 'zh-cn': 'https://github.com/ioBroker/ioBroker.telegram/blob/master/README.md', 'uk': 'https://github.com/ioBroker/ioBroker.telegram/blob/master/README.md'};
Blockly.Words['time_compare_lt'] = {'en': 'less than', 'de': 'kleiner als', 'ru': 'меньше чем', 'pt': 'menor que', 'nl': 'minder dan', 'fr': 'moins que', 'it': 'meno di', 'es': 'menos que', 'pl': 'less than', 'zh-cn': '小于', 'uk': 'менше ніж'};
Blockly.Words['time_compare_le'] = {'en': 'equal to or less than', 'de': 'gleich oder kleiner als', 'ru': 'равно или меньше чем', 'pt': 'igual ou menor do que', 'nl': 'gelijk aan of minder dan', 'fr': 'égal ou inférieur à', 'it': 'uguale o inferiore a', 'es': 'igual o menor que', 'pl': 'equal to or less than', 'zh-cn': '小于等于', 'uk': 'дорівнює або менше'};
Blockly.Words['time_compare_gt'] = {'en': 'greater than', 'de': 'größer als', 'ru': 'больше чем', 'pt': 'maior que', 'nl': 'groter dan', 'fr': 'plus grand que', 'it': 'più grande di', 'es': 'mas grande que', 'pl': 'greater than', 'zh-cn': '大于', 'uk': 'більше, ніж, величніше ніж, крутіший за'};
Blockly.Words['time_compare_ge'] = {'en': 'equal to or greater than', 'de': 'gleich oder größer als', 'ru': 'равно или больше чем', 'pt': 'igual ou maior do que', 'nl': 'gelijk aan of groter dan', 'fr': 'égal ou supérieur à', 'it': 'uguale o maggiore di', 'es': 'igual o mayor que', 'pl': 'equal to or greater than', 'zh-cn': '大于等于', 'uk': 'дорівнює або перевищує'};
Blockly.Words['time_compare_eq'] = {'en': 'equal to', 'de': 'gleich mit', 'ru': 'равно', 'pt': 'igual a', 'nl': 'gelijk aan', 'fr': 'égal à', 'it': 'uguale a', 'es': 'igual a', 'pl': 'equal to', 'zh-cn': '等于', 'uk': 'дорівнює'};
Blockly.Words['time_compare_bw'] = {'en': 'between', 'de': 'zwischen', 'ru': 'между', 'pt': 'entre', 'nl': 'tussen', 'fr': 'entre', 'it': 'fra', 'es': 'Entre', 'pl': 'between', 'zh-cn': '之间', 'uk': 'між'};
Blockly.Words['time_compare_nb'] = {'en': 'not between', 'de': 'nicht zwischen', 'ru': 'не между', 'pt': 'não entre', 'nl': 'niet tussen', 'fr': 'pas entre', 'it': 'non in mezzo', 'es': 'no entre', 'pl': 'not between', 'zh-cn': '之外', 'uk': 'не між'};
Blockly.Words['time_compare_and'] = {'en': 'and', 'de': 'und', 'ru': 'и', 'pt': 'e', 'nl': 'en', 'fr': 'et', 'it': 'e', 'es': 'y', 'pl': 'and', 'zh-cn': '和', 'uk': 'і'};
Blockly.Words['time_get'] = {'en': 'Actual time as', 'de': 'Aktuelle Zeit als', 'ru': 'Время ', 'pt': 'Horário atual como', 'nl': 'Werkelijke tijd als', 'fr': 'Heure réelle sous', 'it': 'Tempo reale come', 'es': 'Tiempo real como', 'pl': 'Actual time as', 'zh-cn': '获取当前时间,格式为', 'uk': 'Фактичний час як'};
Blockly.Words['time_get_default_format'] = {'en': 'YYYY.MM.DD hh:mm:ss.sss', 'de': 'JJJJ.MM.TT SS:mm:ss.sss', 'ru': 'ГГГГ.ММ.ДД чч:мм:сс.ссс', 'pt': 'aaaa.mm.dd hh:mm:ss.sss', 'nl': 'JJJJ.MM.DD uu: mm: ss.sss', 'fr': 'YYYY.MM.DD hh: mm: ss.sss', 'it': 'YYYY.MM.DD hh: mm: ss.sss', 'es': 'YYYY.MM.DD hh: mm: ss.sss', 'pl': 'YYYY.MM.DD hh:mm:ss.sss', 'zh-cn': 'YYYY.MM.DD hh:mm:ss.sss', 'uk': 'РРРР.ММ.ДД гг:хх:сс.сс'};
Blockly.Words['time_get_anyInstance'] = {'en': 'all instances', 'de': 'Alle Instanzen', 'ru': 'На все драйвера', 'pt': 'Todas as instâncias', 'nl': 'alle instanties', 'fr': 'toutes les instances', 'it': 'tutte le istanze', 'es': 'todas las instancias', 'pl': 'all instances', 'zh-cn': '所有实例', 'uk': 'всі екземпляри'};
Blockly.Words['time_get_tooltip'] = {'en': 'Send message to telegram', 'de': 'Sende eine Meldung über Telegram', 'ru': 'Послать сообщение через Telegram', 'pt': 'Enviar mensagem pelo Telegram', 'nl': 'Stuur bericht naar telegram', 'fr': 'Envoyer un message au télégramme', 'it': 'Invia un messaggio al telegramma', 'es': 'Enviar mensaje a telegrama', 'pl': 'Send message to telegram', 'zh-cn': '按指定格式获取当前时间', 'uk': 'Надіслати повідомлення в телеграм'};
Blockly.Words['time_get_help'] = {'en': 'https://github.com/ioBroker/ioBroker.telegram/blob/master/README.md', 'de': 'https://github.com/ioBroker/ioBroker.telegram/blob/master/README.md', 'ru': 'https://github.com/ioBroker/ioBroker.telegram/blob/master/README.md', 'pt': 'https://github.com/ioBroker/ioBroker.telegram/blob/master/README.md', 'nl': 'https://github.com/ioBroker/ioBroker.telegram/blob/master/README.md', 'fr': 'https://github.com/ioBroker/ioBroker.telegram/blob/master/README.md', 'it': 'https://github.com/ioBroker/ioBroker.telegram/blob/master/README.md', 'es': 'https://github.com/ioBroker/ioBroker.telegram/blob/master/README.md', 'pl': 'https://github.com/ioBroker/ioBroker.telegram/blob/master/README.md', 'zh-cn': 'https://github.com/ioBroker/ioBroker.telegram/blob/master/README.md', 'uk': 'https://github.com/ioBroker/ioBroker.telegram/blob/master/README.md'};
Blockly.Words['time_get_object'] = {'en': 'Date object', 'de': 'Datum-Objekt', 'ru': 'как объект', 'pt': 'Data objeto', 'nl': 'Datum object', 'fr': 'Objet de date', 'it': 'Data oggetto', 'es': 'Objeto de fecha', 'pl': 'Date object', 'zh-cn': '日期对象', 'uk': 'Об\'єкт дати'};
Blockly.Words['time_get_ms'] = {'en': 'milliseconds', 'de': 'Millisekunden', 'ru': 'миллисекунды', 'pt': 'milissegundos', 'nl': 'milliseconden', 'fr': 'millisecondes', 'it': 'millisecondi', 'es': 'milisegundos', 'pl': 'milliseconds', 'zh-cn': '毫秒', 'uk': 'мілісекунд'};
Blockly.Words['time_get_s'] = {'en': 'seconds', 'de': 'Sekunden', 'ru': 'секунды', 'pt': 'segundos', 'nl': 'seconden', 'fr': 'secondes', 'it': 'secondi', 'es': 'segundos', 'pl': 'seconds', 'zh-cn': '秒', 'uk': 'секунд'};
Blockly.Words['time_get_m'] = {'en': 'minutes', 'de': 'Minuten', 'ru': 'минуты', 'pt': 'minutos', 'nl': 'notulen', 'fr': 'minutes', 'it': 'minuti', 'es': 'minutos', 'pl': 'minutes', 'zh-cn': '分钟', 'uk': 'хвилин'};
Blockly.Words['time_get_mid'] = {'en': 'minutes in day', 'de': 'Minuten seit Tagesanfang', 'ru': 'кол-во минут с начала дня', 'pt': 'Minutos desde o início do dia', 'nl': 'minuten in dag', 'fr': 'minutes dans la journée', 'it': 'minuti al giorno', 'es': 'minutos en el día', 'pl': 'minutes in day', 'zh-cn': '一天中的分钟', 'uk': 'хвилин на день'};
Blockly.Words['time_get_sid'] = {'en': 'seconds in day', 'de': 'Sekunden seit Tagesanfang', 'ru': 'кол-во секунд с начала дня', 'pt': 'Segundos desde o início do dia', 'nl': 'seconden in dag', 'fr': 'secondes dans la journée', 'it': 'secondi nel giorno', 'es': 'segundos en el día', 'pl': 'seconds in day', 'zh-cn': '一天中的秒', 'uk': 'секунд на день'};
Blockly.Words['time_get_h'] = {'en': 'hours', 'de': 'Stunden', 'ru': 'часы', 'pt': 'horas', 'nl': 'uur', 'fr': 'heures', 'it': 'ore', 'es': 'horas', 'pl': 'hours', 'zh-cn': '小时', 'uk': 'години'};
Blockly.Words['time_get_d'] = {'en': 'day of month', 'de': 'Monatsdatum', 'ru': 'день месяца', 'pt': 'dia do mês', 'nl': 'dag van de maand', 'fr': 'jour du mois', 'it': 'giorno del mese', 'es': 'dia del mes', 'pl': 'day of month', 'zh-cn': '一个月的一天', 'uk': 'день місяця'};
Blockly.Words['time_get_M'] = {'en': 'month as number', 'de': 'Monat als Nummer', 'ru': 'месяц числом', 'pt': 'mês como número', 'nl': 'maand als nummer', 'fr': 'mois en nombre', 'it': 'mese come numero', 'es': 'mes como número', 'pl': 'month as number', 'zh-cn': '月份为数字', 'uk': 'місяць як число'};
Blockly.Words['time_get_Mt'] = {'en': 'month as text', 'de': 'Monat als Text', 'ru': 'месяц словом', 'pt': 'mês como texto', 'nl': 'maand als tekst', 'fr': 'mois comme texte', 'it': 'mese come testo', 'es': 'mes como texto', 'pl': 'month as text', 'zh-cn': '月份作为文字', 'uk': 'місяць як текст'};
Blockly.Words['time_get_Mts'] = {'en': 'month as short text', 'de': 'Monat als Kurztext', 'ru': 'месяц коротким словом', 'pt': 'mês como texto curto', 'nl': 'maand als korte tekst', 'fr': 'mois comme texte court', 'it': 'mese come breve testo', 'es': 'mes como texto corto', 'pl': 'month as short text', 'zh-cn': '月份作为缩写文字', 'uk': 'місяць як короткий текст'};
Blockly.Words['time_get_y'] = {'en': 'short year', 'de': 'Jahr, kurz', 'ru': 'короткий год', 'pt': 'ano curto', 'nl': 'kort jaar', 'fr': 'année courte', 'it': 'breve anno', 'es': 'año corto', 'pl': 'short year', 'zh-cn': '简写的年', 'uk': 'короткий рік'};
Blockly.Words['time_get_fy'] = {'en': 'full year', 'de': 'Jahr, voll', 'ru': 'полный год', 'pt': 'ano completo', 'nl': 'Volledig jaar', 'fr': 'année complète', 'it': 'anno pieno', 'es': 'Año completo', 'pl': 'full year', 'zh-cn': '完整的年', 'uk': 'повний рік'};
Blockly.Words['time_get_wdt'] = {'en': 'week day text', 'de': 'Wochentag als Text', 'ru': 'день недели словом', 'pt': 'dia da semana como texto', 'nl': 'weekdag tekst', 'fr': 'texte de la semaine', 'it': 'testo del giorno della settimana', 'es': 'texto del día de la semana', 'pl': 'week day text', 'zh-cn': '星期作为文字', 'uk': 'текст дня тижня'};
Blockly.Words['time_get_wdts'] = {'en': 'short week day', 'de': 'Wochentag als Kurztext', 'ru': 'короткий день недели', 'pt': 'dia da semana como textocurto', 'nl': 'korte weekdag', 'fr': 'jour de la semaine courte', 'it': 'breve giorno della settimana', 'es': 'día corto de la semana', 'pl': 'short week day', 'zh-cn': '星期作为缩写文字', 'uk': 'короткий робочий день'};
Blockly.Words['time_get_wd'] = {'en': 'week day as number', 'de': 'Wochentag als Nummer', 'ru': 'день недели числом', 'pt': 'dia da semana como número', 'nl': 'weekdag als nummer', 'fr': 'jour de la semaine en nombre', 'it': 'giorno della settimana come numero', 'es': 'día de la semana como número', 'pl': 'week day as number', 'zh-cn': '星期作为数字', 'uk': 'день тижня як число'};
Blockly.Words['time_get_cw'] = {'en': 'calendar week', 'de': 'Kalenderwoche', 'ru': 'календарь неделя', 'pt': 'semana de calendário', 'nl': 'kalender week', 'fr': 'semaine civile', 'it': 'settimana del calendario', 'es': 'semanal', 'pl': 'cotygodniowy', 'zh-cn': '日历周', 'uk': 'календарний тиждень'};
Blockly.Words['time_get_custom'] = {'en': 'custom format', 'de': 'anwenderformatiert', 'ru': 'произвольный формат', 'pt': 'formato personalizado', 'nl': 'aangepast formaat', 'fr': 'format personnalisé', 'it': 'formato personalizzato', 'es': 'formato personalizado', 'pl': 'custom format', 'zh-cn': '自定义格式', 'uk': 'спеціальний формат'};
Blockly.Words['time_get_yyyy.mm.dd'] = {'en': 'yyyy.mm.dd', 'de': 'JJJJ.MM.TT', 'ru': 'ГГГГ.ММ.ДД', 'pt': 'aaaa.mm.dd', 'nl': 'jjjj.mm.dd', 'fr': 'aaaa.mm.jj', 'it': 'yyyy.MM.dd', 'es': 'aaaa.mm.dd', 'pl': 'yyyy.mm.dd', 'zh-cn': 'yyyy.mm.dd', 'uk': 'рррр.мм.дд'};
Blockly.Words['time_get_yyyy/mm/dd'] = {'en': 'yyyy/mm/dd', 'de': 'JJJJ/MM/TT', 'ru': 'ГГГГ/ММ/ДД', 'pt': 'aaaa/mm/dd', 'nl': 'yyyy/mm/dd', 'fr': 'aaaa/mm/jj', 'it': 'aaaa/mm/gg', 'es': 'aaaa/mm/dd', 'pl': 'yyyy/mm/dd', 'zh-cn': 'yyyy/mm/dd', 'uk': 'рррр/мм/дд'};
Blockly.Words['time_get_yy.mm.dd'] = {'en': 'yy.mm.dd', 'de': 'JJ.MM.TT', 'ru': 'ГГ.ММ.ДД', 'pt': 'yy.mm.dd', 'nl': 'JJ.MM.DD', 'fr': 'yy.mm.dd', 'it': 'yy.mm.dd', 'es': 'yy.mm.dd', 'pl': 'yy.mm.dd', 'zh-cn': 'yy.mm.dd', 'uk': 'рр.мм.дд'};
Blockly.Words['time_get_yy/mm/dd'] = {'en': 'yy/mm/dd', 'de': 'JJ/MM/TT', 'ru': 'ГГ/ММ/ДД', 'pt': 'aa/mm/dd', 'nl': 'yy/mm/dd', 'fr': 'aa/mm/jj', 'it': 'aa/mm/dd', 'es': 'aa/mm/dd', 'pl': 'yy/mm/dd', 'zh-cn': 'yy/mm/dd', 'uk': 'рр/мм/дд'};
Blockly.Words['time_get_dd.mm.yyyy'] = {'en': 'dd.mm.yyyy', 'de': 'TT.MM.JJJJ', 'ru': 'ДД.ММ.ГГГГ', 'pt': 'dd.mm.yyyy', 'nl': 'dd.mm.yyyy', 'fr': 'jj.mm.aaaa', 'it': 'gg.mm.aaaa', 'es': 'dd.mm.yyyy', 'pl': 'dd.mm.yyyy', 'zh-cn': 'dd.mm.yyyy', 'uk': 'дд.мм.рррр'};
Blockly.Words['time_get_dd/mm/yyyy'] = {'en': 'dd/mm/yyyy', 'de': 'TT/MM/JJJJ', 'ru': 'ДД/ММ/ГГГГ', 'pt': 'dd/mm/aaaa', 'nl': 'dd/mm/yyyy', 'fr': 'jj/mm/aaaa', 'it': 'gg/mm/aaaa', 'es': 'dd/mm/aaaa', 'pl': 'dd/mm/yyyy', 'zh-cn': 'dd/mm/yyyy', 'uk': 'дд/мм/рррр'};
Blockly.Words['time_get_dd.mm.yy'] = {'en': 'dd.mm.yy', 'de': 'TT.MM.JJ', 'ru': 'ДД.ММ.ГГ', 'pt': 'dd.mm.yy', 'nl': 'dd.mm.jj', 'fr': 'jj.mm.aa', 'it': 'dd.mm.yy', 'es': 'dd.mm.yy', 'pl': 'dd.mm.yy', 'zh-cn': 'dd.mm.yy', 'uk': 'дд.мм.рр'};
Blockly.Words['time_get_dd/mm/yy'] = {'en': 'dd/mm/yy', 'de': 'TT/MM/JJ', 'ru': 'ДД/ММ/ГГ', 'pt': 'dd/mm/aa', 'nl': 'dd/mm/jj', 'fr': 'jj/mm/aa', 'it': 'gg/mm/aa', 'es': 'dd/mm/aa', 'pl': 'dd/mm/yy', 'zh-cn': 'dd/mm/yy', 'uk': 'дд/мм/рр'};
Blockly.Words['time_get_mm/dd/yyyy'] = {'en': 'mm/dd/yyyy', 'de': 'MM/TT/JJJJ', 'ru': 'ММ/ДД/ГГГГ', 'pt': 'mm/dd/aaaa', 'nl': 'mm/dd/yyyy', 'fr': 'mm/jj/aaaa', 'it': 'mm/gg/aaaa', 'es': 'mm/dd/aaaa', 'pl': 'mm/dd/yyyy', 'zh-cn': 'mm/dd/yyyy', 'uk': 'дд/мм/рррр'};
Blockly.Words['time_get_mm/dd/yy'] = {'en': 'mm/dd/yy', 'de': 'MM/TT/JJ', 'ru': 'ММ/ДД/yy', 'pt': 'mm/dd/aaa', 'nl': 'MM/DD/JJ', 'fr': 'mm/jj/aa', 'it': 'mm/gg/aa', 'es': 'mm/dd/aa', 'pl': 'mm/dd/yy', 'zh-cn': 'mm/dd/yy', 'uk': 'дд/мм/рр'};
Blockly.Words['time_get_dd.mm'] = {'en': 'dd.mm.', 'de': 'TT.MM.', 'ru': 'ДД.ММ.', 'pt': 'dd.mm.', 'nl': 'DD.MM.', 'fr': 'jj.mm.', 'it': 'GG.MM.', 'es': 'dd.mm.', 'pl': 'dd.mm.', 'zh-cn': 'dd.mm.', 'uk': 'дд.мм'};
Blockly.Words['time_get_dd/mm'] = {'en': 'dd/mm', 'de': 'TT/MM', 'ru': 'ДД/ММ', 'pt': 'dd/mm', 'nl': 'dd/mm', 'fr': 'jj/mm', 'it': 'gg/mm', 'es': 'dd/mm', 'pl': 'dd/mm', 'zh-cn': 'dd/mm', 'uk': 'дд/мм'};
Blockly.Words['time_get_mm.dd'] = {'en': 'mm.dd', 'de': 'MM.TT', 'ru': 'ММ.ДД', 'pt': 'mm.dd', 'nl': 'mm.dd', 'fr': 'mm.dd', 'it': 'mm.dd', 'es': 'mm.dd', 'pl': 'mm.dd', 'zh-cn': 'mm.dd', 'uk': 'дд мм'};
Blockly.Words['time_get_mm/dd'] = {'en': 'mm/dd', 'de': 'MM/TT', 'ru': 'ММ/ДД', 'pt': 'mm/dd', 'nl': 'MM/DD', 'fr': 'mm/jj', 'it': 'mm/gg', 'es': 'mm/dd', 'pl': 'mm/dd', 'zh-cn': 'mm/dd', 'uk': 'мм/дд'};
Blockly.Words['time_get_hh_mm'] = {'en': 'hh:mm', 'de': 'SS:mm', 'ru': 'чч:мм', 'pt': 'hh:mm', 'nl': 'hh:mm', 'fr': 'hh:mm', 'it': 'hh:mm', 'es': 'hh: mm', 'pl': 'hh:mm', 'zh-cn': 'hh:mm', 'uk': 'гг:хм'};
Blockly.Words['time_get_hh_mm_ss'] = {'en': 'hh:mm:ss', 'de': 'SS:mm:ss', 'ru': 'чч:мм:сс', 'pt': 'hh:mm:ss', 'nl': 'hh:mm:ss', 'fr': 'hh:mm:ss', 'it': 'hh:mm:ss', 'es': 'hh: mm: ss', 'pl': 'hh:mm:ss', 'zh-cn': 'hh:mm:ss', 'uk': 'гг:хх:сс'};
Blockly.Words['time_get_hh_mm_ss.sss'] = {'en': 'hh:mm:ss.sss', 'de': 'SS:mm:ss.sss', 'ru': 'чч:мм:сс.ссс', 'pt': 'hh:mm:ss.sss', 'nl': 'hh:mm:ss.sss', 'fr': 'hh:mm:ss.sss', 'it': 'hh:mm:ss.sss', 'es': 'hh: mm: ss.sss', 'pl': 'hh:mm:ss.sss', 'zh-cn': 'hh:mm:ss.sss', 'uk': 'гг:хм:сс.сс'};
Blockly.Words['time_astro'] = {'en': 'Actual time of', 'de': 'Aktuelle Zeit von', 'ru': 'Время ', 'pt': 'Horário atual de', 'nl': 'Huidige tijd van', 'fr': 'Heure réelle de', 'it': 'Tempo reale di', 'es': 'Tiempo real de', 'pl': 'Actual time of', 'zh-cn': '当前时间', 'uk': 'Фактичний час'};
Blockly.Words['time_astro_offset'] = {'en': 'Offset (minutes)', 'de': 'Offset (Minuten)', 'ru': 'Сдвиг в минутах ', 'pt': 'Offset (minutos)', 'nl': 'Offset (minuten)', 'fr': 'Décalage (minutes)', 'it': 'Offset (minuti)', 'es': 'Desplazamiento (minutos)', 'pl': 'Offset (minutes)', 'zh-cn': '延时(分钟)', 'uk': 'Зсув (хвилини)'};
Blockly.Words['time_astro_default_format'] = {'en': 'YYYY.MM.DD hh:mm:ss.sss', 'de': 'JJJJ.MM.TT SS:mm:ss.sss', 'ru': 'ГГГГ.ММ.ДД чч:мм:сс.ссс', 'pt': 'AAAA.MM.DD hh:mm:ss.sss', 'nl': 'JJJJ.MM.DD uu:mm:ss.sss', 'fr': 'YYYY.MM.DD hh:mm:ss.sss', 'it': 'YYYY.MM.DD hh:mm:ss.sss', 'es': 'YYYY.MM.DD hh: mm: ss.sss', 'pl': 'YYYY.MM.DD hh:mm:ss.sss', 'zh-cn': 'YYYY.MM.DD hh:mm:ss.sss', 'uk': 'РРРР.ММ.ДД гг:хх:сс.сс'};
Blockly.Words['time_astro_tooltip'] = {'en': 'Get actual time or ', 'de': 'Sende eine Meldung über Telegram', 'ru': 'Послать сообщение через Telegram', 'pt': 'Receba o horário atual ou', 'nl': 'Krijg actuele tijd of', 'fr': 'Obtenez le temps réel ou', 'it': 'Ottieni tempo reale o', 'es': 'Obtenga tiempo real o', 'pl': 'Get actual time or ', 'zh-cn': '获取当前时间或当前时间加延时', 'uk': 'Отримати фактичний час або'};
Blockly.Words['time_astro_help'] = {'en': 'https://github.com/ioBroker/ioBroker.telegram/blob/master/README.md', 'de': 'https://github.com/ioBroker/ioBroker.telegram/blob/master/README.md', 'ru': 'https://github.com/ioBroker/ioBroker.telegram/blob/master/README.md', 'pt': 'https://github.com/ioBroker/ioBroker.telegram/blob/master/README.md', 'nl': 'https://github.com/ioBroker/ioBroker.telegram/blob/master/README.md', 'fr': 'https://github.com/ioBroker/ioBroker.telegram/blob/master/README.md', 'it': 'https://github.com/ioBroker/ioBroker.telegram/blob/master/README.md', 'es': 'https://github.com/ioBroker/ioBroker.telegram/blob/master/README.md', 'pl': 'https://github.com/ioBroker/ioBroker.telegram/blob/master/README.md', 'zh-cn': 'https://github.com/ioBroker/ioBroker.telegram/blob/master/README.md', 'uk': 'https://github.com/ioBroker/ioBroker.telegram/blob/master/README.md'};
Blockly.Words['time_get_special'] = {'en': 'Calculated time', 'de': 'Berechnete Zeit', 'ru': 'Расчетное время', 'pt': 'Tempo calculado', 'nl': 'Berekende tijd', 'fr': 'Temps calculé', 'it': 'Tempo calcolato', 'es': 'Tiempo calculado', 'pl': 'Kalkulacja czasu', 'zh-cn': '计算时间', 'uk': 'Розрахунковий час'};
Blockly.Words['time_get_special_day_start'] = {'en': 'Start of day', 'de': 'Beginn des Tages', 'ru': 'Начало дня', 'pt': 'Início do dia', 'nl': 'Begin van de dag', 'fr': 'Début de la journée', 'it': 'Inizio giornata', 'es': 'Inicio del día', 'pl': 'Początek dnia', 'zh-cn': '日 开 幕', 'uk': 'Початок дня'};
Blockly.Words['time_get_special_day_end'] = {'en': 'End of day', 'de': 'Ende des Tages', 'ru': 'Конец дня', 'pt': 'Fim do dia', 'nl': 'Einde dag', 'fr': 'Fin de la journée', 'it': 'Fine del giorno', 'es': 'Fin del día', 'pl': 'Koniec dnia', 'zh-cn': '日 本', 'uk': 'Кінець дня'};
Blockly.Words['time_get_special_week_start'] = {'en': 'Start of week', 'de': 'Beginn der Woche', 'ru': 'Начало недели', 'pt': 'Início da semana', 'nl': 'Begin van de week', 'fr': 'Début de la semaine', 'it': 'Inizio settimana', 'es': 'Comienzo de la semana', 'pl': 'Początek tygodnia', 'zh-cn': '每周开始', 'uk': 'Початок тижня'};
Blockly.Words['time_get_special_week_end'] = {'en': 'End of week', 'de': 'Ende der Woche', 'ru': 'Конец недели', 'pt': 'Fim da semana', 'nl': 'Einde week', 'fr': 'Fin de semaine', 'it': 'Fine settimana', 'es': 'Fin de semana', 'pl': 'Koniec tygodnia', 'zh-cn': '周末', 'uk': 'Кінець тижня'};
Blockly.Words['time_get_special_month_start'] = {'en': 'Start of month', 'de': 'Beginn des Monats', 'ru': 'Начало месяца', 'pt': 'Início do mês', 'nl': 'Begin van maand', 'fr': 'Début du mois', 'it': 'Inizio del mese', 'es': 'Inicio del mes', 'pl': 'Początek miesiąca', 'zh-cn': '月起', 'uk': 'Початок місяця'};
Blockly.Words['time_get_special_month_end'] = {'en': 'End of month', 'de': 'Ende des Monats', 'ru': 'Конец месяца', 'pt': 'Fim do mês', 'nl': 'Einde maand', 'fr': 'Fin du mois', 'it': 'Fine del mese', 'es': 'Fin del mes', 'pl': 'Koniec miesiąca', 'zh-cn': '月底', 'uk': 'Кінець місяця'};
Blockly.Words['time_get_special_tooltip'] = {'en': 'Calculate time stamps', 'de': 'Zeitstempel berechnen', 'ru': 'Рассчитать метки времени', 'pt': 'Calcular selos de tempo', 'nl': 'Vertaling:', 'fr': 'Calculer les timbres horaires', 'it': 'Calcola i timestamp', 'es': 'Calcular sellos de tiempo', 'pl': 'Kalkulacja', 'zh-cn': '定时邮票', 'uk': 'Розрахунок штампів часу'};
Blockly.Words['time_get_special_help'] = {'en': 'https://github.com/ioBroker/ioBroker.telegram/blob/master/README.md', 'de': 'https://github.com/ioBroker/ioBroker.telegram/blob/master/README.md', 'ru': 'https://github.com/ioBroker/ioBroker.telegram/blob/master/README.md', 'pt': 'https://github.com/ioBroker/ioBroker.telegram/blob/master/README.md', 'nl': 'https://github.com/ioBroker/ioBroker.telegram/blob/master/README.md', 'fr': 'https://github.com/ioBroker/ioBroker.telegram/blob/master/README.md', 'it': 'https://github.com/ioBroker/ioBroker.telegram/blob/master/README.md', 'es': 'https://github.com/ioBroker/ioBroker.telegram/blob/master/README.md', 'pl': 'https://github.com/ioBroker/ioBroker.telegram/blob/master/README.md', 'zh-cn': 'https://github.com/ioBroker/ioBroker.telegram/blob/master/README.md', 'uk': 'https://github.com/ioBroker/ioBroker.telegram/blob/master/README.md'};
Blockly.Words['time_calculation'] = {'en': 'Calculate time', 'de': 'Zeit berechnen', 'ru': 'Рассчитать время', 'pt': 'Calcular o tempo', 'nl': 'Bereken de tijd', 'fr': 'Temps de calcul', 'it': 'Calcola il tempo', 'es': 'Calcular tiempo', 'pl': 'Czas kalendarzowy', 'zh-cn': '时间', 'uk': 'Розрахунок часу'};
Blockly.Words['time_calculation_on'] = {'en': 'based on', 'de': 'basierend auf', 'ru': 'на основе', 'pt': 'baseado em', 'nl': 'gebaseerd op', 'fr': 'basée sur', 'it': 'sulla base', 'es': 'basado en', 'pl': 'na podstawie', 'zh-cn': '基础', 'uk': 'на основі'};
Blockly.Words['time_calculation_ms'] = {'en': 'ms', 'de': 'ms', 'ru': 'мс', 'pt': 'ms', 'nl': 'Mevrouw', 'fr': 'Mme', 'it': 'Signorina', 'es': 'Sra', 'pl': 'ms', 'zh-cn': '毫秒', 'uk': 'РС'};
Blockly.Words['time_calculation_sec'] = {'en': 'sec', 'de': 'Sek', 'ru': 'сек.', 'pt': 'seg', 'nl': 'sec', 'fr': 'seconde', 'it': 'secondo', 'es': 'segundo', 'pl': 'sec', 'zh-cn': '秒', 'uk': 'сек'};
Blockly.Words['time_calculation_min'] = {'en': 'min', 'de': 'Min', 'ru': 'мин.', 'pt': 'min', 'nl': 'min', 'fr': 'min', 'it': 'min', 'es': 'min', 'pl': 'min', 'zh-cn': '分', 'uk': 'хв'};
Blockly.Words['time_calculation_hour'] = {'en': 'hours', 'de': 'Stunden', 'ru': 'часов', 'pt': 'horas', 'nl': 'uren', 'fr': 'heures', 'it': 'ore', 'es': 'horas', 'pl': 'godzin', 'uk': 'час', 'zh-cn': '小时', };
Blockly.Words['time_calculation_day'] = {'en': 'days', 'de': 'Tage', 'ru': 'дней', 'pt': 'dias', 'nl': 'dagen', 'fr': 'jours', 'it': 'giorni', 'es': 'días', 'pl': 'dni', 'zh-cn': '日 日', 'uk': 'днів'};
Blockly.Words['time_calculation_week'] = {'en': 'weeks', 'de': 'Wochen', 'ru': 'недели', 'pt': 'semanas', 'nl': 'weken', 'fr': 'semaines', 'it': 'settimane', 'es': 'semanas', 'pl': 'tydzień', 'uk': 'тижнів', 'zh-cn': '星期', };
Blockly.Words['time_calculation_tooltip'] = {'en': 'Add or substract time', 'de': 'Zeit hinzufügen oder subtrahieren', 'ru': 'Добавьте или затрудните время', 'pt': 'Adicionar ou subtrair tempo', 'nl': 'Advies of substracte tijd', 'fr': 'Temps d\'ajout ou de sous-traitance', 'it': 'Aggiungere o substrarsi il tempo', 'es': 'Tiempo de adición o subcontrato', 'pl': 'Addd lub Substract time', 'uk': 'Додати або підстрактний час', 'zh-cn': '增加或说明时间', };
Blockly.Words['time_calculation_help'] = {'en': 'https://github.com/ioBroker/ioBroker.telegram/blob/master/README.md', 'de': 'https://github.com/ioBroker/ioBroker.telegram/blob/master/README.md', 'ru': 'https://github.com/ioBroker/ioBroker.telegram/blob/master/README.md', 'pt': 'https://github.com/ioBroker/ioBroker.telegram/blob/master/README.md', 'nl': 'https://github.com/ioBroker/ioBroker.telegram/blob/master/README.md', 'fr': 'https://github.com/ioBroker/ioBroker.telegram/blob/master/README.md', 'it': 'https://github.com/ioBroker/ioBroker.telegram/blob/master/README.md', 'es': 'https://github.com/ioBroker/ioBroker.telegram/blob/master/README.md', 'pl': 'https://github.com/ioBroker/ioBroker.telegram/blob/master/README.md', 'zh-cn': 'https://github.com/ioBroker/ioBroker.telegram/blob/master/README.md', 'uk': 'https://github.com/ioBroker/ioBroker.telegram/blob/master/README.md'};
// --- TIMEOUTS --------------------------------------------------
Blockly.Words['Timeouts'] = {'en': 'Timeouts', 'de': 'Timeouts', 'ru': 'Timeouts', 'pt': 'Timeouts', 'nl': 'Time-outs', 'fr': 'Délais', 'it': 'Timeout', 'es': 'Tiempos de espera', 'pl': 'Timeouts', 'zh-cn': '定时器', 'uk': 'Тайм-аути'};
// --- timeouts timeouts --------------------------------------------------
Blockly.Words['timeouts_wait'] = {'en': 'Pause', 'de': 'Pause', 'ru': 'Пауза', 'pt': 'Pausa', 'nl': 'Pauze', 'fr': 'Pause', 'it': 'Pausa', 'es': 'Pausa', 'pl': 'Pauza', 'zh-cn': '暂停', 'uk': 'Пауза'};
Blockly.Words['timeouts_wait_tooltip'] = {'en': 'Pause the execution for defined time', 'de': 'Unterbrechen Sie die Ausführung für eine definierte Zeit', 'ru': 'Приостановить выполнение на определенное время', 'pt': 'Pause a execução por tempo definido', 'nl': 'Pauzeer de uitvoering gedurende een bepaalde tijd', 'fr': 'Suspendre l\'exécution pendant une durée définie', 'it': 'Metti in pausa l\'esecuzione per un tempo definito', 'es': 'Pausar la ejecución por un tiempo definido', 'pl': 'Wstrzymaj wykonanie na określony czas', 'zh-cn': '暂停执行指定的时间', 'uk': 'Призупинити виконання на визначений час'};
Blockly.Words['timeouts_wait_help'] = {'en': 'wait', 'de': 'wait', 'ru': 'wait', 'pt': 'wait', 'nl': 'wait', 'fr': 'wait', 'it': 'wait', 'es': 'wait', 'pl': 'wait', 'zh-cn': 'wait', 'uk': 'чекати'};
Blockly.Words['timeouts_settimeout'] = {'en': 'Execution', 'de': 'Ausführen', 'ru': 'Выполнить', 'pt': 'Executar', 'nl': 'Executie', 'fr': 'Exécution', 'it': 'Esecuzione', 'es': 'Ejecución', 'pl': 'Execution', 'zh-cn': '将', 'uk': 'виконання'};
Blockly.Words['timeouts_settimeout_name'] = {'en': 'timeout', 'de': 'Verzögerung', 'ru': 'Пауза', 'pt': 'Atraso', 'nl': 'time-out', 'fr': 'temps libre', 'it': 'tempo scaduto', 'es': 'se acabó el tiempo', 'pl': 'timeout', 'zh-cn': '超时', 'uk': 'час вийшов'};
Blockly.Words['timeouts_settimeout_in'] = {'en': 'in', 'de': 'in', 'ru': 'через', 'pt': 'em', 'nl': 'in', 'fr': 'dans', 'it': 'in', 'es': 'en', 'pl': 'in', 'zh-cn': '延时', 'uk': 'в'};
Blockly.Words['timeouts_settimeout_ms'] = {'en': 'ms', 'de': 'ms', 'ru': 'мс', 'pt': 'ms', 'nl': 'Mevrouw', 'fr': 'Mme', 'it': 'Signorina', 'es': 'Sra', 'pl': 'ms', 'zh-cn': '毫秒', 'uk': 'РС'};
Blockly.Words['timeouts_settimeout_sec'] = {'en': 'sec', 'de': 'Sek', 'ru': 'сек.', 'pt': 'seg', 'nl': 'sec', 'fr': 'seconde', 'it': 'secondo', 'es': 'segundo', 'pl': 'sec', 'zh-cn': '秒', 'uk': 'сек'};
Blockly.Words['timeouts_settimeout_min'] = {'en': 'min', 'de': 'Min', 'ru': 'мин.', 'pt': 'min', 'nl': 'min', 'fr': 'min', 'it': 'min', 'es': 'min', 'pl': 'min', 'zh-cn': '分', 'uk': 'хв'};
Blockly.Words['timeouts_settimeout_tooltip'] = {'en': 'Delay execution', 'de': 'Ausführung verzögern', 'ru': 'Сделать паузу', 'pt': 'Execução com atraso', 'nl': 'Vertraag uitvoering', 'fr': 'Retarder l\'exécution', 'it': 'Ritardare l\'esecuzione', 'es': 'Demora de ejecución', 'pl': 'Delay execution', 'zh-cn': '延迟执行', 'uk': 'Відстрочка виконання'};
Blockly.Words['timeouts_settimeout_help'] = {'en': 'settimeout', 'de': 'settimeout', 'ru': 'settimeout', 'pt': 'settimeout', 'nl': 'setTimeout', 'fr': 'settimeout', 'it': 'setTimeout', 'es': 'settimeout', 'pl': 'settimeout', 'zh-cn': '设置超时时间是', 'uk': 'settimeout'};
Blockly.Words['timeouts_cleartimeout'] = {'en': 'clear', 'de': 'stop', 'ru': 'остановить', 'pt': 'parar', 'nl': 'duidelijk', 'fr': 'clair', 'it': 'chiaro', 'es': 'claro', 'pl': 'clear', 'zh-cn': '清除', 'uk': 'ясно'};
Blockly.Words['timeouts_cleartimeout_tooltip'] = {'en': 'Clear delay execution', 'de': 'Ausführungsverzögerung anhalten', 'ru': 'Отменить выполнение с паузой', 'pt': 'Parar a execução com atraso', 'nl': 'Duidelijke uitvoering van vertragingen', 'fr': 'Effacer l\'exécution du délai', 'it': 'Cancella l\'esecuzione del ritardo', 'es': 'Ejecución de retraso claro', 'pl': 'Clear delay execution', 'zh-cn': '清除延迟执行', 'uk': 'Чітка затримка виконання'};
Blockly.Words['timeouts_cleartimeout_help'] = {'en': 'cleartimeout', 'de': 'cleartimeout', 'ru': 'cleartimeout', 'pt': 'cleartimeout', 'nl': 'clearTimeout', 'fr': 'cleartimeout', 'it': 'clearTimeout', 'es': 'cleartimeout', 'pl': 'cleartimeout', 'zh-cn': '清除超时时间', 'uk': 'cleartimeout'};
Blockly.Words['timeouts_gettimeout'] = {'en': 'timeout', 'de': 'Verzögerung', 'ru': 'Пауза', 'pt': 'Atraso', 'nl': 'time-out', 'fr': 'temps libre', 'it': 'tempo scaduto', 'es': 'se acabó el tiempo', 'pl': 'timeout', 'zh-cn': '超时', 'uk': 'timeout'};
Blockly.Words['timeouts_gettimeout_tooltip'] = {'en': 'timeout', 'de': 'Verzögerung', 'ru': 'Пауза', 'pt': 'Atraso', 'nl': 'time-out', 'fr': 'temps libre', 'it': 'tempo scaduto', 'es': 'se acabó el tiempo', 'pl': 'timeout', 'zh-cn': '超时', 'uk': 'timeout'};
Blockly.Words['timeouts_gettimeout_help'] = {'en': 'gettimeout', 'de': 'gettimeout', 'ru': 'gettimeout', 'pt': 'gettimeout', 'nl': 'gettimeout', 'fr': 'gettimeout', 'it': 'gettimeout', 'es': 'gettimeout', 'pl': 'gettimeout', 'zh-cn': '清除超时时间', 'uk': 'gettimeout'};
Blockly.Words['timeouts_setinterval'] = {'en': 'Execution', 'de': 'Ausführen', 'ru': 'Выполнить', 'pt': 'Executar', 'nl': 'Executie', 'fr': 'Exécution', 'it': 'Esecuzione', 'es': 'Ejecución', 'pl': 'Execution', 'zh-cn': '执行', 'uk': 'виконання'};
Blockly.Words['timeouts_setinterval_name'] = {'en': 'interval', 'de': 'Intervall', 'ru': 'интервал', 'pt': 'intervalo', 'nl': 'interval', 'fr': 'intervalle', 'it': 'intervallo', 'es': 'intervalo', 'pl': 'interval', 'zh-cn': '间隔', 'uk': 'інтервал'};
Blockly.Words['timeouts_setinterval_in'] = {'en': 'every', 'de': 'alle', 'ru': 'каждые', 'pt': 'todo', 'nl': 'elk', 'fr': 'chaque', 'it': 'ogni', 'es': 'cada', 'pl': 'every', 'zh-cn': '每一个', 'uk': 'кожен'};
Blockly.Words['timeouts_setinterval_ms'] = {'en': 'ms', 'de': 'ms', 'ru': 'мс', 'pt': 'ms', 'nl': 'Mevrouw', 'fr': 'Mme', 'it': 'Signorina', 'es': 'Sra', 'pl': 'ms', 'zh-cn': '毫秒', 'uk': 'РС'};
Blockly.Words['timeouts_setinterval_tooltip'] = {'en': 'Cyclic execution', 'de': 'Zyklische Ausführung', 'ru': 'Выполнять постоянно через интервал', 'pt': 'Execução cíclica', 'nl': 'Cyclische uitvoering', 'fr': 'Exécution cyclique', 'it': 'Esecuzione ciclica', 'es': 'Ejecución cíclica', 'pl': 'Cyclic execution', 'zh-cn': '循环执行', 'uk': 'Циклічне виконання'};
Blockly.Words['timeouts_setinterval_help'] = {'en': 'setinterval', 'de': 'setinterval', 'ru': 'setinterval', 'pt': 'setinterval', 'nl': 'setInterval', 'fr': 'setinterval', 'it': 'setInterval', 'es': 'setinterval', 'pl': 'setinterval', 'zh-cn': '设置间隔', 'uk': 'встановити інтервал'};
Blockly.Words['timeouts_clearinterval'] = {'en': 'clear interval', 'de': 'stop zyklische Ausführung', 'ru': 'остановить постоянное выполнение', 'pt': 'parar', 'nl': 'interval wissen', 'fr': 'intervalle clair', 'it': 'intervallo chiaro', 'es': 'intervalo claro', 'pl': 'clear interval', 'zh-cn': '清除间隔', 'uk': 'чіткий інтервал'};
Blockly.Words['timeouts_clearinterval_tooltip'] = {'en': 'Clear interval execution', 'de': 'Ausführungsintervall anhalten', 'ru': 'Отменить цикличное выполнение с интервалом', 'pt': 'Parar a execução cíclica', 'nl': 'Interval-uitvoering wissen', 'fr': 'Effacer l\'intervalle d\'exécution', 'it': 'Cancella l\'esecuzione dell\'intervallo', 'es': 'Ejecución de intervalo claro', 'pl': 'Clear interval execution', 'zh-cn': '清除执行间隔', 'uk': 'Чітке інтервальне виконання'};
Blockly.Words['timeouts_clearinterval_help'] = {'en': 'clearinterval', 'de': 'clearinterval', 'ru': 'clearinterval', 'pt': 'clearinterval', 'nl': 'clearInterval', 'fr': 'clearinterval', 'it': 'clearInterval', 'es': 'clearinterval', 'pl': 'clearinterval', 'zh-cn': '清除间隔', 'uk': 'чіткий інтервал'};
Blockly.Words['timeouts_getinterval'] = {'en': 'interval', 'de': 'Intervall', 'ru': 'интервал', 'pt': 'intervalo', 'nl': 'interval', 'fr': 'intervalle', 'it': 'intervallo', 'es': 'intervalo', 'pl': 'interval', 'zh-cn': '间隔', 'uk': 'interval'};
Blockly.Words['timeouts_getinterval_tooltip'] = {'en': 'interval', 'de': 'Intervall', 'ru': 'интервал', 'pt': 'intervalo', 'nl': 'interval', 'fr': 'intervalle', 'it': 'intervallo', 'es': 'intervalo', 'pl': 'interval', 'zh-cn': '间隔', 'uk': 'interval'};
Blockly.Words['timeouts_getinterval_help'] = {'en': 'getinterval', 'de': 'getinterval', 'ru': 'getinterval', 'pt': 'getinterval', 'nl': 'getinterval', 'fr': 'getinterval', 'it': 'getinterval', 'es': 'getinterval', 'pl': 'getinterval', 'zh-cn': '清除间隔', 'uk': 'getinterval'};
// --- TRIGGER --------------------------------------------------
Blockly.Words['Trigger'] = {'en': 'Trigger', 'de': 'Trigger', 'ru': 'События', 'pt': 'Trigger', 'nl': 'In gang zetten', 'fr': 'Déclencheur', 'it': 'Grilletto', 'es': 'Desencadenar', 'pl': 'Trigger', 'zh-cn': '触发', 'uk': 'Тригер'};
Blockly.Words['trigger_in_trigger_warning'] = {'en': 'This may create a lot of triggers', 'de': 'Dies kann eine Menge Auslöser erstellen', 'ru': 'Это может создать много триггеров', 'pt': 'Isso pode criar muitos gatilhos', 'nl': 'Dit kan veel triggers creëren', 'fr': 'Cela peut créer beaucoup de déclencheurs', 'it': 'Questo può creare un sacco di trigger', 'es': 'Esto puede crear muchos desencadenantes', 'pl': 'To może stworzyć wiele wyzwalaczy', 'zh-cn': '这会造成很多触发器', 'uk': 'Це може створити багато райдерів'};
Blockly.Words['false_connection_to_trigger_warning'] = {'en': 'This connection is not valid (in most cases)', 'de': 'Diese Verbindung ist nicht gültig (in den meisten Fällen)','ru': 'Это соединение не является действительным (в большинстве случаев)','pt': 'Esta conexão não é válida (na maioria dos casos)','nl': 'Deze verbinding is ongeldig (in de meeste gevallen)','fr': 'Cette connexion n\'est pas valide (dans la plupart des cas)','it': 'Questa connessione non è valida (nella maggior parte dei casi)','es': 'Esta conexión no es válida (en la mayoría de los casos)','pl': 'Połączenie to nie jest ważne (w większości przypadków)','zh-cn': '此连接无效( 在大多数情况下)','uk': 'Це підключення не діє (в більшості випадків)'};
// --- trigger on --------------------------------------------------
Blockly.Words['on_onchange'] = {'en': 'was changed', 'de': 'wurde geändert', 'ru': 'изменился', 'pt': 'foi alterado', 'nl': 'was veranderd', 'fr': 'a été changé', 'it': 'era cambiato', 'es': 'fue cambiado', 'pl': 'was changed', 'zh-cn': '已改变', 'uk': 'було змінено'};
Blockly.Words['on_any'] = {'en': 'was updated', 'de': 'wurde aktualisiert', 'ru': 'обновился', 'pt': 'foi atualizado', 'nl': 'is geupdated', 'fr': 'a été mis à jour', 'it': 'è stato aggiornato', 'es': 'fue actualizado', 'pl': 'was updated', 'zh-cn': '已更新', 'uk': 'було оновлено'};
Blockly.Words['on_gt'] = {'en': 'is greater than last', 'de': 'ist größer als letztes', 'ru': 'больше прошлого', 'pt': 'é maior do que o último', 'nl': 'is groter dan de vorige', 'fr': 'est plus grand que le dernier', 'it': 'è più grande dell\'ultimo', 'es': 'es mayor que el último', 'pl': 'is greater than last', 'zh-cn': '大于上次', 'uk': 'більший за останній'};
Blockly.Words['on_ge'] = {'en': 'is greater or equal than last', 'de': 'ist gleich oder größer als letztes', 'ru': 'больше или равен прошлому', 'pt': 'é maior ou igual que o último', 'nl': 'is groter of gelijk dan de vorige', 'fr': 'est supérieur ou égal à la dernière', 'it': 'è maggiore o uguale alla precedente', 'es': 'es mayor o igual que el último', 'pl': 'is greater or equal than last', 'zh-cn': '大于等于上次', 'uk': 'більше або дорівнює останньому'};
Blockly.Words['on_lt'] = {'en': 'is less than last', 'de': 'ist kleiner als letztes', 'ru': 'меньше прошлого', 'pt': 'é menor do que o último', 'nl': 'is minder dan de vorige', 'fr': 'est moins que la dernière', 'it': 'è inferiore all\'ultima', 'es': 'es menos que el último', 'pl': 'is less than last', 'zh-cn': '小于上次', 'uk': 'менший за останній'};
Blockly.Words['on_le'] = {'en': 'is less or equal than last', 'de': 'ist gleich oder kleiner als letztes', 'ru': 'меньше или равен прошлому', 'pt': 'é menor ou igual que o último', 'nl': 'is minder of gelijk dan de vorige', 'fr': 'est inférieur ou égal à la dernière', 'it': 'è inferiore o uguale all\'ultima', 'es': 'es menor o igual que el último', 'pl': 'is less or equal than last', 'zh-cn': '小于等于上次', 'uk': 'менше або дорівнює останньому'};
Blockly.Words['on_eq'] = {'en': 'is same as last', 'de': 'ist gleich wie letztes', 'ru': 'равен прошлому', 'pt': 'é o mesmo que o último', 'nl': 'is hetzelfde als het laatst', 'fr': 'est le même que le dernier', 'it': 'è lo stesso dell\'ultimo', 'es': 'es lo mismo que el último', 'pl': 'is same as last', 'zh-cn': '与上次相同', 'uk': 'така ж, як остання'};
Blockly.Words['on_true'] = {'en': 'is true', 'de': 'ist wahr', 'ru': 'равен true', 'pt': 'é verdade', 'nl': 'is waar', 'fr': 'est vrai', 'it': 'è vero', 'es': 'es verdad', 'pl': 'is true', 'zh-cn': '为真', 'uk': 'правда'};
Blockly.Words['on_false'] = {'en': 'is false', 'de': 'ist unwahr', 'ru': 'равен false', 'pt': 'é falso', 'nl': 'is fout', 'fr': 'c\'est faux', 'it': 'è falso', 'es': 'Es falso', 'pl': 'is false', 'zh-cn': '为假', 'uk': 'є помилковим'};
Blockly.Words['on_help'] = {'en': 'on---subscribe-on-changes-or-updates-of-some-state', 'de': 'on---subscribe-on-changes-or-updates-of-some-state', 'ru': 'on---subscribe-on-changes-or-updates-of-some-state', 'pt': 'on---subscribe-on-changes-or-updates-of-some-state', 'nl': 'on---subscribe-on-changes-or-updates-of-some-state', 'fr': 'on---subscribe-on-changes-or-updates-of-some-state', 'it': 'on---subscribe-on-changes-or-updates-of-some-state', 'es': 'on---subscribe-on-changes-or-updates-of-some-state', 'pl': 'on---subscribe-on-changes-or-updates-of-some-state', 'zh-cn': 'on---subscribe-on-changes-or-updates-of-some-state', 'uk': 'on---subscribe-on-changes-or-updates-of-some-state'};
Blockly.Words['on_ack'] = {'en': 'Ack is', 'de': 'Auslösung durch', 'ru': 'Подтверждение', 'pt': 'confirmado é', 'nl': 'Ack is', 'fr': 'Ack est', 'it': 'Ack è', 'es': 'Ack es', 'pl': 'Ack is', 'zh-cn': '应答为', 'uk': 'Ack є'};
Blockly.Words['on_ack_any'] = {'en': 'any', 'de': 'egal', 'ru': 'не важно', 'pt': 'qualquer', 'nl': 'ieder', 'fr': 'tout', 'it': 'qualunque', 'es': 'alguna', 'pl': 'any', 'zh-cn': '任何', 'uk': 'будь-який'};
Blockly.Words['on_ack_true'] = {'en': 'update', 'de': 'bestätigte Änderung', 'ru': 'обновление', 'pt': 'atualizar', 'nl': 'bijwerken', 'fr': 'mettre à jour', 'it': 'aggiornare', 'es': 'actualizar', 'pl': 'update', 'zh-cn': '更新', 'uk': 'оновлення'};
Blockly.Words['on_ack_false'] = {'en': 'command', 'de': 'unbestätigte Änderung', 'ru': 'команда', 'pt': 'comando', 'nl': 'opdracht', 'fr': 'commander', 'it': 'comando', 'es': 'mando', 'pl': 'command', 'zh-cn': '命令', 'uk': 'команда'};
Blockly.Words['on_ext'] = {'en': 'Event: if objects', 'de': 'Falls Objekte', 'ru': 'Событие: если объект', 'pt': 'Se o objeto', 'nl': 'Evenement: als objecten', 'fr': 'Evénement: si des objets', 'it': 'Evento: se oggetti', 'es': 'Evento: si los objetos', 'pl': 'Event: if objects', 'zh-cn': '事件:如果对象', 'uk': 'Подія: якщо об\'єкти'};
Blockly.Words['on_ext_tooltip'] = {'en': 'If some state changed or updated', 'de': 'Bei Zustandsänderung', 'ru': 'При изменении или обновлении состояния', 'pt': 'Se mudou o estado', 'nl': 'Als een bepaalde staat is gewijzigd of bijgewerkt', 'fr': 'Si un état a été modifié ou mis à jour', 'it': 'Se qualche stato è cambiato o aggiornato', 'es': 'Si algún estado cambió o se actualizó', 'pl': 'If some state changed or updated', 'zh-cn': '如果对象有改变或更新则触发', 'uk': 'Якщо якийсь стан змінено або оновлено'};
Blockly.Words['on_ext_oid'] = {'en': 'object ID', 'de': 'Objekt ID', 'ru': 'ID объекта', 'pt': 'ID do objeto', 'nl': 'object-ID', 'fr': 'ID d\'objet', 'it': 'ID oggetto', 'es': 'ID de objeto', 'pl': 'object ID', 'zh-cn': '对象ID', 'uk': 'ID об\'єкта'};
Blockly.Words['on_ext_oid_tooltip'] = {'en': 'Object ID', 'de': 'Objekt ID', 'ru': 'ID объекта', 'pt': 'ID do objeto', 'nl': 'Object ID', 'fr': 'ID de l\'objet', 'it': 'ID oggetto', 'es': 'ID del objeto', 'pl': 'Object ID', 'zh-cn': '对象ID', 'uk': 'ID об\'єкта'};
Blockly.Words['on_ext_on'] = {'en': 'trigger on', 'de': 'falls Trigger auf', 'ru': 'если cобытие', 'pt': 'trigger no', 'nl': 'trigger aan', 'fr': 'déclencher', 'it': 'innesco su', 'es': 'desencadenar', 'pl': 'trigger on', 'zh-cn': '触发源', 'uk': 'тригер увімкнено'};
Blockly.Words['on_ext_on_tooltip'] = {'en': 'trigger on', 'de': 'falls Trigger auf', 'ru': 'если cобытие', 'pt': 'trigger no', 'nl': 'trigger aan', 'fr': 'déclencher', 'it': 'innesco su', 'es': 'desencadenar', 'pl': 'trigger on', 'zh-cn': '多触发源触发', 'uk': 'тригер увімкнено'};
Blockly.Words['on'] = {'en': 'Event: if object', 'de': 'Falls Objekt', 'ru': 'Событие: если объект', 'pt': 'se o objeto', 'nl': 'Evenement: als object', 'fr': 'Evénement: si objet', 'it': 'Evento: se oggetto', 'es': 'Evento: si el objeto', 'pl': 'Event: if object', 'zh-cn': '事件:如果对象', 'uk': 'Подія: якщо об\'єкт'};
Blockly.Words['on_tooltip'] = {'en': 'If some state changed or updated', 'de': 'Bei Zustandsänderung', 'ru': 'При изменении или обновлении состояния', 'pt': 'se mudou o estado', 'nl': 'Als een bepaalde staat is gewijzigd of bijgewerkt', 'fr': 'Si un état a été modifié ou mis à jour', 'it': 'Se qualche stato è cambiato o aggiornato', 'es': 'Si algún estado cambió o se actualizó', 'pl': 'If some state changed or updated', 'zh-cn': '如果对象有改变或更新则触发', 'uk': 'Якщо якийсь стан змінено або оновлено'};
Blockly.Words['on_source'] = {'en': 'get', 'de': 'Nehme', 'ru': 'взять', 'pt': 'pege', 'nl': 'krijgen', 'fr': 'obtenir', 'it': 'ottenere', 'es': 'obtener', 'pl': 'get', 'zh-cn': '得到', 'uk': 'отримати'};
Blockly.Words['on_source_of'] = {'en': 'of trigger', 'de': 'von Trigger', 'ru': 'триггера', 'pt': 'do trigger', 'nl': 'van trigger', 'fr': 'de déclenchement', 'it': 'di innesco', 'es': 'de gatillo', 'pl': 'of trigger', 'zh-cn': '触发器', 'uk': 'тригера'};
Blockly.Words['on_source_tooltip'] = {'en': 'Get information about event', 'de': 'Hole die Information über Ereignis', 'ru': 'Получить информацию о событии', 'pt': 'Obtenha as informações sobre o evento', 'nl': 'Krijg informatie over het evenement', 'fr': 'Obtenir des informations sur l\'événement', 'it': 'Ottieni informazioni sull\'evento', 'es': 'Obtener información sobre el evento', 'pl': 'Get information about event', 'zh-cn': '获取触发此次事件的对象的信息', 'uk': 'Отримати інформацію про подію'};
Blockly.Words['on_source_id'] = {'en': 'object ID', 'de': 'Objekt ID', 'ru': 'ID объекта', 'pt': 'ID do objeto', 'nl': 'object-ID', 'fr': 'ID d\'objet', 'it': 'ID oggetto', 'es': 'ID de objeto', 'pl': 'object ID', 'zh-cn': '对象ID', 'uk': 'ID об\'єкта'};
Blockly.Words['on_source_name'] = {'en': 'name', 'de': 'Name', 'ru': 'имя', 'pt': 'nome', 'nl': 'naam', 'fr': 'prénom', 'it': 'nome', 'es': 'nombre', 'pl': 'name', 'zh-cn': '名字', 'uk': 'назва'};
Blockly.Words['on_source_desc'] = {'en': 'description', 'de': 'Beschreibung', 'ru': 'описание', 'pt': 'descrição', 'nl': 'Beschrijving', 'fr': 'la description', 'it': 'descrizione', 'es': 'descripción', 'pl': 'description', 'zh-cn': '描述', 'uk': 'опис'};
Blockly.Words['on_source_channel_id'] = {'en': 'channel ID', 'de': 'Kanal ID', 'ru': 'ID канала', 'pt': 'ID do canal', 'nl': 'Kanaal Nr', 'fr': 'Identifiant de la chaine', 'it': 'Canale ID', 'es': 'Canal ID', 'pl': 'channel ID', 'zh-cn': '通道ID', 'uk': 'ідентифікатор каналу'};
Blockly.Words['on_source_channel_name'] = {'en': 'channel name', 'de': 'Kanalname', 'ru': 'имя канала', 'pt': 'nome do canal', 'nl': 'kanaal naam', 'fr': 'nom du canal', 'it': 'nome del canale', 'es': 'Nombre del Canal', 'pl': 'channel name', 'zh-cn': '通道名称', 'uk': 'назва каналу'};
Blockly.Words['on_source_device_id'] = {'en': 'device ID', 'de': 'Geräte ID', 'ru': 'ID устройства', 'pt': 'ID do dispositivo', 'nl': 'apparaat ID', 'fr': 'Reference de l\'appareil', 'it': 'ID del dispositivo', 'es': 'ID del dispositivo', 'pl': 'device ID', 'zh-cn': '设备ID', 'uk': 'ID пристрою'};
Blockly.Words['on_source_device_name'] = {'en': 'device name', 'de': 'Gerätename', 'ru': 'имя устройства', 'pt': 'nome do dispositivo', 'nl': 'toestelnaam', 'fr': 'nom de l\'appareil', 'it': 'nome del dispositivo', 'es': 'nombre del dispositivo', 'pl': 'device name', 'zh-cn': '设备名称', 'uk': 'Ім\'я пристрою'};
Blockly.Words['on_source_state_val'] = {'en': 'state value', 'de': 'Wert', 'ru': 'значение', 'pt': 'valor', 'nl': 'staatswaarde', 'fr': 'valeur d\'état', 'it': 'valore di stato', 'es': 'valor de estado', 'pl': 'state value', 'zh-cn': '状态值', 'uk': 'державне значення'};
Blockly.Words['on_source_state_ts'] = {'en': 'state timestamp', 'de': 'Zeitstempel', 'ru': 'время', 'pt': 'timestamp', 'nl': 'staat tijdstempel', 'fr': 'horodatage de l\'état', 'it': 'timestamp di stato', 'es': 'marca de tiempo del estado', 'pl': 'state timestamp', 'zh-cn': '状态时间戳', 'uk': 'державна позначка часу'};
Blockly.Words['on_source_state_q'] = {'en': 'state quality', 'de': 'Qualität', 'ru': 'качество', 'pt': 'qualidade', 'nl': 'staat kwaliteit', 'fr': 'qualité de l\'état', 'it': 'qualità dello stato', 'es': 'calidad del estado', 'pl': 'state quality', 'zh-cn': '状态质量', 'uk': 'державна якість'};
Blockly.Words['on_source_state_from'] = {'en': 'origin of value', 'de': 'Ursprung', 'ru': 'происхождение', 'pt': 'origem', 'nl': 'oorsprong van waarde', 'fr': 'origine de la valeur', 'it': 'origine del valore', 'es': 'origen del valor', 'pl': 'origin of value', 'zh-cn': '值的来源', 'uk': 'походження вартості'};
Blockly.Words['on_source_state_ack'] = {'en': 'is command or update', 'de': 'Befehl oder Aktualisierung', 'ru': 'команда или обновление', 'pt': 'é comando ou atualização', 'nl': 'is commando of update', 'fr': 'est la commande ou la mise à jour', 'it': 'è comando o aggiornamento', 'es': 'es comando o actualización', 'pl': 'is command or update', 'zh-cn': '是命令或更新', 'uk': 'це команда або оновлення'};
Blockly.Words['on_source_state_lc'] = {'en': 'last change of state', 'de': 'letzte Änderung', 'ru': 'последнее изменение', 'pt': 'última mudança', 'nl': 'laatste verandering van staat', 'fr': 'dernier changement d\'état', 'it': 'ultimo cambio di stato', 'es': 'último cambio de estado', 'pl': 'last change of state', 'zh-cn': '上一次状态改变的时间', 'uk': 'остання зміна стану'};
Blockly.Words['on_source_state_c'] = {'en': 'comment of last state', 'de': 'Kommentar des letzten Zustands', 'ru': 'комментарий последнего состояния', 'pt': 'comentário do último estado', 'nl': 'opmerking van laatste staat', 'fr': 'commentaire du dernier état', 'it': 'commento dell\'ultimo stato', 'es': 'comentario del ultimo estado', 'pl': 'komentarz ostatniego stanu', 'zh-cn': '最后状态的评论', 'uk': 'коментар останнього стану'};
Blockly.Words['on_source_state_user'] = {'en': 'user of last state', 'de': 'Benutzer des letzten Zustands', 'ru': 'пользователь последнего состояния', 'pt': 'usuário do último estado', 'nl': 'gebruiker van de laatste staat', 'fr': 'utilisateur du dernier état', 'it': 'utente dell\'ultimo stato', 'es': 'usuario del último estado', 'pl': 'użytkownik ostatniego stanu', 'zh-cn': '最后状态的用户', 'uk': 'користувач останнього стану'};
Blockly.Words['on_source_oldstate_val'] = {'en': 'previous value', 'de': 'vorheriger Wert', 'ru': 'предыдущее значение', 'pt': 'valor anterior', 'nl': 'vorige waarde', 'fr': 'valeur précédente', 'it': 'valore precedente', 'es': 'valor anterior', 'pl': 'previous value', 'zh-cn': '触发前的值', 'uk': 'попереднє значення'};
Blockly.Words['on_source_oldstate_ts'] = {'en': 'previous timestamp', 'de': 'vorheriger Zeitstempel', 'ru': 'предыдущее время', 'pt': 'timestamp anterior', 'nl': 'vorige timestamp', 'fr': 'Horodatage précédent', 'it': 'timestamp precedente', 'es': 'fecha y hora anterior', 'pl': 'previous timestamp', 'zh-cn': '触发前的时间戳', 'uk': 'попередня позначка часу'};
Blockly.Words['on_source_oldstate_q'] = {'en': 'previous quality', 'de': 'vorherige Quialität', 'ru': 'предыдущее качество', 'pt': 'qualidade anterior', 'nl': 'vorige kwaliteit', 'fr': 'qualité précédente', 'it': 'qualità precedente', 'es': 'calidad previa', 'pl': 'previous quality', 'zh-cn': '触发前的质量', 'uk': 'попередня якість'};
Blockly.Words['on_source_oldstate_from'] = {'en': 'previous origin', 'de': 'vorherige Ursprung', 'ru': 'предыдущее происхождение', 'pt': 'origem anterior', 'nl': 'vorige oorsprong', 'fr': 'origine précédente', 'it': 'origine precedente', 'es': 'origen anterior', 'pl': 'previous origin', 'zh-cn': '触发前的值的来源', 'uk': 'попереднє походження'};
Blockly.Words['on_source_oldstate_ack'] = {'en': 'previous command or update', 'de': 'vorherige Bestätigung', 'ru': 'предыдущее команда или обновление', 'pt': 'comando ou atualização anterior', 'nl': 'vorige opdracht of update', 'fr': 'commande précédente ou mise à jour', 'it': 'comando precedente o aggiornamento', 'es': 'comando anterior o actualización', 'pl': 'previous command or update', 'zh-cn': '触发前的是命令或更新', 'uk': 'попередня команда або оновлення'};
Blockly.Words['on_source_oldstate_lc'] = {'en': 'previous last change', 'de': 'vorherige letzte Änderung', 'ru': 'предыдущее последнее изменение', 'pt': 'última mudança anterior', 'nl': 'vorige laatste wijziging', 'fr': 'précédent dernier changement', 'it': 'precedente ultima modifica', 'es': 'último cambio anterior', 'pl': 'previous last change', 'zh-cn': '触发前的上一次状态改变的时间', 'uk': 'попередня остання зміна'};
Blockly.Words['on_source_oldstate_c'] = {'en': 'previous comment', 'de': 'vorheriger Kommentar', 'ru': 'предыдущий комментарий', 'pt': 'comentário anterior', 'nl': 'vorige opmerking', 'fr': 'commentaire précédent', 'it': 'commento precedente', 'es': 'comentario anterior', 'pl': 'poprzedni komentarz', 'zh-cn': '以前的评论', 'uk': 'попередній коментар'};
Blockly.Words['on_source_oldstate_user'] = {'en': 'previous user', 'de': 'vorheriger Benutzer', 'ru': 'предыдущий пользователь', 'pt': 'usuário anterior', 'nl': 'vorige gebruiker', 'fr': 'utilisateur précédent', 'it': 'utente precedente', 'es': 'usuario anterior', 'pl': 'poprzedni użytkownik', 'zh-cn': '以前的用户', 'uk': 'попередній користувач'};
Blockly.Words['on_source_warning'] = {'en': 'This block must be used only inside of event block', 'de': 'Dieser Block darf nur innerhalb "Falls Objekt" Block verwendet werden', 'ru': 'Этот блок можно использовать только внутри блока "Событие"', 'pt': 'Este bloco só pode ser usado dentro do bloco "Se objeto"', 'nl': 'Dit blok mag alleen binnen het gebeurtenisblok worden gebruikt', 'fr': 'Ce bloc doit être utilisé uniquement à l\'intérieur du bloc d\'événements', 'it': 'Questo blocco deve essere utilizzato solo all\'interno del blocco eventi', 'es': 'Este bloque debe usarse solo dentro del bloque de evento', 'pl': 'This block must be used only inside of event block', 'zh-cn': '必须在事件块内使用此块', 'uk': 'Цей блок можна використовувати лише всередині блоку подій'};
// --- trigger schedule --------------------------------------------------
Blockly.Words['schedule'] = {'en': 'schedule', 'de': 'Zeitplan', 'ru': 'Cron расписание', 'pt': 'cronograma', 'nl': 'planning', 'fr': 'programme', 'it': 'programma', 'es': 'programar', 'pl': 'schedule', 'zh-cn': '调度器', 'uk': 'графік'};
Blockly.Words['schedule_tooltip'] = {'en': 'Do something on cron schedule', 'de': 'Ausführen nach Zeitplan', 'ru': 'Выполнять по расписанию', 'pt': 'Execução por tempo', 'nl': 'Doe iets op cron-schema', 'fr': 'Faire quelque chose sur le calendrier cron', 'it': 'Fai qualcosa su cron schedule', 'es': 'Hacer algo en el cronograma cron', 'pl': 'Do something on cron schedule', 'zh-cn': '周期执行一些事', 'uk': 'Зробіть щось за розкладом cron'};
Blockly.Words['schedule_help'] = {'en': 'schedule', 'de': 'schedule', 'ru': 'schedule', 'pt': 'cronograma', 'nl': 'planning', 'fr': 'programme', 'it': 'programma', 'es': 'programar', 'pl': 'schedule', 'zh-cn': '调度器', 'uk': 'графік'};
// --- trigger schedule_by_id -----------------------------------------
Blockly.Words['schedule_by_id'] = {'en': 'Schedule by time state', 'de': 'Zeitplan aus Zeit-Zustand', 'ru': 'Расписание по времени состояние', 'pt': 'Programação por estado de tempo', 'nl': 'Vertaling:', 'fr': 'Horaire par temps', 'it': 'Orari per Stato del tempo', 'es': 'Horario por hora estado', 'pl': 'Schedulacja czasu', 'zh-cn': '时间表', 'uk': 'Графік роботи за часом'};
Blockly.Words['schedule_by_id_tooltip'] = {'en': 'Creates and updates a schedule based on the objects value', 'de': 'Erstellt und aktualisiert einen Zeitplan basierend auf dem Objektwert', 'ru': 'Создает и обновляет график на основе стоимости объектов', 'pt': 'Cria e atualiza um cronograma com base no valor dos objetos', 'nl': 'Creëren en updaten een schema gebaseerd op de objecten', 'fr': 'Crée et met à jour un horaire basé sur la valeur des objets', 'it': 'Crea e aggiorna un programma basato sul valore degli oggetti', 'es': 'Crea y actualiza un calendario basado en el valor de objetos', 'pl': 'Twórcy i aktualizują harmonogram oparty na wartości obiektów', 'zh-cn': '基于目标价值制定和更新时间表', 'uk': 'Створення та оновлення графіка на основі значення об\'єктів'}
Blockly.Words['schedule_by_id_help'] = {'en': 'scheduleById', 'de': 'scheduleById', 'ru': 'scheduleById', 'pt': 'scheduleById', 'nl': 'scheduleById', 'fr': 'scheduleById', 'it': 'scheduleById', 'es': 'scheduleById', 'pl': 'scheduleById', 'zh-cn': 'scheduleById', 'uk': 'scheduleById'};
// --- trigger astro --------------------------------------------------
Blockly.Words['astro'] = {'en': 'astro', 'de': 'Astro', 'ru': 'Астро', 'pt': 'astro', 'nl': 'astro', 'fr': 'astro', 'it': 'astro', 'es': 'astro', 'pl': 'astro', 'zh-cn': '天文事件', 'uk': 'астро'};
Blockly.Words['astro_tooltip'] = {'en': 'Do something on astrological event', 'de': 'Ausführen nach Astro-Ereignis', 'ru': 'Выполнять по астро-событию', 'pt': 'Executar após o evento astro', 'nl': 'Doe iets over astrologische gebeurtenissen', 'fr': 'Faire quelque chose sur l\'événement astrologique', 'it': 'Fai qualcosa sull\'evento astrologico', 'es': 'Haz algo en el evento astrológico', 'pl': 'Do something on astrological event', 'zh-cn': '当设定的天文时间被触发后执行一些事', 'uk': 'Зробіть щось на астрологічну подію'};
Blockly.Words['astro_offset'] = {'en': ', offset', 'de': ', Versatz', 'ru': ', сдвиг', 'pt': ', offset', 'nl': ', offset', 'fr': ', décalage', 'it': ', compensare', 'es': ', compensar', 'pl': ', offset', 'zh-cn': ',延时', 'uk': ', зсув'};
Blockly.Words['astro_minutes'] = {'en': 'minutes', 'de': 'Minuten', 'ru': 'минут', 'pt': 'minutos', 'nl': 'notulen', 'fr': 'minutes', 'it': 'minuti', 'es': 'minutos', 'pl': 'minutes', 'zh-cn': '分钟', 'uk': 'хвилин'};
Blockly.Words['astro_sunriseText'] = {'en': 'sunrise', 'de': 'Sonnenaufgang', 'ru': 'восход солнца', 'pt': 'nascer do sol', 'nl': 'zonsopkomst', 'fr': 'lever du soleil', 'it': 'Alba', 'es': 'amanecer', 'pl': 'sunrise', 'zh-cn': '日出', 'uk': 'схід сонця'};
Blockly.Words['astro_sunriseEndText'] = {'en': 'sunrise end', 'de': 'Sonnenaufgang-Ende', 'ru': 'конец восхода', 'pt': 'fim do nascer do sol', 'nl': 'zonsopgang einde', 'fr': 'fin du lever du soleil', 'it': 'alba fine', 'es': 'salida del sol', 'pl': 'sunrise end', 'zh-cn': '日出结束', 'uk': 'кінець сходу сонця'};
Blockly.Words['astro_goldenHourEndText'] = {'en': 'golden hour end', 'de': '"Golden hour"-Ende', 'ru': 'конец золотого часа', 'pt': 'fim da hora dourada', 'nl': 'gouden uureinde', 'fr': 'fin de l\'heure d\'or', 'it': 'ora d\'oro fine', 'es': 'hora dorada', 'pl': 'golden hour end', 'zh-cn': '黄金时段结束', 'uk': 'кінець золотої години'};
Blockly.Words['astro_solarNoonText'] = {'en': 'solar noon', 'de': 'Sonnenmittag', 'ru': 'солнечеый полдень', 'pt': 'meio-dia solar', 'nl': 'zonne middag', 'fr': 'midi solaire', 'it': 'mezzogiorno solare', 'es': 'mediodía solar', 'pl': 'solar noon', 'zh-cn': '太阳正午', 'uk': 'сонячний полудень'};
Blockly.Words['astro_goldenHourText'] = {'en': 'golden hour', 'de': '"Golden hour"', 'ru': 'золотой час', 'pt': 'Hora dourada', 'nl': 'gouden uur', 'fr': 'heure d\'or', 'it': 'ora d\'oro', 'es': 'hora dorada', 'pl': 'golden hour', 'zh-cn': '黄金时段', 'uk': 'золота година'};
Blockly.Words['astro_sunsetStartText'] = {'en': 'sunset start', 'de': 'Sonnenuntergang-Anfang', 'ru': 'начало захода солнца', 'pt': 'começo do por do sol', 'nl': 'zonsondergang start', 'fr': 'coucher de soleil début', 'it': 'inizio del tramonto', 'es': 'puesta de sol', 'pl': 'sunset start', 'zh-cn': '日落开始', 'uk': 'початок заходу сонця'};
Blockly.Words['astro_sunsetText'] = {'en': 'sunset', 'de': 'Sonnenuntergang', 'ru': 'конец захода солнца', 'pt': 'por do sol', 'nl': 'zonsondergang', 'fr': 'le coucher du soleil', 'it': 'tramonto', 'es': 'puesta de sol', 'pl': 'sunset', 'zh-cn': '日落', 'uk': 'захід сонця'};
Blockly.Words['astro_duskText'] = {'en': 'dusk', 'de': 'Abenddämmerung', 'ru': 'сумерки', 'pt': 'anoitecer', 'nl': 'schemer', 'fr': 'crépuscule', 'it': 'crepuscolo', 'es': 'oscuridad', 'pl': 'dusk', 'zh-cn': '黄昏', 'uk': 'сутінки'};
Blockly.Words['astro_nauticalDuskText'] = {'en': 'nautical dusk', 'de': 'Nautische Abenddämmerung', 'ru': 'навигационные сумерки', 'pt': 'anoitecer náutico', 'nl': 'nautische schemering', 'fr': 'crépuscule nautique', 'it': 'crepuscolo nautico', 'es': 'anochecer náutico', 'pl': 'nautical dusk', 'zh-cn': '航海黄昏', 'uk': 'морські сутінки'};
Blockly.Words['astro_nightText'] = {'en': 'night', 'de': 'Nacht', 'ru': 'ночь', 'pt': 'noite', 'nl': 'nacht', 'fr': 'nuit', 'it': 'notte', 'es': 'noche', 'pl': 'night', 'zh-cn': '夜晚', 'uk': 'ніч'};
Blockly.Words['astro_nightEndText'] = {'en': 'night end', 'de': 'Nachtende', 'ru': 'конец ночи', 'pt': 'final da noite', 'nl': 'einde van de nacht', 'fr': 'fin de nuit', 'it': 'fine della notte', 'es': 'fin de noche', 'pl': 'night end', 'zh-cn': '夜晚结束', 'uk': 'кінець ночі'};
Blockly.Words['astro_nauticalDawnText'] = {'en': 'nautical dawn', 'de': 'Nautische Morgendämmerung', 'ru': 'навигационный рассвет', 'pt': 'amanhecer náutico', 'nl': 'nautische dageraad', 'fr': 'aube nautique', 'it': 'alba nautica', 'es': 'amanecer náutico', 'pl': 'nautical dawn', 'zh-cn': '航海黎明', 'uk': 'морський світанок'};
Blockly.Words['astro_dawnText'] = {'en': 'dawn', 'de': 'Morgendämmerung', 'ru': 'рассвет', 'pt': 'amanhecer', 'nl': 'dageraad', 'fr': 'Aube', 'it': 'alba', 'es': 'amanecer', 'pl': 'dawn', 'zh-cn': '黎明', 'uk': 'світанок'};
Blockly.Words['astro_nadirText'] = {'en': 'nadir', 'de': 'Nadir', 'ru': 'надир', 'pt': 'nadir', 'nl': 'nadir', 'fr': 'nadir', 'it': 'nadir', 'es': 'nadir', 'pl': 'nadir', 'zh-cn': '最低点', 'uk': 'найнижчий рівень'};
Blockly.Words['astro_help'] = {'en': 'astro--function', 'de': 'astro--function', 'ru': 'astro--function', 'pt': 'astro--function', 'nl': 'astro--function', 'fr': 'astro--function', 'it': 'astro--function', 'es': 'astro--function', 'pl': 'astro--function', 'zh-cn': 'astro--function', 'uk': 'astro--function'};
// --- trigger schedule --------------------------------------------------
Blockly.Words['schedule_create'] = {'en': 'schedule', 'de': 'Zeitplan', 'ru': 'Расписание', 'pt': 'cronograma', 'nl': 'planning', 'fr': 'programme', 'it': 'programma', 'es': 'programar', 'pl': 'schedule', 'zh-cn': '调度器', 'uk': 'графік'};
Blockly.Words['schedule_create_name'] = {'en': 'schedule', 'de': 'Zeitplan', 'ru': 'Расписание', 'pt': 'cronograma', 'nl': 'planning', 'fr': 'programme', 'it': 'programma', 'es': 'programar', 'pl': 'schedule', 'zh-cn': '调度器', 'uk': 'графік'};
Blockly.Words['schedule_text'] = {'en': 'cron rule', 'de': 'CRON Regel', 'ru': 'cron правило', 'pt': 'regra cron', 'nl': 'cron-regel', 'fr': 'règle cron', 'it': 'regola cron', 'es': 'regla cron', 'pl': 'cron rule', 'zh-cn': '计划任务规则', 'uk': 'правило cron'};
Blockly.Words['schedule_create_tooltip'] = {'en': 'Delay execution', 'de': 'Ausführung verzögern', 'ru': 'Сделать паузу', 'pt': 'Atrasar a execução', 'nl': 'Vertraag uitvoering', 'fr': 'Retarder l\'exécution', 'it': 'Ritardare l\'esecuzione', 'es': 'Demora de ejecución', 'pl': 'Delay execution', 'zh-cn': '定期执行', 'uk': 'Відстрочка виконання'};
Blockly.Words['schedule_create_help'] = {'en': 'settimeout', 'de': 'settimeout', 'ru': 'settimeout', 'pt': 'settimeout', 'nl': 'setTimeout', 'fr': 'settimeout', 'it': 'setTimeout', 'es': 'settimeout', 'pl': 'settimeout', 'zh-cn': '的setTimeout', 'uk': 'settimeout'};
Blockly.Words['schedule_clear'] = {'en': 'clear', 'de': 'stop', 'ru': 'остановить', 'pt': 'parar', 'nl': 'duidelijk', 'fr': 'clair', 'it': 'chiaro', 'es': 'claro', 'pl': 'clear', 'zh-cn': '清除', 'uk': 'ясно'};
Blockly.Words['schedule_clear_tooltip'] = {'en': 'Clear delay execution', 'de': 'Ausführungsverzögerung anhalten', 'ru': 'Отменить выполнение с паузой', 'pt': 'Parar a execução com atraso', 'nl': 'Duidelijke uitvoering van vertragingen', 'fr': 'Effacer l\'exécution du délai', 'it': 'Cancella l\'esecuzione del ritardo', 'es': 'Ejecución de retraso claro', 'pl': 'Clear delay execution', 'zh-cn': '清除调度器', 'uk': 'Чітка затримка виконання'};
Blockly.Words['schedule_clear_help'] = {'en': 'cleartimeout', 'de': 'cleartimeout', 'ru': 'cleartimeout', 'pt': 'cleartimeout', 'nl': 'clearTimeout', 'fr': 'cleartimeout', 'it': 'clearTimeout', 'es': 'cleartimeout', 'pl': 'cleartimeout', 'zh-cn': '清除超时', 'uk': 'cleartimeout'};
// --- trigger field --------------------------------------------------
Blockly.Words['field_cron'] = {'en': 'CRON', 'de': 'CRON', 'ru': 'CRON', 'pt': 'CRON', 'nl': 'CRON', 'fr': 'CRON', 'it': 'CRON', 'es': 'CRON', 'pl': 'CRON', 'zh-cn': '计划任务', 'uk': 'CRON'};
Blockly.Words['field_cron_CRON'] = {'en': 'CRON', 'de': 'CRON', 'ru': 'CRON', 'pt': 'CRON', 'nl': 'CRON', 'fr': 'CRON', 'it': 'CRON', 'es': 'CRON', 'pl': 'CRON', 'zh-cn': '计划任务', 'uk': 'CRON'};
Blockly.Words['field_cron_tooltip'] = {'en': 'Create CRON rule with dialog', 'de': 'Erzeuge CRON Regel mit Dialog', 'ru': 'Создать CRON правило с помощью диалога', 'pt': 'Criar regra CRON com diálogo', 'nl': 'Maak CRON-regel met dialoogvenster', 'fr': 'Créer une règle CRON avec dialogue', 'it': 'Crea una regola CRON con finestra di dialogo', 'es': 'Crear regla CRON con diálogo', 'pl': 'Create CRON rule with dialog', 'zh-cn': '使用对话框创建计划任务规则', 'uk': 'Створіть правило CRON із діалоговим вікном'};
// --- trigger cron --------------------------------------------------
Blockly.Words['cron_builder'] = {'en': 'CRON', 'de': 'CRON', 'ru': 'CRON', 'pt': 'CRON', 'nl': 'CRON', 'fr': 'CRON', 'it': 'CRON', 'es': 'CRON', 'pl': 'CRON', 'zh-cn': '计划任务', 'uk': 'CRON'};
Blockly.Words['cron_builder_CRON'] = {'en': 'CRON', 'de': 'CRON', 'ru': 'CRON', 'pt': 'CRON', 'nl': 'CRON', 'fr': 'CRON', 'it': 'CRON', 'es': 'CRON', 'pl': 'CRON', 'zh-cn': '计划任务', 'uk': 'CRON'};
Blockly.Words['cron_builder_tooltip'] = {'en': 'Create CRON rule with dialog', 'de': 'Erzeuge CRON Regel mit Dialog', 'ru': 'Создать CRON правило с помощью диалога', 'pt': 'Criar regra CRON com diálogo', 'nl': 'Maak CRON-regel met dialoogvenster', 'fr': 'Créer une règle CRON avec dialogue', 'it': 'Crea una regola CRON con finestra di dialogo', 'es': 'Crear regla CRON con diálogo', 'pl': 'Create CRON rule with dialog', 'zh-cn': '使用对话框创建计划任务规则', 'uk': 'Створіть правило CRON із діалоговим вікном'};
Blockly.Words['cron_builder_with_seconds'] = {'en': 'with seconds', 'de': 'mit Sekunden', 'ru': 'с секундами', 'pt': 'com segundos', 'nl': 'met seconden', 'fr': 'avec secondes', 'it': 'con secondi', 'es': 'con segundos', 'pl': 'with seconds', 'zh-cn': '精确到秒', 'uk': 'з секундами'};
Blockly.Words['cron_builder_dow'] = {'en': 'day of week', 'de': 'Wochentag', 'ru': 'день недели', 'pt': 'dia da semana', 'nl': 'dag van de week', 'fr': 'jour de la semaine', 'it': 'giorno della settimana', 'es': 'día de la semana', 'pl': 'day of week', 'zh-cn': '星期', 'uk': 'день тижня'};
Blockly.Words['cron_builder_month'] = {'en': 'month', 'de': 'Monat', 'ru': 'месяц', 'pt': 'mês', 'nl': 'maand', 'fr': 'mois', 'it': 'mese', 'es': 'mes', 'pl': 'month', 'zh-cn': '月份', 'uk': 'місяць'};
Blockly.Words['cron_builder_day'] = {'en': 'date', 'de': 'Datum', 'ru': 'число', 'pt': 'data', 'nl': 'datum', 'fr': 'rendez-vous amoureux', 'it': 'Data', 'es': 'fecha', 'pl': 'date', 'zh-cn': '日期', 'uk': 'дата'};
Blockly.Words['cron_builder_hour'] = {'en': 'hour', 'de': 'Stunde', 'ru': 'час', 'pt': 'hora', 'nl': 'uur', 'fr': 'heure', 'it': 'ora', 'es': 'hora', 'pl': 'hour', 'zh-cn': '小时', 'uk': 'година'};
Blockly.Words['cron_builder_minutes'] = {'en': 'minutes', 'de': 'Minuten', 'ru': 'минуты', 'pt': 'minutos', 'nl': 'notulen', 'fr': 'minutes', 'it': 'minuti', 'es': 'minutos', 'pl': 'minutes', 'zh-cn': '分钟', 'uk': 'хвилин'};
Blockly.Words['cron_builder_seconds'] = {'en': 'seconds', 'de': 'Sekunden', 'ru': 'секунды', 'pt': 'segundos', 'nl': 'seconden', 'fr': 'secondes', 'it': 'secondi', 'es': 'segundos', 'pl': 'seconds', 'zh-cn': '秒', 'uk': 'секунд'};
Blockly.Words['cron_builder_line'] = {'en': 'as line', 'de': 'Als Linie', 'ru': 'в линию', 'pt': 'como linha', 'nl': 'als lijn', 'fr': 'en ligne', 'it': 'come linea', 'es': 'como línea', 'pl': 'as line', 'zh-cn': '横向显示', 'uk': 'як лінія'};
// --- trigger procedures --------------------------------------------------
Blockly.Words['procedures_defcustomreturn_name'] = {'en': 'JS function with return', 'de': 'JS-Funktion mit Ergebnis', 'ru': 'JS функция с результатом', 'pt': 'Função JS com resultado', 'nl': 'JS function with return', 'fr': 'JS function with return', 'it': 'JS function with return', 'es': 'JS function with return', 'pl': 'JS function with return', 'zh-cn': 'JS function with return', 'uk': 'Функція JS із поверненням'};
Blockly.Words['procedures_defcustomnoreturn_name'] = {'en': 'Javascript function', 'de': 'Javascript-Funktion', 'ru': 'Javascript функция', 'pt': 'Função JavaScript', 'nl': 'Javascript function', 'fr': 'Javascript function', 'it': 'Javascript function', 'es': 'Javascript function', 'pl': 'Javascript function', 'zh-cn': 'Javascript function', 'uk': 'Функція Javascript'};
// --- trigger logic --------------------------------------------------
Blockly.Words['logic_switch_case'] = {'en': 'Switch / case', 'de': 'Schaltergehäuse', 'ru': 'Переключатель / чехол', 'pt': 'Switch / case', 'nl': 'Schakelaar / case', 'fr': 'Interrupteur / boîtier', 'it': 'Scatola dell\'interruttore', 'es': 'Interruptor / caja', 'pl': 'Sprawa przełącznik', 'zh-cn': '开关/箱', 'uk': 'Перемикач / корпус'};
Blockly.Words['logic_switch_case_is'] = {'en': 'the case is', 'de': 'der Fall ist', 'ru': 'условие', 'pt': 'o caso é', 'nl': 'het geval is', 'fr': 'le cas est', 'it': 'il caso è', 'es': 'el caso es', 'pl': 'sprawa jest', 'zh-cn': '情况是', 'uk': 'справа є'};
Blockly.Words['logic_switch_case_of'] = {'en': 'in case of', 'de': 'im Falle von', 'ru': 'в случае', 'pt': 'no caso de', 'nl': 'in het geval van', 'fr': 'en cas de', 'it': 'in caso di', 'es': 'en caso de', 'pl': 'w przypadku', 'zh-cn': '的情况下', 'uk': 'в випадку'};
Blockly.Words['logic_switch_do'] = {'en': 'do', 'de': 'machen', 'ru': 'выполнить', 'pt': 'Faz', 'nl': 'Doen', 'fr': 'faire', 'it': 'fare', 'es': 'hacer', 'pl': 'zrobić', 'zh-cn': '做', 'uk': 'робити'};
Blockly.Words['logic_switch_tooltip'] = {'en': 'Does something if the condition is true. If there isn\'t a matching case the default function will be executed.', 'de': 'Tut etwas, wenn die Bedingung erfüllt ist. Wenn es keinen passenden Fall gibt, wird die Standardfunktion ausgeführt.', 'ru': 'Делает что-то, если условие выполняется. Если совпадения не найдено, будет выполнена функция по умолчанию.', 'pt': 'Faz alguma coisa se a condição for verdadeira. Se não houver um caso correspondente, a função padrão será executada.', 'nl': 'Doet iets als de voorwaarde waar is. Als er geen overeenkomende case is, wordt de standaardfunctie uitgevoerd.', 'fr': 'Fait quelque chose si la condition est vraie. S\'il n\'y a pas de cas correspondant, la fonction par défaut sera exécutée.', 'it': 'Fa qualcosa se la condizione è vera. Se non esiste un caso corrispondente, verrà eseguita la funzione predefinita.', 'es': 'Hace algo si la condición es verdadera. Si no hay un caso coincidente, se ejecutará la función predeterminada.', 'pl': 'Robi coś, jeśli warunek jest spełniony. Jeśli nie ma pasującego przypadku, zostanie wykonana funkcja domyślna.', 'zh-cn': '如果条件为真,则执行某些操作。如果没有匹配的情况,将执行默认功能。', 'uk': 'Робить щось, якщо умова істинна. Якщо відповідного регістру немає, буде виконано функцію за замовчуванням.'};
Blockly.Words['logic_switch_default_tooltip'] = {'en': 'This function will run if there aren\'t any matching cases.', 'de': 'Diese Funktion wird ausgeführt, wenn keine übereinstimmenden Fälle vorliegen.', 'ru': 'Эта функция будет запущена, если нет соответствующих случаев.', 'pt': 'Esta função será executada se não houver casos correspondentes.', 'nl': 'Deze functie wordt uitgevoerd als er geen overeenkomende gevallen zijn.', 'fr': 'Cette fonction s\'exécutera s\'il n\'y a pas de cas correspondants.', 'it': 'Questa funzione verrà eseguita se non ci sono casi corrispondenti.', 'es': 'Esta función se ejecutará si no hay casos coincidentes.', 'pl': 'Ta funkcja będzie działać, jeśli nie ma pasujących przypadków.', 'zh-cn': '如果没有匹配的情况,此功能将运行。', 'uk': 'Ця функція запуститься, якщо немає відповідних регістрів.'};
Blockly.Words['logic_switch_control_case_tooltip'] = {'en': 'This is a variable for condition.', 'de': 'Dies ist eine Variable für die Bedingung.', 'ru': 'Это переменная для условия.', 'pt': 'Esta é uma variável para a condição.', 'nl': 'Dit is een variabele voor conditie.', 'fr': 'Il s\'agit d\'une variable de condition.', 'it': 'Questa è una variabile per condizione.', 'es': 'Esta es una variable para la condición.', 'pl': 'Jest to zmienna warunku.', 'zh-cn': '这是用于条件的变量。', 'uk': 'Це змінна умови.'};
// --- trigger onFile --------------------------------------------------
Blockly.Words['onFile'] = {'en': 'Event: file update', 'de': 'Ereignis: Datei geändert', 'ru': 'Событие: файл обновлён', 'pt': 'Evento: se arquivo', 'nl': 'Gebeurtenis: als bestand', 'fr': 'Evénement : si fichier', 'it': 'Evento: se file', 'es': 'Evento: si el archivo', 'pl': 'Zdarzenie: jeśli plik', 'zh-cn': '事件:如果文件', 'uk': 'Подія: оновлення файлу'};
Blockly.Words['onFile_file'] = {'en': 'File pattern', 'de': 'Dateischema', 'ru': 'Шаблон файла', 'pt': 'Padrão de arquivo', 'nl': 'Bestandspatroon', 'fr': 'Modèle de fichier', 'it': 'Modello di file', 'es': 'patrón de archivo', 'pl': 'Wzór pliku', 'zh-cn': '文件模式', 'uk': 'Шаблон файлу'};
Blockly.Words['onFile_withFile'] = {'en': 'With file data', 'de': 'Mit Dateidaten', 'ru': 'С данными файла', 'pt': 'Com dados de arquivo', 'nl': 'Met bestandsgegevens', 'fr': 'Avec les données du fichier', 'it': 'Con dati di file', 'es': 'Con datos de archivo', 'pl': 'Z danymi pliku', 'zh-cn': '有文件数据', 'uk': 'З даними файлу'};
Blockly.Words['onFile_tooltip'] = {'en': 'If some file changed or updated', 'de': 'Wenn sich eine Datei geändert oder aktualisiert hat', 'ru': 'Если какой-то файл изменился или обновился', 'pt': 'Se algum arquivo mudou ou atualizou', 'nl': 'Als een bestand is gewijzigd of bijgewerkt', 'fr': 'Si un fichier a été modifié ou mis à jour', 'it': 'Se qualche file è cambiato o aggiornato', 'es': 'Si algún archivo cambió o actualizó', 'pl': 'Jeśli jakiś plik został zmieniony lub zaktualizowany', 'zh-cn': '如果某些文件更改或更新', 'uk': 'Якщо якийсь файл змінено або оновлено'};
Blockly.Words['onFile_help'] = {'en': 'onFile', 'de': 'onFile', 'ru': 'onFile', 'pt': 'onFile', 'nl': 'onFile', 'fr': 'onFile', 'it': 'onFile', 'es': 'onFile', 'pl': 'onFile', 'zh-cn': 'onFile', 'uk': 'onFile'};
// --- trigger onFile_data --------------------------------------------------
Blockly.Words['onFile_data_data'] = {'en': 'data', 'de': 'Data', 'ru': 'data', 'pt': 'data', 'nl': 'data', 'fr': 'data', 'it': 'data', 'es': 'data', 'pl': 'data', 'zh-cn': 'data', 'uk': 'data'};
Blockly.Words['onFile_data_filename'] = {'en': 'file name', 'de': 'Dateiname', 'ru': 'Имя файла', 'pt': 'Nome do arquivo', 'nl': 'Bestandnaam', 'fr': 'Nom du fichier', 'it': 'Nome del file', 'es': 'Nombre del archivo', 'pl': 'Nazwa pliku', 'zh-cn': '文件名', 'uk': 'Ім\'я файла'};
Blockly.Words['onFile_data_size'] = {'en': 'file size', 'de': 'Dateigröße', 'ru': 'Размер файла', 'pt': 'Tamanho do arquivo', 'nl': 'Bestandsgrootte', 'fr': 'Taille du fichier', 'it': 'Dimensione del file', 'es': 'Tamaño del archivo', 'pl': 'Rozmiar pliku', 'zh-cn': '文件大小', 'uk': 'Розмір файлу'};
Blockly.Words['onFile_data_mimeType'] = {'en': 'mimeType', 'de': 'mimeType', 'ru': 'mimeType', 'pt': 'mimeType', 'nl': 'mimeType', 'fr': 'mimeType', 'it': 'mimeType', 'es': 'mimeType', 'pl': 'mimeType', 'zh-cn': 'mimeType', 'uk': 'mimeType'};
Blockly.Words['onFile_data_id'] = {'en': 'id', 'de': 'id', 'ru': 'id', 'pt': 'id', 'nl': 'id', 'fr': 'id', 'it': 'id', 'es': 'id', 'pl': 'id', 'zh-cn': 'id', 'uk': 'id'};
Blockly.Words['onFile_data_warning'] = {'en': 'This block must be used inside of file trigger blocks', 'de': 'Dieser Block muss innerhalb von Datei-Trigger-Blöcken verwendet werden', 'ru': 'Этот блок должен быть использован внутри файловых триггерных блоков', 'pt': 'Este bloco deve ser usado dentro de blocos de gatilho de arquivo', 'nl': 'Dit blok moet worden gebruikt binnen bestand trigger blokken', 'fr': 'Ce bloc doit être utilisé à l\'intérieur des blocs de déclenchement de fichier', 'it': 'Questo blocco deve essere utilizzato all\'interno dei blocchi di file trigger', 'es': 'Este bloque debe ser utilizado dentro de bloques de activación de archivos', 'pl': 'Ten blok musi być użyty wewnątrz bloków wyzwalających plik', 'zh-cn': '此块必须在文件触发块内使用', 'uk': 'Цей блок повинен бути використаний всередині блоків запуску файлів'};
Blockly.Words['onFile_datatooltip'] = {'en': 'Information about updated file', 'de': 'Informationen über die aktualisierte Datei', 'ru': 'Информация об обновленном файле', 'pt': 'InformaçÃμes sobre o arquivo atualizado', 'nl': 'Informatie over bijgewerkt bestand', 'fr': 'Informations sur le fichier mis à jour', 'it': 'Informazioni sul file aggiornato', 'es': 'Información sobre el archivo actualizado', 'pl': 'Informacje o zaktualizowanym pliku', 'zh-cn': '关于更新文件的信息', 'uk': 'Інформація про оновлений файл'};
// --- trigger offFile --------------------------------------------------
Blockly.Words['offFile'] = {'en': 'Cancel file event', 'de': 'Dateiereignis entfernen', 'ru': 'Отменить событие файла', 'pt': 'Cancelar evento de arquivo', 'nl': 'Bestandsgebeurtenis annuleren', 'fr': 'Annuler l\'événement de fichier', 'it': 'Annulla evento file', 'es': 'Cancelar evento de archivo', 'pl': 'Anuluj zdarzenie pliku', 'zh-cn': '取消文件事件', 'uk': 'Скасувати подію файлу'};
Blockly.Words['offFile_tooltip'] = {'en': 'Cancel subscription on file change', 'de': 'Abonnement bei Dateiänderung kündigen', 'ru': 'Отменить подписку на изменение файла', 'pt': 'Cancelar assinatura na alteração do arquivo', 'nl': 'Abonnement opzeggen bij bestandswijziging', 'fr': 'Annuler l\'abonnement en cas de changement de fichier', 'it': 'Annulla l\'abbonamento in caso di modifica del file', 'es': 'Cancelar suscripción en cambio de archivo', 'pl': 'Anuluj subskrypcję po zmianie pliku', 'zh-cn': '取消订阅文件更改', 'uk': 'Скасувати підписку на зміну файлу'};
Blockly.Words['offFile_help'] = {'en': 'offFile', 'de': 'offFile', 'ru': 'offFile', 'pt': 'offFile', 'nl': 'offFile', 'fr': 'offFile', 'it': 'offFile', 'es': 'offFile', 'pl': 'offFile', 'zh-cn': 'offFile', 'uk': 'offFile'};
// --- trigger sendto --------------------------------------------------
Blockly.Words['sendto_otherscript_name'] = {'en': 'message to other script', 'de': 'Nachricht an andere Skript', 'ru': 'Сообщение другому скрипту', 'pt': 'Mensagem para outro script', 'nl': 'Bericht naar ander script', 'fr': 'Message à un autre script', 'it': 'Messaggio ad altri script', 'es': 'Mensaje a otro script', 'pl': 'Posłanie do innych scenariuszy', 'zh-cn': '其他说明', 'uk': 'Повідомлення на інший скрипт'};
Blockly.Words['sendto_otherscript_instance'] = {'en': 'Instance', 'de': 'Instanz', 'ru': 'Экземпляр', 'pt': 'instância', 'nl': 'Voorbeeld', 'fr': 'Exemple', 'it': 'Esempio', 'es': 'Instancia', 'pl': 'Instancja', 'zh-cn': '实例', 'uk': 'екземпляр'};
Blockly.Words['sendto_otherscript_anyInstance'] = {'en': 'all instances', 'de': 'Alle Instanzen', 'ru': 'На все драйвера', 'pt': 'todas as instâncias', 'nl': 'alle instanties', 'fr': 'toutes les instances', 'it': 'tutte le istanze', 'es': 'todas las instancias', 'pl': 'all instances', 'zh-cn': '所有实例', 'uk': 'всі екземпляри'};
Blockly.Words['sendto_otherscript_timeout'] = {'en': 'timeout', 'de': 'Timeout', 'ru': 'timeout', 'pt': 'timeout', 'nl': 'timeout', 'fr': 'timeout', 'it': 'timeout', 'es': 'timeout', 'pl': 'timeout', 'zh-cn': 'timeout', 'uk': 'timeout'};
Blockly.Words['sendto_otherscript_script'] = {'en': 'script', 'de': 'skript', 'ru': 'скрипт', 'pt': 'script', 'nl': 'Script', 'fr': 'scénario', 'it': 'copione', 'es': 'guión', 'pl': 'scenariusz', 'zh-cn': '脚本', 'uk': 'сценарій'};
Blockly.Words['sendto_otherscript_message'] = {'en': 'message', 'de': 'Meldung', 'ru': 'сообщение', 'pt': 'mensagem', 'nl': 'bericht', 'fr': 'message', 'it': 'messaggio', 'es': 'mensaje', 'pl': 'komunikat', 'zh-cn': '消息', 'uk': 'повідомлення'};
Blockly.Words['sendto_otherscript_data'] = {'en': 'data', 'de': 'Daten', 'ru': 'данные', 'pt': 'dados', 'nl': 'data', 'fr': 'données', 'it': 'dati', 'es': 'datos', 'pl': 'dane', 'zh-cn': '数据', 'uk': 'даних'};
Blockly.Words['sendto_otherscript_tooltip'] = {'en': 'other script', 'de': 'anderes Script', 'ru': 'другой сценарий', 'pt': 'outros scripts', 'nl': 'andere script', 'fr': 'autre script', 'it': 'altri script', 'es': 'otro script', 'pl': 'inny scenariusz', 'zh-cn': '其他说明', 'uk': 'інший сценарій'};
Blockly.Words['sendto_otherscript_help'] = {'en': 'messageTo', 'de': 'messageTo', 'ru': 'messageTo', 'pt': 'messageTo', 'nl': 'messageTo', 'fr': 'messageTo', 'it': 'messageTo', 'es': 'messageTo', 'pl': 'messageTo', 'zh-cn': 'messageTo', 'uk': 'messageTo'};
// --- trigger onMessage --------------------------------------------------
Blockly.Words['onMessage'] = {'en': 'Event: Received message', 'de': 'Ereignis: Nachricht empfangen', 'ru': 'Событие: Полученное сообщение', 'pt': 'Evento: Mensagem recebida', 'nl': 'Gebeurtenis: bericht ontvangen', 'fr': 'Événement : Message reçu', 'it': 'Evento: messaggio ricevuto', 'es': 'Evento: Mensaje recibido', 'pl': 'Zdarzenie: odebrano wiadomość', 'zh-cn': '活动:收到信息', 'uk': 'Подія: Отримано повідомлення'};
Blockly.Words['onMessage_message'] = {'en': 'message', 'de': 'Meldung', 'ru': 'сообщение', 'pt': 'mensagem', 'nl': 'bericht', 'fr': 'message', 'it': 'messaggio', 'es': 'mensaje', 'pl': 'komunikat', 'zh-cn': '消息', 'uk': 'повідомлення'};
Blockly.Words['onMessage_tooltip'] = {'en': 'message', 'de': 'Meldung', 'ru': 'сообщение', 'pt': 'mensagem', 'nl': 'bericht', 'fr': 'message', 'it': 'messaggio', 'es': 'mensaje', 'pl': 'komunikat', 'zh-cn': '消息', 'uk': 'повідомлення'};
Blockly.Words['onMessage_help'] = {'en': 'onMessage', 'de': 'onMessage', 'ru': 'onMessage', 'pt': 'onMessage', 'nl': 'onMessage', 'fr': 'onMessage', 'it': 'onMessage', 'es': 'onMessage', 'pl': 'onMessage', 'zh-cn': 'onMessage', 'uk': 'onMessage'};
// --- LOGIC --------------------------------------------------
// --- logic multi and --------------------------------------------------
Blockly.Words['logic_multi_and'] = {'en': 'Conditions', 'de': 'Bedingungen', 'ru': 'Условия', 'pt': 'Condições', 'nl': 'Voorwaarden', 'fr': 'Conditions', 'it': 'Condizioni', 'es': 'Condiciones', 'pl': 'Warunki', 'zh-cn': '条件', 'uk': 'Умови'};
Blockly.Words['logic_multi_and_and'] = {'en': 'and', 'de': 'und', 'ru': 'и', 'pt': 'e', 'nl': 'en', 'fr': 'et', 'it': 'e', 'es': 'y', 'pl': 'and', 'zh-cn': '和', 'uk': 'і'};
Blockly.Words['logic_multi_and_tooltip'] = {'en': '', 'de': '', 'ru': '', 'pt': '', 'nl': '', 'fr': '', 'it': '', 'es': '', 'pl': '', 'zh-cn': '', 'uk': ''};
// --- logic multi or --------------------------------------------------
Blockly.Words['logic_multi_or'] = {'en': 'Conditions', 'de': 'Bedingungen', 'ru': 'Условия', 'pt': 'Condições', 'nl': 'Voorwaarden', 'fr': 'Conditions', 'it': 'Condizioni', 'es': 'Condiciones', 'pl': 'Warunki', 'zh-cn': '条件', 'uk': 'Умови'};
Blockly.Words['logic_multi_or_or'] = {'en': 'or', 'de': 'oder', 'ru': 'или', 'pt': 'ou', 'nl': 'of', 'fr': 'ou', 'it': 'o', 'es': 'o', 'pl': 'lub', 'zh-cn': '或', 'uk': 'або'};
Blockly.Words['logic_multi_or_tooltip'] = {'en': '', 'de': '', 'ru': '', 'pt': '', 'nl': '', 'fr': '', 'it': '', 'es': '', 'pl': '', 'zh-cn': '', 'uk': ''};
// --- logic between --------------------------------------------------
Blockly.Words['logic_between_min'] = {'en': 'Min', 'de': 'Min', 'ru': 'Мин', 'pt': 'Min', 'nl': 'Min', 'fr': 'Min', 'it': 'Min', 'es': 'Min', 'pl': 'Min', 'zh-cn': '明 明', 'uk': 'Мінуси'};
Blockly.Words['logic_between_max'] = {'en': 'Max', 'de': 'Max', 'ru': 'Макс', 'pt': 'Max', 'nl': 'Max', 'fr': 'Max', 'it': 'Max', 'es': 'Max', 'pl': 'Max', 'zh-cn': 'Max', 'uk': 'Макс'};
Blockly.Words['logic_between_tooltip'] = {'en': 'if a number between min and max', 'de': 'wenn eine Zahl zwischen min und max', 'ru': 'если число между min и max', 'pt': 'se um número entre min e max', 'nl': 'als een getal tussen min en max', 'fr': 'si un nombre entre min et max', 'it': 'se un numero compreso tra min e max', 'es': 'si un número entre min y max', 'pl': 'jeśli liczba między min a max', 'zh-cn': '如果最小值和最大值之间的数字', 'uk': 'якщо число між min і max'};
// --- logic ifempty --------------------------------------------------
Blockly.Words['logic_ifempty'] = {'en': 'if empty', 'de': 'wenn leer', 'ru': 'если пусто', 'pt': 'se vazio', 'nl': '_', 'fr': 'si vide', 'it': 'se vuoto', 'es': 'si está vacío', 'pl': 'jeśli chodzi o puste', 'zh-cn': '空', 'uk': 'якщо порожній'};
Blockly.Words['logic_ifempty_then'] = {'en': 'then', 'de': 'dann', 'ru': 'затем', 'pt': 'então', 'nl': 'dan', 'fr': 'puis', 'it': 'allora', 'es': 'entonces', 'pl': 'potem', 'zh-cn': '然后', 'uk': 'потім'};
Blockly.Words['logic_ifempty_tooltip'] = {'en': 'check if empty', 'de': 'Überprüfen, ob es leer ist', 'ru': 'проверить, если пусто', 'pt': 'verifique se está vazio', 'nl': 'controleer of leeg', 'fr': 'vérifier si vide', 'it': 'controlla se vuoto', 'es': 'comprobar si está vacío', 'pl': 'sprawdź, czy jest pusty', 'zh-cn': '检查是否为空', 'uk': 'перевірити, чи порожній'};
function getHelp(word) {
return `https://github.com/ioBroker/ioBroker.javascript/blob/master/docs/en/javascript.md#${Blockly.Words?.[word]?.[systemLang] || Blockly.Words[word]?.en || word}`;
}
Blockly.Translate = function (word, lang) {
lang = lang || systemLang;
if (Blockly.Words && Blockly.Words[word]) {
return Blockly.Words[word]?.[lang] || Blockly.Words[word]?.en || word;
} else {
return word;
}
};
if (typeof module !== 'undefined' && typeof module.parent !== 'undefined') {
module.exports = Blockly;
}