text: // This file was automatically generated from common.soy.
  // Please don't edit this file by hand.
  
  if (typeof apps == 'undefined') { var apps = {}; }
  
  
  apps.messages = function(opt_data, opt_ignored, opt_ijData) {
    return '<div style="display: none"><span id="subtitle">un contorno de programación visual</span><span id="blocklyMessage">Blockly</span><span id="codeTooltip">Ver o código JavaScript xerado.</span><span id="linkTooltip">Gardar e crear unha ligazón aos bloques.</span><span id="runTooltip">Executar o programa definido polos bloques no \\nespazo de traballo. </span><span id="runProgram">Executar o programa</span><span id="resetProgram">Restablecer</span><span id="dialogOk">Aceptar</span><span id="dialogCancel">Cancelar</span><span id="catLogic">Lóxica</span><span id="catLoops">Bucles</span><span id="catMath">Matemáticas</span><span id="catText">Texto</span><span id="catLists">Listas</span><span id="catColour">Cor</span><span id="catVariables">Variables</span><span id="catProcedures">Procedementos</span><span id="httpRequestError">Houbo un problema coa solicitude.</span><span id="linkAlert">Comparte os teus bloques con esta ligazón:\n\n%1</span><span id="hashError">Sentímolo, "%1" non se corresponde con ningún programa gardado.</span><span id="xmlError">Non se puido cargar o ficheiro gardado. Se cadra, foi creado cunha versión diferente de Blockly.</span><span id="listVariable">lista</span><span id="textVariable">texto</span></div>';
  };
  
  
  apps.dialog = function(opt_data, opt_ignored, opt_ijData) {
    return '<div id="dialogShadow" class="dialogAnimate"></div><div id="dialogBorder"></div><div id="dialog"></div>';
  };
  
  
  apps.codeDialog = function(opt_data, opt_ignored, opt_ijData) {
    return '<div id="dialogCode" class="dialogHiddenContent"><pre id="containerCode"></pre>' + apps.ok(null, null, opt_ijData) + '</div>';
  };
  
  
  apps.storageDialog = function(opt_data, opt_ignored, opt_ijData) {
    return '<div id="dialogStorage" class="dialogHiddenContent"><div id="containerStorage"></div>' + apps.ok(null, null, opt_ijData) + '</div>';
  };
  
  
  apps.ok = function(opt_data, opt_ignored, opt_ijData) {
    return '<div class="farSide" style="padding: 1ex 3ex 0"><button class="secondary" onclick="BlocklyApps.hideDialog(true)">Aceptar</button></div>';
  };
  
  ;
  // This file was automatically generated from template.soy.
  // Please don't edit this file by hand.
  
  if (typeof codepage == 'undefined') { var codepage = {}; }
  
  
  codepage.messages = function(opt_data, opt_ignored, opt_ijData) {
    return apps.messages(null, null, opt_ijData) + '<div style="display: none"><span id="Code_badXml">Erro de análise do XML:\n%1\n\nSelecciona "Aceptar" se queres anular os cambios ou "Cancelar" para seguir editando o XML.</span><span id="Code_badCode">Erro do programa:\n%1</span><span id="Code_timeout">Superouse o número máximo de iteracións durante a execución.</span><span id="Code_discard">Queres borrar os %1 bloques?</span></div>';
  };
  
  
  codepage.start = function(opt_data, opt_ignored, opt_ijData) {
    return codepage.messages(null, null, opt_ijData) + '<script type="text/javascript" src="../../blockly_compressed.js"><\/script><script type="text/javascript" src="../../blocks_compressed.js"><\/script><script type="text/javascript" src="../../javascript_compressed.js"><\/script><script type="text/javascript" src="../../python_compressed.js"><\/script><script type="text/javascript" src="../../' + soy.$$escapeHtml(opt_ijData.langSrc) + '"><\/script><table width="100%" height="100%"><tr><td><h1><span id="title"><a href="../index.html?lang=' + soy.$$escapeHtml(opt_ijData.lang) + '">Blockly</a> : Código</span></h1></td><td class="farSide"><select id="languageMenu"></select></td></tr><tr><td colspan=2><table width="100%"><tr id="tabRow" height="1em"><td id="tab_blocks" class="tabon">Bloques</td><td class="tabmin">&nbsp;</td><td id="tab_javascript" class="taboff">JavaScript</td><td class="tabmin">&nbsp;</td><td id="tab_python" class="taboff">Python</td><td class="tabmin">&nbsp;</td><td id="tab_xml" class="taboff">XML</td><td class="tabmax"><button id="trashButton" class="notext" title="Descartar todos os bloques."><img src=\'../../media/1x1.gif\' class="trash icon21"></button> <button id="linkButton" class="notext" title="Gardar e crear unha ligazón aos bloques."><img src=\'../../media/1x1.gif\' class="link icon21"></button> <button id="runButton" class="notext primary" title="Executar o programa definido polos bloques no \\nespazo de traballo. "><img src=\'../../media/1x1.gif\' class="run icon21"></button></td></tr></table></td></tr><tr><td height="99%" colspan=2 id="content_area">' + codepage.toolbox(null, null, opt_ijData) + '</td></tr></table><div id="content_blocks" class="content"></div><pre id="content_javascript" class="content"></pre><pre id="content_python" class="content"></pre><textarea id="content_xml" class="content" wrap="off"></textarea>' + apps.dialog(null, null, opt_ijData) + apps.storageDialog(null, null, opt_ijData);
  };
  
  
  codepage.toolbox = function(opt_data, opt_ignored, opt_ijData) {
    return '<xml id="toolbox" style="display: none"><category name="Lóxica"><block type="controls_if"></block><block type="logic_compare"></block><block type="logic_operation"></block><block type="logic_negate"></block><block type="logic_boolean"></block><block type="logic_null"></block><block type="logic_ternary"></block></category><category name="Bucles"><block type="controls_repeat_ext"><value name="TIMES"><block type="math_number"><title name="NUM">10</title></block></value></block><block type="controls_whileUntil"></block><block type="controls_for"><value name="FROM"><block type="math_number"><title name="NUM">1</title></block></value><value name="TO"><block type="math_number"><title name="NUM">10</title></block></value><value name="BY"><block type="math_number"><title name="NUM">1</title></block></value></block><block type="controls_forEach"></block><block type="controls_flow_statements"></block></category><category name="Matemáticas"><block type="math_number"></block><block type="math_arithmetic"></block><block type="math_single"></block><block type="math_trig"></block><block type="math_constant"></block><block type="math_number_property"></block><block type="math_change"><value name="DELTA"><block type="math_number"><title name="NUM">1</title></block></value></block><block type="math_round"></block><block type="math_on_list"></block><block type="math_modulo"></block><block type="math_constrain"><value name="LOW"><block type="math_number"><title name="NUM">1</title></block></value><value name="HIGH"><block type="math_number"><title name="NUM">100</title></block></value></block><block type="math_random_int"><value name="FROM"><block type="math_number"><title name="NUM">1</title></block></value><value name="TO"><block type="math_number"><title name="NUM">100</title></block></value></block><block type="math_random_float"></block></category><category name="Texto"><block type="text"></block><block type="text_join"></block><block type="text_append"><value name="TEXT"><block type="text"></block></value></block><block type="text_length"></block><block type="text_isEmpty"></block><block type="text_indexOf"><value name="VALUE"><block type="variables_get"><title name="VAR">texto</title></block></value></block><block type="text_charAt"><value name="VALUE"><block type="variables_get"><title name="VAR">texto</title></block></value></block><block type="text_getSubstring"><value name="STRING"><block type="variables_get"><title name="VAR">texto</title></block></value></block><block type="text_changeCase"></block><block type="text_trim"></block><block type="text_print"></block><block type="text_prompt"></block></category><category name="Listas"><block type="lists_create_empty"></block><block type="lists_create_with"></block><block type="lists_repeat"><value name="NUM"><block type="math_number"><title name="NUM">5</title></block></value></block><block type="lists_length"></block><block type="lists_isEmpty"></block><block type="lists_indexOf"><value name="VALUE"><block type="variables_get"><title name="VAR">lista</title></block></value></block><block type="lists_getIndex"><value name="VALUE"><block type="variables_get"><title name="VAR">lista</title></block></value></block><block type="lists_setIndex"><value name="LIST"><block type="variables_get"><title name="VAR">lista</title></block></value></block><block type="lists_getSublist"><value name="LIST"><block type="variables_get"><title name="VAR">lista</title></block></value></block></category><category name="Cor"><block type="colour_picker"></block><block type="colour_random"></block><block type="colour_rgb"></block><block type="colour_blend"></block></category><category name="Variables" custom="VARIABLE"></category><category name="Procedementos" custom="PROCEDURE"></category></xml>';
  };
  
  
  codepage.readonly = function(opt_data, opt_ignored, opt_ijData) {
    return codepage.messages(null, null, opt_ijData) + '<script type="text/javascript" src="../../blockly_compressed.js"><\/script><script type="text/javascript" src="../../blocks_compressed.js"><\/script><script type="text/javascript" src="../../' + soy.$$escapeHtml(opt_ijData.langSrc) + '"><\/script><div id="blockly"></div>';
  };
  