def render(__stream, econtext, rcontext, __i18n_domain=None, __i18n_context=None): __append = __stream.append __re_amp = g_re_amp __token = None __re_needs_escape = g_re_needs_escape def __convert(target): if (target is None): return __tt = type(target) if ((__tt is int) or (__tt is float) or (__tt is int)): target = str(target) else: if (__tt is bytes): target = decode(target) else: if (__tt is not str): try: target = target.__html__ except AttributeError: __converted = convert(target) target = (str(target) if (target is __converted) else __converted) else: target = target() return target def __quote(target, quote, quote_entity, default, default_marker): if (target is None): return if (target is default_marker): return default __tt = type(target) if ((__tt is int) or (__tt is float) or (__tt is int)): target = str(target) else: if (__tt is bytes): target = decode(target) else: if (__tt is not str): try: target = target.__html__ except: __converted = convert(target) target = (str(target) if (target is __converted) else __converted) else: return target() if (target is not None): try: escape = (__re_needs_escape(target) is not None) except TypeError: pass else: if escape: if ('&' in target): target = target.replace('&', '&') if ('<' in target): target = target.replace('<', '<') if ('>' in target): target = target.replace('>', '>') if ((quote is not None) and (quote in target)): target = target.replace(quote, quote_entity) return target translate = econtext['__translate'] decode = econtext['__decode'] convert = econtext['__convert'] on_error_handler = econtext['__on_error_handler'] try: getitem = econtext.__getitem__ get = econtext.get # <Interpolation value=<Substitution 'grf {\n\tgrfid: "\\4A\\44\\88\\07";\n\tname: string(STR_GRF_NAME);\n\tdesc: string(STR_GRF_DESC);\n\turl: string(STR_GRF_URL);\n\tversion: ${repo_vars.repo_revision};\n\tmin_compatible_version: 9030;\n\tparam 0 {\n\t ' (1:0)> braces_required=True translation=False at 7fe5c69922b0> -> __content_140624874349824 __token = 0 __token = 127 __content_140624874349824 = _lookup_attr(getitem('repo_vars'), 'repo_revision') __content_140624874349824 = __quote(__content_140624874349824, '\x00', '�', None, False) __content_140624874349824 = ('%s%s%s' % ('grf {\n\tgrfid: "\\4A\\44\\88\\07";\n\tname: string(STR_GRF_NAME);\n\tdesc: string(STR_GRF_DESC);\n\turl: string(STR_GRF_URL);\n\tversion: ', (__content_140624874349824 if (__content_140624874349824 is not None) else ''), ';\n\tmin_compatible_version: 9030;\n\tparam 0 {\n\t ', )) if (__content_140624874349824 is None): pass else: if (__content_140624874349824 is False): __content_140624874349824 = None else: __tt = type(__content_140624874349824) if ((__tt is int) or (__tt is float) or (__tt is int)): __content_140624874349824 = str(__content_140624874349824) else: if (__tt is bytes): __content_140624874349824 = decode(__content_140624874349824) else: if (__tt is not str): try: __content_140624874349824 = __content_140624874349824.__html__ except get('AttributeError', AttributeError): __converted = convert(__content_140624874349824) __content_140624874349824 = (str(__content_140624874349824) if (__content_140624874349824 is __converted) else __converted) else: __content_140624874349824 = __content_140624874349824() if (__content_140624874349824 is not None): __append(__content_140624874349824) # <Interpolation value=<Substitution '\n\t\teconomy_selection {\n\t\t\tname: string(STR_PARAM_NAME_ECONOMIES);\n\t\t\tdesc: string(STR_PARAM_DESC_ECONOMIES);\n\t\t\tmin_value: 0;\n\t\t\tmax_value: ${len(economies)-1};\n\t\t\tnames: {\n\t\t\t ' (9:122)> braces_required=True translation=False at 7fe5c6992390> -> __content_140624874349824 __token = 320 __token = 459 __content_140624874349824 = (len(getitem('economies')) - 1) __content_140624874349824 = __quote(__content_140624874349824, '\x00', '�', None, False) __content_140624874349824 = ('%s%s%s' % ('\n\t\teconomy_selection {\n\t\t\tname: string(STR_PARAM_NAME_ECONOMIES);\n\t\t\tdesc: string(STR_PARAM_DESC_ECONOMIES);\n\t\t\tmin_value: 0;\n\t\t\tmax_value: ', (__content_140624874349824 if (__content_140624874349824 is not None) else ''), ';\n\t\t\tnames: {\n\t\t\t ', )) if (__content_140624874349824 is None): pass else: if (__content_140624874349824 is False): __content_140624874349824 = None else: __tt = type(__content_140624874349824) if ((__tt is int) or (__tt is float) or (__tt is int)): __content_140624874349824 = str(__content_140624874349824) else: if (__tt is bytes): __content_140624874349824 = decode(__content_140624874349824) else: if (__tt is not str): try: __content_140624874349824 = __content_140624874349824.__html__ except get('AttributeError', AttributeError): __converted = convert(__content_140624874349824) __content_140624874349824 = (str(__content_140624874349824) if (__content_140624874349824 is __converted) else __converted) else: __content_140624874349824 = __content_140624874349824() if (__content_140624874349824 is not None): __append(__content_140624874349824) __backup_economy_140624881796208 = get('economy', __marker) # <Value 'economies' (16:44)> -> __iterator __token = 534 __iterator = getitem('economies') (__iterator, ____index_140624856163664, ) = getitem('repeat')('economy', __iterator) econtext['economy'] = None for __item in __iterator: econtext['economy'] = __item # <Interpolation value=<Substitution '\n ${repeat.economy.index}: string(STR_PARAM_VALUE_ECONOMIES_${economy.id});\n\t\t\t ' (16:55)> braces_required=True translation=False at 7fe5c6992588> -> __content_140624874349824 __token = 566 __token = 568 __content_140624874349824 = _lookup_attr(_lookup_attr(getitem('repeat'), 'economy'), 'index') __content_140624874349824 = __quote(__content_140624874349824, '\x00', '�', None, False) __token = 626 __content_140624874349824_624 = _lookup_attr(getitem('economy'), 'id') __content_140624874349824_624 = __quote(__content_140624874349824_624, '\x00', '�', None, False) __content_140624874349824 = ('%s%s%s%s%s' % ('\n ', (__content_140624874349824 if (__content_140624874349824 is not None) else ''), ': string(STR_PARAM_VALUE_ECONOMIES_', (__content_140624874349824_624 if (__content_140624874349824_624 is not None) else ''), ');\n\t\t\t ', )) if (__content_140624874349824 is None): pass else: if (__content_140624874349824 is False): __content_140624874349824 = None else: __tt = type(__content_140624874349824) if ((__tt is int) or (__tt is float) or (__tt is int)): __content_140624874349824 = str(__content_140624874349824) else: if (__tt is bytes): __content_140624874349824 = decode(__content_140624874349824) else: if (__tt is not str): try: __content_140624874349824 = __content_140624874349824.__html__ except get('AttributeError', AttributeError): __converted = convert(__content_140624874349824) __content_140624874349824 = (str(__content_140624874349824) if (__content_140624874349824 is __converted) else __converted) else: __content_140624874349824 = __content_140624874349824() if (__content_140624874349824 is not None): __append(__content_140624874349824) ____index_140624856163664 -= 1 if (____index_140624856163664 > 0): __append('') if (__backup_economy_140624881796208 is __marker): del econtext['economy'] else: econtext['economy'] = __backup_economy_140624881796208 __append('\n\t\t\t};\n\t\t}\n\t}\n\tparam 2 {\n\t\t') __append('\n\t\t') __append('\n\t\tallow_close_secondary {\n\t\t\tname: string(STR_PARAM_NAME_SECONDARY_NEVER_CLOSE);\n\t\t\tdesc: string(STR_PARAM_DESC_SECONDARY_NEVER_CLOSE);\n\t\t\ttype: bool;\n\t\t\tbit: 1;\n\t\t}\n\t\trestrict_open_during_gameplay {\n\t\t\tname: string(STR_PARAM_NAME_NO_OPENINGS);\n\t\t\tdesc: string(STR_PARAM_DESC_NO_OPENINGS);\n\t\t\ttype: bool;\n\t\t\tbit: 2;\n\t\t}\n\t}\n\t') __append('\n\t') # <Interpolation value=<Substitution '\n\tparam 7 {\n\t\tprimary_level1_produced_percent {\n\t\t\tname: string(STR_PARAM_NAME_PRIMARY_LEVEL1_BONUS);\n\t\t\tdesc: string(STR_PARAM_DESC_PRIMARY_LEVEL_BONUS);\n\t\t\tdef_value: 150;\n\t\t\tmin_value: 100;\n\t\t\tmax_value: 1000;\n\t\t}\n\t}\n\tparam 9 {\n\t\tprimary_level2_produced_percent {\n\t\t\tname: string(STR_PARAM_NAME_PRIMARY_LEVEL2_BONUS);\n\t\t\tdesc: string(STR_PARAM_DESC_PRIMARY_LEVEL_BONUS);\n\t\t\tdef_value: 300;\n\t\t\tmin_value: 100;\n\t\t\tmax_value: 1000;\n\t\t}\n\t}\n\tparam 6 {\n\t\tprimary_level1_requirement {\n\t\t\tname: string(STR_PARAM_NAME_PRIMARY_LEVEL1_REQUIREMENT);\n\t\t\tdesc: string(STR_PARAM_DESC_PRIMARY_LEVEL_REQUIREMENT);\n\t\t\tdef_value: ${global_constants.FARM_MINE_SUPPLY_REQUIREMENT};\n\t\t\tmin_value: 1;\n\t\t\tmax_value: 10000;\n\t\t}\n\t}\n\tparam 8 {\n\t\tprimary_level2_requirement {\n\t\t\tname: string(STR_PARAM_NAME_PRIMARY_LEVEL2_REQUIREMENT);\n\t\t\tdesc: string(STR_PARAM_DESC_PRIMARY_LEVEL_REQUIREMENT);\n\t\t\tdef_value: ${5 * global_constants.FARM_MINE_SUPPLY_REQUIREMENT};\n\t\t\tmin_value: 1;\n\t\t\tmax_value: 10000;\n\t\t}\n\t}\n\tparam 4 {\n\t\tmarine_industry_max_coastal_distance {\n\t\t\tname: string(STR_PARAM_NAME_COAST_DISTANCE_MARINE_INDUSTRY);\n\t\t\tdesc: string(STR_PARAM_DESC_COAST_DISTANCE_MARINE_INDUSTRY);\n\t\t\ttype: int;\n\t\t\tdef_value: 0;\n\t\t\tmin_value: 0;\n\t\t\tmax_value: 255;\n\t\t\tnames: {\n\t\t\t\t0: string(STR_PARAM_VALUE_SECONDARY_NEVER_CLOSE_0);\n\t\t\t};\n\t\t}\n\t}\n}\n\nbasecost {\n\tPR_BUILD_INDUSTRY: 2; // Industries are more expensive\n\tPR_BUILD_INDUSTRY_RAW : 2; // Building primary industries is also expensive\n\tPR_CLEAR_INDUSTRY : 2; // Deleting industries must also be expensive\n}\n\n' (51:6)> braces_required=True translation=False at 7fe5c69925f8> -> __content_140624874349824 __token = 1449 __token = 2063 __content_140624874349824 = _lookup_attr(getitem('global_constants'), 'FARM_MINE_SUPPLY_REQUIREMENT') __content_140624874349824 = __quote(__content_140624874349824, '\x00', '�', None, False) __token = 2333 __content_140624874349824_2331 = (5 * _lookup_attr(getitem('global_constants'), 'FARM_MINE_SUPPLY_REQUIREMENT')) __content_140624874349824_2331 = __quote(__content_140624874349824_2331, '\x00', '�', None, False) __content_140624874349824 = ('%s%s%s%s%s' % ('\n\tparam 7 {\n\t\tprimary_level1_produced_percent {\n\t\t\tname: string(STR_PARAM_NAME_PRIMARY_LEVEL1_BONUS);\n\t\t\tdesc: string(STR_PARAM_DESC_PRIMARY_LEVEL_BONUS);\n\t\t\tdef_value: 150;\n\t\t\tmin_value: 100;\n\t\t\tmax_value: 1000;\n\t\t}\n\t}\n\tparam 9 {\n\t\tprimary_level2_produced_percent {\n\t\t\tname: string(STR_PARAM_NAME_PRIMARY_LEVEL2_BONUS);\n\t\t\tdesc: string(STR_PARAM_DESC_PRIMARY_LEVEL_BONUS);\n\t\t\tdef_value: 300;\n\t\t\tmin_value: 100;\n\t\t\tmax_value: 1000;\n\t\t}\n\t}\n\tparam 6 {\n\t\tprimary_level1_requirement {\n\t\t\tname: string(STR_PARAM_NAME_PRIMARY_LEVEL1_REQUIREMENT);\n\t\t\tdesc: string(STR_PARAM_DESC_PRIMARY_LEVEL_REQUIREMENT);\n\t\t\tdef_value: ', (__content_140624874349824 if (__content_140624874349824 is not None) else ''), ';\n\t\t\tmin_value: 1;\n\t\t\tmax_value: 10000;\n\t\t}\n\t}\n\tparam 8 {\n\t\tprimary_level2_requirement {\n\t\t\tname: string(STR_PARAM_NAME_PRIMARY_LEVEL2_REQUIREMENT);\n\t\t\tdesc: string(STR_PARAM_DESC_PRIMARY_LEVEL_REQUIREMENT);\n\t\t\tdef_value: ', (__content_140624874349824_2331 if (__content_140624874349824_2331 is not None) else ''), ';\n\t\t\tmin_value: 1;\n\t\t\tmax_value: 10000;\n\t\t}\n\t}\n\tparam 4 {\n\t\tmarine_industry_max_coastal_distance {\n\t\t\tname: string(STR_PARAM_NAME_COAST_DISTANCE_MARINE_INDUSTRY);\n\t\t\tdesc: string(STR_PARAM_DESC_COAST_DISTANCE_MARINE_INDUSTRY);\n\t\t\ttype: int;\n\t\t\tdef_value: 0;\n\t\t\tmin_value: 0;\n\t\t\tmax_value: 255;\n\t\t\tnames: {\n\t\t\t\t0: string(STR_PARAM_VALUE_SECONDARY_NEVER_CLOSE_0);\n\t\t\t};\n\t\t}\n\t}\n}\n\nbasecost {\n\tPR_BUILD_INDUSTRY: 2; // Industries are more expensive\n\tPR_BUILD_INDUSTRY_RAW : 2; // Building primary industries is also expensive\n\tPR_CLEAR_INDUSTRY : 2; // Deleting industries must also be expensive\n}\n\n', )) if (__content_140624874349824 is None): pass else: if (__content_140624874349824 is False): __content_140624874349824 = None else: __tt = type(__content_140624874349824) if ((__tt is int) or (__tt is float) or (__tt is int)): __content_140624874349824 = str(__content_140624874349824) else: if (__tt is bytes): __content_140624874349824 = decode(__content_140624874349824) else: if (__tt is not str): try: __content_140624874349824 = __content_140624874349824.__html__ except get('AttributeError', AttributeError): __converted = convert(__content_140624874349824) __content_140624874349824 = (str(__content_140624874349824) if (__content_140624874349824 is __converted) else __converted) else: __content_140624874349824 = __content_140624874349824() if (__content_140624874349824 is not None): __append(__content_140624874349824) __append('\nif (param[6] == 0) { param[6] = 100; }\nif (param[7] == 0) { param[7] = 100; }\nif (param[8] == 0) { param[8] = 400; }\nif (param[9] == 0) { param[9] = 300; }\n\n') __append('\ndisable_item(FEAT_INDUSTRIES, 0, 36);\n\n') except: if (__token is not None): rcontext.setdefault('__error__', []).append((__tokens[__token] + (__filename, _exc_info()[1], ))) raise
def render(__stream, econtext, rcontext, __i18n_domain=None, __i18n_context=None): __append = __stream.append __re_amp = g_re_amp __token = None __re_needs_escape = g_re_needs_escape def __convert(target): if (target is None): return __tt = type(target) if ((__tt is int) or (__tt is float) or (__tt is int)): target = str(target) else: if (__tt is bytes): target = decode(target) else: if (__tt is not str): try: target = target.__html__ except AttributeError: __converted = convert(target) target = (str(target) if (target is __converted) else __converted) else: target = target() return target def __quote(target, quote, quote_entity, default, default_marker): if (target is None): return if (target is default_marker): return default __tt = type(target) if ((__tt is int) or (__tt is float) or (__tt is int)): target = str(target) else: if (__tt is bytes): target = decode(target) else: if (__tt is not str): try: target = target.__html__ except: __converted = convert(target) target = (str(target) if (target is __converted) else __converted) else: return target() if (target is not None): try: escape = (__re_needs_escape(target) is not None) except TypeError: pass else: if escape: if ('&' in target): target = target.replace('&', '&') if ('<' in target): target = target.replace('<', '<') if ('>' in target): target = target.replace('>', '>') if ((quote is not None) and (quote in target)): target = target.replace(quote, quote_entity) return target translate = econtext['__translate'] decode = econtext['__decode'] convert = econtext['__convert'] on_error_handler = econtext['__on_error_handler'] try: getitem = econtext.__getitem__ get = econtext.get __append('/* ******************************************************************\n * Definition of the industry tile, its callbacks, and graphics chain\n * ******************************************************************/\n\n') __backup_macroname_140183230166856 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7f7ef3a2a438> name=None at 7f7ef3a2a198> -> __value __value = _static_140183230129208 econtext['macroname'] = __value # <Value 'load: spritesets.pynml' (5:30)> -> __macro __token = 242 __macro = ' spritesets.pynml' __macro = __loader(__macro) __token = 242 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_140183230166856 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_140183230166856 __append('\n\n') __backup_macroname_140183230165128 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7f7ef3a2a9e8> name=None at 7f7ef3a2acf8> -> __value __value = _static_140183230130664 econtext['macroname'] = __value # <Value 'load: spritelayouts.pynml' (7:30)> -> __macro __token = 300 __macro = ' spritelayouts.pynml' __macro = __loader(__macro) __token = 300 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_140183230165128 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_140183230165128 __append('\n\n') __backup_macroname_140183229536776 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7f7ef3a2a278> name=None at 7f7ef3a2ac88> -> __value __value = _static_140183230128760 econtext['macroname'] = __value # <Value 'load: graphics_switches.pynml' (9:30)> -> __macro __token = 361 __macro = ' graphics_switches.pynml' __macro = __loader(__macro) __token = 361 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_140183229536776 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_140183229536776 __append('\n\n') __backup_location_checks_tile_140183230859416 = get('location_checks_tile', __marker) # <Value 'load: location_check_macros_tile.pynml' (11:42)> -> __value __token = 438 __value = ' location_check_macros_tile.pynml' __value = __loader(__value) econtext['location_checks_tile'] = __value __backup_macroname_140183229536456 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7f7ef3a68080> name=None at 7f7ef3a68748> -> __value __value = _static_140183230382208 econtext['macroname'] = __value # <Value "location_checks_tile.macros['render_tree']" (12:30)> -> __macro __token = 508 __macro = _lookup_attr(getitem('location_checks_tile'), 'macros')['render_tree'] __token = 508 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_140183229536456 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_140183229536456 if (__backup_location_checks_tile_140183230859416 is __marker): del econtext['location_checks_tile'] else: econtext['location_checks_tile'] = __backup_location_checks_tile_140183230859416 __append('\n\n') __backup_animation_macros_140183229332672 = get('animation_macros', __marker) # <Value 'load: animation_macros.pynml' (14:38)> -> __value __token = 594 __value = ' animation_macros.pynml' __value = __loader(__value) econtext['animation_macros'] = __value __backup_macroname_140183230866568 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7f7ef3a685c0> name=None at 7f7ef3a680f0> -> __value __value = _static_140183230383552 econtext['macroname'] = __value # <Value "animation_macros.macros['tile_animation']" (15:30)> -> __macro __token = 654 __macro = _lookup_attr(getitem('animation_macros'), 'macros')['tile_animation'] __token = 654 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_140183230866568 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_140183230866568 if (__backup_animation_macros_140183229332672 is __marker): del econtext['animation_macros'] else: econtext['animation_macros'] = __backup_animation_macros_140183229332672 __append('\n\n') __backup_macroname_140183229534856 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7f7ef3a68e48> name=None at 7f7ef3a68518> -> __value __value = _static_140183230385736 econtext['macroname'] = __value # <Value 'load: properties_tile.pynml' (17:30)> -> __macro __token = 731 __macro = ' properties_tile.pynml' __macro = __loader(__macro) __token = 731 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_140183229534856 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_140183229534856 __append('\n\n/* *************************************************\n * Definition of the industry layouts\n * *************************************************/\n\n') __backup_macroname_140183230964104 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7f7ef3a36e48> name=None at 7f7ef3a36c18> -> __value __value = _static_140183230180936 econtext['macroname'] = __value # <Value 'load: layouts.pynml' (23:30)> -> __macro __token = 940 __macro = ' layouts.pynml' __macro = __loader(__macro) __token = 940 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_140183230964104 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_140183230964104 __append('\n\n/* *************************************************\n * Definition of the industry\n * *************************************************/\n\n') __backup_location_checks_industry_140183231121056 = get('location_checks_industry', __marker) # <Value 'load: location_check_macros_industry.pynml' (29:46)> -> __value __token = 1149 __value = ' location_check_macros_industry.pynml' __value = __loader(__value) econtext['location_checks_industry'] = __value __backup_macroname_140183229890056 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7f7ef3a36978> name=None at 7f7ef3a366a0> -> __value __value = _static_140183230179704 econtext['macroname'] = __value # <Value "location_checks_industry.macros['render_tree']" (30:30)> -> __macro __token = 1223 __macro = _lookup_attr(getitem('location_checks_industry'), 'macros')['render_tree'] __token = 1223 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_140183229890056 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_140183229890056 if (__backup_location_checks_industry_140183231121056 is __marker): del econtext['location_checks_industry'] else: econtext['location_checks_industry'] = __backup_location_checks_industry_140183231121056 __append('\n\n') __backup_macroname_140183229195528 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7f7ef3a36908> name=None at 7f7ef3a36780> -> __value __value = _static_140183230179592 econtext['macroname'] = __value # <Value 'load: availability.pynml' (32:30)> -> __macro __token = 1305 __macro = ' availability.pynml' __macro = __loader(__macro) __token = 1305 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_140183229195528 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_140183229195528 __append('\n\n') # <Interpolation value=<Substitution "\nproduce(${industry.id}_production,\n\t\twaiting_cargo_1, // should be 0\n\t\twaiting_cargo_2, // should be 0\n\t\twaiting_cargo_3, // should be 0\n\t\tLOAD_TEMP(1), // we stored output here\n\t\t0, // no 2nd output\n\t\t0 // don't repeat\n\t\t);\n\n\nswitch(FEAT_INDUSTRIES, PARENT, ${industry.id}_produce, [STORE_TEMP(((population + 11) / (12 * 7)), 1)]) {\n\t0: ${industry.id}_production;\n\t${industry.id}_production;\n}\n\n\n" (37:4)> braces_required=True translation=False at 7f7ef3a36860> -> __content_140183249773656 __token = 1463 __token = 1473 __content_140183249773656 = _lookup_attr(getitem('industry'), 'id') __content_140183249773656 = __quote(__content_140183249773656, '\x00', '�', None, False) __token = 1756 __content_140183249773656_1754 = _lookup_attr(getitem('industry'), 'id') __content_140183249773656_1754 = __quote(__content_140183249773656_1754, '\x00', '�', None, False) __token = 1835 __content_140183249773656_1833 = _lookup_attr(getitem('industry'), 'id') __content_140183249773656_1833 = __quote(__content_140183249773656_1833, '\x00', '�', None, False) __token = 1863 __content_140183249773656_1861 = _lookup_attr(getitem('industry'), 'id') __content_140183249773656_1861 = __quote(__content_140183249773656_1861, '\x00', '�', None, False) __content_140183249773656 = ('%s%s%s%s%s%s%s%s%s' % ('\nproduce(', (__content_140183249773656 if (__content_140183249773656 is not None) else ''), "_production,\n\t\twaiting_cargo_1, // should be 0\n\t\twaiting_cargo_2, // should be 0\n\t\twaiting_cargo_3, // should be 0\n\t\tLOAD_TEMP(1), // we stored output here\n\t\t0, // no 2nd output\n\t\t0 // don't repeat\n\t\t);\n\n\nswitch(FEAT_INDUSTRIES, PARENT, ", (__content_140183249773656_1754 if (__content_140183249773656_1754 is not None) else ''), '_produce, [STORE_TEMP(((population + 11) / (12 * 7)), 1)]) {\n\t0: ', (__content_140183249773656_1833 if (__content_140183249773656_1833 is not None) else ''), '_production;\n\t', (__content_140183249773656_1861 if (__content_140183249773656_1861 is not None) else ''), '_production;\n}\n\n\n', )) if (__content_140183249773656 is None): pass else: if (__content_140183249773656 is False): __content_140183249773656 = None else: __tt = type(__content_140183249773656) if ((__tt is int) or (__tt is float) or (__tt is int)): __content_140183249773656 = str(__content_140183249773656) else: if (__tt is bytes): __content_140183249773656 = decode(__content_140183249773656) else: if (__tt is not str): try: __content_140183249773656 = __content_140183249773656.__html__ except get('AttributeError', AttributeError): __converted = convert(__content_140183249773656) __content_140183249773656 = (str(__content_140183249773656) if (__content_140183249773656 is __converted) else __converted) else: __content_140183249773656 = __content_140183249773656() if (__content_140183249773656 is not None): __append(__content_140183249773656) __backup_macroname_140183230651784 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7f7ef3a36710> name=None at 7f7ef3a36e10> -> __value __value = _static_140183230179088 econtext['macroname'] = __value # <Value 'load: properties_industry.pynml' (54:30)> -> __macro __token = 1922 __macro = ' properties_industry.pynml' __macro = __loader(__macro) __token = 1922 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_140183230651784 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_140183230651784 __append('\n\n') __append('\n') __backup_economy_140183229455328 = get('economy', __marker) # <Value 'economies' (57:37)> -> __iterator __token = 2106 __iterator = getitem('economies') (__iterator, ____index_140183230180824, ) = getitem('repeat')('economy', __iterator) econtext['economy'] = None for __item in __iterator: econtext['economy'] = __item __append('\n ') # <Value "industry.get_property('enabled', economy) == True" (58:39)> -> __condition __token = 2157 __condition = (_lookup_attr(getitem('industry'), 'get_property')('enabled', getitem('economy')) == True) if __condition: # <Interpolation value=<Substitution '\n if (economy==${economy.numeric_id}) {\n item(FEAT_INDUSTRIES, ${industry.id}, ${industry.numeric_id}) {\n graphics {\n produce_256_ticks: ${industry.id}_produce;\n construction_probability:${industry.id}_check_availability;\n location_check: ${industry.id}_check_location;\n monthly_prod_change: CB_RESULT_IND_PROD_NO_CHANGE;\n random_prod_change: CB_RESULT_IND_PROD_NO_CHANGE;\n extra_text_fund: ${industry.get_extra_text_fund(economy)};\n extra_text_industry: return string(STR_EXTRA_RECYCLING_DEPOT);\n colour: switch_colour;\n }\n }\n }\n ' (58:90)> braces_required=True translation=False at 7f7ef3955748> -> __content_140183249773656 __token = 2217 __token = 2232 __content_140183249773656 = _lookup_attr(getitem('economy'), 'numeric_id') __content_140183249773656 = __quote(__content_140183249773656, '\x00', '�', None, False) __token = 2291 __content_140183249773656_2289 = _lookup_attr(getitem('industry'), 'id') __content_140183249773656_2289 = __quote(__content_140183249773656_2289, '\x00', '�', None, False) __token = 2307 __content_140183249773656_2305 = _lookup_attr(getitem('industry'), 'numeric_id') __content_140183249773656_2305 = __quote(__content_140183249773656_2305, '\x00', '�', None, False) __token = 2405 __content_140183249773656_2403 = _lookup_attr(getitem('industry'), 'id') __content_140183249773656_2403 = __quote(__content_140183249773656_2403, '\x00', '�', None, False) __token = 2474 __content_140183249773656_2472 = _lookup_attr(getitem('industry'), 'id') __content_140183249773656_2472 = __quote(__content_140183249773656_2472, '\x00', '�', None, False) __token = 2554 __content_140183249773656_2552 = _lookup_attr(getitem('industry'), 'id') __content_140183249773656_2552 = __quote(__content_140183249773656_2552, '\x00', '�', None, False) __token = 2780 __content_140183249773656_2778 = _lookup_attr(getitem('industry'), 'get_extra_text_fund')(getitem('economy')) __content_140183249773656_2778 = __quote(__content_140183249773656_2778, '\x00', '�', None, False) __content_140183249773656 = ('%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s' % ('\n if (economy==', (__content_140183249773656 if (__content_140183249773656 is not None) else ''), ') {\n item(FEAT_INDUSTRIES, ', (__content_140183249773656_2289 if (__content_140183249773656_2289 is not None) else ''), ', ', (__content_140183249773656_2305 if (__content_140183249773656_2305 is not None) else ''), ') {\n graphics {\n produce_256_ticks: ', (__content_140183249773656_2403 if (__content_140183249773656_2403 is not None) else ''), '_produce;\n construction_probability:', (__content_140183249773656_2472 if (__content_140183249773656_2472 is not None) else ''), '_check_availability;\n location_check: ', (__content_140183249773656_2552 if (__content_140183249773656_2552 is not None) else ''), '_check_location;\n monthly_prod_change: CB_RESULT_IND_PROD_NO_CHANGE;\n random_prod_change: CB_RESULT_IND_PROD_NO_CHANGE;\n extra_text_fund: ', (__content_140183249773656_2778 if (__content_140183249773656_2778 is not None) else ''), ';\n extra_text_industry: return string(STR_EXTRA_RECYCLING_DEPOT);\n colour: switch_colour;\n }\n }\n }\n ', )) if (__content_140183249773656 is None): pass else: if (__content_140183249773656 is False): __content_140183249773656 = None else: __tt = type(__content_140183249773656) if ((__tt is int) or (__tt is float) or (__tt is int)): __content_140183249773656 = str(__content_140183249773656) else: if (__tt is bytes): __content_140183249773656 = decode(__content_140183249773656) else: if (__tt is not str): try: __content_140183249773656 = __content_140183249773656.__html__ except get('AttributeError', AttributeError): __converted = convert(__content_140183249773656) __content_140183249773656 = (str(__content_140183249773656) if (__content_140183249773656 is __converted) else __converted) else: __content_140183249773656 = __content_140183249773656() if (__content_140183249773656 is not None): __append(__content_140183249773656) __append('\n') ____index_140183230180824 -= 1 if (____index_140183230180824 > 0): __append('') if (__backup_economy_140183229455328 is __marker): del econtext['economy'] else: econtext['economy'] = __backup_economy_140183229455328 __append('\n') except: if (__token is not None): rcontext.setdefault('__error__', []).append((__tokens[__token] + (__filename, _exc_info()[1], ))) raise
def render(__stream, econtext, rcontext, __i18n_domain=None, __i18n_context=None): __append = __stream.append __re_amp = g_re_amp __token = None __re_needs_escape = g_re_needs_escape def __convert(target): if (target is None): return __tt = type(target) if ((__tt is int) or (__tt is float) or (__tt is int)): target = str(target) else: if (__tt is bytes): target = decode(target) else: if (__tt is not str): try: target = target.__html__ except AttributeError: __converted = convert(target) target = (str(target) if (target is __converted) else __converted) else: target = target() return target def __quote(target, quote, quote_entity, default, default_marker): if (target is None): return if (target is default_marker): return default __tt = type(target) if ((__tt is int) or (__tt is float) or (__tt is int)): target = str(target) else: if (__tt is bytes): target = decode(target) else: if (__tt is not str): try: target = target.__html__ except: __converted = convert(target) target = (str(target) if (target is __converted) else __converted) else: return target() if (target is not None): try: escape = (__re_needs_escape(target) is not None) except TypeError: pass else: if escape: if ('&' in target): target = target.replace('&', '&') if ('<' in target): target = target.replace('<', '<') if ('>' in target): target = target.replace('>', '>') if ((quote is not None) and (quote in target)): target = target.replace(quote, quote_entity) return target translate = econtext['__translate'] decode = econtext['__decode'] convert = econtext['__convert'] on_error_handler = econtext['__on_error_handler'] try: getitem = econtext.__getitem__ get = econtext.get __append('\n\n') # <Interpolation value=<Substitution '\nswitch(FEAT_INDUSTRIES, SELF, ${industry.id}_check_availability_param, restrict_open_during_gameplay) {\n\t1..255: return CB_RESULT_IND_NO_CONSTRUCTION; // disallow when restrictions in place\n\treturn CB_RESULT_IND_PROBABILITY_FROM_PROPERTY; // we may build\n}\n\n' (9:45)> braces_required=True translation=False at 7fad9cb5a160> -> __content_140383655711776 __token = 282 __token = 314 __content_140383655711776 = _lookup_attr(getitem('industry'), 'id') __content_140383655711776 = __quote(__content_140383655711776, '\x00', '�', None, False) __content_140383655711776 = ('%s%s%s' % ( '\nswitch(FEAT_INDUSTRIES, SELF, ', (__content_140383655711776 if (__content_140383655711776 is not None) else ''), '_check_availability_param, restrict_open_during_gameplay) {\n\t1..255: return CB_RESULT_IND_NO_CONSTRUCTION; // disallow when restrictions in place\n\treturn CB_RESULT_IND_PROBABILITY_FROM_PROPERTY; // we may build\n}\n\n', )) if (__content_140383655711776 is None): pass else: if (__content_140383655711776 is False): __content_140383655711776 = None else: __tt = type(__content_140383655711776) if ((__tt is int) or (__tt is float) or (__tt is int)): __content_140383655711776 = str( __content_140383655711776) else: if (__tt is bytes): __content_140383655711776 = decode( __content_140383655711776) else: if (__tt is not str): try: __content_140383655711776 = __content_140383655711776.__html__ except get('AttributeError', AttributeError): __converted = convert( __content_140383655711776) __content_140383655711776 = ( str(__content_140383655711776) if (__content_140383655711776 is __converted) else __converted) else: __content_140383655711776 = __content_140383655711776( ) if (__content_140383655711776 is not None): __append(__content_140383655711776) # <Interpolation value=<Substitution '\nswitch (FEAT_INDUSTRIES, SELF, ${industry.id}_check_map_gen, extra_callback_info2 == IND_CREATION_GENERATION) {\n\t1: return CB_RESULT_IND_PROBABILITY_FROM_PROPERTY;\n\t${industry.id}_check_availability_param;\n}\n' (15:37)> braces_required=True translation=False at 7fad9cb5a3c8> -> __content_140383655711776 __token = 592 __token = 625 __content_140383655711776 = _lookup_attr(getitem('industry'), 'id') __content_140383655711776 = __quote(__content_140383655711776, '\x00', '�', None, False) __token = 759 __content_140383655711776_757 = _lookup_attr( getitem('industry'), 'id') __content_140383655711776_757 = __quote( __content_140383655711776_757, '\x00', '�', None, False) __content_140383655711776 = ('%s%s%s%s%s' % ( '\nswitch (FEAT_INDUSTRIES, SELF, ', (__content_140383655711776 if (__content_140383655711776 is not None) else ''), '_check_map_gen, extra_callback_info2 == IND_CREATION_GENERATION) {\n\t1: return CB_RESULT_IND_PROBABILITY_FROM_PROPERTY;\n\t', (__content_140383655711776_757 if (__content_140383655711776_757 is not None) else ''), '_check_availability_param;\n}\n', )) if (__content_140383655711776 is None): pass else: if (__content_140383655711776 is False): __content_140383655711776 = None else: __tt = type(__content_140383655711776) if ((__tt is int) or (__tt is float) or (__tt is int)): __content_140383655711776 = str( __content_140383655711776) else: if (__tt is bytes): __content_140383655711776 = decode( __content_140383655711776) else: if (__tt is not str): try: __content_140383655711776 = __content_140383655711776.__html__ except get('AttributeError', AttributeError): __converted = convert( __content_140383655711776) __content_140383655711776 = ( str(__content_140383655711776) if (__content_140383655711776 is __converted) else __converted) else: __content_140383655711776 = __content_140383655711776( ) if (__content_140383655711776 is not None): __append(__content_140383655711776) # <Interpolation value=<Substitution '\nswitch (FEAT_INDUSTRIES, SELF, ${industry.id}_available_game_mode, game_mode == GAMEMODE_GAME) {\n\t1: ${industry.id}_check_map_gen;\n\treturn CB_RESULT_IND_PROBABILITY_FROM_PROPERTY;\n}\n\n' (20:45)> braces_required=True translation=False at 7fad9cb5a4a8> -> __content_140383655711776 __token = 846 __token = 879 __content_140383655711776 = _lookup_attr(getitem('industry'), 'id') __content_140383655711776 = __quote(__content_140383655711776, '\x00', '�', None, False) __token = 949 __content_140383655711776_947 = _lookup_attr( getitem('industry'), 'id') __content_140383655711776_947 = __quote( __content_140383655711776_947, '\x00', '�', None, False) __content_140383655711776 = ('%s%s%s%s%s' % ( '\nswitch (FEAT_INDUSTRIES, SELF, ', (__content_140383655711776 if (__content_140383655711776 is not None) else ''), '_available_game_mode, game_mode == GAMEMODE_GAME) {\n\t1: ', (__content_140383655711776_947 if (__content_140383655711776_947 is not None) else ''), '_check_map_gen;\n\treturn CB_RESULT_IND_PROBABILITY_FROM_PROPERTY;\n}\n\n', )) if (__content_140383655711776 is None): pass else: if (__content_140383655711776 is False): __content_140383655711776 = None else: __tt = type(__content_140383655711776) if ((__tt is int) or (__tt is float) or (__tt is int)): __content_140383655711776 = str( __content_140383655711776) else: if (__tt is bytes): __content_140383655711776 = decode( __content_140383655711776) else: if (__tt is not str): try: __content_140383655711776 = __content_140383655711776.__html__ except get('AttributeError', AttributeError): __converted = convert( __content_140383655711776) __content_140383655711776 = ( str(__content_140383655711776) if (__content_140383655711776 is __converted) else __converted) else: __content_140383655711776 = __content_140383655711776( ) if (__content_140383655711776 is not None): __append(__content_140383655711776) __append('\n') __backup_economy_140383637130376 = get('economy', __marker) # <Value 'economies' (27:35)> -> __iterator __token = 1137 __iterator = getitem('economies') ( __iterator, ____index_140383635785936, ) = getitem('repeat')('economy', __iterator) econtext['economy'] = None for __item in __iterator: econtext['economy'] = __item # <Interpolation value=<Substitution '\n /* ${industry.get_intro_year(economy)} */\n switch (FEAT_INDUSTRIES, SELF, ${industry.id}_check_availability_${economy.numeric_id}, current_date) {\n date(${industry.get_intro_year(economy)},1,1) .. date(${industry.get_expiry_year(economy)},12,31): ${industry.id}_available_game_mode;\n return CB_RESULT_IND_NO_CONSTRUCTION;\n }\n' (27:46)> braces_required=True translation=False at 7fad9cbe44a8> -> __content_140383655711776 __token = 1153 __token = 1158 __content_140383655711776 = _lookup_attr( getitem('industry'), 'get_intro_year')(getitem('economy')) __content_140383655711776 = __quote(__content_140383655711776, '\x00', '�', None, False) __token = 1232 __content_140383655711776_1230 = _lookup_attr( getitem('industry'), 'id') __content_140383655711776_1230 = __quote( __content_140383655711776_1230, '\x00', '�', None, False) __token = 1266 __content_140383655711776_1264 = _lookup_attr( getitem('economy'), 'numeric_id') __content_140383655711776_1264 = __quote( __content_140383655711776_1264, '\x00', '�', None, False) __token = 1318 __content_140383655711776_1316 = _lookup_attr( getitem('industry'), 'get_intro_year')(getitem('economy')) __content_140383655711776_1316 = __quote( __content_140383655711776_1316, '\x00', '�', None, False) __token = 1367 __content_140383655711776_1365 = _lookup_attr( getitem('industry'), 'get_expiry_year')(getitem('economy')) __content_140383655711776_1365 = __quote( __content_140383655711776_1365, '\x00', '�', None, False) __token = 1412 __content_140383655711776_1410 = _lookup_attr( getitem('industry'), 'id') __content_140383655711776_1410 = __quote( __content_140383655711776_1410, '\x00', '�', None, False) __content_140383655711776 = ('%s%s%s%s%s%s%s%s%s%s%s%s%s' % ( '\n /* ', (__content_140383655711776 if (__content_140383655711776 is not None) else ''), ' */\n switch (FEAT_INDUSTRIES, SELF, ', (__content_140383655711776_1230 if (__content_140383655711776_1230 is not None) else ''), '_check_availability_', (__content_140383655711776_1264 if (__content_140383655711776_1264 is not None) else ''), ', current_date) {\n date(', (__content_140383655711776_1316 if (__content_140383655711776_1316 is not None) else ''), ',1,1) .. date(', (__content_140383655711776_1365 if (__content_140383655711776_1365 is not None) else ''), ',12,31): ', (__content_140383655711776_1410 if (__content_140383655711776_1410 is not None) else ''), '_available_game_mode;\n return CB_RESULT_IND_NO_CONSTRUCTION;\n }\n', )) if (__content_140383655711776 is None): pass else: if (__content_140383655711776 is False): __content_140383655711776 = None else: __tt = type(__content_140383655711776) if ((__tt is int) or (__tt is float) or (__tt is int)): __content_140383655711776 = str( __content_140383655711776) else: if (__tt is bytes): __content_140383655711776 = decode( __content_140383655711776) else: if (__tt is not str): try: __content_140383655711776 = __content_140383655711776.__html__ except get('AttributeError', AttributeError): __converted = convert( __content_140383655711776) __content_140383655711776 = ( str(__content_140383655711776) if (__content_140383655711776 is __converted) else __converted) else: __content_140383655711776 = __content_140383655711776( ) if (__content_140383655711776 is not None): __append(__content_140383655711776) ____index_140383635785936 -= 1 if (____index_140383635785936 > 0): __append('') if (__backup_economy_140383637130376 is __marker): del econtext['economy'] else: econtext['economy'] = __backup_economy_140383637130376 # <Interpolation value=<Substitution '\n\nswitch (FEAT_INDUSTRIES, SELF, ${industry.id}_check_availability, economy) {\n ' (33:20)> braces_required=True translation=False at 7fad9ccea630> -> __content_140383655711776 __token = 1520 __token = 1553 __content_140383655711776 = _lookup_attr(getitem('industry'), 'id') __content_140383655711776 = __quote(__content_140383655711776, '\x00', '�', None, False) __content_140383655711776 = ('%s%s%s' % ( '\n\nswitch (FEAT_INDUSTRIES, SELF, ', (__content_140383655711776 if (__content_140383655711776 is not None) else ''), '_check_availability, economy) {\n ', )) if (__content_140383655711776 is None): pass else: if (__content_140383655711776 is False): __content_140383655711776 = None else: __tt = type(__content_140383655711776) if ((__tt is int) or (__tt is float) or (__tt is int)): __content_140383655711776 = str( __content_140383655711776) else: if (__tt is bytes): __content_140383655711776 = decode( __content_140383655711776) else: if (__tt is not str): try: __content_140383655711776 = __content_140383655711776.__html__ except get('AttributeError', AttributeError): __converted = convert( __content_140383655711776) __content_140383655711776 = ( str(__content_140383655711776) if (__content_140383655711776 is __converted) else __converted) else: __content_140383655711776 = __content_140383655711776( ) if (__content_140383655711776 is not None): __append(__content_140383655711776) __backup_economy_140383637092448 = get('economy', __marker) # <Value 'economies' (36:42)> -> __iterator __token = 1639 __iterator = getitem('economies') ( __iterator, ____index_140383635784480, ) = getitem('repeat')('economy', __iterator) econtext['economy'] = None for __item in __iterator: econtext['economy'] = __item # <Interpolation value=<Substitution '\n ${economy.numeric_id}: ${industry.id}_check_availability_${economy.numeric_id};\n ' (36:53)> braces_required=True translation=False at 7fad9cbe47b8> -> __content_140383655711776 __token = 1659 __token = 1661 __content_140383655711776 = _lookup_attr( getitem('economy'), 'numeric_id') __content_140383655711776 = __quote(__content_140383655711776, '\x00', '�', None, False) __token = 1684 __content_140383655711776_1682 = _lookup_attr( getitem('industry'), 'id') __content_140383655711776_1682 = __quote( __content_140383655711776_1682, '\x00', '�', None, False) __token = 1718 __content_140383655711776_1716 = _lookup_attr( getitem('economy'), 'numeric_id') __content_140383655711776_1716 = __quote( __content_140383655711776_1716, '\x00', '�', None, False) __content_140383655711776 = ('%s%s%s%s%s%s%s' % ( '\n ', (__content_140383655711776 if (__content_140383655711776 is not None) else ''), ': ', (__content_140383655711776_1682 if (__content_140383655711776_1682 is not None) else ''), '_check_availability_', (__content_140383655711776_1716 if (__content_140383655711776_1716 is not None) else ''), ';\n ', )) if (__content_140383655711776 is None): pass else: if (__content_140383655711776 is False): __content_140383655711776 = None else: __tt = type(__content_140383655711776) if ((__tt is int) or (__tt is float) or (__tt is int)): __content_140383655711776 = str( __content_140383655711776) else: if (__tt is bytes): __content_140383655711776 = decode( __content_140383655711776) else: if (__tt is not str): try: __content_140383655711776 = __content_140383655711776.__html__ except get('AttributeError', AttributeError): __converted = convert( __content_140383655711776) __content_140383655711776 = ( str(__content_140383655711776) if (__content_140383655711776 is __converted) else __converted) else: __content_140383655711776 = __content_140383655711776( ) if (__content_140383655711776 is not None): __append(__content_140383655711776) ____index_140383635784480 -= 1 if (____index_140383635784480 > 0): __append('') if (__backup_economy_140383637092448 is __marker): del econtext['economy'] else: econtext['economy'] = __backup_economy_140383637092448 __append('\n}\n\n\n') except: if (__token is not None): rcontext.setdefault('__error__', []).append( (__tokens[__token] + ( __filename, _exc_info()[1], ))) raise
def render(__stream, econtext, rcontext, __i18n_domain=None, __i18n_context=None): __append = __stream.append __re_amp = g_re_amp __token = None __re_needs_escape = g_re_needs_escape def __convert(target): if (target is None): return __tt = type(target) if ((__tt is int) or (__tt is float) or (__tt is int)): target = str(target) else: if (__tt is bytes): target = decode(target) else: if (__tt is not str): try: target = target.__html__ except AttributeError: __converted = convert(target) target = (str(target) if (target is __converted) else __converted) else: target = target() return target def __quote(target, quote, quote_entity, default, default_marker): if (target is None): return if (target is default_marker): return default __tt = type(target) if ((__tt is int) or (__tt is float) or (__tt is int)): target = str(target) else: if (__tt is bytes): target = decode(target) else: if (__tt is not str): try: target = target.__html__ except: __converted = convert(target) target = (str(target) if (target is __converted) else __converted) else: return target() if (target is not None): try: escape = (__re_needs_escape(target) is not None) except TypeError: pass else: if escape: if ('&' in target): target = target.replace('&', '&') if ('<' in target): target = target.replace('<', '<') if ('>' in target): target = target.replace('>', '>') if ((quote is not None) and (quote in target)): target = target.replace(quote, quote_entity) return target translate = econtext['__translate'] decode = econtext['__decode'] convert = econtext['__convert'] try: getitem = econtext.__getitem__ get = econtext.get # <Interpolation value=<Substitution '\nitem(FEAT_CARGOS, ${cargo.id}_${economy.id}, ${cargo.get_numeric_id(economy)}) {\n property {\n ' (1:53)> braces_required=True translation=False at 1e3258b89b0> -> __content_2075086945112 __token = 54 __token = 74 __content_2075086945112 = _lookup_attr(getitem('cargo'), 'id') __content_2075086945112 = __quote(__content_2075086945112, '\x00', '�', None, False) __token = 86 __content_2075086945112_84 = _lookup_attr(getitem('economy'), 'id') __content_2075086945112_84 = __quote(__content_2075086945112_84, '\x00', '�', None, False) __token = 101 __content_2075086945112_99 = _lookup_attr( getitem('cargo'), 'get_numeric_id')(getitem('economy')) __content_2075086945112_99 = __quote(__content_2075086945112_99, '\x00', '�', None, False) __content_2075086945112 = ('%s%s%s%s%s%s%s' % ( '\nitem(FEAT_CARGOS, ', (__content_2075086945112 if (__content_2075086945112 is not None) else ''), '_', (__content_2075086945112_84 if (__content_2075086945112_84 is not None) else ''), ', ', (__content_2075086945112_99 if (__content_2075086945112_99 is not None) else ''), ') {\n property {\n ', )) if (__content_2075086945112 is None): pass else: if (__content_2075086945112 is False): __content_2075086945112 = None else: __tt = type(__content_2075086945112) if ((__tt is int) or (__tt is float) or (__tt is int)): __content_2075086945112 = str(__content_2075086945112) else: if (__tt is bytes): __content_2075086945112 = decode( __content_2075086945112) else: if (__tt is not str): try: __content_2075086945112 = __content_2075086945112.__html__ except get('AttributeError', AttributeError): __converted = convert( __content_2075086945112) __content_2075086945112 = ( str(__content_2075086945112) if (__content_2075086945112 is __converted ) else __converted) else: __content_2075086945112 = __content_2075086945112( ) if (__content_2075086945112 is not None): __append(__content_2075086945112) # <Interpolation value=<Substitution "\n ${cargo.get_property_declaration('type_name')}\n ${cargo.get_property_declaration('unit_name')}\n ${cargo.get_property_declaration('type_abbreviation')}\n ${cargo.get_property_declaration('sprite')}\n ${cargo.get_property_declaration('weight')}\n ${cargo.get_property_declaration('station_list_colour')}\n ${cargo.get_property_declaration('cargo_payment_list_colour')}\n ${cargo.get_property_declaration('is_freight')}\n ${cargo.get_property_declaration('cargo_classes')}\n ${cargo.get_property_declaration('town_growth_effect', economy)}\n ${cargo.get_property_declaration('town_growth_multiplier', economy)}\n ${cargo.get_property_declaration('units_of_cargo')}\n ${cargo.get_property_declaration('items_of_cargo')}\n ${cargo.get_property_declaration('penalty_lowerbound', economy)}\n ${cargo.get_property_declaration('single_penalty_length', economy)}\n ${cargo.get_property_declaration('price_factor', economy)}\n ${cargo.get_property_declaration('capacity_multiplier')}\n " (4:32)> braces_required=True translation=False at 1e3258b8da0> -> __content_2075086945112 __token = 191 __token = 193 __content_2075086945112 = _lookup_attr( getitem('cargo'), 'get_property_declaration')('type_name') __content_2075086945112 = __quote(__content_2075086945112, '\x00', '�', None, False) __token = 248 __content_2075086945112_246 = _lookup_attr( getitem('cargo'), 'get_property_declaration')('unit_name') __content_2075086945112_246 = __quote(__content_2075086945112_246, '\x00', '�', None, False) __token = 303 __content_2075086945112_301 = _lookup_attr( getitem('cargo'), 'get_property_declaration')('type_abbreviation') __content_2075086945112_301 = __quote(__content_2075086945112_301, '\x00', '�', None, False) __token = 366 __content_2075086945112_364 = _lookup_attr( getitem('cargo'), 'get_property_declaration')('sprite') __content_2075086945112_364 = __quote(__content_2075086945112_364, '\x00', '�', None, False) __token = 418 __content_2075086945112_416 = _lookup_attr( getitem('cargo'), 'get_property_declaration')('weight') __content_2075086945112_416 = __quote(__content_2075086945112_416, '\x00', '�', None, False) __token = 470 __content_2075086945112_468 = _lookup_attr( getitem('cargo'), 'get_property_declaration')('station_list_colour') __content_2075086945112_468 = __quote(__content_2075086945112_468, '\x00', '�', None, False) __token = 535 __content_2075086945112_533 = _lookup_attr( getitem('cargo'), 'get_property_declaration')('cargo_payment_list_colour') __content_2075086945112_533 = __quote(__content_2075086945112_533, '\x00', '�', None, False) __token = 606 __content_2075086945112_604 = _lookup_attr( getitem('cargo'), 'get_property_declaration')('is_freight') __content_2075086945112_604 = __quote(__content_2075086945112_604, '\x00', '�', None, False) __token = 662 __content_2075086945112_660 = _lookup_attr( getitem('cargo'), 'get_property_declaration')('cargo_classes') __content_2075086945112_660 = __quote(__content_2075086945112_660, '\x00', '�', None, False) __token = 721 __content_2075086945112_719 = _lookup_attr( getitem('cargo'), 'get_property_declaration')('town_growth_effect', getitem('economy')) __content_2075086945112_719 = __quote(__content_2075086945112_719, '\x00', '�', None, False) __token = 794 __content_2075086945112_792 = _lookup_attr( getitem('cargo'), 'get_property_declaration')('town_growth_multiplier', getitem('economy')) __content_2075086945112_792 = __quote(__content_2075086945112_792, '\x00', '�', None, False) __token = 871 __content_2075086945112_869 = _lookup_attr( getitem('cargo'), 'get_property_declaration')('units_of_cargo') __content_2075086945112_869 = __quote(__content_2075086945112_869, '\x00', '�', None, False) __token = 931 __content_2075086945112_929 = _lookup_attr( getitem('cargo'), 'get_property_declaration')('items_of_cargo') __content_2075086945112_929 = __quote(__content_2075086945112_929, '\x00', '�', None, False) __token = 991 __content_2075086945112_989 = _lookup_attr( getitem('cargo'), 'get_property_declaration')('penalty_lowerbound', getitem('economy')) __content_2075086945112_989 = __quote(__content_2075086945112_989, '\x00', '�', None, False) __token = 1064 __content_2075086945112_1062 = _lookup_attr( getitem('cargo'), 'get_property_declaration')('single_penalty_length', getitem('economy')) __content_2075086945112_1062 = __quote( __content_2075086945112_1062, '\x00', '�', None, False) __token = 1140 __content_2075086945112_1138 = _lookup_attr( getitem('cargo'), 'get_property_declaration')('price_factor', getitem('economy')) __content_2075086945112_1138 = __quote( __content_2075086945112_1138, '\x00', '�', None, False) __token = 1207 __content_2075086945112_1205 = _lookup_attr( getitem('cargo'), 'get_property_declaration')('capacity_multiplier') __content_2075086945112_1205 = __quote( __content_2075086945112_1205, '\x00', '�', None, False) __content_2075086945112 = ( '%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s' % ( '\n ', (__content_2075086945112 if (__content_2075086945112 is not None) else ''), '\n ', (__content_2075086945112_246 if (__content_2075086945112_246 is not None) else ''), '\n ', (__content_2075086945112_301 if (__content_2075086945112_301 is not None) else ''), '\n ', (__content_2075086945112_364 if (__content_2075086945112_364 is not None) else ''), '\n ', (__content_2075086945112_416 if (__content_2075086945112_416 is not None) else ''), '\n ', (__content_2075086945112_468 if (__content_2075086945112_468 is not None) else ''), '\n ', (__content_2075086945112_533 if (__content_2075086945112_533 is not None) else ''), '\n ', (__content_2075086945112_604 if (__content_2075086945112_604 is not None) else ''), '\n ', (__content_2075086945112_660 if (__content_2075086945112_660 is not None) else ''), '\n ', (__content_2075086945112_719 if (__content_2075086945112_719 is not None) else ''), '\n ', (__content_2075086945112_792 if (__content_2075086945112_792 is not None) else ''), '\n ', (__content_2075086945112_869 if (__content_2075086945112_869 is not None) else ''), '\n ', (__content_2075086945112_929 if (__content_2075086945112_929 is not None) else ''), '\n ', (__content_2075086945112_989 if (__content_2075086945112_989 is not None) else ''), '\n ', (__content_2075086945112_1062 if (__content_2075086945112_1062 is not None) else ''), '\n ', (__content_2075086945112_1138 if (__content_2075086945112_1138 is not None) else ''), '\n ', (__content_2075086945112_1205 if (__content_2075086945112_1205 is not None) else ''), '\n ', )) if (__content_2075086945112 is None): pass else: if (__content_2075086945112 is False): __content_2075086945112 = None else: __tt = type(__content_2075086945112) if ((__tt is int) or (__tt is float) or (__tt is int)): __content_2075086945112 = str(__content_2075086945112) else: if (__tt is bytes): __content_2075086945112 = decode( __content_2075086945112) else: if (__tt is not str): try: __content_2075086945112 = __content_2075086945112.__html__ except get('AttributeError', AttributeError): __converted = convert( __content_2075086945112) __content_2075086945112 = ( str(__content_2075086945112) if (__content_2075086945112 is __converted ) else __converted) else: __content_2075086945112 = __content_2075086945112( ) if (__content_2075086945112 is not None): __append(__content_2075086945112) # <Interpolation value=<Substitution '\n cargo_label: ${cargo.get_cargo_label()};\n number: ${cargo.get_numeric_id(economy)};\n }\n graphics {\n cargoicon_${cargo.id};\n }\n}\n' (22:67)> braces_required=True translation=False at 1e3258b80f0> -> __content_2075086945112 __token = 1338 __token = 1353 __content_2075086945112 = _lookup_attr(getitem('cargo'), 'get_cargo_label')() __content_2075086945112 = __quote(__content_2075086945112, '\x00', '�', None, False) __token = 1397 __content_2075086945112_1395 = _lookup_attr( getitem('cargo'), 'get_numeric_id')(getitem('economy')) __content_2075086945112_1395 = __quote( __content_2075086945112_1395, '\x00', '�', None, False) __token = 1470 __content_2075086945112_1468 = _lookup_attr(getitem('cargo'), 'id') __content_2075086945112_1468 = __quote( __content_2075086945112_1468, '\x00', '�', None, False) __content_2075086945112 = ('%s%s%s%s%s%s%s' % ( '\n cargo_label: ', (__content_2075086945112 if (__content_2075086945112 is not None) else ''), ';\n number: ', (__content_2075086945112_1395 if (__content_2075086945112_1395 is not None) else ''), ';\n }\n graphics {\n cargoicon_', (__content_2075086945112_1468 if (__content_2075086945112_1468 is not None) else ''), ';\n }\n}\n', )) if (__content_2075086945112 is None): pass else: if (__content_2075086945112 is False): __content_2075086945112 = None else: __tt = type(__content_2075086945112) if ((__tt is int) or (__tt is float) or (__tt is int)): __content_2075086945112 = str(__content_2075086945112) else: if (__tt is bytes): __content_2075086945112 = decode( __content_2075086945112) else: if (__tt is not str): try: __content_2075086945112 = __content_2075086945112.__html__ except get('AttributeError', AttributeError): __converted = convert( __content_2075086945112) __content_2075086945112 = ( str(__content_2075086945112) if (__content_2075086945112 is __converted ) else __converted) else: __content_2075086945112 = __content_2075086945112( ) if (__content_2075086945112 is not None): __append(__content_2075086945112) except: if (__token is not None): rcontext.setdefault('__error__', []).append( (__tokens[__token] + ( __filename, _exc_info()[1], ))) raise
def render_tile_animation(__stream, econtext, rcontext, __i18n_domain=None, __i18n_context=None): __append = __stream.append __re_amp = g_re_amp __token = None __re_needs_escape = g_re_needs_escape def __convert(target): if (target is None): return __tt = type(target) if ((__tt is int) or (__tt is float) or (__tt is int)): target = str(target) else: if (__tt is bytes): target = decode(target) else: if (__tt is not str): try: target = target.__html__ except AttributeError: __converted = convert(target) target = (str(target) if (target is __converted) else __converted) else: target = target() return target def __quote(target, quote, quote_entity, default, default_marker): if (target is None): return if (target is default_marker): return default __tt = type(target) if ((__tt is int) or (__tt is float) or (__tt is int)): target = str(target) else: if (__tt is bytes): target = decode(target) else: if (__tt is not str): try: target = target.__html__ except: __converted = convert(target) target = (str(target) if (target is __converted) else __converted) else: return target() if (target is not None): try: escape = (__re_needs_escape(target) is not None) except TypeError: pass else: if escape: if ('&' in target): target = target.replace('&', '&') if ('<' in target): target = target.replace('<', '<') if ('>' in target): target = target.replace('>', '>') if ((quote is not None) and (quote in target)): target = target.replace(quote, quote_entity) return target translate = econtext['__translate'] decode = econtext['__decode'] convert = econtext['__convert'] on_error_handler = econtext['__on_error_handler'] try: getitem = econtext.__getitem__ get = econtext.get __append('\n ') __backup_tile_139875069127424 = get('tile', __marker) # <Value 'industry.tiles' (4:28)> -> __iterator __token = 157 __iterator = _lookup_attr(getitem('industry'), 'tiles') ( __iterator, ____index_139875070089200, ) = getitem('repeat')('tile', __iterator) econtext['tile'] = None for __item in __iterator: econtext['tile'] = __item __append('\n ') # <Value 'tile.custom_animation_control is not None' (5:47)> -> __condition __token = 221 __condition = (_lookup_attr(getitem('tile'), 'custom_animation_control') is not None) if __condition: __backup_macroname_139875068827080 = get( 'macroname', __marker) # <Static value=<_ast.Str object at 0x7f3733dd9908> name=None at 7f3733dd90b8> -> __value __value = _static_139875070089480 econtext['macroname'] = __value # <Value "tile.animation_macros()[tile.custom_animation_control['macro']]" (6:53)> -> __macro __token = 317 __macro = _lookup_attr( getitem('tile'), 'animation_macros')()[_lookup_attr( getitem('tile'), 'custom_animation_control')['macro']] __token = 317 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_139875068827080 is __marker): del econtext['macroname'] else: econtext[ 'macroname'] = __backup_macroname_139875068827080 __append('\n ') ____index_139875070089200 -= 1 if (____index_139875070089200 > 0): __append('') if (__backup_tile_139875069127424 is __marker): del econtext['tile'] else: econtext['tile'] = __backup_tile_139875069127424 __append('\n') except: if (__token is not None): rcontext.setdefault('__error__', []).append( (__tokens[__token] + ( __filename, _exc_info()[1], ))) raise
def render(__stream, econtext, rcontext, __i18n_domain=None, __i18n_context=None): __append = __stream.append __re_amp = g_re_amp __token = None __re_needs_escape = g_re_needs_escape def __convert(target): if (target is None): return __tt = type(target) if ((__tt is int) or (__tt is float) or (__tt is int)): target = str(target) else: if (__tt is bytes): target = decode(target) else: if (__tt is not str): try: target = target.__html__ except AttributeError: __converted = convert(target) target = (str(target) if (target is __converted) else __converted) else: target = target() return target def __quote(target, quote, quote_entity, default, default_marker): if (target is None): return if (target is default_marker): return default __tt = type(target) if ((__tt is int) or (__tt is float) or (__tt is int)): target = str(target) else: if (__tt is bytes): target = decode(target) else: if (__tt is not str): try: target = target.__html__ except: __converted = convert(target) target = (str(target) if (target is __converted) else __converted) else: return target() if (target is not None): try: escape = (__re_needs_escape(target) is not None) except TypeError: pass else: if escape: if ('&' in target): target = target.replace('&', '&') if ('<' in target): target = target.replace('<', '<') if ('>' in target): target = target.replace('>', '>') if ((quote is not None) and (quote in target)): target = target.replace(quote, quote_entity) return target translate = econtext['__translate'] decode = econtext['__decode'] convert = econtext['__convert'] on_error_handler = econtext['__on_error_handler'] try: getitem = econtext.__getitem__ get = econtext.get __append( '/* ******************************************************************\n * Definition of the industry tile, its callbacks, and graphics chain\n * ******************************************************************/\n\n' ) __backup_macroname_140302362974856 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7f9ab095abe0> name=None at 7f9ab095ae10> -> __value __value = _static_140302364290016 econtext['macroname'] = __value # <Value 'load: spritesets.pynml' (5:30)> -> __macro __token = 242 __macro = ' spritesets.pynml' __macro = __loader(__macro) __token = 242 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_140302362974856 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_140302362974856 __append('\n\n') __backup_macroname_140302363975496 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7f9ab099eba8> name=None at 7f9ab099e390> -> __value __value = _static_140302364568488 econtext['macroname'] = __value # <Value 'load: spritelayouts.pynml' (7:30)> -> __macro __token = 300 __macro = ' spritelayouts.pynml' __macro = __loader(__macro) __token = 300 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_140302363975496 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_140302363975496 __append('\n\n') __backup_macroname_140302364660104 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7f9ab098cda0> name=None at 7f9ab098ce48> -> __value __value = _static_140302364495264 econtext['macroname'] = __value # <Value 'load: graphics_switches.pynml' (9:30)> -> __macro __token = 361 __macro = ' graphics_switches.pynml' __macro = __loader(__macro) __token = 361 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_140302364660104 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_140302364660104 __append('\n\n') __backup_location_checks_tile_140302364569216 = get( 'location_checks_tile', __marker) # <Value 'load: location_check_macros_tile.pynml' (11:42)> -> __value __token = 438 __value = ' location_check_macros_tile.pynml' __value = __loader(__value) econtext['location_checks_tile'] = __value __backup_macroname_140302364662728 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7f9ab098c710> name=None at 7f9ab098cdd8> -> __value __value = _static_140302364493584 econtext['macroname'] = __value # <Value "location_checks_tile.macros['render_tree']" (12:30)> -> __macro __token = 508 __macro = _lookup_attr(getitem('location_checks_tile'), 'macros')['render_tree'] __token = 508 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_140302364662728 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_140302364662728 if (__backup_location_checks_tile_140302364569216 is __marker): del econtext['location_checks_tile'] else: econtext[ 'location_checks_tile'] = __backup_location_checks_tile_140302364569216 __append('\n\n') __backup_animation_macros_140302364568152 = get( 'animation_macros', __marker) # <Value 'load: animation_macros.pynml' (14:38)> -> __value __token = 594 __value = ' animation_macros.pynml' __value = __loader(__value) econtext['animation_macros'] = __value __backup_macroname_140302364661640 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7f9ab098c128> name=None at 7f9ab098cf60> -> __value __value = _static_140302364492072 econtext['macroname'] = __value # <Value "animation_macros.macros['tile_animation']" (15:30)> -> __macro __token = 654 __macro = _lookup_attr(getitem('animation_macros'), 'macros')['tile_animation'] __token = 654 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_140302364661640 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_140302364661640 if (__backup_animation_macros_140302364568152 is __marker): del econtext['animation_macros'] else: econtext[ 'animation_macros'] = __backup_animation_macros_140302364568152 __append('\n\n') __backup_macroname_140302364662984 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7f9ab098cb00> name=None at 7f9ab098c2b0> -> __value __value = _static_140302364494592 econtext['macroname'] = __value # <Value 'load: properties_tile.pynml' (17:30)> -> __macro __token = 731 __macro = ' properties_tile.pynml' __macro = __loader(__macro) __token = 731 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_140302364662984 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_140302364662984 __append( '\n\n\n/* *************************************************\n * Definition of the industry\n * *************************************************/\n\n' ) __backup_macroname_140302364095752 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7f9ab098cef0> name=None at 7f9ab098c278> -> __value __value = _static_140302364495600 econtext['macroname'] = __value # <Value 'load: layouts.pynml' (24:30)> -> __macro __token = 933 __macro = ' layouts.pynml' __macro = __loader(__macro) __token = 933 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_140302364095752 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_140302364095752 __append('\n\n') __backup_macroname_140302364098248 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7f9ab098cba8> name=None at 7f9ab22a4048> -> __value __value = _static_140302364494760 econtext['macroname'] = __value # <Value 'load: extra_text_primary.pynml' (26:30)> -> __macro __token = 988 __macro = ' extra_text_primary.pynml' __macro = __loader(__macro) __token = 988 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_140302364098248 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_140302364098248 __append('\n\n') __backup_macroname_140302364133384 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7f9ab22a4588> name=None at 7f9ab22a41d0> -> __value __value = _static_140302390805896 econtext['macroname'] = __value # <Value 'load: produce_primary.pynml' (28:30)> -> __macro __token = 1054 __macro = ' produce_primary.pynml' __macro = __loader(__macro) __token = 1054 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_140302364133384 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_140302364133384 __append('\n\n') __backup_macroname_140302364663176 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7f9ab07eae10> name=None at 7f9ab07ea0b8> -> __value __value = _static_140302362783248 econtext['macroname'] = __value # <Value 'load: check_primary_supplies_delivered.pynml' (30:30)> -> __macro __token = 1117 __macro = ' check_primary_supplies_delivered.pynml' __macro = __loader(__macro) __token = 1117 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_140302364663176 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_140302364663176 __append('\n\n') __backup_macroname_140302363299528 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7f9ab07ea240> name=None at 7f9ab07ea860> -> __value __value = _static_140302362780224 econtext['macroname'] = __value # <Value 'load: availability.pynml' (32:30)> -> __macro __token = 1197 __macro = ' availability.pynml' __macro = __loader(__macro) __token = 1197 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_140302363299528 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_140302363299528 __append('\n\n') __backup_location_checks_industry_140302364566752 = get( 'location_checks_industry', __marker) # <Value 'load: location_check_macros_industry.pynml' (34:46)> -> __value __token = 1273 __value = ' location_check_macros_industry.pynml' __value = __loader(__value) econtext['location_checks_industry'] = __value __backup_macroname_140302362690248 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7f9ab07eaf28> name=None at 7f9ab07ea898> -> __value __value = _static_140302362783528 econtext['macroname'] = __value # <Value "location_checks_industry.macros['render_tree']" (35:30)> -> __macro __token = 1347 __macro = _lookup_attr(getitem('location_checks_industry'), 'macros')['render_tree'] __token = 1347 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_140302362690248 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_140302362690248 if (__backup_location_checks_industry_140302364566752 is __marker): del econtext['location_checks_industry'] else: econtext[ 'location_checks_industry'] = __backup_location_checks_industry_140302364566752 __append('\n\n') __backup_macroname_140302364459720 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7f9ab07eaf60> name=None at 7f9ab07ea080> -> __value __value = _static_140302362783584 econtext['macroname'] = __value # <Value 'load: properties_industry.pynml' (37:30)> -> __macro __token = 1429 __macro = ' properties_industry.pynml' __macro = __loader(__macro) __token = 1429 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_140302364459720 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_140302364459720 __append('\n\n') __append('\n') __backup_economy_140302364565744 = get('economy', __marker) # <Value 'economies' (40:37)> -> __iterator __token = 1613 __iterator = getitem('economies') ( __iterator, ____index_140302362783416, ) = getitem('repeat')('economy', __iterator) econtext['economy'] = None for __item in __iterator: econtext['economy'] = __item __append('\n ') # <Value "industry.get_property('enabled', economy) == True" (41:39)> -> __condition __token = 1664 __condition = (_lookup_attr( getitem('industry'), 'get_property')('enabled', getitem('economy')) == True) if __condition: # <Interpolation value=<Substitution '\n if (economy==${economy.numeric_id}) {\n item(FEAT_INDUSTRIES, ${industry.id}, ${industry.numeric_id}) {\n graphics {\n construction_probability: ${industry.id}_check_availability;\n build_prod_change: randomise_primary_production_on_build;\n produce_cargo_arrival: ${industry.id}_produce;\n produce_256_ticks: ${industry.id}_produce_256_ticks;\n monthly_prod_change: ${industry.id}_monthly_update;\n random_prod_change: return CB_RESULT_IND_PROD_NO_CHANGE;\n location_check: ${industry.id}_check_location;\n extra_text_fund: ${industry.get_extra_text_fund(economy)};\n extra_text_industry: ${industry.id}_extra_text;\n cargo_subtype_display: ${industry.id}_cargo_subtype_display;\n colour: switch_colour;\n }\n }\n }\n ' (41:90)> braces_required=True translation=False at 7f9ab07eacc0> -> __content_140302383355024 __token = 1724 __token = 1739 __content_140302383355024 = _lookup_attr( getitem('economy'), 'numeric_id') __content_140302383355024 = __quote( __content_140302383355024, '\x00', '�', None, False) __token = 1798 __content_140302383355024_1796 = _lookup_attr( getitem('industry'), 'id') __content_140302383355024_1796 = __quote( __content_140302383355024_1796, '\x00', '�', None, False) __token = 1814 __content_140302383355024_1812 = _lookup_attr( getitem('industry'), 'numeric_id') __content_140302383355024_1812 = __quote( __content_140302383355024_1812, '\x00', '�', None, False) __token = 1913 __content_140302383355024_1911 = _lookup_attr( getitem('industry'), 'id') __content_140302383355024_1911 = __quote( __content_140302383355024_1911, '\x00', '�', None, False) __token = 2079 __content_140302383355024_2077 = _lookup_attr( getitem('industry'), 'id') __content_140302383355024_2077 = __quote( __content_140302383355024_2077, '\x00', '�', None, False) __token = 2149 __content_140302383355024_2147 = _lookup_attr( getitem('industry'), 'id') __content_140302383355024_2147 = __quote( __content_140302383355024_2147, '\x00', '�', None, False) __token = 2229 __content_140302383355024_2227 = _lookup_attr( getitem('industry'), 'id') __content_140302383355024_2227 = __quote( __content_140302383355024_2227, '\x00', '�', None, False) __token = 2389 __content_140302383355024_2387 = _lookup_attr( getitem('industry'), 'id') __content_140302383355024_2387 = __quote( __content_140302383355024_2387, '\x00', '�', None, False) __token = 2466 __content_140302383355024_2464 = _lookup_attr( getitem('industry'), 'get_extra_text_fund')(getitem('economy')) __content_140302383355024_2464 = __quote( __content_140302383355024_2464, '\x00', '�', None, False) __token = 2554 __content_140302383355024_2552 = _lookup_attr( getitem('industry'), 'id') __content_140302383355024_2552 = __quote( __content_140302383355024_2552, '\x00', '�', None, False) __token = 2627 __content_140302383355024_2625 = _lookup_attr( getitem('industry'), 'id') __content_140302383355024_2625 = __quote( __content_140302383355024_2625, '\x00', '�', None, False) __content_140302383355024 = ('%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s' % ( '\n if (economy==', (__content_140302383355024 if (__content_140302383355024 is not None) else ''), ') {\n item(FEAT_INDUSTRIES, ', (__content_140302383355024_1796 if (__content_140302383355024_1796 is not None) else ''), ', ', (__content_140302383355024_1812 if (__content_140302383355024_1812 is not None) else ''), ') {\n graphics {\n construction_probability: ', (__content_140302383355024_1911 if (__content_140302383355024_1911 is not None) else ''), '_check_availability;\n build_prod_change: randomise_primary_production_on_build;\n produce_cargo_arrival: ', (__content_140302383355024_2077 if (__content_140302383355024_2077 is not None) else ''), '_produce;\n produce_256_ticks: ', (__content_140302383355024_2147 if (__content_140302383355024_2147 is not None) else ''), '_produce_256_ticks;\n monthly_prod_change: ', (__content_140302383355024_2227 if (__content_140302383355024_2227 is not None) else ''), '_monthly_update;\n random_prod_change: return CB_RESULT_IND_PROD_NO_CHANGE;\n location_check: ', (__content_140302383355024_2387 if (__content_140302383355024_2387 is not None) else ''), '_check_location;\n extra_text_fund: ', (__content_140302383355024_2464 if (__content_140302383355024_2464 is not None) else ''), ';\n extra_text_industry: ', (__content_140302383355024_2552 if (__content_140302383355024_2552 is not None) else ''), '_extra_text;\n cargo_subtype_display: ', (__content_140302383355024_2625 if (__content_140302383355024_2625 is not None) else ''), '_cargo_subtype_display;\n colour: switch_colour;\n }\n }\n }\n ', )) if (__content_140302383355024 is None): pass else: if (__content_140302383355024 is False): __content_140302383355024 = None else: __tt = type(__content_140302383355024) if ((__tt is int) or (__tt is float) or (__tt is int)): __content_140302383355024 = str( __content_140302383355024) else: if (__tt is bytes): __content_140302383355024 = decode( __content_140302383355024) else: if (__tt is not str): try: __content_140302383355024 = __content_140302383355024.__html__ except get('AttributeError', AttributeError): __converted = convert( __content_140302383355024) __content_140302383355024 = ( str(__content_140302383355024) if (__content_140302383355024 is __converted) else __converted) else: __content_140302383355024 = __content_140302383355024( ) if (__content_140302383355024 is not None): __append(__content_140302383355024) __append('\n') ____index_140302362783416 -= 1 if (____index_140302362783416 > 0): __append('') if (__backup_economy_140302364565744 is __marker): del econtext['economy'] else: econtext['economy'] = __backup_economy_140302364565744 __append('\n') except: if (__token is not None): rcontext.setdefault('__error__', []).append( (__tokens[__token] + ( __filename, _exc_info()[1], ))) raise
def render(__stream, econtext, rcontext, __i18n_domain=None, __i18n_context=None): __append = __stream.append __re_amp = g_re_amp __token = None __re_needs_escape = g_re_needs_escape def __convert(target): if (target is None): return __tt = type(target) if ((__tt is int) or (__tt is float) or (__tt is int)): target = str(target) else: if (__tt is bytes): target = decode(target) else: if (__tt is not str): try: target = target.__html__ except AttributeError: __converted = convert(target) target = (str(target) if (target is __converted) else __converted) else: target = target() return target def __quote(target, quote, quote_entity, default, default_marker): if (target is None): return if (target is default_marker): return default __tt = type(target) if ((__tt is int) or (__tt is float) or (__tt is int)): target = str(target) else: if (__tt is bytes): target = decode(target) else: if (__tt is not str): try: target = target.__html__ except: __converted = convert(target) target = (str(target) if (target is __converted) else __converted) else: return target() if (target is not None): try: escape = (__re_needs_escape(target) is not None) except TypeError: pass else: if escape: if ('&' in target): target = target.replace('&', '&') if ('<' in target): target = target.replace('<', '<') if ('>' in target): target = target.replace('>', '>') if ((quote is not None) and (quote in target)): target = target.replace(quote, quote_entity) return target translate = econtext['__translate'] decode = econtext['__decode'] convert = econtext['__convert'] on_error_handler = econtext['__on_error_handler'] try: getitem = econtext.__getitem__ get = econtext.get __append( '/* ******************************************************************\n * Definition of the industry tile, its callbacks, and graphics chain\n * ******************************************************************/\n\n' ) __backup_macroname_140302362202312 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7f9ab0887fd0> name=None at 7f9ab0887a58> -> __value __value = _static_140302363426768 econtext['macroname'] = __value # <Value 'load: spritesets.pynml' (5:30)> -> __macro __token = 242 __macro = ' spritesets.pynml' __macro = __loader(__macro) __token = 242 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_140302362202312 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_140302362202312 __append('\n\n') __backup_macroname_140302364367304 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7f9ab0887c88> name=None at 7f9ab0887908> -> __value __value = _static_140302363425928 econtext['macroname'] = __value # <Value 'load: spritelayouts.pynml' (7:30)> -> __macro __token = 300 __macro = ' spritelayouts.pynml' __macro = __loader(__macro) __token = 300 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_140302364367304 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_140302364367304 __append('\n\n') __backup_macroname_140302362205960 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7f9ab0887f60> name=None at 7f9ab0887978> -> __value __value = _static_140302363426656 econtext['macroname'] = __value # <Value 'load: graphics_switches.pynml' (9:30)> -> __macro __token = 361 __macro = ' graphics_switches.pynml' __macro = __loader(__macro) __token = 361 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_140302362205960 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_140302362205960 __append('\n\n') __backup_location_checks_tile_140302363433448 = get( 'location_checks_tile', __marker) # <Value 'load: location_check_macros_tile.pynml' (11:42)> -> __value __token = 438 __value = ' location_check_macros_tile.pynml' __value = __loader(__value) econtext['location_checks_tile'] = __value __backup_macroname_140302362202760 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7f9ab0887320> name=None at 7f9ab08870b8> -> __value __value = _static_140302363423520 econtext['macroname'] = __value # <Value "location_checks_tile.macros['render_tree']" (12:30)> -> __macro __token = 508 __macro = _lookup_attr(getitem('location_checks_tile'), 'macros')['render_tree'] __token = 508 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_140302362202760 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_140302362202760 if (__backup_location_checks_tile_140302363433448 is __marker): del econtext['location_checks_tile'] else: econtext[ 'location_checks_tile'] = __backup_location_checks_tile_140302363433448 __append('\n\n') __backup_animation_macros_140302362850584 = get( 'animation_macros', __marker) # <Value 'load: animation_macros.pynml' (14:38)> -> __value __token = 594 __value = ' animation_macros.pynml' __value = __loader(__value) econtext['animation_macros'] = __value __backup_macroname_140302363315656 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7f9ab0887438> name=None at 7f9ab0887dd8> -> __value __value = _static_140302363423800 econtext['macroname'] = __value # <Value "animation_macros.macros['tile_animation']" (15:30)> -> __macro __token = 654 __macro = _lookup_attr(getitem('animation_macros'), 'macros')['tile_animation'] __token = 654 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_140302363315656 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_140302363315656 if (__backup_animation_macros_140302362850584 is __marker): del econtext['animation_macros'] else: econtext[ 'animation_macros'] = __backup_animation_macros_140302362850584 __append('\n\n') __backup_macroname_140302363225224 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7f9ab08878d0> name=None at 7f9ab0887128> -> __value __value = _static_140302363424976 econtext['macroname'] = __value # <Value 'load: properties_tile.pynml' (17:30)> -> __macro __token = 731 __macro = ' properties_tile.pynml' __macro = __loader(__macro) __token = 731 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_140302363225224 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_140302363225224 __append( '\n\n\n/* *************************************************\n * Definition of the industry\n * *************************************************/\n\n' ) __backup_macroname_140302363225096 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7f9ab07eab70> name=None at 7f9ab07ea2b0> -> __value __value = _static_140302362782576 econtext['macroname'] = __value # <Value 'load: layouts.pynml' (24:30)> -> __macro __token = 933 __macro = ' layouts.pynml' __macro = __loader(__macro) __token = 933 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_140302363225096 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_140302363225096 __append('\n\n') __backup_macroname_140302363222536 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7f9ab07ea9e8> name=None at 7f9ab07eaef0> -> __value __value = _static_140302362782184 econtext['macroname'] = __value # <Value 'load: availability.pynml' (26:30)> -> __macro __token = 988 __macro = ' availability.pynml' __macro = __loader(__macro) __token = 988 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_140302363222536 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_140302363222536 __append('\n\n') __backup_location_checks_industry_140302363432272 = get( 'location_checks_industry', __marker) # <Value 'load: location_check_macros_industry.pynml' (28:46)> -> __value __token = 1064 __value = ' location_check_macros_industry.pynml' __value = __loader(__value) econtext['location_checks_industry'] = __value __backup_macroname_140302362204424 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7f9ab07ea828> name=None at 7f9ab07eab00> -> __value __value = _static_140302362781736 econtext['macroname'] = __value # <Value "location_checks_industry.macros['render_tree']" (29:30)> -> __macro __token = 1138 __macro = _lookup_attr(getitem('location_checks_industry'), 'macros')['render_tree'] __token = 1138 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_140302362204424 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_140302362204424 if (__backup_location_checks_industry_140302363432272 is __marker): del econtext['location_checks_industry'] else: econtext[ 'location_checks_industry'] = __backup_location_checks_industry_140302363432272 __append('\n\n') __backup_macroname_140302363222728 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7f9ab07eac50> name=None at 7f9ab07eaf28> -> __value __value = _static_140302362782800 econtext['macroname'] = __value # <Value 'load: properties_industry.pynml' (31:30)> -> __macro __token = 1220 __macro = ' properties_industry.pynml' __macro = __loader(__macro) __token = 1220 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_140302363222728 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_140302363222728 __append('\n\n') __append('\n') __backup_economy_140302363431264 = get('economy', __marker) # <Value 'economies' (34:37)> -> __iterator __token = 1404 __iterator = getitem('economies') ( __iterator, ____index_140302362781400, ) = getitem('repeat')('economy', __iterator) econtext['economy'] = None for __item in __iterator: econtext['economy'] = __item __append('\n ') # <Value "industry.get_property('enabled', economy) == True" (35:39)> -> __condition __token = 1455 __condition = (_lookup_attr( getitem('industry'), 'get_property')('enabled', getitem('economy')) == True) if __condition: # <Interpolation value=<Substitution '\n if (economy==${economy.numeric_id}) {\n item(FEAT_INDUSTRIES, ${industry.id}, ${industry.numeric_id}) {\n graphics {\n construction_probability: ${industry.id}_check_availability;\n build_prod_change: randomise_primary_production_on_build;\n location_check: ${industry.id}_check_location;\n extra_text_fund: ${industry.get_extra_text_fund(economy)};\n colour: switch_colour;\n }\n }\n }\n ' (35:90)> braces_required=True translation=False at 7f9ab07eaa58> -> __content_140302383355024 __token = 1515 __token = 1530 __content_140302383355024 = _lookup_attr( getitem('economy'), 'numeric_id') __content_140302383355024 = __quote( __content_140302383355024, '\x00', '�', None, False) __token = 1589 __content_140302383355024_1587 = _lookup_attr( getitem('industry'), 'id') __content_140302383355024_1587 = __quote( __content_140302383355024_1587, '\x00', '�', None, False) __token = 1605 __content_140302383355024_1603 = _lookup_attr( getitem('industry'), 'numeric_id') __content_140302383355024_1603 = __quote( __content_140302383355024_1603, '\x00', '�', None, False) __token = 1704 __content_140302383355024_1702 = _lookup_attr( getitem('industry'), 'id') __content_140302383355024_1702 = __quote( __content_140302383355024_1702, '\x00', '�', None, False) __token = 1870 __content_140302383355024_1868 = _lookup_attr( getitem('industry'), 'id') __content_140302383355024_1868 = __quote( __content_140302383355024_1868, '\x00', '�', None, False) __token = 1947 __content_140302383355024_1945 = _lookup_attr( getitem('industry'), 'get_extra_text_fund')(getitem('economy')) __content_140302383355024_1945 = __quote( __content_140302383355024_1945, '\x00', '�', None, False) __content_140302383355024 = ('%s%s%s%s%s%s%s%s%s%s%s%s%s' % ( '\n if (economy==', (__content_140302383355024 if (__content_140302383355024 is not None) else ''), ') {\n item(FEAT_INDUSTRIES, ', (__content_140302383355024_1587 if (__content_140302383355024_1587 is not None) else ''), ', ', (__content_140302383355024_1603 if (__content_140302383355024_1603 is not None) else ''), ') {\n graphics {\n construction_probability: ', (__content_140302383355024_1702 if (__content_140302383355024_1702 is not None) else ''), '_check_availability;\n build_prod_change: randomise_primary_production_on_build;\n location_check: ', (__content_140302383355024_1868 if (__content_140302383355024_1868 is not None) else ''), '_check_location;\n extra_text_fund: ', (__content_140302383355024_1945 if (__content_140302383355024_1945 is not None) else ''), ';\n colour: switch_colour;\n }\n }\n }\n ', )) if (__content_140302383355024 is None): pass else: if (__content_140302383355024 is False): __content_140302383355024 = None else: __tt = type(__content_140302383355024) if ((__tt is int) or (__tt is float) or (__tt is int)): __content_140302383355024 = str( __content_140302383355024) else: if (__tt is bytes): __content_140302383355024 = decode( __content_140302383355024) else: if (__tt is not str): try: __content_140302383355024 = __content_140302383355024.__html__ except get('AttributeError', AttributeError): __converted = convert( __content_140302383355024) __content_140302383355024 = ( str(__content_140302383355024) if (__content_140302383355024 is __converted) else __converted) else: __content_140302383355024 = __content_140302383355024( ) if (__content_140302383355024 is not None): __append(__content_140302383355024) __append('\n') ____index_140302362781400 -= 1 if (____index_140302362781400 > 0): __append('') if (__backup_economy_140302363431264 is __marker): del econtext['economy'] else: econtext['economy'] = __backup_economy_140302363431264 __append('\n') except: if (__token is not None): rcontext.setdefault('__error__', []).append( (__tokens[__token] + ( __filename, _exc_info()[1], ))) raise
def render_random_first_frame(__stream, econtext, rcontext, __i18n_domain=None, __i18n_context=None): __append = __stream.append __re_amp = g_re_amp __token = None __re_needs_escape = g_re_needs_escape def __convert(target): if (target is None): return __tt = type(target) if ((__tt is int) or (__tt is float) or (__tt is int)): target = str(target) else: if (__tt is bytes): target = decode(target) else: if (__tt is not str): try: target = target.__html__ except AttributeError: __converted = convert(target) target = (str(target) if (target is __converted) else __converted) else: target = target() return target def __quote(target, quote, quote_entity, default, default_marker): if (target is None): return if (target is default_marker): return default __tt = type(target) if ((__tt is int) or (__tt is float) or (__tt is int)): target = str(target) else: if (__tt is bytes): target = decode(target) else: if (__tt is not str): try: target = target.__html__ except: __converted = convert(target) target = (str(target) if (target is __converted) else __converted) else: return target() if (target is not None): try: escape = (__re_needs_escape(target) is not None) except TypeError: pass else: if escape: if ('&' in target): target = target.replace('&', '&') if ('<' in target): target = target.replace('<', '<') if ('>' in target): target = target.replace('>', '>') if ((quote is not None) and (quote in target)): target = target.replace(quote, quote_entity) return target translate = econtext['__translate'] decode = econtext['__decode'] convert = econtext['__convert'] on_error_handler = econtext['__on_error_handler'] try: getitem = econtext.__getitem__ get = econtext.get __append('\n ') __append('\n ') # <Interpolation value=<Substitution '\n switch(FEAT_INDUSTRYTILES, SELF, ${tile.id}_anim_control, (extra_callback_info1 % ${tile.animation_length})) {\n ' (30:7)> braces_required=True translation=False at 7f3733dd9278> -> __content_139875089167952 __token = 1547 __token = 1582 __content_139875089167952 = _lookup_attr(getitem('tile'), 'id') __content_139875089167952 = __quote(__content_139875089167952, '\x00', '�', None, False) __token = 1631 __content_139875089167952_1629 = _lookup_attr( getitem('tile'), 'animation_length') __content_139875089167952_1629 = __quote( __content_139875089167952_1629, '\x00', '�', None, False) __content_139875089167952 = ('%s%s%s%s%s' % ( '\n switch(FEAT_INDUSTRYTILES, SELF, ', (__content_139875089167952 if (__content_139875089167952 is not None) else ''), '_anim_control, (extra_callback_info1 % ', (__content_139875089167952_1629 if (__content_139875089167952_1629 is not None) else ''), ')) {\n ', )) if (__content_139875089167952 is None): pass else: if (__content_139875089167952 is False): __content_139875089167952 = None else: __tt = type(__content_139875089167952) if ((__tt is int) or (__tt is float) or (__tt is int)): __content_139875089167952 = str( __content_139875089167952) else: if (__tt is bytes): __content_139875089167952 = decode( __content_139875089167952) else: if (__tt is not str): try: __content_139875089167952 = __content_139875089167952.__html__ except get('AttributeError', AttributeError): __converted = convert( __content_139875089167952) __content_139875089167952 = ( str(__content_139875089167952) if (__content_139875089167952 is __converted) else __converted) else: __content_139875089167952 = __content_139875089167952( ) if (__content_139875089167952 is not None): __append(__content_139875089167952) __backup_frame_139875068663400 = get('frame', __marker) # <Value 'range(tile.animation_length)' (32:34)> -> __iterator __token = 1692 __iterator = get('range', range)(_lookup_attr(getitem('tile'), 'animation_length')) ( __iterator, ____index_139875070087632, ) = getitem('repeat')('frame', __iterator) econtext['frame'] = None for __item in __iterator: econtext['frame'] = __item # <Interpolation value=<Substitution '\n ${repeat.frame.index}: return ${repeat.frame.index};\n ' (32:64)> braces_required=True translation=False at 7f3733dd90f0> -> __content_139875089167952 __token = 1735 __token = 1737 __content_139875089167952 = _lookup_attr( _lookup_attr(getitem('repeat'), 'frame'), 'index') __content_139875089167952 = __quote(__content_139875089167952, '\x00', '�', None, False) __token = 1767 __content_139875089167952_1765 = _lookup_attr( _lookup_attr(getitem('repeat'), 'frame'), 'index') __content_139875089167952_1765 = __quote( __content_139875089167952_1765, '\x00', '�', None, False) __content_139875089167952 = ('%s%s%s%s%s' % ( '\n ', (__content_139875089167952 if (__content_139875089167952 is not None) else ''), ': return ', (__content_139875089167952_1765 if (__content_139875089167952_1765 is not None) else ''), ';\n ', )) if (__content_139875089167952 is None): pass else: if (__content_139875089167952 is False): __content_139875089167952 = None else: __tt = type(__content_139875089167952) if ((__tt is int) or (__tt is float) or (__tt is int)): __content_139875089167952 = str( __content_139875089167952) else: if (__tt is bytes): __content_139875089167952 = decode( __content_139875089167952) else: if (__tt is not str): try: __content_139875089167952 = __content_139875089167952.__html__ except get('AttributeError', AttributeError): __converted = convert( __content_139875089167952) __content_139875089167952 = ( str(__content_139875089167952) if (__content_139875089167952 is __converted) else __converted) else: __content_139875089167952 = __content_139875089167952( ) if (__content_139875089167952 is not None): __append(__content_139875089167952) ____index_139875070087632 -= 1 if (____index_139875070087632 > 0): __append('') if (__backup_frame_139875068663400 is __marker): del econtext['frame'] else: econtext['frame'] = __backup_frame_139875068663400 __append('\n return CB_RESULT_NEXT_FRAME;\n }\n') except: if (__token is not None): rcontext.setdefault('__error__', []).append( (__tokens[__token] + ( __filename, _exc_info()[1], ))) raise
def render(__stream, econtext, rcontext, __i18n_domain=None, __i18n_context=None): __append = __stream.append __re_amp = g_re_amp __token = None __re_needs_escape = g_re_needs_escape def __convert(target): if (target is None): return __tt = type(target) if ((__tt is int) or (__tt is float) or (__tt is int)): target = str(target) else: if (__tt is bytes): target = decode(target) else: if (__tt is not str): try: target = target.__html__ except AttributeError: __converted = convert(target) target = (str(target) if (target is __converted) else __converted) else: target = target() return target def __quote(target, quote, quote_entity, default, default_marker): if (target is None): return if (target is default_marker): return default __tt = type(target) if ((__tt is int) or (__tt is float) or (__tt is int)): target = str(target) else: if (__tt is bytes): target = decode(target) else: if (__tt is not str): try: target = target.__html__ except: __converted = convert(target) target = (str(target) if (target is __converted) else __converted) else: return target() if (target is not None): try: escape = (__re_needs_escape(target) is not None) except TypeError: pass else: if escape: if ('&' in target): target = target.replace('&', '&') if ('<' in target): target = target.replace('<', '<') if ('>' in target): target = target.replace('>', '>') if ((quote is not None) and (quote in target)): target = target.replace(quote, quote_entity) return target translate = econtext['__translate'] decode = econtext['__decode'] convert = econtext['__convert'] on_error_handler = econtext['__on_error_handler'] try: getitem = econtext.__getitem__ get = econtext.get __append( '/* ******************************************************************\n * Definition of the industry tile, its callbacks, and graphics chain\n * ******************************************************************/\n\n' ) __backup_macroname_139875068097608 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7f3733d99550> name=None at 7f3733d99d30> -> __value __value = _static_139875069826384 econtext['macroname'] = __value # <Value 'load: spritesets.pynml' (5:30)> -> __macro __token = 242 __macro = ' spritesets.pynml' __macro = __loader(__macro) __token = 242 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_139875068097608 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_139875068097608 __append('\n\n') __backup_macroname_139875067950856 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7f3733d99390> name=None at 7f3733d994a8> -> __value __value = _static_139875069825936 econtext['macroname'] = __value # <Value 'load: spritelayouts.pynml' (7:30)> -> __macro __token = 300 __macro = ' spritelayouts.pynml' __macro = __loader(__macro) __token = 300 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_139875067950856 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_139875067950856 __append('\n\n') __backup_macroname_139875067950600 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7f3733d99630> name=None at 7f3733d99940> -> __value __value = _static_139875069826608 econtext['macroname'] = __value # <Value 'load: graphics_switches.pynml' (9:30)> -> __macro __token = 361 __macro = ' graphics_switches.pynml' __macro = __loader(__macro) __token = 361 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_139875067950600 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_139875067950600 __append('\n\n') __backup_location_checks_tile_139875070224368 = get( 'location_checks_tile', __marker) # <Value 'load: location_check_macros_tile.pynml' (11:42)> -> __value __token = 438 __value = ' location_check_macros_tile.pynml' __value = __loader(__value) econtext['location_checks_tile'] = __value __backup_macroname_139875068126152 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7f3733d99c18> name=None at 7f3733d99198> -> __value __value = _static_139875069828120 econtext['macroname'] = __value # <Value "location_checks_tile.macros['render_tree']" (12:30)> -> __macro __token = 508 __macro = _lookup_attr(getitem('location_checks_tile'), 'macros')['render_tree'] __token = 508 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_139875068126152 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_139875068126152 if (__backup_location_checks_tile_139875070224368 is __marker): del econtext['location_checks_tile'] else: econtext[ 'location_checks_tile'] = __backup_location_checks_tile_139875070224368 __append('\n\n') __backup_animation_macros_139875068920944 = get( 'animation_macros', __marker) # <Value 'load: animation_macros.pynml' (14:38)> -> __value __token = 594 __value = ' animation_macros.pynml' __value = __loader(__value) econtext['animation_macros'] = __value __backup_macroname_139875068126792 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7f3733d99160> name=None at 7f3733d990b8> -> __value __value = _static_139875069825376 econtext['macroname'] = __value # <Value "animation_macros.macros['tile_animation']" (15:30)> -> __macro __token = 654 __macro = _lookup_attr(getitem('animation_macros'), 'macros')['tile_animation'] __token = 654 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_139875068126792 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_139875068126792 if (__backup_animation_macros_139875068920944 is __marker): del econtext['animation_macros'] else: econtext[ 'animation_macros'] = __backup_animation_macros_139875068920944 __append('\n\n') __backup_macroname_139875068159944 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7f3733d99dd8> name=None at 7f3733d99128> -> __value __value = _static_139875069828568 econtext['macroname'] = __value # <Value 'load: properties_tile.pynml' (17:30)> -> __macro __token = 731 __macro = ' properties_tile.pynml' __macro = __loader(__macro) __token = 731 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_139875068159944 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_139875068159944 __append( '\n\n\n/* *************************************************\n * Definition of the industry\n * *************************************************/\n\n' ) __backup_macroname_139875068122184 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7f3733cc1390> name=None at 7f3733cc19b0> -> __value __value = _static_139875068941200 econtext['macroname'] = __value # <Value 'load: layouts.pynml' (24:30)> -> __macro __token = 933 __macro = ' layouts.pynml' __macro = __loader(__macro) __token = 933 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_139875068122184 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_139875068122184 __append('\n\n') __backup_macroname_139875068113928 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7f3733cc1b38> name=None at 7f3733cc1128> -> __value __value = _static_139875068943160 econtext['macroname'] = __value # <Value 'load: availability.pynml' (26:30)> -> __macro __token = 988 __macro = ' availability.pynml' __macro = __loader(__macro) __token = 988 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_139875068113928 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_139875068113928 __append('\n\n') __backup_location_checks_industry_139875070396232 = get( 'location_checks_industry', __marker) # <Value 'load: location_check_macros_industry.pynml' (28:46)> -> __value __token = 1064 __value = ' location_check_macros_industry.pynml' __value = __loader(__value) econtext['location_checks_industry'] = __value __backup_macroname_139875068099976 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7f3733cc1da0> name=None at 7f3733cc1b00> -> __value __value = _static_139875068943776 econtext['macroname'] = __value # <Value "location_checks_industry.macros['render_tree']" (29:30)> -> __macro __token = 1138 __macro = _lookup_attr(getitem('location_checks_industry'), 'macros')['render_tree'] __token = 1138 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_139875068099976 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_139875068099976 if (__backup_location_checks_industry_139875070396232 is __marker): del econtext['location_checks_industry'] else: econtext[ 'location_checks_industry'] = __backup_location_checks_industry_139875070396232 __append('\n\n') __backup_macroname_139875068985288 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7f3733c6ca90> name=None at 7f3733c6c4e0> -> __value __value = _static_139875068594832 econtext['macroname'] = __value # <Value 'load: properties_industry.pynml' (31:30)> -> __macro __token = 1220 __macro = ' properties_industry.pynml' __macro = __loader(__macro) __token = 1220 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_139875068985288 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_139875068985288 __append('\n\n') __append('\n') __backup_economy_139875070223976 = get('economy', __marker) # <Value 'economies' (34:37)> -> __iterator __token = 1404 __iterator = getitem('economies') ( __iterator, ____index_139875068594104, ) = getitem('repeat')('economy', __iterator) econtext['economy'] = None for __item in __iterator: econtext['economy'] = __item __append('\n ') # <Value "industry.get_property('enabled', economy) == True" (35:39)> -> __condition __token = 1455 __condition = (_lookup_attr( getitem('industry'), 'get_property')('enabled', getitem('economy')) == True) if __condition: # <Interpolation value=<Substitution '\n if (economy==${economy.numeric_id}) {\n item(FEAT_INDUSTRIES, ${industry.id}, ${industry.numeric_id}) {\n graphics {\n construction_probability: ${industry.id}_check_availability;\n build_prod_change: randomise_primary_production_on_build;\n location_check: ${industry.id}_check_location;\n extra_text_fund: ${industry.get_extra_text_fund(economy)};\n colour: switch_colour;\n }\n }\n }\n ' (35:90)> braces_required=True translation=False at 7f3733c6c400> -> __content_139875089167952 __token = 1515 __token = 1530 __content_139875089167952 = _lookup_attr( getitem('economy'), 'numeric_id') __content_139875089167952 = __quote( __content_139875089167952, '\x00', '�', None, False) __token = 1589 __content_139875089167952_1587 = _lookup_attr( getitem('industry'), 'id') __content_139875089167952_1587 = __quote( __content_139875089167952_1587, '\x00', '�', None, False) __token = 1605 __content_139875089167952_1603 = _lookup_attr( getitem('industry'), 'numeric_id') __content_139875089167952_1603 = __quote( __content_139875089167952_1603, '\x00', '�', None, False) __token = 1704 __content_139875089167952_1702 = _lookup_attr( getitem('industry'), 'id') __content_139875089167952_1702 = __quote( __content_139875089167952_1702, '\x00', '�', None, False) __token = 1870 __content_139875089167952_1868 = _lookup_attr( getitem('industry'), 'id') __content_139875089167952_1868 = __quote( __content_139875089167952_1868, '\x00', '�', None, False) __token = 1947 __content_139875089167952_1945 = _lookup_attr( getitem('industry'), 'get_extra_text_fund')(getitem('economy')) __content_139875089167952_1945 = __quote( __content_139875089167952_1945, '\x00', '�', None, False) __content_139875089167952 = ('%s%s%s%s%s%s%s%s%s%s%s%s%s' % ( '\n if (economy==', (__content_139875089167952 if (__content_139875089167952 is not None) else ''), ') {\n item(FEAT_INDUSTRIES, ', (__content_139875089167952_1587 if (__content_139875089167952_1587 is not None) else ''), ', ', (__content_139875089167952_1603 if (__content_139875089167952_1603 is not None) else ''), ') {\n graphics {\n construction_probability: ', (__content_139875089167952_1702 if (__content_139875089167952_1702 is not None) else ''), '_check_availability;\n build_prod_change: randomise_primary_production_on_build;\n location_check: ', (__content_139875089167952_1868 if (__content_139875089167952_1868 is not None) else ''), '_check_location;\n extra_text_fund: ', (__content_139875089167952_1945 if (__content_139875089167952_1945 is not None) else ''), ';\n colour: switch_colour;\n }\n }\n }\n ', )) if (__content_139875089167952 is None): pass else: if (__content_139875089167952 is False): __content_139875089167952 = None else: __tt = type(__content_139875089167952) if ((__tt is int) or (__tt is float) or (__tt is int)): __content_139875089167952 = str( __content_139875089167952) else: if (__tt is bytes): __content_139875089167952 = decode( __content_139875089167952) else: if (__tt is not str): try: __content_139875089167952 = __content_139875089167952.__html__ except get('AttributeError', AttributeError): __converted = convert( __content_139875089167952) __content_139875089167952 = ( str(__content_139875089167952) if (__content_139875089167952 is __converted) else __converted) else: __content_139875089167952 = __content_139875089167952( ) if (__content_139875089167952 is not None): __append(__content_139875089167952) __append('\n') ____index_139875068594104 -= 1 if (____index_139875068594104 > 0): __append('') if (__backup_economy_139875070223976 is __marker): del econtext['economy'] else: econtext['economy'] = __backup_economy_139875070223976 __append('\n') except: if (__token is not None): rcontext.setdefault('__error__', []).append( (__tokens[__token] + ( __filename, _exc_info()[1], ))) raise
def render(__stream, econtext, rcontext, __i18n_domain=None, __i18n_context=None): __append = __stream.append __re_amp = g_re_amp __token = None __re_needs_escape = g_re_needs_escape def __convert(target): if (target is None): return __tt = type(target) if ((__tt is int) or (__tt is float) or (__tt is int)): target = str(target) else: if (__tt is bytes): target = decode(target) else: if (__tt is not str): try: target = target.__html__ except AttributeError: __converted = convert(target) target = (str(target) if (target is __converted) else __converted) else: target = target() return target def __quote(target, quote, quote_entity, default, default_marker): if (target is None): return if (target is default_marker): return default __tt = type(target) if ((__tt is int) or (__tt is float) or (__tt is int)): target = str(target) else: if (__tt is bytes): target = decode(target) else: if (__tt is not str): try: target = target.__html__ except: __converted = convert(target) target = (str(target) if (target is __converted) else __converted) else: return target() if (target is not None): try: escape = (__re_needs_escape(target) is not None) except TypeError: pass else: if escape: if ('&' in target): target = target.replace('&', '&') if ('<' in target): target = target.replace('<', '<') if ('>' in target): target = target.replace('>', '>') if ((quote is not None) and (quote in target)): target = target.replace(quote, quote_entity) return target translate = econtext['__translate'] decode = econtext['__decode'] convert = econtext['__convert'] on_error_handler = econtext['__on_error_handler'] try: getitem = econtext.__getitem__ get = econtext.get __append( '// parameters also referenced by action 14 stuff - likely to be found in header.pynml, unless it got moved\n\n// map_size is total number of tiles on the map\n// compute relative size of the map, compared to 256*256\nrelative_map_size = map_size / (256 * 256);\n// number of industry closures is proportional to map size (maps ' ) __append('<') __append( "= 256x256 will have 1 cluster)\nindustry_clusters = (relative_map_size / 2) + 1;\n\nparam_max_coastal_distance = marine_industry_max_coastal_distance;\nif (marine_industry_max_coastal_distance == 0) {\n\tparam_max_coastal_distance = 255;\n}\n\n// I want to specify the order of the economies in parameter menu without worrying about breaking savegames etc\n// but action 14 can't separate parameter value and position in menu for economies\n// so here we remap selected economy to actual numeric value\n// !! having tested, this doesn't actually prevent savegame breaking\n// !! as the selected value in the action 14 UI remains constant (thereby changing which economy is active)\n// !! there is zero chance of it being worthwhile to write a migration for existing savegames\n// !! therefore rethink this - whether it's worthwhile, or whether to just reset economy order every time when adding new economies\n" ) __backup_economy_140183257339776 = get('economy', __marker) # <Value 'economies' (21:35)> -> __iterator __token = 1252 __iterator = getitem('economies') ( __iterator, ____index_140183231303632, ) = getitem('repeat')('economy', __iterator) econtext['economy'] = None for __item in __iterator: econtext['economy'] = __item # <Interpolation value=<Substitution '\n if (economy_selection == ${repeat.economy.index}) {\n economy = ${economy.numeric_id};\n }\n' (21:46)> braces_required=True translation=False at 7f7ef3b48f98> -> __content_140183249773656 __token = 1268 __token = 1295 __content_140183249773656 = _lookup_attr( _lookup_attr(getitem('repeat'), 'economy'), 'index') __content_140183249773656 = __quote(__content_140183249773656, '\x00', '�', None, False) __token = 1340 __content_140183249773656_1338 = _lookup_attr( getitem('economy'), 'numeric_id') __content_140183249773656_1338 = __quote( __content_140183249773656_1338, '\x00', '�', None, False) __content_140183249773656 = ('%s%s%s%s%s' % ( '\n if (economy_selection == ', (__content_140183249773656 if (__content_140183249773656 is not None) else ''), ') {\n economy = ', (__content_140183249773656_1338 if (__content_140183249773656_1338 is not None) else ''), ';\n }\n', )) if (__content_140183249773656 is None): pass else: if (__content_140183249773656 is False): __content_140183249773656 = None else: __tt = type(__content_140183249773656) if ((__tt is int) or (__tt is float) or (__tt is int)): __content_140183249773656 = str( __content_140183249773656) else: if (__tt is bytes): __content_140183249773656 = decode( __content_140183249773656) else: if (__tt is not str): try: __content_140183249773656 = __content_140183249773656.__html__ except get('AttributeError', AttributeError): __converted = convert( __content_140183249773656) __content_140183249773656 = ( str(__content_140183249773656) if (__content_140183249773656 is __converted) else __converted) else: __content_140183249773656 = __content_140183249773656( ) if (__content_140183249773656 is not None): __append(__content_140183249773656) ____index_140183231303632 -= 1 if (____index_140183231303632 > 0): __append('') if (__backup_economy_140183257339776 is __marker): del econtext['economy'] else: econtext['economy'] = __backup_economy_140183257339776 __append( '\n\n// production bonuses are expressed as absolute % of base production in parameters menu,\n// but we need them as bonus amounts, to be added on top of base production, so net off 100\nprimary_level1_bonus = primary_level1_produced_percent - 100;\nprimary_level2_bonus = primary_level2_produced_percent - 100;\n\n// the tree for the food market is a climate-dependent special case, re-using base set sprites\n// it has to be handled here as a parameter, no elegant way to include it in the industry\nmarket_tree = 1639;\nif (climate == CLIMATE_ARCTIC) { market_tree = 1737; }\nif (climate == CLIMATE_TROPICAL) { market_tree = 1891; }\nmarket_tree_snow = 1793;\n' ) except: if (__token is not None): rcontext.setdefault('__error__', []).append( (__tokens[__token] + ( __filename, _exc_info()[1], ))) raise
def render(__stream, econtext, rcontext, __i18n_domain=None, __i18n_context=None): __append = __stream.append __re_amp = g_re_amp __token = None __re_needs_escape = g_re_needs_escape def __convert(target): if (target is None): return __tt = type(target) if ((__tt is int) or (__tt is float) or (__tt is int)): target = str(target) else: if (__tt is bytes): target = decode(target) else: if (__tt is not str): try: target = target.__html__ except AttributeError: __converted = convert(target) target = (str(target) if (target is __converted) else __converted) else: target = target() return target def __quote(target, quote, quote_entity, default, default_marker): if (target is None): return if (target is default_marker): return default __tt = type(target) if ((__tt is int) or (__tt is float) or (__tt is int)): target = str(target) else: if (__tt is bytes): target = decode(target) else: if (__tt is not str): try: target = target.__html__ except: __converted = convert(target) target = (str(target) if (target is __converted) else __converted) else: return target() if (target is not None): try: escape = (__re_needs_escape(target) is not None) except TypeError: pass else: if escape: if ('&' in target): target = target.replace('&', '&') if ('<' in target): target = target.replace('<', '<') if ('>' in target): target = target.replace('>', '>') if ((quote is not None) and (quote in target)): target = target.replace(quote, quote_entity) return target translate = econtext['__translate'] decode = econtext['__decode'] convert = econtext['__convert'] try: getitem = econtext.__getitem__ get = econtext.get __append( '/* ******************************************************************\n * Definition of the industry tile, its callbacks, and graphics chain\n * ******************************************************************/\n\n' ) __backup_macroname_2075100620296 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x000001E3258B1438> name=None at 1e3258b1208> -> __value __value = _static_2075099075640 econtext['macroname'] = __value # <Value 'load: spritesets.pynml' (5:30)> -> __macro __token = 242 __macro = ' spritesets.pynml' __macro = __loader(__macro) __token = 242 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_2075100620296 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_2075100620296 __append('\n\n') __backup_macroname_2075100620936 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x000001E3258B1F60> name=None at 1e3258b14a8> -> __value __value = _static_2075099078496 econtext['macroname'] = __value # <Value 'load: spritelayouts.pynml' (7:30)> -> __macro __token = 300 __macro = ' spritelayouts.pynml' __macro = __loader(__macro) __token = 300 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_2075100620936 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_2075100620936 __append('\n\n') __backup_macroname_2075100619784 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x000001E3258B1630> name=None at 1e3258b1c88> -> __value __value = _static_2075099076144 econtext['macroname'] = __value # <Value 'load: graphics_switches.pynml' (9:30)> -> __macro __token = 361 __macro = ' graphics_switches.pynml' __macro = __loader(__macro) __token = 361 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_2075100619784 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_2075100619784 __append('\n\n') __backup_location_checks_tile_2075101627056 = get( 'location_checks_tile', __marker) # <Value 'load: location_check_macros_tile.pynml' (11:42)> -> __value __token = 438 __value = ' location_check_macros_tile.pynml' __value = __loader(__value) econtext['location_checks_tile'] = __value __backup_macroname_2075100621512 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x000001E3258B1828> name=None at 1e3258b1908> -> __value __value = _static_2075099076648 econtext['macroname'] = __value # <Value "location_checks_tile.macros['render_tree']" (12:30)> -> __macro __token = 508 __macro = _lookup_attr(getitem('location_checks_tile'), 'macros')['render_tree'] __token = 508 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_2075100621512 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_2075100621512 if (__backup_location_checks_tile_2075101627056 is __marker): del econtext['location_checks_tile'] else: econtext[ 'location_checks_tile'] = __backup_location_checks_tile_2075101627056 __append('\n\n') __backup_animation_macros_2075101627224 = get( 'animation_macros', __marker) # <Value 'load: animation_macros.pynml' (14:38)> -> __value __token = 594 __value = ' animation_macros.pynml' __value = __loader(__value) econtext['animation_macros'] = __value __backup_macroname_2075100622472 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x000001E3258B1FD0> name=None at 1e3258b17f0> -> __value __value = _static_2075099078608 econtext['macroname'] = __value # <Value "animation_macros.macros['tile_animation']" (15:30)> -> __macro __token = 654 __macro = _lookup_attr(getitem('animation_macros'), 'macros')['tile_animation'] __token = 654 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_2075100622472 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_2075100622472 if (__backup_animation_macros_2075101627224 is __marker): del econtext['animation_macros'] else: econtext[ 'animation_macros'] = __backup_animation_macros_2075101627224 __append('\n\n') __backup_macroname_2075100620488 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x000001E3258B1240> name=None at 1e3258b17b8> -> __value __value = _static_2075099075136 econtext['macroname'] = __value # <Value 'load: properties_tile.pynml' (17:30)> -> __macro __token = 731 __macro = ' properties_tile.pynml' __macro = __loader(__macro) __token = 731 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_2075100620488 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_2075100620488 __append( '\n\n\n/* *************************************************\n * Definition of the industry\n * *************************************************/\n\n' ) __backup_macroname_2075100619976 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x000001E3258B13C8> name=None at 1e3258b1f98> -> __value __value = _static_2075099075528 econtext['macroname'] = __value # <Value 'load: layouts.pynml' (24:30)> -> __macro __token = 933 __macro = ' layouts.pynml' __macro = __loader(__macro) __token = 933 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_2075100619976 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_2075100619976 __append('\n\n') __backup_macroname_2075100618952 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x000001E325AA5F98> name=None at 1e325aa5c88> -> __value __value = _static_2075101126552 econtext['macroname'] = __value # <Value 'load: extra_text_primary.pynml' (26:30)> -> __macro __token = 988 __macro = ' extra_text_primary.pynml' __macro = __loader(__macro) __token = 988 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_2075100618952 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_2075100618952 __append('\n\n') __backup_macroname_2075099218696 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x000001E325AA5A58> name=None at 1e325aa57f0> -> __value __value = _static_2075101125208 econtext['macroname'] = __value # <Value 'load: produce_primary.pynml' (28:30)> -> __macro __token = 1054 __macro = ' produce_primary.pynml' __macro = __loader(__macro) __token = 1054 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_2075099218696 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_2075099218696 __append('\n\n') __backup_macroname_2075099218568 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x000001E325AA5D30> name=None at 1e325aa5630> -> __value __value = _static_2075101125936 econtext['macroname'] = __value # <Value 'load: check_primary_supplies_delivered.pynml' (30:30)> -> __macro __token = 1117 __macro = ' check_primary_supplies_delivered.pynml' __macro = __loader(__macro) __token = 1117 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_2075099218568 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_2075099218568 __append('\n\n') __backup_macroname_2075101990408 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x000001E325AA5C50> name=None at 1e325aa5d68> -> __value __value = _static_2075101125712 econtext['macroname'] = __value # <Value 'load: availability.pynml' (32:30)> -> __macro __token = 1197 __macro = ' availability.pynml' __macro = __loader(__macro) __token = 1197 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_2075101990408 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_2075101990408 __append('\n\n') __backup_location_checks_industry_2075101629968 = get( 'location_checks_industry', __marker) # <Value 'load: location_check_macros_industry.pynml' (34:46)> -> __value __token = 1273 __value = ' location_check_macros_industry.pynml' __value = __loader(__value) econtext['location_checks_industry'] = __value __backup_macroname_2075099490312 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x000001E325AA5B38> name=None at 1e325aa5b00> -> __value __value = _static_2075101125432 econtext['macroname'] = __value # <Value "location_checks_industry.macros['render_tree']" (35:30)> -> __macro __token = 1347 __macro = _lookup_attr(getitem('location_checks_industry'), 'macros')['render_tree'] __token = 1347 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_2075099490312 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_2075099490312 if (__backup_location_checks_industry_2075101629968 is __marker): del econtext['location_checks_industry'] else: econtext[ 'location_checks_industry'] = __backup_location_checks_industry_2075101629968 __append('\n\n') __backup_macroname_2075100054984 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x000001E325AA5860> name=None at 1e325aa5b70> -> __value __value = _static_2075101124704 econtext['macroname'] = __value # <Value 'load: properties_industry.pynml' (37:30)> -> __macro __token = 1429 __macro = ' properties_industry.pynml' __macro = __loader(__macro) __token = 1429 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_2075100054984 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_2075100054984 __append('\n\n') __append('\n') __backup_economy_2075101630024 = get('economy', __marker) # <Value 'economies' (40:37)> -> __iterator __token = 1613 __iterator = getitem('economies') ( __iterator, ____index_2075101124984, ) = getitem('repeat')('economy', __iterator) econtext['economy'] = None for __item in __iterator: econtext['economy'] = __item __append('\n ') # <Value "industry.get_property('enabled', economy) == True" (41:39)> -> __condition __token = 1664 __condition = (_lookup_attr( getitem('industry'), 'get_property')('enabled', getitem('economy')) == True) if __condition: # <Interpolation value=<Substitution '\n if (economy==${economy.numeric_id}) {\n item(FEAT_INDUSTRIES, ${industry.id}, ${industry.numeric_id}) {\n graphics {\n construction_probability: ${industry.id}_check_availability;\n build_prod_change: randomise_primary_production_on_build;\n produce_cargo_arrival: ${industry.id}_produce;\n produce_256_ticks: ${industry.id}_produce_256_ticks;\n monthly_prod_change: ${industry.id}_monthly_update;\n random_prod_change: return CB_RESULT_IND_PROD_NO_CHANGE;\n location_check: ${industry.id}_check_location;\n extra_text_fund: ${industry.get_extra_text_fund(economy)};\n extra_text_industry: ${industry.id}_extra_text;\n cargo_subtype_display: ${industry.id}_cargo_subtype_display;\n colour: switch_colour;\n }\n }\n }\n ' (41:90)> braces_required=True translation=False at 1e3258e70f0> -> __content_2075086945112 __token = 1724 __token = 1739 __content_2075086945112 = _lookup_attr( getitem('economy'), 'numeric_id') __content_2075086945112 = __quote(__content_2075086945112, '\x00', '�', None, False) __token = 1798 __content_2075086945112_1796 = _lookup_attr( getitem('industry'), 'id') __content_2075086945112_1796 = __quote( __content_2075086945112_1796, '\x00', '�', None, False) __token = 1814 __content_2075086945112_1812 = _lookup_attr( getitem('industry'), 'numeric_id') __content_2075086945112_1812 = __quote( __content_2075086945112_1812, '\x00', '�', None, False) __token = 1913 __content_2075086945112_1911 = _lookup_attr( getitem('industry'), 'id') __content_2075086945112_1911 = __quote( __content_2075086945112_1911, '\x00', '�', None, False) __token = 2079 __content_2075086945112_2077 = _lookup_attr( getitem('industry'), 'id') __content_2075086945112_2077 = __quote( __content_2075086945112_2077, '\x00', '�', None, False) __token = 2149 __content_2075086945112_2147 = _lookup_attr( getitem('industry'), 'id') __content_2075086945112_2147 = __quote( __content_2075086945112_2147, '\x00', '�', None, False) __token = 2229 __content_2075086945112_2227 = _lookup_attr( getitem('industry'), 'id') __content_2075086945112_2227 = __quote( __content_2075086945112_2227, '\x00', '�', None, False) __token = 2389 __content_2075086945112_2387 = _lookup_attr( getitem('industry'), 'id') __content_2075086945112_2387 = __quote( __content_2075086945112_2387, '\x00', '�', None, False) __token = 2466 __content_2075086945112_2464 = _lookup_attr( getitem('industry'), 'get_extra_text_fund')(getitem('economy')) __content_2075086945112_2464 = __quote( __content_2075086945112_2464, '\x00', '�', None, False) __token = 2554 __content_2075086945112_2552 = _lookup_attr( getitem('industry'), 'id') __content_2075086945112_2552 = __quote( __content_2075086945112_2552, '\x00', '�', None, False) __token = 2627 __content_2075086945112_2625 = _lookup_attr( getitem('industry'), 'id') __content_2075086945112_2625 = __quote( __content_2075086945112_2625, '\x00', '�', None, False) __content_2075086945112 = ('%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s' % ( '\n if (economy==', (__content_2075086945112 if (__content_2075086945112 is not None) else ''), ') {\n item(FEAT_INDUSTRIES, ', (__content_2075086945112_1796 if (__content_2075086945112_1796 is not None) else ''), ', ', (__content_2075086945112_1812 if (__content_2075086945112_1812 is not None) else ''), ') {\n graphics {\n construction_probability: ', (__content_2075086945112_1911 if (__content_2075086945112_1911 is not None) else ''), '_check_availability;\n build_prod_change: randomise_primary_production_on_build;\n produce_cargo_arrival: ', (__content_2075086945112_2077 if (__content_2075086945112_2077 is not None) else ''), '_produce;\n produce_256_ticks: ', (__content_2075086945112_2147 if (__content_2075086945112_2147 is not None) else ''), '_produce_256_ticks;\n monthly_prod_change: ', (__content_2075086945112_2227 if (__content_2075086945112_2227 is not None) else ''), '_monthly_update;\n random_prod_change: return CB_RESULT_IND_PROD_NO_CHANGE;\n location_check: ', (__content_2075086945112_2387 if (__content_2075086945112_2387 is not None) else ''), '_check_location;\n extra_text_fund: ', (__content_2075086945112_2464 if (__content_2075086945112_2464 is not None) else ''), ';\n extra_text_industry: ', (__content_2075086945112_2552 if (__content_2075086945112_2552 is not None) else ''), '_extra_text;\n cargo_subtype_display: ', (__content_2075086945112_2625 if (__content_2075086945112_2625 is not None) else ''), '_cargo_subtype_display;\n colour: switch_colour;\n }\n }\n }\n ', )) if (__content_2075086945112 is None): pass else: if (__content_2075086945112 is False): __content_2075086945112 = None else: __tt = type(__content_2075086945112) if ((__tt is int) or (__tt is float) or (__tt is int)): __content_2075086945112 = str( __content_2075086945112) else: if (__tt is bytes): __content_2075086945112 = decode( __content_2075086945112) else: if (__tt is not str): try: __content_2075086945112 = __content_2075086945112.__html__ except get('AttributeError', AttributeError): __converted = convert( __content_2075086945112) __content_2075086945112 = ( str(__content_2075086945112) if (__content_2075086945112 is __converted) else __converted) else: __content_2075086945112 = __content_2075086945112( ) if (__content_2075086945112 is not None): __append(__content_2075086945112) __append('\n') ____index_2075101124984 -= 1 if (____index_2075101124984 > 0): __append('') if (__backup_economy_2075101630024 is __marker): del econtext['economy'] else: econtext['economy'] = __backup_economy_2075101630024 __append('\n') except: if (__token is not None): rcontext.setdefault('__error__', []).append( (__tokens[__token] + ( __filename, _exc_info()[1], ))) raise
def render(__stream, econtext, rcontext, __i18n_domain=None, __i18n_context=None): __append = __stream.append __re_amp = g_re_amp __token = None __re_needs_escape = g_re_needs_escape def __convert(target): if (target is None): return __tt = type(target) if ((__tt is int) or (__tt is float) or (__tt is int)): target = str(target) else: if (__tt is bytes): target = decode(target) else: if (__tt is not str): try: target = target.__html__ except AttributeError: __converted = convert(target) target = (str(target) if (target is __converted) else __converted) else: target = target() return target def __quote(target, quote, quote_entity, default, default_marker): if (target is None): return if (target is default_marker): return default __tt = type(target) if ((__tt is int) or (__tt is float) or (__tt is int)): target = str(target) else: if (__tt is bytes): target = decode(target) else: if (__tt is not str): try: target = target.__html__ except: __converted = convert(target) target = (str(target) if (target is __converted) else __converted) else: return target() if (target is not None): try: escape = (__re_needs_escape(target) is not None) except TypeError: pass else: if escape: if ('&' in target): target = target.replace('&', '&') if ('<' in target): target = target.replace('<', '<') if ('>' in target): target = target.replace('>', '>') if ((quote is not None) and (quote in target)): target = target.replace(quote, quote_entity) return target translate = econtext['__translate'] decode = econtext['__decode'] convert = econtext['__convert'] on_error_handler = econtext['__on_error_handler'] try: getitem = econtext.__getitem__ get = econtext.get __append( '/* ******************************************************************\n * Definition of the industry tile, its callbacks, and graphics chain\n * ******************************************************************/\n\n' ) __backup_macroname_139703105800840 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7f0f29e54fd0> name=None at 7f0f29e54908> -> __value __value = _static_139703104131024 econtext['macroname'] = __value # <Value 'load: spritesets.pynml' (5:30)> -> __macro __token = 242 __macro = ' spritesets.pynml' __macro = __loader(__macro) __token = 242 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_139703105800840 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_139703105800840 __append('\n\n') __backup_macroname_139703105799496 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7f0f29e542b0> name=None at 7f0f29e54be0> -> __value __value = _static_139703104127664 econtext['macroname'] = __value # <Value 'load: spritelayouts.pynml' (7:30)> -> __macro __token = 300 __macro = ' spritelayouts.pynml' __macro = __loader(__macro) __token = 300 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_139703105799496 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_139703105799496 __append('\n\n') __backup_macroname_139703103531656 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7f0f29e54c18> name=None at 7f0f29e546a0> -> __value __value = _static_139703104130072 econtext['macroname'] = __value # <Value 'load: graphics_switches.pynml' (9:30)> -> __macro __token = 361 __macro = ' graphics_switches.pynml' __macro = __loader(__macro) __token = 361 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_139703103531656 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_139703103531656 __append('\n\n') __backup_location_checks_tile_139703104331672 = get( 'location_checks_tile', __marker) # <Value 'load: location_check_macros_tile.pynml' (11:42)> -> __value __token = 438 __value = ' location_check_macros_tile.pynml' __value = __loader(__value) econtext['location_checks_tile'] = __value __backup_macroname_139703104289160 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7f0f29e544a8> name=None at 7f0f29e54160> -> __value __value = _static_139703104128168 econtext['macroname'] = __value # <Value "location_checks_tile.macros['render_tree']" (12:30)> -> __macro __token = 508 __macro = _lookup_attr(getitem('location_checks_tile'), 'macros')['render_tree'] __token = 508 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_139703104289160 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_139703104289160 if (__backup_location_checks_tile_139703104331672 is __marker): del econtext['location_checks_tile'] else: econtext[ 'location_checks_tile'] = __backup_location_checks_tile_139703104331672 __append('\n\n') __backup_animation_macros_139703103358120 = get( 'animation_macros', __marker) # <Value 'load: animation_macros.pynml' (14:38)> -> __value __token = 594 __value = ' animation_macros.pynml' __value = __loader(__value) econtext['animation_macros'] = __value __backup_macroname_139703105801288 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7f0f29e54940> name=None at 7f0f29e54550> -> __value __value = _static_139703104129344 econtext['macroname'] = __value # <Value "animation_macros.macros['tile_animation']" (15:30)> -> __macro __token = 654 __macro = _lookup_attr(getitem('animation_macros'), 'macros')['tile_animation'] __token = 654 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_139703105801288 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_139703105801288 if (__backup_animation_macros_139703103358120 is __marker): del econtext['animation_macros'] else: econtext[ 'animation_macros'] = __backup_animation_macros_139703103358120 __append('\n\n') __backup_macroname_139703104289032 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7f0f29e54eb8> name=None at 7f0f29e54278> -> __value __value = _static_139703104130744 econtext['macroname'] = __value # <Value 'load: properties_tile.pynml' (17:30)> -> __macro __token = 731 __macro = ' properties_tile.pynml' __macro = __loader(__macro) __token = 731 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_139703104289032 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_139703104289032 __append( '\n\n\n/* *************************************************\n * Definition of the industry\n * *************************************************/\n\n' ) __backup_macroname_139703104288520 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7f0f29e137b8> name=None at 7f0f29e13e10> -> __value __value = _static_139703103862712 econtext['macroname'] = __value # <Value 'load: layouts.pynml' (24:30)> -> __macro __token = 933 __macro = ' layouts.pynml' __macro = __loader(__macro) __token = 933 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_139703104288520 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_139703104288520 __append('\n\n') __backup_macroname_139703103304328 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7f0f29e13748> name=None at 7f0f29e13668> -> __value __value = _static_139703103862600 econtext['macroname'] = __value # <Value 'load: availability.pynml' (26:30)> -> __macro __token = 988 __macro = ' availability.pynml' __macro = __loader(__macro) __token = 988 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_139703103304328 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_139703103304328 __append('\n\n') __backup_location_checks_industry_139703105755904 = get( 'location_checks_industry', __marker) # <Value 'load: location_check_macros_industry.pynml' (28:46)> -> __value __token = 1064 __value = ' location_check_macros_industry.pynml' __value = __loader(__value) econtext['location_checks_industry'] = __value __backup_macroname_139703104287432 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7f0f29e13be0> name=None at 7f0f29e13358> -> __value __value = _static_139703103863776 econtext['macroname'] = __value # <Value "location_checks_industry.macros['render_tree']" (29:30)> -> __macro __token = 1138 __macro = _lookup_attr(getitem('location_checks_industry'), 'macros')['render_tree'] __token = 1138 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_139703104287432 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_139703104287432 if (__backup_location_checks_industry_139703105755904 is __marker): del econtext['location_checks_industry'] else: econtext[ 'location_checks_industry'] = __backup_location_checks_industry_139703105755904 __append('\n\n') __backup_macroname_139703103305096 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7f0f29e13eb8> name=None at 7f0f29e13080> -> __value __value = _static_139703103864504 econtext['macroname'] = __value # <Value 'load: properties_industry.pynml' (31:30)> -> __macro __token = 1220 __macro = ' properties_industry.pynml' __macro = __loader(__macro) __token = 1220 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_139703103305096 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_139703103305096 __append('\n\n') __append('\n') __backup_economy_139703105755232 = get('economy', __marker) # <Value 'economies' (34:37)> -> __iterator __token = 1404 __iterator = getitem('economies') ( __iterator, ____index_139703103864672, ) = getitem('repeat')('economy', __iterator) econtext['economy'] = None for __item in __iterator: econtext['economy'] = __item __append('\n ') # <Value "industry.get_property('enabled', economy) == True" (35:39)> -> __condition __token = 1455 __condition = (_lookup_attr( getitem('industry'), 'get_property')('enabled', getitem('economy')) == True) if __condition: # <Interpolation value=<Substitution '\n if (economy==${economy.numeric_id}) {\n item(FEAT_INDUSTRIES, ${industry.id}, ${industry.numeric_id}) {\n graphics {\n construction_probability: ${industry.id}_check_availability;\n build_prod_change: randomise_primary_production_on_build;\n location_check: ${industry.id}_check_location;\n extra_text_fund: ${industry.get_extra_text_fund(economy)};\n colour: switch_colour;\n }\n }\n }\n ' (35:90)> braces_required=True translation=False at 7f0f29e13d68> -> __content_139703124559104 __token = 1515 __token = 1530 __content_139703124559104 = _lookup_attr( getitem('economy'), 'numeric_id') __content_139703124559104 = __quote( __content_139703124559104, '\x00', '�', None, False) __token = 1589 __content_139703124559104_1587 = _lookup_attr( getitem('industry'), 'id') __content_139703124559104_1587 = __quote( __content_139703124559104_1587, '\x00', '�', None, False) __token = 1605 __content_139703124559104_1603 = _lookup_attr( getitem('industry'), 'numeric_id') __content_139703124559104_1603 = __quote( __content_139703124559104_1603, '\x00', '�', None, False) __token = 1704 __content_139703124559104_1702 = _lookup_attr( getitem('industry'), 'id') __content_139703124559104_1702 = __quote( __content_139703124559104_1702, '\x00', '�', None, False) __token = 1870 __content_139703124559104_1868 = _lookup_attr( getitem('industry'), 'id') __content_139703124559104_1868 = __quote( __content_139703124559104_1868, '\x00', '�', None, False) __token = 1947 __content_139703124559104_1945 = _lookup_attr( getitem('industry'), 'get_extra_text_fund')(getitem('economy')) __content_139703124559104_1945 = __quote( __content_139703124559104_1945, '\x00', '�', None, False) __content_139703124559104 = ('%s%s%s%s%s%s%s%s%s%s%s%s%s' % ( '\n if (economy==', (__content_139703124559104 if (__content_139703124559104 is not None) else ''), ') {\n item(FEAT_INDUSTRIES, ', (__content_139703124559104_1587 if (__content_139703124559104_1587 is not None) else ''), ', ', (__content_139703124559104_1603 if (__content_139703124559104_1603 is not None) else ''), ') {\n graphics {\n construction_probability: ', (__content_139703124559104_1702 if (__content_139703124559104_1702 is not None) else ''), '_check_availability;\n build_prod_change: randomise_primary_production_on_build;\n location_check: ', (__content_139703124559104_1868 if (__content_139703124559104_1868 is not None) else ''), '_check_location;\n extra_text_fund: ', (__content_139703124559104_1945 if (__content_139703124559104_1945 is not None) else ''), ';\n colour: switch_colour;\n }\n }\n }\n ', )) if (__content_139703124559104 is None): pass else: if (__content_139703124559104 is False): __content_139703124559104 = None else: __tt = type(__content_139703124559104) if ((__tt is int) or (__tt is float) or (__tt is int)): __content_139703124559104 = str( __content_139703124559104) else: if (__tt is bytes): __content_139703124559104 = decode( __content_139703124559104) else: if (__tt is not str): try: __content_139703124559104 = __content_139703124559104.__html__ except get('AttributeError', AttributeError): __converted = convert( __content_139703124559104) __content_139703124559104 = ( str(__content_139703124559104) if (__content_139703124559104 is __converted) else __converted) else: __content_139703124559104 = __content_139703124559104( ) if (__content_139703124559104 is not None): __append(__content_139703124559104) __append('\n') ____index_139703103864672 -= 1 if (____index_139703103864672 > 0): __append('') if (__backup_economy_139703105755232 is __marker): del econtext['economy'] else: econtext['economy'] = __backup_economy_139703105755232 __append('\n') except: if (__token is not None): rcontext.setdefault('__error__', []).append( (__tokens[__token] + ( __filename, _exc_info()[1], ))) raise
def render(__stream, econtext, rcontext, __i18n_domain=None, __i18n_context=None): __append = __stream.append __re_amp = g_re_amp __token = None __re_needs_escape = g_re_needs_escape def __convert(target): if (target is None): return __tt = type(target) if ((__tt is int) or (__tt is float) or (__tt is int)): target = str(target) else: if (__tt is bytes): target = decode(target) else: if (__tt is not str): try: target = target.__html__ except AttributeError: __converted = convert(target) target = (str(target) if (target is __converted) else __converted) else: target = target() return target def __quote(target, quote, quote_entity, default, default_marker): if (target is None): return if (target is default_marker): return default __tt = type(target) if ((__tt is int) or (__tt is float) or (__tt is int)): target = str(target) else: if (__tt is bytes): target = decode(target) else: if (__tt is not str): try: target = target.__html__ except: __converted = convert(target) target = (str(target) if (target is __converted) else __converted) else: return target() if (target is not None): try: escape = (__re_needs_escape(target) is not None) except TypeError: pass else: if escape: if ('&' in target): target = target.replace('&', '&') if ('<' in target): target = target.replace('<', '<') if ('>' in target): target = target.replace('>', '>') if ((quote is not None) and (quote in target)): target = target.replace(quote, quote_entity) return target translate = econtext['__translate'] decode = econtext['__decode'] convert = econtext['__convert'] on_error_handler = econtext['__on_error_handler'] try: getitem = econtext.__getitem__ get = econtext.get __append( '/* ******************************************************************\n * Definition of the industry tile, its callbacks, and graphics chain\n * ******************************************************************/\n\n' ) __backup_macroname_140383637141960 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7fad9cd2aa20> name=None at 7fad9cd2ab38> -> __value __value = _static_140383637121568 econtext['macroname'] = __value # <Value 'load: spritesets.pynml' (5:30)> -> __macro __token = 242 __macro = ' spritesets.pynml' __macro = __loader(__macro) __token = 242 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_140383637141960 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_140383637141960 __append('\n\n') __backup_macroname_140383636995976 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7fad9cd34be0> name=None at 7fad9cd34a20> -> __value __value = _static_140383637162976 econtext['macroname'] = __value # <Value 'load: spritelayouts.pynml' (7:30)> -> __macro __token = 300 __macro = ' spritelayouts.pynml' __macro = __loader(__macro) __token = 300 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_140383636995976 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_140383636995976 __append('\n\n') __backup_macroname_140383637139720 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7fad9cd34160> name=None at 7fad9cd34780> -> __value __value = _static_140383637160288 econtext['macroname'] = __value # <Value 'load: graphics_switches.pynml' (9:30)> -> __macro __token = 361 __macro = ' graphics_switches.pynml' __macro = __loader(__macro) __token = 361 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_140383637139720 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_140383637139720 __append('\n\n') __backup_location_checks_tile_140383663170336 = get( 'location_checks_tile', __marker) # <Value 'load: location_check_macros_tile.pynml' (11:42)> -> __value __token = 438 __value = ' location_check_macros_tile.pynml' __value = __loader(__value) econtext['location_checks_tile'] = __value __backup_macroname_140383637140104 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7fad9cd34400> name=None at 7fad9cd34a90> -> __value __value = _static_140383637160960 econtext['macroname'] = __value # <Value "location_checks_tile.macros['render_tree']" (12:30)> -> __macro __token = 508 __macro = _lookup_attr(getitem('location_checks_tile'), 'macros')['render_tree'] __token = 508 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_140383637140104 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_140383637140104 if (__backup_location_checks_tile_140383663170336 is __marker): del econtext['location_checks_tile'] else: econtext[ 'location_checks_tile'] = __backup_location_checks_tile_140383663170336 __append('\n\n') __backup_animation_macros_140383663150136 = get( 'animation_macros', __marker) # <Value 'load: animation_macros.pynml' (14:38)> -> __value __token = 594 __value = ' animation_macros.pynml' __value = __loader(__value) econtext['animation_macros'] = __value __backup_macroname_140383636854472 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7fad9cd346d8> name=None at 7fad9cd34dd8> -> __value __value = _static_140383637161688 econtext['macroname'] = __value # <Value "animation_macros.macros['tile_animation']" (15:30)> -> __macro __token = 654 __macro = _lookup_attr(getitem('animation_macros'), 'macros')['tile_animation'] __token = 654 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_140383636854472 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_140383636854472 if (__backup_animation_macros_140383663150136 is __marker): del econtext['animation_macros'] else: econtext[ 'animation_macros'] = __backup_animation_macros_140383663150136 __append('\n\n') __backup_macroname_140383636910280 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7fad9cd34e48> name=None at 7fad9cd34b70> -> __value __value = _static_140383637163592 econtext['macroname'] = __value # <Value 'load: properties_tile.pynml' (17:30)> -> __macro __token = 731 __macro = ' properties_tile.pynml' __macro = __loader(__macro) __token = 731 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_140383636910280 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_140383636910280 __append( '\n\n\n/* *************************************************\n * Definition of the industry\n * *************************************************/\n\n' ) __backup_macroname_140383637327432 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7fad9cd340f0> name=None at 7fad9cd34630> -> __value __value = _static_140383637160176 econtext['macroname'] = __value # <Value 'load: layouts.pynml' (24:30)> -> __macro __token = 933 __macro = ' layouts.pynml' __macro = __loader(__macro) __token = 933 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_140383637327432 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_140383637327432 __append('\n\n') __backup_macroname_140383637327496 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7fad9cd34550> name=None at 7fad9cd34518> -> __value __value = _static_140383637161296 econtext['macroname'] = __value # <Value 'load: produce_secondary.pynml' (26:30)> -> __macro __token = 988 __macro = ' produce_secondary.pynml' __macro = __loader(__macro) __token = 988 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_140383637327496 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_140383637327496 __append('\n\n') __backup_macroname_140383636970760 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7fad9cd346a0> name=None at 7fad9cd345f8> -> __value __value = _static_140383637161632 econtext['macroname'] = __value # <Value 'load: closure_secondary.pynml' (28:30)> -> __macro __token = 1053 __macro = ' closure_secondary.pynml' __macro = __loader(__macro) __token = 1053 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_140383636970760 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_140383636970760 __append('\n\n') __backup_macroname_140383636913224 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7fad9cd34438> name=None at 7fad9cd34668> -> __value __value = _static_140383637161016 econtext['macroname'] = __value # <Value 'load: extra_text_secondary.pynml' (30:30)> -> __macro __token = 1118 __macro = ' extra_text_secondary.pynml' __macro = __loader(__macro) __token = 1118 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_140383636913224 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_140383636913224 __append('\n\n') __backup_macroname_140383636715592 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7fad9cd43ba8> name=None at 7fad9cd43b00> -> __value __value = _static_140383637224360 econtext['macroname'] = __value # <Value 'load: availability.pynml' (32:30)> -> __macro __token = 1186 __macro = ' availability.pynml' __macro = __loader(__macro) __token = 1186 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_140383636715592 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_140383636715592 __append('\n\n') __backup_location_checks_industry_140383663170952 = get( 'location_checks_industry', __marker) # <Value 'load: location_check_macros_industry.pynml' (34:46)> -> __value __token = 1262 __value = ' location_check_macros_industry.pynml' __value = __loader(__value) econtext['location_checks_industry'] = __value __backup_macroname_140383636565576 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7fad9cd43908> name=None at 7fad9cd43828> -> __value __value = _static_140383637223688 econtext['macroname'] = __value # <Value "location_checks_industry.macros['render_tree']" (35:30)> -> __macro __token = 1336 __macro = _lookup_attr(getitem('location_checks_industry'), 'macros')['render_tree'] __token = 1336 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_140383636565576 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_140383636565576 if (__backup_location_checks_industry_140383663170952 is __marker): del econtext['location_checks_industry'] else: econtext[ 'location_checks_industry'] = __backup_location_checks_industry_140383663170952 __append('\n\n') __backup_macroname_140383636563080 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7fad9cd43780> name=None at 7fad9cd437f0> -> __value __value = _static_140383637223296 econtext['macroname'] = __value # <Value 'load: properties_industry.pynml' (37:30)> -> __macro __token = 1418 __macro = ' properties_industry.pynml' __macro = __loader(__macro) __token = 1418 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_140383636563080 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_140383636563080 __append('\n\n') __append('\n') __backup_economy_140383663170728 = get('economy', __marker) # <Value 'economies' (40:37)> -> __iterator __token = 1602 __iterator = getitem('economies') ( __iterator, ____index_140383637222568, ) = getitem('repeat')('economy', __iterator) econtext['economy'] = None for __item in __iterator: econtext['economy'] = __item __append('\n ') # <Value "industry.get_property('enabled', economy) == True" (41:39)> -> __condition __token = 1653 __condition = (_lookup_attr( getitem('industry'), 'get_property')('enabled', getitem('economy')) == True) if __condition: # <Interpolation value=<Substitution '\n if (economy==${economy.numeric_id}) {\n item(FEAT_INDUSTRIES, ${industry.id}, ${industry.numeric_id}) {\n graphics {\n construction_probability: ${industry.id}_check_availability;\n produce_cargo_arrival: ${industry.id}_produce;\n monthly_prod_change: ${industry.id}_check_secondary_production_level;\n random_prod_change: ${industry.id}_check_secondary_closure;\n location_check: ${industry.id}_check_location;\n extra_text_fund: ${industry.get_extra_text_fund(economy)};\n extra_text_industry: ${industry.id}_extra_text;\n cargo_subtype_display: ${industry.id}_cargo_subtype_display;\n colour: switch_colour;\n }\n }\n }\n ' (41:90)> braces_required=True translation=False at 7fad9cd43be0> -> __content_140383655711776 __token = 1713 __token = 1728 __content_140383655711776 = _lookup_attr( getitem('economy'), 'numeric_id') __content_140383655711776 = __quote( __content_140383655711776, '\x00', '�', None, False) __token = 1787 __content_140383655711776_1785 = _lookup_attr( getitem('industry'), 'id') __content_140383655711776_1785 = __quote( __content_140383655711776_1785, '\x00', '�', None, False) __token = 1803 __content_140383655711776_1801 = _lookup_attr( getitem('industry'), 'numeric_id') __content_140383655711776_1801 = __quote( __content_140383655711776_1801, '\x00', '�', None, False) __token = 1902 __content_140383655711776_1900 = _lookup_attr( getitem('industry'), 'id') __content_140383655711776_1900 = __quote( __content_140383655711776_1900, '\x00', '�', None, False) __token = 1983 __content_140383655711776_1981 = _lookup_attr( getitem('industry'), 'id') __content_140383655711776_1981 = __quote( __content_140383655711776_1981, '\x00', '�', None, False) __token = 2053 __content_140383655711776_2051 = _lookup_attr( getitem('industry'), 'id') __content_140383655711776_2051 = __quote( __content_140383655711776_2051, '\x00', '�', None, False) __token = 2148 __content_140383655711776_2146 = _lookup_attr( getitem('industry'), 'id') __content_140383655711776_2146 = __quote( __content_140383655711776_2146, '\x00', '�', None, False) __token = 2234 __content_140383655711776_2232 = _lookup_attr( getitem('industry'), 'id') __content_140383655711776_2232 = __quote( __content_140383655711776_2232, '\x00', '�', None, False) __token = 2311 __content_140383655711776_2309 = _lookup_attr( getitem('industry'), 'get_extra_text_fund')(getitem('economy')) __content_140383655711776_2309 = __quote( __content_140383655711776_2309, '\x00', '�', None, False) __token = 2399 __content_140383655711776_2397 = _lookup_attr( getitem('industry'), 'id') __content_140383655711776_2397 = __quote( __content_140383655711776_2397, '\x00', '�', None, False) __token = 2472 __content_140383655711776_2470 = _lookup_attr( getitem('industry'), 'id') __content_140383655711776_2470 = __quote( __content_140383655711776_2470, '\x00', '�', None, False) __content_140383655711776 = ('%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s' % ( '\n if (economy==', (__content_140383655711776 if (__content_140383655711776 is not None) else ''), ') {\n item(FEAT_INDUSTRIES, ', (__content_140383655711776_1785 if (__content_140383655711776_1785 is not None) else ''), ', ', (__content_140383655711776_1801 if (__content_140383655711776_1801 is not None) else ''), ') {\n graphics {\n construction_probability: ', (__content_140383655711776_1900 if (__content_140383655711776_1900 is not None) else ''), '_check_availability;\n produce_cargo_arrival: ', (__content_140383655711776_1981 if (__content_140383655711776_1981 is not None) else ''), '_produce;\n monthly_prod_change: ', (__content_140383655711776_2051 if (__content_140383655711776_2051 is not None) else ''), '_check_secondary_production_level;\n random_prod_change: ', (__content_140383655711776_2146 if (__content_140383655711776_2146 is not None) else ''), '_check_secondary_closure;\n location_check: ', (__content_140383655711776_2232 if (__content_140383655711776_2232 is not None) else ''), '_check_location;\n extra_text_fund: ', (__content_140383655711776_2309 if (__content_140383655711776_2309 is not None) else ''), ';\n extra_text_industry: ', (__content_140383655711776_2397 if (__content_140383655711776_2397 is not None) else ''), '_extra_text;\n cargo_subtype_display: ', (__content_140383655711776_2470 if (__content_140383655711776_2470 is not None) else ''), '_cargo_subtype_display;\n colour: switch_colour;\n }\n }\n }\n ', )) if (__content_140383655711776 is None): pass else: if (__content_140383655711776 is False): __content_140383655711776 = None else: __tt = type(__content_140383655711776) if ((__tt is int) or (__tt is float) or (__tt is int)): __content_140383655711776 = str( __content_140383655711776) else: if (__tt is bytes): __content_140383655711776 = decode( __content_140383655711776) else: if (__tt is not str): try: __content_140383655711776 = __content_140383655711776.__html__ except get('AttributeError', AttributeError): __converted = convert( __content_140383655711776) __content_140383655711776 = ( str(__content_140383655711776) if (__content_140383655711776 is __converted) else __converted) else: __content_140383655711776 = __content_140383655711776( ) if (__content_140383655711776 is not None): __append(__content_140383655711776) __append('\n') ____index_140383637222568 -= 1 if (____index_140383637222568 > 0): __append('') if (__backup_economy_140383663170728 is __marker): del econtext['economy'] else: econtext['economy'] = __backup_economy_140383663170728 __append('\n') except: if (__token is not None): rcontext.setdefault('__error__', []).append( (__tokens[__token] + ( __filename, _exc_info()[1], ))) raise
def render(__stream, econtext, rcontext, __i18n_domain=None, __i18n_context=None): __append = __stream.append __re_amp = g_re_amp __token = None __re_needs_escape = g_re_needs_escape def __convert(target): if (target is None): return __tt = type(target) if ((__tt is int) or (__tt is float) or (__tt is int)): target = str(target) else: if (__tt is bytes): target = decode(target) else: if (__tt is not str): try: target = target.__html__ except AttributeError: __converted = convert(target) target = (str(target) if (target is __converted) else __converted) else: target = target() return target def __quote(target, quote, quote_entity, default, default_marker): if (target is None): return if (target is default_marker): return default __tt = type(target) if ((__tt is int) or (__tt is float) or (__tt is int)): target = str(target) else: if (__tt is bytes): target = decode(target) else: if (__tt is not str): try: target = target.__html__ except: __converted = convert(target) target = (str(target) if (target is __converted) else __converted) else: return target() if (target is not None): try: escape = (__re_needs_escape(target) is not None) except TypeError: pass else: if escape: if ('&' in target): target = target.replace('&', '&') if ('<' in target): target = target.replace('<', '<') if ('>' in target): target = target.replace('>', '>') if ((quote is not None) and (quote in target)): target = target.replace(quote, quote_entity) return target translate = econtext['__translate'] decode = econtext['__decode'] convert = econtext['__convert'] on_error_handler = econtext['__on_error_handler'] try: getitem = econtext.__getitem__ get = econtext.get __append('\n\n') __backup_perm_storage_139875068693976 = get( 'perm_storage', __marker) # <Value 'industry.perm_storage' (3:32)> -> __value __token = 106 __value = _lookup_attr(getitem('industry'), 'perm_storage') econtext['perm_storage'] = __value __append('\n ') __append('\n\n ') # <Interpolation value=<Substitution '\n switch(FEAT_INDUSTRIES, SELF, ${industry.id}_secondary_increase_closure_counter,\n STORE_PERM((1 + LOAD_PERM(${perm_storage.closure_counter})), ${perm_storage.closure_counter})) {\n return 0;\n }\n switch(FEAT_INDUSTRIES, SELF, ${industry.id}_secondary_reset_closure_counter, [STORE_PERM(0, ${perm_storage.closure_counter}), 1]) {\n return 0;\n }\n ' (6:111)> braces_required=True translation=False at 7f3733e24f28> -> __content_139875089167952 __token = 330 __token = 362 __content_139875089167952 = _lookup_attr(getitem('industry'), 'id') __content_139875089167952 = __quote(__content_139875089167952, '\x00', '�', None, False) __token = 450 __content_139875089167952_448 = _lookup_attr( getitem('perm_storage'), 'closure_counter') __content_139875089167952_448 = __quote( __content_139875089167952_448, '\x00', '�', None, False) __token = 485 __content_139875089167952_483 = _lookup_attr( getitem('perm_storage'), 'closure_counter') __content_139875089167952_483 = __quote( __content_139875089167952_483, '\x00', '�', None, False) __token = 579 __content_139875089167952_577 = _lookup_attr( getitem('industry'), 'id') __content_139875089167952_577 = __quote( __content_139875089167952_577, '\x00', '�', None, False) __token = 642 __content_139875089167952_640 = _lookup_attr( getitem('perm_storage'), 'closure_counter') __content_139875089167952_640 = __quote( __content_139875089167952_640, '\x00', '�', None, False) __content_139875089167952 = ('%s%s%s%s%s%s%s%s%s%s%s' % ( '\n switch(FEAT_INDUSTRIES, SELF, ', (__content_139875089167952 if (__content_139875089167952 is not None) else ''), '_secondary_increase_closure_counter,\n STORE_PERM((1 + LOAD_PERM(', (__content_139875089167952_448 if (__content_139875089167952_448 is not None) else ''), ')), ', (__content_139875089167952_483 if (__content_139875089167952_483 is not None) else ''), ')) {\n return 0;\n }\n switch(FEAT_INDUSTRIES, SELF, ', (__content_139875089167952_577 if (__content_139875089167952_577 is not None) else ''), '_secondary_reset_closure_counter, [STORE_PERM(0, ', (__content_139875089167952_640 if (__content_139875089167952_640 is not None) else ''), '), 1]) {\n return 0;\n }\n ', )) if (__content_139875089167952 is None): pass else: if (__content_139875089167952 is False): __content_139875089167952 = None else: __tt = type(__content_139875089167952) if ((__tt is int) or (__tt is float) or (__tt is int)): __content_139875089167952 = str( __content_139875089167952) else: if (__tt is bytes): __content_139875089167952 = decode( __content_139875089167952) else: if (__tt is not str): try: __content_139875089167952 = __content_139875089167952.__html__ except get('AttributeError', AttributeError): __converted = convert( __content_139875089167952) __content_139875089167952 = ( str(__content_139875089167952) if (__content_139875089167952 is __converted) else __converted) else: __content_139875089167952 = __content_139875089167952( ) if (__content_139875089167952 is not None): __append(__content_139875089167952) # <Interpolation value=<Substitution '\n switch(FEAT_INDUSTRIES, SELF, ${industry.id}_check_secondary_production_level, [\n transported_last_month_1 > 0 ||\n transported_last_month_2 > 0 ||\n (current_date - LOAD_PERM(${perm_storage.date_received_1})) ' (14:128)> braces_required=True translation=False at 7f3733e240f0> -> __content_139875089167952 __token = 837 __token = 869 __content_139875089167952 = _lookup_attr(getitem('industry'), 'id') __content_139875089167952 = __quote(__content_139875089167952, '\x00', '�', None, False) __token = 1058 __content_139875089167952_1056 = _lookup_attr( getitem('perm_storage'), 'date_received_1') __content_139875089167952_1056 = __quote( __content_139875089167952_1056, '\x00', '�', None, False) __content_139875089167952 = ('%s%s%s%s%s' % ( '\n switch(FEAT_INDUSTRIES, SELF, ', (__content_139875089167952 if (__content_139875089167952 is not None) else ''), '_check_secondary_production_level, [\n transported_last_month_1 > 0 ||\n transported_last_month_2 > 0 ||\n (current_date - LOAD_PERM(', (__content_139875089167952_1056 if (__content_139875089167952_1056 is not None) else ''), ')) ', )) if (__content_139875089167952 is None): pass else: if (__content_139875089167952 is False): __content_139875089167952 = None else: __tt = type(__content_139875089167952) if ((__tt is int) or (__tt is float) or (__tt is int)): __content_139875089167952 = str( __content_139875089167952) else: if (__tt is bytes): __content_139875089167952 = decode( __content_139875089167952) else: if (__tt is not str): try: __content_139875089167952 = __content_139875089167952.__html__ except get('AttributeError', AttributeError): __converted = convert( __content_139875089167952) __content_139875089167952 = ( str(__content_139875089167952) if (__content_139875089167952 is __converted) else __converted) else: __content_139875089167952 = __content_139875089167952( ) if (__content_139875089167952 is not None): __append(__content_139875089167952) __append('<') # <Interpolation value=<Substitution ' 30 ||\n (current_date - LOAD_PERM(${perm_storage.date_received_2})) ' (18:77)> braces_required=True translation=False at 7f3733e24ac8> -> __content_139875089167952 __token = 1092 __token = 1142 __content_139875089167952 = _lookup_attr(getitem('perm_storage'), 'date_received_2') __content_139875089167952 = __quote(__content_139875089167952, '\x00', '�', None, False) __content_139875089167952 = ('%s%s%s' % ( ' 30 ||\n (current_date - LOAD_PERM(', (__content_139875089167952 if (__content_139875089167952 is not None) else ''), ')) ', )) if (__content_139875089167952 is None): pass else: if (__content_139875089167952 is False): __content_139875089167952 = None else: __tt = type(__content_139875089167952) if ((__tt is int) or (__tt is float) or (__tt is int)): __content_139875089167952 = str( __content_139875089167952) else: if (__tt is bytes): __content_139875089167952 = decode( __content_139875089167952) else: if (__tt is not str): try: __content_139875089167952 = __content_139875089167952.__html__ except get('AttributeError', AttributeError): __converted = convert( __content_139875089167952) __content_139875089167952 = ( str(__content_139875089167952) if (__content_139875089167952 is __converted) else __converted) else: __content_139875089167952 = __content_139875089167952( ) if (__content_139875089167952 is not None): __append(__content_139875089167952) __append('<') # <Interpolation value=<Substitution ' 30 ||\n (current_date - LOAD_PERM(${perm_storage.date_received_3})) ' (19:77)> braces_required=True translation=False at 7f3733e24470> -> __content_139875089167952 __token = 1176 __token = 1226 __content_139875089167952 = _lookup_attr(getitem('perm_storage'), 'date_received_3') __content_139875089167952 = __quote(__content_139875089167952, '\x00', '�', None, False) __content_139875089167952 = ('%s%s%s' % ( ' 30 ||\n (current_date - LOAD_PERM(', (__content_139875089167952 if (__content_139875089167952 is not None) else ''), ')) ', )) if (__content_139875089167952 is None): pass else: if (__content_139875089167952 is False): __content_139875089167952 = None else: __tt = type(__content_139875089167952) if ((__tt is int) or (__tt is float) or (__tt is int)): __content_139875089167952 = str( __content_139875089167952) else: if (__tt is bytes): __content_139875089167952 = decode( __content_139875089167952) else: if (__tt is not str): try: __content_139875089167952 = __content_139875089167952.__html__ except get('AttributeError', AttributeError): __converted = convert( __content_139875089167952) __content_139875089167952 = ( str(__content_139875089167952) if (__content_139875089167952 is __converted) else __converted) else: __content_139875089167952 = __content_139875089167952( ) if (__content_139875089167952 is not None): __append(__content_139875089167952) __append('<') # <Interpolation value=<Substitution ' 30\n ]\n ) {\n 0: ${industry.id}_secondary_increase_closure_counter;\n ${industry.id}_secondary_reset_closure_counter;\n }\n' (20:77)> braces_required=True translation=False at 7f3733e24438> -> __content_139875089167952 __token = 1260 __token = 1310 __content_139875089167952 = _lookup_attr(getitem('industry'), 'id') __content_139875089167952 = __quote(__content_139875089167952, '\x00', '�', None, False) __token = 1369 __content_139875089167952_1367 = _lookup_attr( getitem('industry'), 'id') __content_139875089167952_1367 = __quote( __content_139875089167952_1367, '\x00', '�', None, False) __content_139875089167952 = ('%s%s%s%s%s' % ( ' 30\n ]\n ) {\n 0: ', (__content_139875089167952 if (__content_139875089167952 is not None) else ''), '_secondary_increase_closure_counter;\n ', (__content_139875089167952_1367 if (__content_139875089167952_1367 is not None) else ''), '_secondary_reset_closure_counter;\n }\n', )) if (__content_139875089167952 is None): pass else: if (__content_139875089167952 is False): __content_139875089167952 = None else: __tt = type(__content_139875089167952) if ((__tt is int) or (__tt is float) or (__tt is int)): __content_139875089167952 = str( __content_139875089167952) else: if (__tt is bytes): __content_139875089167952 = decode( __content_139875089167952) else: if (__tt is not str): try: __content_139875089167952 = __content_139875089167952.__html__ except get('AttributeError', AttributeError): __converted = convert( __content_139875089167952) __content_139875089167952 = ( str(__content_139875089167952) if (__content_139875089167952 is __converted) else __converted) else: __content_139875089167952 = __content_139875089167952( ) if (__content_139875089167952 is not None): __append(__content_139875089167952) if (__backup_perm_storage_139875068693976 is __marker): del econtext['perm_storage'] else: econtext[ 'perm_storage'] = __backup_perm_storage_139875068693976 __append('\n\n\n') __append('\n\n') # <Interpolation value=<Substitution '\nswitch(FEAT_INDUSTRIES, SELF, ${industry.id}_secondary_close_random, (extra_callback_info2 & 32)) {\n\t0: return CB_RESULT_IND_PROD_CLOSE;\n\treturn CB_RESULT_IND_PROD_NO_CHANGE;\n}\n\n' (31:96)> braces_required=True translation=False at 7f3733dd91d0> -> __content_139875089167952 __token = 1623 __token = 1655 __content_139875089167952 = _lookup_attr(getitem('industry'), 'id') __content_139875089167952 = __quote(__content_139875089167952, '\x00', '�', None, False) __content_139875089167952 = ('%s%s%s' % ( '\nswitch(FEAT_INDUSTRIES, SELF, ', (__content_139875089167952 if (__content_139875089167952 is not None) else ''), '_secondary_close_random, (extra_callback_info2 & 32)) {\n\t0: return CB_RESULT_IND_PROD_CLOSE;\n\treturn CB_RESULT_IND_PROD_NO_CHANGE;\n}\n\n', )) if (__content_139875089167952 is None): pass else: if (__content_139875089167952 is False): __content_139875089167952 = None else: __tt = type(__content_139875089167952) if ((__tt is int) or (__tt is float) or (__tt is int)): __content_139875089167952 = str( __content_139875089167952) else: if (__tt is bytes): __content_139875089167952 = decode( __content_139875089167952) else: if (__tt is not str): try: __content_139875089167952 = __content_139875089167952.__html__ except get('AttributeError', AttributeError): __converted = convert( __content_139875089167952) __content_139875089167952 = ( str(__content_139875089167952) if (__content_139875089167952 is __converted) else __converted) else: __content_139875089167952 = __content_139875089167952( ) if (__content_139875089167952 is not None): __append(__content_139875089167952) # <Interpolation value=<Substitution '\nswitch(FEAT_INDUSTRIES, SELF, ${industry.id}_secondary_had_produced_check, LOAD_PERM(${industry.perm_storage.closure_counter})) {\n\t0..60: return CB_RESULT_IND_PROD_NO_CHANGE;\n\t${industry.id}_secondary_close_random;\n}\n\n' (37:57)> braces_required=True translation=False at 7f3733e24358> -> __content_139875089167952 __token = 1859 __token = 1891 __content_139875089167952 = _lookup_attr(getitem('industry'), 'id') __content_139875089167952 = __quote(__content_139875089167952, '\x00', '�', None, False) __token = 1946 __content_139875089167952_1944 = _lookup_attr( _lookup_attr(getitem('industry'), 'perm_storage'), 'closure_counter') __content_139875089167952_1944 = __quote( __content_139875089167952_1944, '\x00', '�', None, False) __token = 2037 __content_139875089167952_2035 = _lookup_attr( getitem('industry'), 'id') __content_139875089167952_2035 = __quote( __content_139875089167952_2035, '\x00', '�', None, False) __content_139875089167952 = ('%s%s%s%s%s%s%s' % ( '\nswitch(FEAT_INDUSTRIES, SELF, ', (__content_139875089167952 if (__content_139875089167952 is not None) else ''), '_secondary_had_produced_check, LOAD_PERM(', (__content_139875089167952_1944 if (__content_139875089167952_1944 is not None) else ''), ')) {\n\t0..60: return CB_RESULT_IND_PROD_NO_CHANGE;\n\t', (__content_139875089167952_2035 if (__content_139875089167952_2035 is not None) else ''), '_secondary_close_random;\n}\n\n', )) if (__content_139875089167952 is None): pass else: if (__content_139875089167952 is False): __content_139875089167952 = None else: __tt = type(__content_139875089167952) if ((__tt is int) or (__tt is float) or (__tt is int)): __content_139875089167952 = str( __content_139875089167952) else: if (__tt is bytes): __content_139875089167952 = decode( __content_139875089167952) else: if (__tt is not str): try: __content_139875089167952 = __content_139875089167952.__html__ except get('AttributeError', AttributeError): __converted = convert( __content_139875089167952) __content_139875089167952 = ( str(__content_139875089167952) if (__content_139875089167952 is __converted) else __converted) else: __content_139875089167952 = __content_139875089167952( ) if (__content_139875089167952 is not None): __append(__content_139875089167952) # <Interpolation value=<Substitution '\nswitch(FEAT_INDUSTRIES, SELF, ${industry.id}_check_secondary_closure, allow_close_secondary) {\n\t1..255: ${industry.id}_secondary_had_produced_check;\n\treturn CB_RESULT_IND_PROD_NO_CHANGE;\n}\n\n\n' (43:80)> braces_required=True translation=False at 7f3733e24390> -> __content_139875089167952 __token = 2158 __token = 2190 __content_139875089167952 = _lookup_attr(getitem('industry'), 'id') __content_139875089167952 = __quote(__content_139875089167952, '\x00', '�', None, False) __token = 2264 __content_139875089167952_2262 = _lookup_attr( getitem('industry'), 'id') __content_139875089167952_2262 = __quote( __content_139875089167952_2262, '\x00', '�', None, False) __content_139875089167952 = ('%s%s%s%s%s' % ( '\nswitch(FEAT_INDUSTRIES, SELF, ', (__content_139875089167952 if (__content_139875089167952 is not None) else ''), '_check_secondary_closure, allow_close_secondary) {\n\t1..255: ', (__content_139875089167952_2262 if (__content_139875089167952_2262 is not None) else ''), '_secondary_had_produced_check;\n\treturn CB_RESULT_IND_PROD_NO_CHANGE;\n}\n\n\n', )) if (__content_139875089167952 is None): pass else: if (__content_139875089167952 is False): __content_139875089167952 = None else: __tt = type(__content_139875089167952) if ((__tt is int) or (__tt is float) or (__tt is int)): __content_139875089167952 = str( __content_139875089167952) else: if (__tt is bytes): __content_139875089167952 = decode( __content_139875089167952) else: if (__tt is not str): try: __content_139875089167952 = __content_139875089167952.__html__ except get('AttributeError', AttributeError): __converted = convert( __content_139875089167952) __content_139875089167952 = ( str(__content_139875089167952) if (__content_139875089167952 is __converted) else __converted) else: __content_139875089167952 = __content_139875089167952( ) if (__content_139875089167952 is not None): __append(__content_139875089167952) except: if (__token is not None): rcontext.setdefault('__error__', []).append( (__tokens[__token] + ( __filename, _exc_info()[1], ))) raise
def render(__stream, econtext, rcontext, __i18n_domain=None, __i18n_context=None): __append = __stream.append __re_amp = g_re_amp __token = None __re_needs_escape = g_re_needs_escape def __convert(target): if (target is None): return __tt = type(target) if ((__tt is int) or (__tt is float) or (__tt is int)): target = str(target) else: if (__tt is bytes): target = decode(target) else: if (__tt is not str): try: target = target.__html__ except AttributeError: __converted = convert(target) target = (str(target) if (target is __converted) else __converted) else: target = target() return target def __quote(target, quote, quote_entity, default, default_marker): if (target is None): return if (target is default_marker): return default __tt = type(target) if ((__tt is int) or (__tt is float) or (__tt is int)): target = str(target) else: if (__tt is bytes): target = decode(target) else: if (__tt is not str): try: target = target.__html__ except: __converted = convert(target) target = (str(target) if (target is __converted) else __converted) else: return target() if (target is not None): try: escape = (__re_needs_escape(target) is not None) except TypeError: pass else: if escape: if ('&' in target): target = target.replace('&', '&') if ('<' in target): target = target.replace('<', '<') if ('>' in target): target = target.replace('>', '>') if ((quote is not None) and (quote in target)): target = target.replace(quote, quote_entity) return target translate = econtext['__translate'] decode = econtext['__decode'] convert = econtext['__convert'] on_error_handler = econtext['__on_error_handler'] try: getitem = econtext.__getitem__ get = econtext.get __append('/* ******************************************************************\n * Definition of the industry tile, its callbacks, and graphics chain\n * ******************************************************************/\n\n') __backup_macroname_140183230669192 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7f7ef3b59c88> name=None at 7f7ef3b592b0> -> __value __value = _static_140183231372424 econtext['macroname'] = __value # <Value 'load: spritesets.pynml' (5:30)> -> __macro __token = 242 __macro = ' spritesets.pynml' __macro = __loader(__macro) __token = 242 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_140183230669192 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_140183230669192 __append('\n\n') __backup_macroname_140183230737416 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7f7ef3b4a828> name=None at 7f7ef3b4a908> -> __value __value = _static_140183231309864 econtext['macroname'] = __value # <Value 'load: spritelayouts.pynml' (7:30)> -> __macro __token = 300 __macro = ' spritelayouts.pynml' __macro = __loader(__macro) __token = 300 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_140183230737416 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_140183230737416 __append('\n\n') __backup_macroname_140183230738376 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7f7ef3b4afd0> name=None at 7f7ef3b4a780> -> __value __value = _static_140183231311824 econtext['macroname'] = __value # <Value 'load: graphics_switches.pynml' (9:30)> -> __macro __token = 361 __macro = ' graphics_switches.pynml' __macro = __loader(__macro) __token = 361 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_140183230738376 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_140183230738376 __append('\n\n') __backup_location_checks_tile_140183257338880 = get('location_checks_tile', __marker) # <Value 'load: location_check_macros_tile.pynml' (11:42)> -> __value __token = 438 __value = ' location_check_macros_tile.pynml' __value = __loader(__value) econtext['location_checks_tile'] = __value __backup_macroname_140183230736392 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7f7ef3b4a128> name=None at 7f7ef3b4a550> -> __value __value = _static_140183231308072 econtext['macroname'] = __value # <Value "location_checks_tile.macros['render_tree']" (12:30)> -> __macro __token = 508 __macro = _lookup_attr(getitem('location_checks_tile'), 'macros')['render_tree'] __token = 508 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_140183230736392 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_140183230736392 if (__backup_location_checks_tile_140183257338880 is __marker): del econtext['location_checks_tile'] else: econtext['location_checks_tile'] = __backup_location_checks_tile_140183257338880 __append('\n\n') __backup_animation_macros_140183257338040 = get('animation_macros', __marker) # <Value 'load: animation_macros.pynml' (14:38)> -> __value __token = 594 __value = ' animation_macros.pynml' __value = __loader(__value) econtext['animation_macros'] = __value __backup_macroname_140183230681416 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7f7ef3b4a6a0> name=None at 7f7ef3b4a2b0> -> __value __value = _static_140183231309472 econtext['macroname'] = __value # <Value "animation_macros.macros['tile_animation']" (15:30)> -> __macro __token = 654 __macro = _lookup_attr(getitem('animation_macros'), 'macros')['tile_animation'] __token = 654 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_140183230681416 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_140183230681416 if (__backup_animation_macros_140183257338040 is __marker): del econtext['animation_macros'] else: econtext['animation_macros'] = __backup_animation_macros_140183257338040 __append('\n\n') __backup_macroname_140183230758664 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7f7ef3b4a080> name=None at 7f7ef3b4af60> -> __value __value = _static_140183231307904 econtext['macroname'] = __value # <Value 'load: properties_tile.pynml' (17:30)> -> __macro __token = 731 __macro = ' properties_tile.pynml' __macro = __loader(__macro) __token = 731 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_140183230758664 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_140183230758664 __append('\n\n\n/* *************************************************\n * Definition of the industry\n * *************************************************/\n\n') __backup_macroname_140183230395336 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7f7ef3b4a710> name=None at 7f7ef3b4aa90> -> __value __value = _static_140183231309584 econtext['macroname'] = __value # <Value 'load: layouts.pynml' (24:30)> -> __macro __token = 933 __macro = ' layouts.pynml' __macro = __loader(__macro) __token = 933 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_140183230395336 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_140183230395336 __append('\n\n') __backup_macroname_140183230395272 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7f7ef3b4a470> name=None at 7f7ef3b4a400> -> __value __value = _static_140183231308912 econtext['macroname'] = __value # <Value 'load: produce_secondary.pynml' (26:30)> -> __macro __token = 988 __macro = ' produce_secondary.pynml' __macro = __loader(__macro) __token = 988 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_140183230395272 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_140183230395272 __append('\n\n') __backup_macroname_140183230395848 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7f7ef3b4ab70> name=None at 7f7ef3b4a7b8> -> __value __value = _static_140183231310704 econtext['macroname'] = __value # <Value 'load: closure_secondary.pynml' (28:30)> -> __macro __token = 1053 __macro = ' closure_secondary.pynml' __macro = __loader(__macro) __token = 1053 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_140183230395848 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_140183230395848 __append('\n\n') __backup_macroname_140183230738312 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7f7ef3b4a390> name=None at 7f7ef3b4a3c8> -> __value __value = _static_140183231308688 econtext['macroname'] = __value # <Value 'load: extra_text_secondary.pynml' (30:30)> -> __macro __token = 1118 __macro = ' extra_text_secondary.pynml' __macro = __loader(__macro) __token = 1118 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_140183230738312 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_140183230738312 __append('\n\n') __backup_macroname_140183230990152 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7f7ef3b06b70> name=None at 7f7ef3b06438> -> __value __value = _static_140183231032176 econtext['macroname'] = __value # <Value 'load: availability.pynml' (32:30)> -> __macro __token = 1186 __macro = ' availability.pynml' __macro = __loader(__macro) __token = 1186 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_140183230990152 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_140183230990152 __append('\n\n') __backup_location_checks_industry_140183230857736 = get('location_checks_industry', __marker) # <Value 'load: location_check_macros_industry.pynml' (34:46)> -> __value __token = 1262 __value = ' location_check_macros_industry.pynml' __value = __loader(__value) econtext['location_checks_industry'] = __value __backup_macroname_140183230693192 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7f7ef3b06d30> name=None at 7f7ef3b06ac8> -> __value __value = _static_140183231032624 econtext['macroname'] = __value # <Value "location_checks_industry.macros['render_tree']" (35:30)> -> __macro __token = 1336 __macro = _lookup_attr(getitem('location_checks_industry'), 'macros')['render_tree'] __token = 1336 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_140183230693192 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_140183230693192 if (__backup_location_checks_industry_140183230857736 is __marker): del econtext['location_checks_industry'] else: econtext['location_checks_industry'] = __backup_location_checks_industry_140183230857736 __append('\n\n') __backup_macroname_140183230691976 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7f7ef3b06240> name=None at 7f7ef3b06400> -> __value __value = _static_140183231029824 econtext['macroname'] = __value # <Value 'load: properties_industry.pynml' (37:30)> -> __macro __token = 1418 __macro = ' properties_industry.pynml' __macro = __loader(__macro) __token = 1418 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_140183230691976 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_140183230691976 __append('\n\n') __append('\n') __backup_economy_140183231029712 = get('economy', __marker) # <Value 'economies' (40:37)> -> __iterator __token = 1602 __iterator = getitem('economies') (__iterator, ____index_140183231029320, ) = getitem('repeat')('economy', __iterator) econtext['economy'] = None for __item in __iterator: econtext['economy'] = __item __append('\n ') # <Value "industry.get_property('enabled', economy) == True" (41:39)> -> __condition __token = 1653 __condition = (_lookup_attr(getitem('industry'), 'get_property')('enabled', getitem('economy')) == True) if __condition: # <Interpolation value=<Substitution '\n if (economy==${economy.numeric_id}) {\n item(FEAT_INDUSTRIES, ${industry.id}, ${industry.numeric_id}) {\n graphics {\n construction_probability: ${industry.id}_check_availability;\n produce_cargo_arrival: ${industry.id}_produce;\n monthly_prod_change: ${industry.id}_check_secondary_production_level;\n random_prod_change: ${industry.id}_check_secondary_closure;\n location_check: ${industry.id}_check_location;\n extra_text_fund: ${industry.get_extra_text_fund(economy)};\n extra_text_industry: ${industry.id}_extra_text;\n cargo_subtype_display: ${industry.id}_cargo_subtype_display;\n colour: switch_colour;\n }\n }\n }\n ' (41:90)> braces_required=True translation=False at 7f7ef3b062b0> -> __content_140183249773656 __token = 1713 __token = 1728 __content_140183249773656 = _lookup_attr(getitem('economy'), 'numeric_id') __content_140183249773656 = __quote(__content_140183249773656, '\x00', '�', None, False) __token = 1787 __content_140183249773656_1785 = _lookup_attr(getitem('industry'), 'id') __content_140183249773656_1785 = __quote(__content_140183249773656_1785, '\x00', '�', None, False) __token = 1803 __content_140183249773656_1801 = _lookup_attr(getitem('industry'), 'numeric_id') __content_140183249773656_1801 = __quote(__content_140183249773656_1801, '\x00', '�', None, False) __token = 1902 __content_140183249773656_1900 = _lookup_attr(getitem('industry'), 'id') __content_140183249773656_1900 = __quote(__content_140183249773656_1900, '\x00', '�', None, False) __token = 1983 __content_140183249773656_1981 = _lookup_attr(getitem('industry'), 'id') __content_140183249773656_1981 = __quote(__content_140183249773656_1981, '\x00', '�', None, False) __token = 2053 __content_140183249773656_2051 = _lookup_attr(getitem('industry'), 'id') __content_140183249773656_2051 = __quote(__content_140183249773656_2051, '\x00', '�', None, False) __token = 2148 __content_140183249773656_2146 = _lookup_attr(getitem('industry'), 'id') __content_140183249773656_2146 = __quote(__content_140183249773656_2146, '\x00', '�', None, False) __token = 2234 __content_140183249773656_2232 = _lookup_attr(getitem('industry'), 'id') __content_140183249773656_2232 = __quote(__content_140183249773656_2232, '\x00', '�', None, False) __token = 2311 __content_140183249773656_2309 = _lookup_attr(getitem('industry'), 'get_extra_text_fund')(getitem('economy')) __content_140183249773656_2309 = __quote(__content_140183249773656_2309, '\x00', '�', None, False) __token = 2399 __content_140183249773656_2397 = _lookup_attr(getitem('industry'), 'id') __content_140183249773656_2397 = __quote(__content_140183249773656_2397, '\x00', '�', None, False) __token = 2472 __content_140183249773656_2470 = _lookup_attr(getitem('industry'), 'id') __content_140183249773656_2470 = __quote(__content_140183249773656_2470, '\x00', '�', None, False) __content_140183249773656 = ('%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s' % ('\n if (economy==', (__content_140183249773656 if (__content_140183249773656 is not None) else ''), ') {\n item(FEAT_INDUSTRIES, ', (__content_140183249773656_1785 if (__content_140183249773656_1785 is not None) else ''), ', ', (__content_140183249773656_1801 if (__content_140183249773656_1801 is not None) else ''), ') {\n graphics {\n construction_probability: ', (__content_140183249773656_1900 if (__content_140183249773656_1900 is not None) else ''), '_check_availability;\n produce_cargo_arrival: ', (__content_140183249773656_1981 if (__content_140183249773656_1981 is not None) else ''), '_produce;\n monthly_prod_change: ', (__content_140183249773656_2051 if (__content_140183249773656_2051 is not None) else ''), '_check_secondary_production_level;\n random_prod_change: ', (__content_140183249773656_2146 if (__content_140183249773656_2146 is not None) else ''), '_check_secondary_closure;\n location_check: ', (__content_140183249773656_2232 if (__content_140183249773656_2232 is not None) else ''), '_check_location;\n extra_text_fund: ', (__content_140183249773656_2309 if (__content_140183249773656_2309 is not None) else ''), ';\n extra_text_industry: ', (__content_140183249773656_2397 if (__content_140183249773656_2397 is not None) else ''), '_extra_text;\n cargo_subtype_display: ', (__content_140183249773656_2470 if (__content_140183249773656_2470 is not None) else ''), '_cargo_subtype_display;\n colour: switch_colour;\n }\n }\n }\n ', )) if (__content_140183249773656 is None): pass else: if (__content_140183249773656 is False): __content_140183249773656 = None else: __tt = type(__content_140183249773656) if ((__tt is int) or (__tt is float) or (__tt is int)): __content_140183249773656 = str(__content_140183249773656) else: if (__tt is bytes): __content_140183249773656 = decode(__content_140183249773656) else: if (__tt is not str): try: __content_140183249773656 = __content_140183249773656.__html__ except get('AttributeError', AttributeError): __converted = convert(__content_140183249773656) __content_140183249773656 = (str(__content_140183249773656) if (__content_140183249773656 is __converted) else __converted) else: __content_140183249773656 = __content_140183249773656() if (__content_140183249773656 is not None): __append(__content_140183249773656) __append('\n') ____index_140183231029320 -= 1 if (____index_140183231029320 > 0): __append('') if (__backup_economy_140183231029712 is __marker): del econtext['economy'] else: econtext['economy'] = __backup_economy_140183231029712 __append('\n') except: if (__token is not None): rcontext.setdefault('__error__', []).append((__tokens[__token] + (__filename, _exc_info()[1], ))) raise
def render(__stream, econtext, rcontext, __i18n_domain=None, __i18n_context=None): __append = __stream.append __re_amp = g_re_amp __token = None __re_needs_escape = g_re_needs_escape def __convert(target): if (target is None): return __tt = type(target) if ((__tt is int) or (__tt is float) or (__tt is int)): target = str(target) else: if (__tt is bytes): target = decode(target) else: if (__tt is not str): try: target = target.__html__ except AttributeError: __converted = convert(target) target = (str(target) if (target is __converted) else __converted) else: target = target() return target def __quote(target, quote, quote_entity, default, default_marker): if (target is None): return if (target is default_marker): return default __tt = type(target) if ((__tt is int) or (__tt is float) or (__tt is int)): target = str(target) else: if (__tt is bytes): target = decode(target) else: if (__tt is not str): try: target = target.__html__ except: __converted = convert(target) target = (str(target) if (target is __converted) else __converted) else: return target() if (target is not None): try: escape = (__re_needs_escape(target) is not None) except TypeError: pass else: if escape: if ('&' in target): target = target.replace('&', '&') if ('<' in target): target = target.replace('<', '<') if ('>' in target): target = target.replace('>', '>') if ((quote is not None) and (quote in target)): target = target.replace(quote, quote_entity) return target translate = econtext['__translate'] decode = econtext['__decode'] convert = econtext['__convert'] try: getitem = econtext.__getitem__ get = econtext.get # <Interpolation value=<Substitution '\n\nswitch(FEAT_INDUSTRIES, SELF, ${industry.id}_extra_text, [\n\tSTORE_TEMP((primary_level1_requirement * ${industry.supply_requirements[2]}) |\n\t(primary_level2_requirement * ${industry.supply_requirements[2]}) ' (1:57)> braces_required=True translation=False at 1e325982208> -> __content_2075086945112 __token = 59 __token = 91 __content_2075086945112 = _lookup_attr(getitem('industry'), 'id') __content_2075086945112 = __quote(__content_2075086945112, '\x00', '�', None, False) __token = 162 __content_2075086945112_160 = _lookup_attr(getitem('industry'), 'supply_requirements')[2] __content_2075086945112_160 = __quote(__content_2075086945112_160, '\x00', '�', None, False) __token = 231 __content_2075086945112_229 = _lookup_attr(getitem('industry'), 'supply_requirements')[2] __content_2075086945112_229 = __quote(__content_2075086945112_229, '\x00', '�', None, False) __content_2075086945112 = ('%s%s%s%s%s%s%s' % ('\n\nswitch(FEAT_INDUSTRIES, SELF, ', (__content_2075086945112 if (__content_2075086945112 is not None) else ''), '_extra_text, [\n\tSTORE_TEMP((primary_level1_requirement * ', (__content_2075086945112_160 if (__content_2075086945112_160 is not None) else ''), ') |\n\t(primary_level2_requirement * ', (__content_2075086945112_229 if (__content_2075086945112_229 is not None) else ''), ') ', )) if (__content_2075086945112 is None): pass else: if (__content_2075086945112 is False): __content_2075086945112 = None else: __tt = type(__content_2075086945112) if ((__tt is int) or (__tt is float) or (__tt is int)): __content_2075086945112 = str(__content_2075086945112) else: if (__tt is bytes): __content_2075086945112 = decode(__content_2075086945112) else: if (__tt is not str): try: __content_2075086945112 = __content_2075086945112.__html__ except get('AttributeError', AttributeError): __converted = convert(__content_2075086945112) __content_2075086945112 = (str(__content_2075086945112) if (__content_2075086945112 is __converted) else __converted) else: __content_2075086945112 = __content_2075086945112() if (__content_2075086945112 is not None): __append(__content_2075086945112) __append('<') __append('<') # <Interpolation value=<Substitution ' 16, 0x100),\n\tLOAD_PERM(${industry.perm_storage.var_current_supplies_prod_factor})\n]) {\n\tprimary_level2_bonus: return string(STR_${industry.supply_requirements[1]}_PRODUCTION_4X);\n\tprimary_level1_bonus: return string(STR_${industry.supply_requirements[1]}_PRODUCTION_2X);\n\treturn string(STR_${industry.supply_requirements[1]}_PRODUCTION_1X);\n}\n\n' (5:69)> braces_required=True translation=False at 1e3259b1518> -> __content_2075086945112 __token = 268 __token = 293 __content_2075086945112 = _lookup_attr(_lookup_attr(getitem('industry'), 'perm_storage'), 'var_current_supplies_prod_factor') __content_2075086945112 = __quote(__content_2075086945112, '\x00', '�', None, False) __token = 398 __content_2075086945112_396 = _lookup_attr(getitem('industry'), 'supply_requirements')[1] __content_2075086945112_396 = __quote(__content_2075086945112_396, '\x00', '�', None, False) __token = 490 __content_2075086945112_488 = _lookup_attr(getitem('industry'), 'supply_requirements')[1] __content_2075086945112_488 = __quote(__content_2075086945112_488, '\x00', '�', None, False) __token = 560 __content_2075086945112_558 = _lookup_attr(getitem('industry'), 'supply_requirements')[1] __content_2075086945112_558 = __quote(__content_2075086945112_558, '\x00', '�', None, False) __content_2075086945112 = ('%s%s%s%s%s%s%s%s%s' % (' 16, 0x100),\n\tLOAD_PERM(', (__content_2075086945112 if (__content_2075086945112 is not None) else ''), ')\n]) {\n\tprimary_level2_bonus: return string(STR_', (__content_2075086945112_396 if (__content_2075086945112_396 is not None) else ''), '_PRODUCTION_4X);\n\tprimary_level1_bonus: return string(STR_', (__content_2075086945112_488 if (__content_2075086945112_488 is not None) else ''), '_PRODUCTION_2X);\n\treturn string(STR_', (__content_2075086945112_558 if (__content_2075086945112_558 is not None) else ''), '_PRODUCTION_1X);\n}\n\n', )) if (__content_2075086945112 is None): pass else: if (__content_2075086945112 is False): __content_2075086945112 = None else: __tt = type(__content_2075086945112) if ((__tt is int) or (__tt is float) or (__tt is int)): __content_2075086945112 = str(__content_2075086945112) else: if (__tt is bytes): __content_2075086945112 = decode(__content_2075086945112) else: if (__tt is not str): try: __content_2075086945112 = __content_2075086945112.__html__ except get('AttributeError', AttributeError): __converted = convert(__content_2075086945112) __content_2075086945112 = (str(__content_2075086945112) if (__content_2075086945112 is __converted) else __converted) else: __content_2075086945112 = __content_2075086945112() if (__content_2075086945112 is not None): __append(__content_2075086945112) # <Interpolation value=<Substitution '\n\nswitch (FEAT_INDUSTRIES, SELF, ${industry.id}_cargo_subtype_display, 1) {\n return 0x3800 + string(STR_EMPTY);\n}\n' (16:3)> braces_required=True translation=False at 1e3259b1160> -> __content_2075086945112 __token = 834 __token = 867 __content_2075086945112 = _lookup_attr(getitem('industry'), 'id') __content_2075086945112 = __quote(__content_2075086945112, '\x00', '�', None, False) __content_2075086945112 = ('%s%s%s' % ('\n\nswitch (FEAT_INDUSTRIES, SELF, ', (__content_2075086945112 if (__content_2075086945112 is not None) else ''), '_cargo_subtype_display, 1) {\n return 0x3800 + string(STR_EMPTY);\n}\n', )) if (__content_2075086945112 is None): pass else: if (__content_2075086945112 is False): __content_2075086945112 = None else: __tt = type(__content_2075086945112) if ((__tt is int) or (__tt is float) or (__tt is int)): __content_2075086945112 = str(__content_2075086945112) else: if (__tt is bytes): __content_2075086945112 = decode(__content_2075086945112) else: if (__tt is not str): try: __content_2075086945112 = __content_2075086945112.__html__ except get('AttributeError', AttributeError): __converted = convert(__content_2075086945112) __content_2075086945112 = (str(__content_2075086945112) if (__content_2075086945112 is __converted) else __converted) else: __content_2075086945112 = __content_2075086945112() if (__content_2075086945112 is not None): __append(__content_2075086945112) except: if (__token is not None): rcontext.setdefault('__error__', []).append((__tokens[__token] + (__filename, _exc_info()[1], ))) raise
def render(__stream, econtext, rcontext, __i18n_domain=None, __i18n_context=None): __append = __stream.append __re_amp = g_re_amp __token = None __re_needs_escape = g_re_needs_escape def __convert(target): if (target is None): return __tt = type(target) if ((__tt is int) or (__tt is float) or (__tt is int)): target = str(target) else: if (__tt is bytes): target = decode(target) else: if (__tt is not str): try: target = target.__html__ except AttributeError: __converted = convert(target) target = (str(target) if (target is __converted) else __converted) else: target = target() return target def __quote(target, quote, quote_entity, default, default_marker): if (target is None): return if (target is default_marker): return default __tt = type(target) if ((__tt is int) or (__tt is float) or (__tt is int)): target = str(target) else: if (__tt is bytes): target = decode(target) else: if (__tt is not str): try: target = target.__html__ except: __converted = convert(target) target = (str(target) if (target is __converted) else __converted) else: return target() if (target is not None): try: escape = (__re_needs_escape(target) is not None) except TypeError: pass else: if escape: if ('&' in target): target = target.replace('&', '&') if ('<' in target): target = target.replace('<', '<') if ('>' in target): target = target.replace('>', '>') if ((quote is not None) and (quote in target)): target = target.replace(quote, quote_entity) return target translate = econtext['__translate'] decode = econtext['__decode'] convert = econtext['__convert'] on_error_handler = econtext['__on_error_handler'] try: getitem = econtext.__getitem__ get = econtext.get __append( '/* ******************************************************************\n * Definition of the industry tile, its callbacks, and graphics chain\n * ******************************************************************/\n\n' ) __backup_macroname_140166499581512 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7f7b0e4c2748> name=None at 7f7b0e4c2e10> -> __value __value = _static_140166497576776 econtext['macroname'] = __value # <Value 'load: spritesets.pynml' (5:30)> -> __macro __token = 242 __macro = ' spritesets.pynml' __macro = __loader(__macro) __token = 242 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_140166499581512 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_140166499581512 __append('\n\n') __backup_macroname_140166497044488 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7f7b0e4c2208> name=None at 7f7b0e4c2710> -> __value __value = _static_140166497575432 econtext['macroname'] = __value # <Value 'load: spritelayouts.pynml' (7:30)> -> __macro __token = 300 __macro = ' spritelayouts.pynml' __macro = __loader(__macro) __token = 300 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_140166497044488 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_140166497044488 __append('\n\n') __backup_macroname_140166498029064 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7f7b0e4c2668> name=None at 7f7b0e4c2048> -> __value __value = _static_140166497576552 econtext['macroname'] = __value # <Value 'load: graphics_switches.pynml' (9:30)> -> __macro __token = 361 __macro = ' graphics_switches.pynml' __macro = __loader(__macro) __token = 361 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_140166498029064 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_140166498029064 __append('\n\n') __backup_location_checks_tile_140166498397880 = get( 'location_checks_tile', __marker) # <Value 'load: location_check_macros_tile.pynml' (11:42)> -> __value __token = 438 __value = ' location_check_macros_tile.pynml' __value = __loader(__value) econtext['location_checks_tile'] = __value __backup_macroname_140166499336968 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7f7b0e4c26d8> name=None at 7f7b0e4c2a20> -> __value __value = _static_140166497576664 econtext['macroname'] = __value # <Value "location_checks_tile.macros['render_tree']" (12:30)> -> __macro __token = 508 __macro = _lookup_attr(getitem('location_checks_tile'), 'macros')['render_tree'] __token = 508 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_140166499336968 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_140166499336968 if (__backup_location_checks_tile_140166498397880 is __marker): del econtext['location_checks_tile'] else: econtext[ 'location_checks_tile'] = __backup_location_checks_tile_140166498397880 __append('\n\n') __backup_animation_macros_140166497576048 = get( 'animation_macros', __marker) # <Value 'load: animation_macros.pynml' (14:38)> -> __value __token = 594 __value = ' animation_macros.pynml' __value = __loader(__value) econtext['animation_macros'] = __value __backup_macroname_140166498204104 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7f7b0e4c22e8> name=None at 7f7b0e4c28d0> -> __value __value = _static_140166497575656 econtext['macroname'] = __value # <Value "animation_macros.macros['tile_animation']" (15:30)> -> __macro __token = 654 __macro = _lookup_attr(getitem('animation_macros'), 'macros')['tile_animation'] __token = 654 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_140166498204104 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_140166498204104 if (__backup_animation_macros_140166497576048 is __marker): del econtext['animation_macros'] else: econtext[ 'animation_macros'] = __backup_animation_macros_140166497576048 __append('\n\n') __backup_macroname_140166498123336 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7f7b0e4a77b8> name=None at 7f7b0e4a7cc0> -> __value __value = _static_140166497466296 econtext['macroname'] = __value # <Value 'load: properties_tile.pynml' (17:30)> -> __macro __token = 731 __macro = ' properties_tile.pynml' __macro = __loader(__macro) __token = 731 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_140166498123336 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_140166498123336 __append( '\n\n\n/* *************************************************\n * Definition of the industry\n * *************************************************/\n\n' ) __backup_macroname_140166498120840 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7f7b0e4a71d0> name=None at 7f7b0e4a7d30> -> __value __value = _static_140166497464784 econtext['macroname'] = __value # <Value 'load: layouts.pynml' (24:30)> -> __macro __token = 933 __macro = ' layouts.pynml' __macro = __loader(__macro) __token = 933 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_140166498120840 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_140166498120840 __append('\n\n') __backup_macroname_140166498041224 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7f7b0e4a7278> name=None at 7f7b0e4a70f0> -> __value __value = _static_140166497464952 econtext['macroname'] = __value # <Value 'load: availability.pynml' (26:30)> -> __macro __token = 988 __macro = ' availability.pynml' __macro = __loader(__macro) __token = 988 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_140166498041224 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_140166498041224 __append('\n\n') __backup_location_checks_industry_140166499219160 = get( 'location_checks_industry', __marker) # <Value 'load: location_check_macros_industry.pynml' (28:46)> -> __value __token = 1064 __value = ' location_check_macros_industry.pynml' __value = __loader(__value) econtext['location_checks_industry'] = __value __backup_macroname_140166499338952 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7f7b0e4a7630> name=None at 7f7b0e4a7208> -> __value __value = _static_140166497465904 econtext['macroname'] = __value # <Value "location_checks_industry.macros['render_tree']" (29:30)> -> __macro __token = 1138 __macro = _lookup_attr(getitem('location_checks_industry'), 'macros')['render_tree'] __token = 1138 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_140166499338952 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_140166499338952 if (__backup_location_checks_industry_140166499219160 is __marker): del econtext['location_checks_industry'] else: econtext[ 'location_checks_industry'] = __backup_location_checks_industry_140166499219160 __append('\n\n') __backup_macroname_140166499339144 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7f7b0e4a77f0> name=None at 7f7b0e4a7d68> -> __value __value = _static_140166497466352 econtext['macroname'] = __value # <Value 'load: properties_industry.pynml' (31:30)> -> __macro __token = 1220 __macro = ' properties_industry.pynml' __macro = __loader(__macro) __token = 1220 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_140166499339144 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_140166499339144 __append('\n\n') __append('\n') __backup_economy_140166499217984 = get('economy', __marker) # <Value 'economies' (34:37)> -> __iterator __token = 1404 __iterator = getitem('economies') ( __iterator, ____index_140166497468032, ) = getitem('repeat')('economy', __iterator) econtext['economy'] = None for __item in __iterator: econtext['economy'] = __item __append('\n ') # <Value "industry.get_property('enabled', economy) == True" (35:39)> -> __condition __token = 1455 __condition = (_lookup_attr( getitem('industry'), 'get_property')('enabled', getitem('economy')) == True) if __condition: # <Interpolation value=<Substitution '\n if (economy==${economy.numeric_id}) {\n item(FEAT_INDUSTRIES, ${industry.id}, ${industry.numeric_id}) {\n graphics {\n construction_probability: ${industry.id}_check_availability;\n build_prod_change: randomise_primary_production_on_build;\n location_check: ${industry.id}_check_location;\n extra_text_fund: ${industry.get_extra_text_fund(economy)};\n colour: switch_colour;\n }\n }\n }\n ' (35:90)> braces_required=True translation=False at 7f7b0e4a7470> -> __content_140166518101192 __token = 1515 __token = 1530 __content_140166518101192 = _lookup_attr( getitem('economy'), 'numeric_id') __content_140166518101192 = __quote( __content_140166518101192, '\x00', '�', None, False) __token = 1589 __content_140166518101192_1587 = _lookup_attr( getitem('industry'), 'id') __content_140166518101192_1587 = __quote( __content_140166518101192_1587, '\x00', '�', None, False) __token = 1605 __content_140166518101192_1603 = _lookup_attr( getitem('industry'), 'numeric_id') __content_140166518101192_1603 = __quote( __content_140166518101192_1603, '\x00', '�', None, False) __token = 1704 __content_140166518101192_1702 = _lookup_attr( getitem('industry'), 'id') __content_140166518101192_1702 = __quote( __content_140166518101192_1702, '\x00', '�', None, False) __token = 1870 __content_140166518101192_1868 = _lookup_attr( getitem('industry'), 'id') __content_140166518101192_1868 = __quote( __content_140166518101192_1868, '\x00', '�', None, False) __token = 1947 __content_140166518101192_1945 = _lookup_attr( getitem('industry'), 'get_extra_text_fund')(getitem('economy')) __content_140166518101192_1945 = __quote( __content_140166518101192_1945, '\x00', '�', None, False) __content_140166518101192 = ('%s%s%s%s%s%s%s%s%s%s%s%s%s' % ( '\n if (economy==', (__content_140166518101192 if (__content_140166518101192 is not None) else ''), ') {\n item(FEAT_INDUSTRIES, ', (__content_140166518101192_1587 if (__content_140166518101192_1587 is not None) else ''), ', ', (__content_140166518101192_1603 if (__content_140166518101192_1603 is not None) else ''), ') {\n graphics {\n construction_probability: ', (__content_140166518101192_1702 if (__content_140166518101192_1702 is not None) else ''), '_check_availability;\n build_prod_change: randomise_primary_production_on_build;\n location_check: ', (__content_140166518101192_1868 if (__content_140166518101192_1868 is not None) else ''), '_check_location;\n extra_text_fund: ', (__content_140166518101192_1945 if (__content_140166518101192_1945 is not None) else ''), ';\n colour: switch_colour;\n }\n }\n }\n ', )) if (__content_140166518101192 is None): pass else: if (__content_140166518101192 is False): __content_140166518101192 = None else: __tt = type(__content_140166518101192) if ((__tt is int) or (__tt is float) or (__tt is int)): __content_140166518101192 = str( __content_140166518101192) else: if (__tt is bytes): __content_140166518101192 = decode( __content_140166518101192) else: if (__tt is not str): try: __content_140166518101192 = __content_140166518101192.__html__ except get('AttributeError', AttributeError): __converted = convert( __content_140166518101192) __content_140166518101192 = ( str(__content_140166518101192) if (__content_140166518101192 is __converted) else __converted) else: __content_140166518101192 = __content_140166518101192( ) if (__content_140166518101192 is not None): __append(__content_140166518101192) __append('\n') ____index_140166497468032 -= 1 if (____index_140166497468032 > 0): __append('') if (__backup_economy_140166499217984 is __marker): del econtext['economy'] else: econtext['economy'] = __backup_economy_140166499217984 __append('\n') except: if (__token is not None): rcontext.setdefault('__error__', []).append( (__tokens[__token] + ( __filename, _exc_info()[1], ))) raise
def render_first_frame_is_0(__stream, econtext, rcontext, __i18n_domain=None, __i18n_context=None): __append = __stream.append __re_amp = g_re_amp __token = None __re_needs_escape = g_re_needs_escape def __convert(target): if (target is None): return __tt = type(target) if ((__tt is int) or (__tt is float) or (__tt is int)): target = str(target) else: if (__tt is bytes): target = decode(target) else: if (__tt is not str): try: target = target.__html__ except AttributeError: __converted = convert(target) target = (str(target) if (target is __converted) else __converted) else: target = target() return target def __quote(target, quote, quote_entity, default, default_marker): if (target is None): return if (target is default_marker): return default __tt = type(target) if ((__tt is int) or (__tt is float) or (__tt is int)): target = str(target) else: if (__tt is bytes): target = decode(target) else: if (__tt is not str): try: target = target.__html__ except: __converted = convert(target) target = (str(target) if (target is __converted) else __converted) else: return target() if (target is not None): try: escape = (__re_needs_escape(target) is not None) except TypeError: pass else: if escape: if ('&' in target): target = target.replace('&', '&') if ('<' in target): target = target.replace('<', '<') if ('>' in target): target = target.replace('>', '>') if ((quote is not None) and (quote in target)): target = target.replace(quote, quote_entity) return target translate = econtext['__translate'] decode = econtext['__decode'] convert = econtext['__convert'] on_error_handler = econtext['__on_error_handler'] try: getitem = econtext.__getitem__ get = econtext.get __append('\n ') # <Interpolation value=<Substitution '\n switch(FEAT_INDUSTRYTILES, SELF, ${tile.id}_anim_control, 0) {\n return 0;\n }\n' (41:90)> braces_required=True translation=False at 7f3733dd9048> -> __content_139875089167952 __token = 2041 __token = 2076 __content_139875089167952 = _lookup_attr(getitem('tile'), 'id') __content_139875089167952 = __quote(__content_139875089167952, '\x00', '�', None, False) __content_139875089167952 = ('%s%s%s' % ( '\n switch(FEAT_INDUSTRYTILES, SELF, ', (__content_139875089167952 if (__content_139875089167952 is not None) else ''), '_anim_control, 0) {\n return 0;\n }\n', )) if (__content_139875089167952 is None): pass else: if (__content_139875089167952 is False): __content_139875089167952 = None else: __tt = type(__content_139875089167952) if ((__tt is int) or (__tt is float) or (__tt is int)): __content_139875089167952 = str( __content_139875089167952) else: if (__tt is bytes): __content_139875089167952 = decode( __content_139875089167952) else: if (__tt is not str): try: __content_139875089167952 = __content_139875089167952.__html__ except get('AttributeError', AttributeError): __converted = convert( __content_139875089167952) __content_139875089167952 = ( str(__content_139875089167952) if (__content_139875089167952 is __converted) else __converted) else: __content_139875089167952 = __content_139875089167952( ) if (__content_139875089167952 is not None): __append(__content_139875089167952) except: if (__token is not None): rcontext.setdefault('__error__', []).append( (__tokens[__token] + ( __filename, _exc_info()[1], ))) raise
def render(stream, econtext, rcontext): append = stream.append getitem = econtext.__getitem__ get = econtext.get _i18n_domain = None re_amp = g_re_amp re_needs_escape = g_re_needs_escape decode = getitem('decode') convert = getitem('convert') translate = getitem('translate') _backup_attrs_38631760 = get('attrs', _marker) # <Static value=<_ast.Dict object at 0x251b2d0> name=None at 251b610> -> _value _value = _static_38908624 econtext['attrs'] = _value # <div ... (1:0) # -------------------------------------------------------- append(u'<div') _attr_xmlns = u'http://www.w3.org/1999/xhtml' if (_attr_xmlns is not None): append((u' xmlns="%s"' % _attr_xmlns)) append(u'>') _content_139955154988272 = u'\n ' if (_content_139955154988272 is not None): append(_content_139955154988272) _backup_attrs_39790784 = get('attrs', _marker) # <Static value=<_ast.Dict object at 0x236b990> name=None at 236b890> -> _value _value = _static_37140880 econtext['attrs'] = _value # <ul ... (3:2) # -------------------------------------------------------- append(u'<ul>') _content_139955154988272 = u'\n ' if (_content_139955154988272 is not None): append(_content_139955154988272) _backup_i_35883472 = get('i', _marker) # <Expression u'range(3)' (4:112)> -> _iterator try: _iterator = get('range', range)(3) except: rcontext.setdefault('__error__', []).append((u'range(3)', 4, 112, '<string>', _sys.exc_info()[1], )) raise (_iterator, __index_39101072, ) = getitem('repeat')(u'i', _iterator) econtext['i'] = None for _item in _iterator: econtext['i'] = _item _backup_attrs_35757664 = get('attrs', _marker) # <Static value=<_ast.Dict object at 0x236b690> name=None at 236b490> -> _value _value = _static_37140112 econtext['attrs'] = _value # <li ... (4:4) # -------------------------------------------------------- append(u'<li') _backup_default_35754928 = get('default', _marker) _value = u'${i}-${repeat.i.index}' econtext['default'] = _value # <Interpolation value=u'${i}-${repeat.i.index}' escape=True at 236b2d0> -> _attr_name # <Expression u'i' (4:76)> -> _attr_name try: _attr_name = getitem('i') except: rcontext.setdefault('__error__', []).append((u'i', 4, 76, '<string>', _sys.exc_info()[1], )) raise # <Expression u'repeat.i.index' (4:81)> -> _attr_name_181 try: _attr_name_181 = _lookup_attr(getitem('repeat'), 'i').index except: rcontext.setdefault('__error__', []).append((u'repeat.i.index', 4, 81, '<string>', _sys.exc_info()[1], )) raise _attr_name = ('%s%s%s' % ((_attr_name if (_attr_name is not None) else ''), (u'-' if (u'-' is not None) else ''), (_attr_name_181 if (_attr_name_181 is not None) else ''), )) if (_attr_name is None): pass else: if (_attr_name is False): _attr_name = None else: _tt = type(_attr_name) if ((_tt is int) or (_tt is float) or (_tt is long)): _attr_name = unicode(_attr_name) else: try: if (_tt is str): _attr_name = decode(_attr_name) else: if (_tt is not unicode): try: _attr_name = _attr_name.__html__ except: _attr_name = convert(_attr_name) else: raise RuntimeError except RuntimeError: _attr_name = _attr_name() else: if ((_attr_name is not None) and (re_needs_escape(_attr_name) is not None)): if ('&' in _attr_name): if (';' in _attr_name): _attr_name = re_amp.sub('&', _attr_name) else: _attr_name = _attr_name.replace('&', '&') if ('<' in _attr_name): _attr_name = _attr_name.replace('<', '<') if ('>' in _attr_name): _attr_name = _attr_name.replace('>', '>') if (u'"' in _attr_name): _attr_name = _attr_name.replace(u'"', '"') if (_attr_name is not None): append((u' name="%s"' % _attr_name)) if (_backup_default_35754928 is _marker): del econtext['default'] else: econtext['default'] = _backup_default_35754928 _backup_default_35754064 = get('default', _marker) _value = None econtext['default'] = _value # <Expression u"repeat['i'].even()+repeat['i'].odd()" (4:30)> -> _attr_class try: _attr_class = (getitem('repeat')['i'].even() + getitem('repeat')['i'].odd()) except: rcontext.setdefault('__error__', []).append((u"repeat['i'].even()+repeat['i'].odd()", 4, 30, '<string>', _sys.exc_info()[1], )) raise if (_attr_class is None): pass else: if (_attr_class is False): _attr_class = None else: _tt = type(_attr_class) if ((_tt is int) or (_tt is float) or (_tt is long)): _attr_class = unicode(_attr_class) else: try: if (_tt is str): _attr_class = decode(_attr_class) else: if (_tt is not unicode): try: _attr_class = _attr_class.__html__ except: _attr_class = convert(_attr_class) else: raise RuntimeError except RuntimeError: _attr_class = _attr_class() else: if ((_attr_class is not None) and (re_needs_escape(_attr_class) is not None)): if ('&' in _attr_class): if (';' in _attr_class): _attr_class = re_amp.sub('&', _attr_class) else: _attr_class = _attr_class.replace('&', '&') if ('<' in _attr_class): _attr_class = _attr_class.replace('<', '<') if ('>' in _attr_class): _attr_class = _attr_class.replace('>', '>') if ('"' in _attr_class): _attr_class = _attr_class.replace('"', '"') if (_attr_class is not None): append((u' class="%s"' % _attr_class)) if (_backup_default_35754064 is _marker): del econtext['default'] else: econtext['default'] = _backup_default_35754064 append(u'>') _backup_default_35756584 = get('default', _marker) # <Marker name='default' at 254aed0> -> _value _value = _marker_default econtext['default'] = _value # <Expression u'i' (4:141)> -> _cache_39102928 try: _cache_39102928 = getitem('i') except: rcontext.setdefault('__error__', []).append((u'i', 4, 141, '<string>', _sys.exc_info()[1], )) raise # <Identity expression=<Expression u'i' (4:141)> value=<Marker name='default' at 254ab90> at 254aa50> -> _condition _expression = _cache_39102928 # <Marker name='default' at 254ab90> -> _value _value = _marker_default _condition = (_expression is _value) if _condition: _backup_attrs_35754712 = get('attrs', _marker) # <Static value=<_ast.Dict object at 0x254a8d0> name=None at 254a110> -> _value _value = _static_39102672 econtext['attrs'] = _value # <span ... (4:122) # -------------------------------------------------------- append(u'<span />') if (_backup_attrs_35754712 is _marker): del econtext['attrs'] else: econtext['attrs'] = _backup_attrs_35754712 else: _content = _cache_39102928 if (_content is None): pass else: if (_content is False): _content = None else: _tt = type(_content) if ((_tt is int) or (_tt is float) or (_tt is long)): _content = unicode(_content) else: try: if (_tt is str): _content = decode(_content) else: if (_tt is not unicode): try: _content = _content.__html__ except: _content = convert(_content) else: raise RuntimeError except RuntimeError: _content = _content() else: if ((_content is not None) and (re_needs_escape(_content) is not None)): if ('&' in _content): if (';' in _content): _content = re_amp.sub('&', _content) else: _content = _content.replace('&', '&') if ('<' in _content): _content = _content.replace('<', '<') if ('>' in _content): _content = _content.replace('>', '>') if ('\x00' in _content): _content = _content.replace('\x00', '"') if (_content is not None): append(_content) if (_backup_default_35756584 is _marker): del econtext['default'] else: econtext['default'] = _backup_default_35756584 append(u'</li>') if (_backup_attrs_35757664 is _marker): del econtext['attrs'] else: econtext['attrs'] = _backup_attrs_35757664 __index_39101072 -= 1 if (__index_39101072 > 0): append('\n ') if (_backup_i_35883472 is _marker): del econtext['i'] else: econtext['i'] = _backup_i_35883472 _content_139955154988272 = u'\n ' if (_content_139955154988272 is not None): append(_content_139955154988272) append(u'</ul>') if (_backup_attrs_39790784 is _marker): del econtext['attrs'] else: econtext['attrs'] = _backup_attrs_39790784 _content_139955154988272 = u'\n ' if (_content_139955154988272 is not None): append(_content_139955154988272) _backup_attrs_35754496 = get('attrs', _marker) # <Static value=<_ast.Dict object at 0x254aa10> name=None at 254ac90> -> _value _value = _static_39102992 econtext['attrs'] = _value # <ul ... (6:2) # -------------------------------------------------------- append(u'<ul>') _content_139955154988272 = u'\n ' if (_content_139955154988272 is not None): append(_content_139955154988272) _backup_i_40028112 = get('i', _marker) # <Expression u'range(3)' (8:22)> -> _iterator try: _iterator = get('range', range)(3) except: rcontext.setdefault('__error__', []).append((u'range(3)', 8, 22, '<string>', _sys.exc_info()[1], )) raise (_iterator, __index_38403088, ) = getitem('repeat')(u'i', _iterator) econtext['i'] = None for _item in _iterator: econtext['i'] = _item _backup_attrs_35756368 = get('attrs', _marker) # <Static value=<_ast.Dict object at 0x254add0> name=None at 254aad0> -> _value _value = _static_39103952 econtext['attrs'] = _value # <li ... (7:4) # -------------------------------------------------------- append(u'<li') _backup_default_35757088 = get('default', _marker) _value = None econtext['default'] = _value # <Expression u"repeat['i'].even+repeat['i'].odd" (7:30)> -> _attr_class try: _attr_class = (getitem('repeat')['i'].even + getitem('repeat')['i'].odd) except: rcontext.setdefault('__error__', []).append((u"repeat['i'].even+repeat['i'].odd", 7, 30, '<string>', _sys.exc_info()[1], )) raise if (_attr_class is None): pass else: if (_attr_class is False): _attr_class = None else: _tt = type(_attr_class) if ((_tt is int) or (_tt is float) or (_tt is long)): _attr_class = unicode(_attr_class) else: try: if (_tt is str): _attr_class = decode(_attr_class) else: if (_tt is not unicode): try: _attr_class = _attr_class.__html__ except: _attr_class = convert(_attr_class) else: raise RuntimeError except RuntimeError: _attr_class = _attr_class() else: if ((_attr_class is not None) and (re_needs_escape(_attr_class) is not None)): if ('&' in _attr_class): if (';' in _attr_class): _attr_class = re_amp.sub('&', _attr_class) else: _attr_class = _attr_class.replace('&', '&') if ('<' in _attr_class): _attr_class = _attr_class.replace('<', '<') if ('>' in _attr_class): _attr_class = _attr_class.replace('>', '>') if ('"' in _attr_class): _attr_class = _attr_class.replace('"', '"') if (_attr_class is not None): append((u' class="%s"' % _attr_class)) if (_backup_default_35757088 is _marker): del econtext['default'] else: econtext['default'] = _backup_default_35757088 append(u'>') _backup_default_36681632 = get('default', _marker) # <Marker name='default' at 2521fd0> -> _value _value = _marker_default econtext['default'] = _value # <Expression u'i' (8:51)> -> _cache_38935952 try: _cache_38935952 = getitem('i') except: rcontext.setdefault('__error__', []).append((u'i', 8, 51, '<string>', _sys.exc_info()[1], )) raise # <Identity expression=<Expression u'i' (8:51)> value=<Marker name='default' at 2521950> at 2521d10> -> _condition _expression = _cache_38935952 # <Marker name='default' at 2521950> -> _value _value = _marker_default _condition = (_expression is _value) if _condition: _backup_attrs_36679832 = get('attrs', _marker) # <Static value=<_ast.Dict object at 0x2521e90> name=None at 249f050> -> _value _value = _static_38936208 econtext['attrs'] = _value # <span ... (8:32) # -------------------------------------------------------- append(u'<span />') if (_backup_attrs_36679832 is _marker): del econtext['attrs'] else: econtext['attrs'] = _backup_attrs_36679832 else: _content = _cache_38935952 if (_content is None): pass else: if (_content is False): _content = None else: _tt = type(_content) if ((_tt is int) or (_tt is float) or (_tt is long)): _content = unicode(_content) else: try: if (_tt is str): _content = decode(_content) else: if (_tt is not unicode): try: _content = _content.__html__ except: _content = convert(_content) else: raise RuntimeError except RuntimeError: _content = _content() else: if ((_content is not None) and (re_needs_escape(_content) is not None)): if ('&' in _content): if (';' in _content): _content = re_amp.sub('&', _content) else: _content = _content.replace('&', '&') if ('<' in _content): _content = _content.replace('<', '<') if ('>' in _content): _content = _content.replace('>', '>') if ('\x00' in _content): _content = _content.replace('\x00', '"') if (_content is not None): append(_content) if (_backup_default_36681632 is _marker): del econtext['default'] else: econtext['default'] = _backup_default_36681632 append(u'</li>') if (_backup_attrs_35756368 is _marker): del econtext['attrs'] else: econtext['attrs'] = _backup_attrs_35756368 __index_38403088 -= 1 if (__index_38403088 > 0): append('\n ') if (_backup_i_40028112 is _marker): del econtext['i'] else: econtext['i'] = _backup_i_40028112 _content_139955154988272 = u'\n ' if (_content_139955154988272 is not None): append(_content_139955154988272) append(u'</ul>') if (_backup_attrs_35754496 is _marker): del econtext['attrs'] else: econtext['attrs'] = _backup_attrs_35754496 _content_139955154988272 = u'\n ' if (_content_139955154988272 is not None): append(_content_139955154988272) _backup_attrs_36680552 = get('attrs', _marker) # <Static value=<_ast.Dict object at 0x2521b10> name=None at 2521f90> -> _value _value = _static_38935312 econtext['attrs'] = _value # <ul ... (10:2) # -------------------------------------------------------- append(u'<ul>') _content_139955154988272 = u'\n ' if (_content_139955154988272 is not None): append(_content_139955154988272) _backup_i_35203664 = get('i', _marker) # <Expression u'range(3)' (11:22)> -> _iterator try: _iterator = get('range', range)(3) except: rcontext.setdefault('__error__', []).append((u'range(3)', 11, 22, '<string>', _sys.exc_info()[1], )) raise (_iterator, __index_38934352, ) = getitem('repeat')(u'i', _iterator) econtext['i'] = None for _item in _iterator: econtext['i'] = _item _backup_attrs_36746592 = get('attrs', _marker) # <Static value=<_ast.Dict object at 0x2521a10> name=None at 2521550> -> _value _value = _static_38935056 econtext['attrs'] = _value # <li ... (11:4) # -------------------------------------------------------- append(u'<li>') # <Expression u"repeat['i'].even" (11:53)> -> _condition try: _condition = getitem('repeat')['i'].even except: rcontext.setdefault('__error__', []).append((u"repeat['i'].even", 11, 53, '<string>', _sys.exc_info()[1], )) raise if _condition: _backup_default_39092096 = get('default', _marker) # <Marker name='default' at 2521150> -> _value _value = _marker_default econtext['default'] = _value # <Expression u"repeat['i'].even" (11:84)> -> _cache_38932752 try: _cache_38932752 = getitem('repeat')['i'].even except: rcontext.setdefault('__error__', []).append((u"repeat['i'].even", 11, 84, '<string>', _sys.exc_info()[1], )) raise # <Identity expression=<Expression u"repeat['i'].even" (11:84)> value=<Marker name='default' at 2521390> at 25214d0> -> _condition _expression = _cache_38932752 # <Marker name='default' at 2521390> -> _value _value = _marker_default _condition = (_expression is _value) if _condition: _backup_attrs_39088424 = get('attrs', _marker) # <Static value=<_ast.Dict object at 0x2521790> name=None at 25217d0> -> _value _value = _static_38934416 econtext['attrs'] = _value # <span ... (11:32) # -------------------------------------------------------- append(u'<span />') if (_backup_attrs_39088424 is _marker): del econtext['attrs'] else: econtext['attrs'] = _backup_attrs_39088424 else: _content = _cache_38932752 if (_content is None): pass else: if (_content is False): _content = None else: _tt = type(_content) if ((_tt is int) or (_tt is float) or (_tt is long)): _content = unicode(_content) else: try: if (_tt is str): _content = decode(_content) else: if (_tt is not unicode): try: _content = _content.__html__ except: _content = convert(_content) else: raise RuntimeError except RuntimeError: _content = _content() else: if ((_content is not None) and (re_needs_escape(_content) is not None)): if ('&' in _content): if (';' in _content): _content = re_amp.sub('&', _content) else: _content = _content.replace('&', '&') if ('<' in _content): _content = _content.replace('<', '<') if ('>' in _content): _content = _content.replace('>', '>') if ('\x00' in _content): _content = _content.replace('\x00', '"') if (_content is not None): append(_content) if (_backup_default_39092096 is _marker): del econtext['default'] else: econtext['default'] = _backup_default_39092096 # <Expression u"repeat['i'].odd" (11:125)> -> _condition try: _condition = getitem('repeat')['i'].odd except: rcontext.setdefault('__error__', []).append((u"repeat['i'].odd", 11, 125, '<string>', _sys.exc_info()[1], )) raise if _condition: _backup_default_39089000 = get('default', _marker) # <Marker name='default' at 262c590> -> _value _value = _marker_default econtext['default'] = _value # <Expression u"repeat['i'].odd" (11:155)> -> _cache_38936400 try: _cache_38936400 = getitem('repeat')['i'].odd except: rcontext.setdefault('__error__', []).append((u"repeat['i'].odd", 11, 155, '<string>', _sys.exc_info()[1], )) raise # <Identity expression=<Expression u"repeat['i'].odd" (11:155)> value=<Marker name='default' at 262c0d0> at 262c850> -> _condition _expression = _cache_38936400 # <Marker name='default' at 262c0d0> -> _value _value = _marker_default _condition = (_expression is _value) if _condition: _backup_attrs_39091592 = get('attrs', _marker) # <Static value=<_ast.Dict object at 0x25213d0> name=None at 2521050> -> _value _value = _static_38933456 econtext['attrs'] = _value # <span ... (11:104) # -------------------------------------------------------- append(u'<span />') if (_backup_attrs_39091592 is _marker): del econtext['attrs'] else: econtext['attrs'] = _backup_attrs_39091592 else: _content = _cache_38936400 if (_content is None): pass else: if (_content is False): _content = None else: _tt = type(_content) if ((_tt is int) or (_tt is float) or (_tt is long)): _content = unicode(_content) else: try: if (_tt is str): _content = decode(_content) else: if (_tt is not unicode): try: _content = _content.__html__ except: _content = convert(_content) else: raise RuntimeError except RuntimeError: _content = _content() else: if ((_content is not None) and (re_needs_escape(_content) is not None)): if ('&' in _content): if (';' in _content): _content = re_amp.sub('&', _content) else: _content = _content.replace('&', '&') if ('<' in _content): _content = _content.replace('<', '<') if ('>' in _content): _content = _content.replace('>', '>') if ('\x00' in _content): _content = _content.replace('\x00', '"') if (_content is not None): append(_content) if (_backup_default_39089000 is _marker): del econtext['default'] else: econtext['default'] = _backup_default_39089000 append(u'</li>') if (_backup_attrs_36746592 is _marker): del econtext['attrs'] else: econtext['attrs'] = _backup_attrs_36746592 __index_38934352 -= 1 if (__index_38934352 > 0): append('\n ') if (_backup_i_35203664 is _marker): del econtext['i'] else: econtext['i'] = _backup_i_35203664 _content_139955154988272 = u'\n ' if (_content_139955154988272 is not None): append(_content_139955154988272) append(u'</ul>') if (_backup_attrs_36680552 is _marker): del econtext['attrs'] else: econtext['attrs'] = _backup_attrs_36680552 _content_139955154988272 = u'\n' if (_content_139955154988272 is not None): append(_content_139955154988272) append(u'</div>') if (_backup_attrs_38631760 is _marker): del econtext['attrs'] else: econtext['attrs'] = _backup_attrs_38631760 _content_139955154988272 = u'\n' if (_content_139955154988272 is not None): append(_content_139955154988272)
def render_oil_wells(__stream, econtext, rcontext, __i18n_domain=None, __i18n_context=None): __append = __stream.append __re_amp = g_re_amp __token = None __re_needs_escape = g_re_needs_escape def __convert(target): if (target is None): return __tt = type(target) if ((__tt is int) or (__tt is float) or (__tt is int)): target = str(target) else: if (__tt is bytes): target = decode(target) else: if (__tt is not str): try: target = target.__html__ except AttributeError: __converted = convert(target) target = (str(target) if (target is __converted) else __converted) else: target = target() return target def __quote(target, quote, quote_entity, default, default_marker): if (target is None): return if (target is default_marker): return default __tt = type(target) if ((__tt is int) or (__tt is float) or (__tt is int)): target = str(target) else: if (__tt is bytes): target = decode(target) else: if (__tt is not str): try: target = target.__html__ except: __converted = convert(target) target = (str(target) if (target is __converted) else __converted) else: return target() if (target is not None): try: escape = (__re_needs_escape(target) is not None) except TypeError: pass else: if escape: if ('&' in target): target = target.replace('&', '&') if ('<' in target): target = target.replace('<', '<') if ('>' in target): target = target.replace('>', '>') if ((quote is not None) and (quote in target)): target = target.replace(quote, quote_entity) return target translate = econtext['__translate'] decode = econtext['__decode'] convert = econtext['__convert'] on_error_handler = econtext['__on_error_handler'] try: getitem = econtext.__getitem__ get = econtext.get __append('\n ') # <Interpolation value=<Substitution "\n switch (FEAT_INDUSTRYTILES, SELF, ${tile.id}_stop_anim, animation_frame) {\n 1: return 11; // jump to the 'stop animation cycle' when triggered and currently animated\n 2: return 12;\n 3: return 13;\n 4: return 14;\n 5: return 15;\n 6: return 16;\n 7: return 17;\n 8: return 18;\n 9: return 19;\n 10: return 20;\n return CB_RESULT_DO_NOTHING;\n }\n\n switch (FEAT_INDUSTRYTILES, SELF, ${tile.id}_start_anim, animation_frame) {\n 11: return 1;\n 12: return 2;\n 13: return 3;\n 14: return 4;\n 15: return 5;\n 16: return 6;\n 17: return 7;\n 18: return 8;\n 19: return 9;\n 20: return 10;\n return CB_RESULT_START_ANIMATION;\n }\n\n random_switch (FEAT_INDUSTRYTILES, SELF, ${tile.id}_anim_control, bitmask(TRIGGER_INDUSTRYTILE_TILELOOP)) {\n 1: return ${tile.id}_stop_anim;\n 1: return ${tile.id}_start_anim;\n }\n\n switch (FEAT_INDUSTRYTILES, SELF, ${tile.custom_animation_next_frame}, animation_frame) {\n 10: return 1;\n 11: return CB_RESULT_STOP_ANIMATION; // Don't actually stop animation, just keep looping the same frame over and over.\n 20: return 11;\n return CB_RESULT_NEXT_FRAME;\n }\n" (48:74)> braces_required=True translation=False at 7f3733dd99e8> -> __content_139875089167952 __token = 2283 __token = 2319 __content_139875089167952 = _lookup_attr(getitem('tile'), 'id') __content_139875089167952 = __quote(__content_139875089167952, '\x00', '�', None, False) __token = 2739 __content_139875089167952_2737 = _lookup_attr( getitem('tile'), 'id') __content_139875089167952_2737 = __quote( __content_139875089167952_2737, '\x00', '�', None, False) __token = 3096 __content_139875089167952_3094 = _lookup_attr( getitem('tile'), 'id') __content_139875089167952_3094 = __quote( __content_139875089167952_3094, '\x00', '�', None, False) __token = 3181 __content_139875089167952_3179 = _lookup_attr( getitem('tile'), 'id') __content_139875089167952_3179 = __quote( __content_139875089167952_3179, '\x00', '�', None, False) __token = 3221 __content_139875089167952_3219 = _lookup_attr( getitem('tile'), 'id') __content_139875089167952_3219 = __quote( __content_139875089167952_3219, '\x00', '�', None, False) __token = 3289 __content_139875089167952_3287 = _lookup_attr( getitem('tile'), 'custom_animation_next_frame') __content_139875089167952_3287 = __quote( __content_139875089167952_3287, '\x00', '�', None, False) __content_139875089167952 = ('%s%s%s%s%s%s%s%s%s%s%s%s%s' % ( '\n switch (FEAT_INDUSTRYTILES, SELF, ', (__content_139875089167952 if (__content_139875089167952 is not None) else ''), "_stop_anim, animation_frame) {\n 1: return 11; // jump to the 'stop animation cycle' when triggered and currently animated\n 2: return 12;\n 3: return 13;\n 4: return 14;\n 5: return 15;\n 6: return 16;\n 7: return 17;\n 8: return 18;\n 9: return 19;\n 10: return 20;\n return CB_RESULT_DO_NOTHING;\n }\n\n switch (FEAT_INDUSTRYTILES, SELF, ", (__content_139875089167952_2737 if (__content_139875089167952_2737 is not None) else ''), '_start_anim, animation_frame) {\n 11: return 1;\n 12: return 2;\n 13: return 3;\n 14: return 4;\n 15: return 5;\n 16: return 6;\n 17: return 7;\n 18: return 8;\n 19: return 9;\n 20: return 10;\n return CB_RESULT_START_ANIMATION;\n }\n\n random_switch (FEAT_INDUSTRYTILES, SELF, ', (__content_139875089167952_3094 if (__content_139875089167952_3094 is not None) else ''), '_anim_control, bitmask(TRIGGER_INDUSTRYTILE_TILELOOP)) {\n 1: return ', (__content_139875089167952_3179 if (__content_139875089167952_3179 is not None) else ''), '_stop_anim;\n 1: return ', (__content_139875089167952_3219 if (__content_139875089167952_3219 is not None) else ''), '_start_anim;\n }\n\n switch (FEAT_INDUSTRYTILES, SELF, ', (__content_139875089167952_3287 if (__content_139875089167952_3287 is not None) else ''), ", animation_frame) {\n 10: return 1;\n 11: return CB_RESULT_STOP_ANIMATION; // Don't actually stop animation, just keep looping the same frame over and over.\n 20: return 11;\n return CB_RESULT_NEXT_FRAME;\n }\n", )) if (__content_139875089167952 is None): pass else: if (__content_139875089167952 is False): __content_139875089167952 = None else: __tt = type(__content_139875089167952) if ((__tt is int) or (__tt is float) or (__tt is int)): __content_139875089167952 = str( __content_139875089167952) else: if (__tt is bytes): __content_139875089167952 = decode( __content_139875089167952) else: if (__tt is not str): try: __content_139875089167952 = __content_139875089167952.__html__ except get('AttributeError', AttributeError): __converted = convert( __content_139875089167952) __content_139875089167952 = ( str(__content_139875089167952) if (__content_139875089167952 is __converted) else __converted) else: __content_139875089167952 = __content_139875089167952( ) if (__content_139875089167952 is not None): __append(__content_139875089167952) except: if (__token is not None): rcontext.setdefault('__error__', []).append( (__tokens[__token] + ( __filename, _exc_info()[1], ))) raise
def render(__stream, econtext, rcontext, __i18n_domain=None, __i18n_context=None): __append = __stream.append __re_amp = g_re_amp __token = None __re_needs_escape = g_re_needs_escape def __convert(target): if (target is None): return __tt = type(target) if ((__tt is int) or (__tt is float) or (__tt is int)): target = str(target) else: if (__tt is bytes): target = decode(target) else: if (__tt is not str): try: target = target.__html__ except AttributeError: __converted = convert(target) target = (str(target) if (target is __converted) else __converted) else: target = target() return target def __quote(target, quote, quote_entity, default, default_marker): if (target is None): return if (target is default_marker): return default __tt = type(target) if ((__tt is int) or (__tt is float) or (__tt is int)): target = str(target) else: if (__tt is bytes): target = decode(target) else: if (__tt is not str): try: target = target.__html__ except: __converted = convert(target) target = (str(target) if (target is __converted) else __converted) else: return target() if (target is not None): try: escape = (__re_needs_escape(target) is not None) except TypeError: pass else: if escape: if ('&' in target): target = target.replace('&', '&') if ('<' in target): target = target.replace('<', '<') if ('>' in target): target = target.replace('>', '>') if ((quote is not None) and (quote in target)): target = target.replace(quote, quote_entity) return target translate = econtext['__translate'] decode = econtext['__decode'] convert = econtext['__convert'] on_error_handler = econtext['__on_error_handler'] try: getitem = econtext.__getitem__ get = econtext.get __append( '/* Primary production which is boosted by supplies */\n\n') __backup_perm_storage_139703105636280 = get( 'perm_storage', __marker) # <Value 'industry.perm_storage' (3:32)> -> __value __token = 87 __value = _lookup_attr(getitem('industry'), 'perm_storage') econtext['perm_storage'] = __value # <Interpolation value=<Substitution '\n produce(${industry.id}_production, 9999, 9999, 9999, 0, 0, 0);\n\n switch(FEAT_INDUSTRIES, SELF, ${industry.id}_produce, STORE_PERM(waiting_cargo_1 + waiting_cargo_2 + waiting_cargo_3 + LOAD_PERM(${perm_storage.var_num_supplies_delivered}), ${perm_storage.var_num_supplies_delivered})) {\n ${industry.id}_production;\n }\n\n produce(${industry.id}_production_256, 0, 0, 0, LOAD_TEMP(9) * production_rate_1 / 100, LOAD_TEMP(9) * production_rate_2 / 100, 0);\n\n switch(FEAT_INDUSTRIES, SELF, ${industry.id}_produce_256_ticks,\n [STORE_TEMP(\n LOAD_PERM(${perm_storage.var_num_supplies_delivered}) +\n LOAD_PERM(${perm_storage.var_num_supplies_delivered_last}) +\n LOAD_PERM(${perm_storage.var_num_supplies_delivered_bef_last}),\n 8),\n STORE_TEMP((LOAD_TEMP(8) >= (${industry.supply_requirements[2]} * primary_level2_requirement)) ? primary_level2_bonus :\n (LOAD_TEMP(8) >= (${industry.supply_requirements[2]} * primary_level1_requirement)) ? primary_level1_bonus : 0, 9),\n STORE_PERM(LOAD_TEMP(9), ${perm_storage.var_current_supplies_prod_factor})\n ]) {\n ${industry.id}_production_256;\n }\n' (3:55)> braces_required=True translation=False at 7f0f29f9c6d8> -> __content_139703124559104 __token = 115 __token = 125 __content_139703124559104 = _lookup_attr(getitem('industry'), 'id') __content_139703124559104 = __quote(__content_139703124559104, '\x00', '�', None, False) __token = 215 __content_139703124559104_213 = _lookup_attr( getitem('industry'), 'id') __content_139703124559104_213 = __quote( __content_139703124559104_213, '\x00', '�', None, False) __token = 314 __content_139703124559104_312 = _lookup_attr( getitem('perm_storage'), 'var_num_supplies_delivered') __content_139703124559104_312 = __quote( __content_139703124559104_312, '\x00', '�', None, False) __token = 359 __content_139703124559104_357 = _lookup_attr( getitem('perm_storage'), 'var_num_supplies_delivered') __content_139703124559104_357 = __quote( __content_139703124559104_357, '\x00', '�', None, False) __token = 414 __content_139703124559104_412 = _lookup_attr( getitem('industry'), 'id') __content_139703124559104_412 = __quote( __content_139703124559104_412, '\x00', '�', None, False) __token = 460 __content_139703124559104_458 = _lookup_attr( getitem('industry'), 'id') __content_139703124559104_458 = __quote( __content_139703124559104_458, '\x00', '�', None, False) __token = 619 __content_139703124559104_617 = _lookup_attr( getitem('industry'), 'id') __content_139703124559104_617 = __quote( __content_139703124559104_617, '\x00', '�', None, False) __token = 704 __content_139703124559104_702 = _lookup_attr( getitem('perm_storage'), 'var_num_supplies_delivered') __content_139703124559104_702 = __quote( __content_139703124559104_702, '\x00', '�', None, False) __token = 776 __content_139703124559104_774 = _lookup_attr( getitem('perm_storage'), 'var_num_supplies_delivered_last') __content_139703124559104_774 = __quote( __content_139703124559104_774, '\x00', '�', None, False) __token = 853 __content_139703124559104_851 = _lookup_attr( getitem('perm_storage'), 'var_num_supplies_delivered_bef_last') __content_139703124559104_851 = __quote( __content_139703124559104_851, '\x00', '�', None, False) __token = 964 __content_139703124559104_962 = _lookup_attr( getitem('industry'), 'supply_requirements')[2] __content_139703124559104_962 = __quote( __content_139703124559104_962, '\x00', '�', None, False) __token = 1096 __content_139703124559104_1094 = _lookup_attr( getitem('industry'), 'supply_requirements')[2] __content_139703124559104_1094 = __quote( __content_139703124559104_1094, '\x00', '�', None, False) __token = 1231 __content_139703124559104_1229 = _lookup_attr( getitem('perm_storage'), 'var_current_supplies_prod_factor') __content_139703124559104_1229 = __quote( __content_139703124559104_1229, '\x00', '�', None, False) __token = 1306 __content_139703124559104_1304 = _lookup_attr( getitem('industry'), 'id') __content_139703124559104_1304 = __quote( __content_139703124559104_1304, '\x00', '�', None, False) __content_139703124559104 = ( '%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s' % ( '\n produce(', (__content_139703124559104 if (__content_139703124559104 is not None) else ''), '_production, 9999, 9999, 9999, 0, 0, 0);\n\n switch(FEAT_INDUSTRIES, SELF, ', (__content_139703124559104_213 if (__content_139703124559104_213 is not None) else ''), '_produce, STORE_PERM(waiting_cargo_1 + waiting_cargo_2 + waiting_cargo_3 + LOAD_PERM(', (__content_139703124559104_312 if (__content_139703124559104_312 is not None) else ''), '), ', (__content_139703124559104_357 if (__content_139703124559104_357 is not None) else ''), ')) {\n ', (__content_139703124559104_412 if (__content_139703124559104_412 is not None) else ''), '_production;\n }\n\n produce(', (__content_139703124559104_458 if (__content_139703124559104_458 is not None) else ''), '_production_256, 0, 0, 0, LOAD_TEMP(9) * production_rate_1 / 100, LOAD_TEMP(9) * production_rate_2 / 100, 0);\n\n switch(FEAT_INDUSTRIES, SELF, ', (__content_139703124559104_617 if (__content_139703124559104_617 is not None) else ''), '_produce_256_ticks,\n [STORE_TEMP(\n LOAD_PERM(', (__content_139703124559104_702 if (__content_139703124559104_702 is not None) else ''), ') +\n LOAD_PERM(', (__content_139703124559104_774 if (__content_139703124559104_774 is not None) else ''), ') +\n LOAD_PERM(', (__content_139703124559104_851 if (__content_139703124559104_851 is not None) else ''), '),\n 8),\n STORE_TEMP((LOAD_TEMP(8) >= (', (__content_139703124559104_962 if (__content_139703124559104_962 is not None) else ''), ' * primary_level2_requirement)) ? primary_level2_bonus :\n (LOAD_TEMP(8) >= (', (__content_139703124559104_1094 if (__content_139703124559104_1094 is not None) else ''), ' * primary_level1_requirement)) ? primary_level1_bonus : 0, 9),\n STORE_PERM(LOAD_TEMP(9), ', (__content_139703124559104_1229 if (__content_139703124559104_1229 is not None) else ''), ')\n ]) {\n ', (__content_139703124559104_1304 if (__content_139703124559104_1304 is not None) else ''), '_production_256;\n }\n', )) if (__content_139703124559104 is None): pass else: if (__content_139703124559104 is False): __content_139703124559104 = None else: __tt = type(__content_139703124559104) if ((__tt is int) or (__tt is float) or (__tt is int)): __content_139703124559104 = str( __content_139703124559104) else: if (__tt is bytes): __content_139703124559104 = decode( __content_139703124559104) else: if (__tt is not str): try: __content_139703124559104 = __content_139703124559104.__html__ except get('AttributeError', AttributeError): __converted = convert( __content_139703124559104) __content_139703124559104 = ( str(__content_139703124559104) if (__content_139703124559104 is __converted) else __converted) else: __content_139703124559104 = __content_139703124559104( ) if (__content_139703124559104 is not None): __append(__content_139703124559104) if (__backup_perm_storage_139703105636280 is __marker): del econtext['perm_storage'] else: econtext[ 'perm_storage'] = __backup_perm_storage_139703105636280 __append('\n') except: if (__token is not None): rcontext.setdefault('__error__', []).append( (__tokens[__token] + ( __filename, _exc_info()[1], ))) raise
def render(__stream, econtext, rcontext, __i18n_domain=None, __i18n_context=None): __append = __stream.append __re_amp = g_re_amp __token = None __re_needs_escape = g_re_needs_escape def __convert(target): if (target is None): return __tt = type(target) if ((__tt is int) or (__tt is float) or (__tt is int)): target = str(target) else: if (__tt is bytes): target = decode(target) else: if (__tt is not str): try: target = target.__html__ except AttributeError: __converted = convert(target) target = (str(target) if (target is __converted) else __converted) else: target = target() return target def __quote(target, quote, quote_entity, default, default_marker): if (target is None): return if (target is default_marker): return default __tt = type(target) if ((__tt is int) or (__tt is float) or (__tt is int)): target = str(target) else: if (__tt is bytes): target = decode(target) else: if (__tt is not str): try: target = target.__html__ except: __converted = convert(target) target = (str(target) if (target is __converted) else __converted) else: return target() if (target is not None): try: escape = (__re_needs_escape(target) is not None) except TypeError: pass else: if escape: if ('&' in target): target = target.replace('&', '&') if ('<' in target): target = target.replace('<', '<') if ('>' in target): target = target.replace('>', '>') if ((quote is not None) and (quote in target)): target = target.replace(quote, quote_entity) return target translate = econtext['__translate'] decode = econtext['__decode'] convert = econtext['__convert'] on_error_handler = econtext['__on_error_handler'] try: getitem = econtext.__getitem__ get = econtext.get __append('cargotable {\n ') __backup_cargo_140183257305040 = get('cargo', __marker) # <Value 'registered_cargos' (2:41)> -> __iterator __token = 54 __iterator = getitem('registered_cargos') (__iterator, ____index_140183231372872, ) = getitem('repeat')('cargo', __iterator) econtext['cargo'] = None for __item in __iterator: econtext['cargo'] = __item # <Interpolation value=<Substitution '\n ${cargo.cargo_label},\n ' (2:60)> braces_required=True translation=False at 7f7ef3b59c50> -> __content_140183249773656 __token = 82 __token = 84 __content_140183249773656 = _lookup_attr(getitem('cargo'), 'cargo_label') __content_140183249773656 = __quote(__content_140183249773656, '\x00', '�', None, False) __content_140183249773656 = ('%s%s%s' % ('\n ', (__content_140183249773656 if (__content_140183249773656 is not None) else ''), ',\n ', )) if (__content_140183249773656 is None): pass else: if (__content_140183249773656 is False): __content_140183249773656 = None else: __tt = type(__content_140183249773656) if ((__tt is int) or (__tt is float) or (__tt is int)): __content_140183249773656 = str(__content_140183249773656) else: if (__tt is bytes): __content_140183249773656 = decode(__content_140183249773656) else: if (__tt is not str): try: __content_140183249773656 = __content_140183249773656.__html__ except get('AttributeError', AttributeError): __converted = convert(__content_140183249773656) __content_140183249773656 = (str(__content_140183249773656) if (__content_140183249773656 is __converted) else __converted) else: __content_140183249773656 = __content_140183249773656() if (__content_140183249773656 is not None): __append(__content_140183249773656) ____index_140183231372872 -= 1 if (____index_140183231372872 > 0): __append('') if (__backup_cargo_140183257305040 is __marker): del econtext['cargo'] else: econtext['cargo'] = __backup_cargo_140183257305040 __append('\n}\n\n') __append('\ndisable_item(FEAT_CARGOS, 0, 29);\n') __append('\ndisable_item(FEAT_CARGOS, 31, 31);\n\n') __backup_cargo_140183257335176 = get('cargo', __marker) # <Value 'registered_cargos' (12:26)> -> __iterator __token = 411 __iterator = getitem('registered_cargos') (__iterator, ____index_140183231370016, ) = getitem('repeat')('cargo', __iterator) econtext['cargo'] = None for __item in __iterator: econtext['cargo'] = __item # <Interpolation value=<Substitution '\n spriteset(cargoicon_${cargo.id}) {\n [10 + 20 * ${cargo.icon_indices[0]}, 10 + 20 * ${cargo.icon_indices[1]}, 10, 10, 0, 0, ${"ANIM," if cargo.allow_animated_pixels else None} "src/graphics/other/cargoicons.png"]\n }\n\n\n ' (12:45)> braces_required=True translation=False at 7f7ef3b59550> -> __content_140183249773656 __token = 435 __token = 457 __content_140183249773656 = _lookup_attr(getitem('cargo'), 'id') __content_140183249773656 = __quote(__content_140183249773656, '\x00', '�', None, False) __token = 491 __content_140183249773656_489 = _lookup_attr(getitem('cargo'), 'icon_indices')[0] __content_140183249773656_489 = __quote(__content_140183249773656_489, '\x00', '�', None, False) __token = 527 __content_140183249773656_525 = _lookup_attr(getitem('cargo'), 'icon_indices')[1] __content_140183249773656_525 = __quote(__content_140183249773656_525, '\x00', '�', None, False) __token = 567 __content_140183249773656_565 = ('ANIM,' if _lookup_attr(getitem('cargo'), 'allow_animated_pixels') else None) __content_140183249773656_565 = __quote(__content_140183249773656_565, '\x00', '�', None, False) __content_140183249773656 = ('%s%s%s%s%s%s%s%s%s' % ('\n spriteset(cargoicon_', (__content_140183249773656 if (__content_140183249773656 is not None) else ''), ') {\n [10 + 20 * ', (__content_140183249773656_489 if (__content_140183249773656_489 is not None) else ''), ', 10 + 20 * ', (__content_140183249773656_525 if (__content_140183249773656_525 is not None) else ''), ', 10, 10, 0, 0, ', (__content_140183249773656_565 if (__content_140183249773656_565 is not None) else ''), ' "src/graphics/other/cargoicons.png"]\n }\n\n\n ', )) if (__content_140183249773656 is None): pass else: if (__content_140183249773656 is False): __content_140183249773656 = None else: __tt = type(__content_140183249773656) if ((__tt is int) or (__tt is float) or (__tt is int)): __content_140183249773656 = str(__content_140183249773656) else: if (__tt is bytes): __content_140183249773656 = decode(__content_140183249773656) else: if (__tt is not str): try: __content_140183249773656 = __content_140183249773656.__html__ except get('AttributeError', AttributeError): __converted = convert(__content_140183249773656) __content_140183249773656 = (str(__content_140183249773656) if (__content_140183249773656 is __converted) else __converted) else: __content_140183249773656 = __content_140183249773656() if (__content_140183249773656 is not None): __append(__content_140183249773656) __backup_economy_140183257338376 = get('economy', __marker) # <Value 'economies' (18:35)> -> __iterator __token = 697 __iterator = getitem('economies') (__iterator, ____index_140183231372592, ) = getitem('repeat')('economy', __iterator) econtext['economy'] = None for __item in __iterator: econtext['economy'] = __item __append('\n ') # <Value 'cargo.id in economy.cargos' (19:36)> -> __condition __token = 745 __condition = (_lookup_attr(getitem('cargo'), 'id') in _lookup_attr(getitem('economy'), 'cargos')) if __condition: # <Interpolation value=<Substitution '\n if (economy==${economy.numeric_id}) {\n ' (19:64)> braces_required=True translation=False at 7f7ef3b59d68> -> __content_140183249773656 __token = 786 __token = 801 __content_140183249773656 = _lookup_attr(getitem('economy'), 'numeric_id') __content_140183249773656 = __quote(__content_140183249773656, '\x00', '�', None, False) __content_140183249773656 = ('%s%s%s' % ('\n if (economy==', (__content_140183249773656 if (__content_140183249773656 is not None) else ''), ') {\n ', )) if (__content_140183249773656 is None): pass else: if (__content_140183249773656 is False): __content_140183249773656 = None else: __tt = type(__content_140183249773656) if ((__tt is int) or (__tt is float) or (__tt is int)): __content_140183249773656 = str(__content_140183249773656) else: if (__tt is bytes): __content_140183249773656 = decode(__content_140183249773656) else: if (__tt is not str): try: __content_140183249773656 = __content_140183249773656.__html__ except get('AttributeError', AttributeError): __converted = convert(__content_140183249773656) __content_140183249773656 = (str(__content_140183249773656) if (__content_140183249773656 is __converted) else __converted) else: __content_140183249773656 = __content_140183249773656() if (__content_140183249773656 is not None): __append(__content_140183249773656) __backup_macroname_140183230642312 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7f7ef3b59f60> name=None at 7f7ef3b59c88> -> __value __value = _static_140183231373152 econtext['macroname'] = __value # <Value 'load: cargo_props.pynml' (21:46)> -> __macro __token = 870 __macro = ' cargo_props.pynml' __macro = __loader(__macro) __token = 870 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_140183230642312 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_140183230642312 __append('\n }\n ') __append('\n ') ____index_140183231372592 -= 1 if (____index_140183231372592 > 0): __append('') if (__backup_economy_140183257338376 is __marker): del econtext['economy'] else: econtext['economy'] = __backup_economy_140183257338376 __append('\n') ____index_140183231370016 -= 1 if (____index_140183231370016 > 0): __append('') if (__backup_cargo_140183257335176 is __marker): del econtext['cargo'] else: econtext['cargo'] = __backup_cargo_140183257335176 __append('\n') except: if (__token is not None): rcontext.setdefault('__error__', []).append((__tokens[__token] + (__filename, _exc_info()[1], ))) raise
def render(__stream, econtext, rcontext, __i18n_domain=None, __i18n_context=None): __append = __stream.append __re_amp = g_re_amp __token = None __re_needs_escape = g_re_needs_escape def __convert(target): if (target is None): return __tt = type(target) if ((__tt is int) or (__tt is float) or (__tt is int)): target = str(target) else: if (__tt is bytes): target = decode(target) else: if (__tt is not str): try: target = target.__html__ except AttributeError: __converted = convert(target) target = (str(target) if (target is __converted) else __converted) else: target = target() return target def __quote(target, quote, quote_entity, default, default_marker): if (target is None): return if (target is default_marker): return default __tt = type(target) if ((__tt is int) or (__tt is float) or (__tt is int)): target = str(target) else: if (__tt is bytes): target = decode(target) else: if (__tt is not str): try: target = target.__html__ except: __converted = convert(target) target = (str(target) if (target is __converted) else __converted) else: return target() if (target is not None): try: escape = (__re_needs_escape(target) is not None) except TypeError: pass else: if escape: if ('&' in target): target = target.replace('&', '&') if ('<' in target): target = target.replace('<', '<') if ('>' in target): target = target.replace('>', '>') if ((quote is not None) and (quote in target)): target = target.replace(quote, quote_entity) return target translate = econtext['__translate'] decode = econtext['__decode'] convert = econtext['__convert'] on_error_handler = econtext['__on_error_handler'] try: getitem = econtext.__getitem__ get = econtext.get __append( '/* ******************************************************************\n * Definition of the industry tile, its callbacks, and graphics chain\n * ******************************************************************/\n\n' ) __backup_macroname_140383636976776 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7fad9cb5a908> name=None at 7fad9cb5a470> -> __value __value = _static_140383635220744 econtext['macroname'] = __value # <Value 'load: spritesets.pynml' (5:30)> -> __macro __token = 242 __macro = ' spritesets.pynml' __macro = __loader(__macro) __token = 242 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_140383636976776 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_140383636976776 __append('\n\n') __backup_macroname_140383636979592 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7fad9cb5af28> name=None at 7fad9cb5a208> -> __value __value = _static_140383635222312 econtext['macroname'] = __value # <Value 'load: spritelayouts.pynml' (7:30)> -> __macro __token = 300 __macro = ' spritelayouts.pynml' __macro = __loader(__macro) __token = 300 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_140383636979592 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_140383636979592 __append('\n\n') __backup_macroname_140383636975688 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7fad9cb5a780> name=None at 7fad9cb5add8> -> __value __value = _static_140383635220352 econtext['macroname'] = __value # <Value 'load: graphics_switches.pynml' (9:30)> -> __macro __token = 361 __macro = ' graphics_switches.pynml' __macro = __loader(__macro) __token = 361 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_140383636975688 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_140383636975688 __append('\n\n') __backup_location_checks_tile_140383635304576 = get( 'location_checks_tile', __marker) # <Value 'load: location_check_macros_tile.pynml' (11:42)> -> __value __token = 438 __value = ' location_check_macros_tile.pynml' __value = __loader(__value) econtext['location_checks_tile'] = __value __backup_macroname_140383636976392 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7fad9cb5a9b0> name=None at 7fad9cb5a668> -> __value __value = _static_140383635220912 econtext['macroname'] = __value # <Value "location_checks_tile.macros['render_tree']" (12:30)> -> __macro __token = 508 __macro = _lookup_attr(getitem('location_checks_tile'), 'macros')['render_tree'] __token = 508 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_140383636976392 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_140383636976392 if (__backup_location_checks_tile_140383635304576 is __marker): del econtext['location_checks_tile'] else: econtext[ 'location_checks_tile'] = __backup_location_checks_tile_140383635304576 __append('\n\n') __backup_animation_macros_140383636916712 = get( 'animation_macros', __marker) # <Value 'load: animation_macros.pynml' (14:38)> -> __value __token = 594 __value = ' animation_macros.pynml' __value = __loader(__value) econtext['animation_macros'] = __value __backup_macroname_140383636021640 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7fad9cb5ada0> name=None at 7fad9cb5a240> -> __value __value = _static_140383635221920 econtext['macroname'] = __value # <Value "animation_macros.macros['tile_animation']" (15:30)> -> __macro __token = 654 __macro = _lookup_attr(getitem('animation_macros'), 'macros')['tile_animation'] __token = 654 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_140383636021640 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_140383636021640 if (__backup_animation_macros_140383636916712 is __marker): del econtext['animation_macros'] else: econtext[ 'animation_macros'] = __backup_animation_macros_140383636916712 __append('\n\n') __backup_macroname_140383636025096 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7fad9caddf60> name=None at 7fad9cadd6a0> -> __value __value = _static_140383634710368 econtext['macroname'] = __value # <Value 'load: properties_tile.pynml' (17:30)> -> __macro __token = 731 __macro = ' properties_tile.pynml' __macro = __loader(__macro) __token = 731 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_140383636025096 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_140383636025096 __append( '\n\n\n/* *************************************************\n * Definition of the industry\n * *************************************************/\n\n' ) __backup_macroname_140383636025032 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7fad9caddc18> name=None at 7fad9cadd6d8> -> __value __value = _static_140383634709528 econtext['macroname'] = __value # <Value 'load: layouts.pynml' (24:30)> -> __macro __token = 933 __macro = ' layouts.pynml' __macro = __loader(__macro) __token = 933 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_140383636025032 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_140383636025032 __append('\n\n') __backup_macroname_140383636024136 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7fad9caddbe0> name=None at 7fad9cadd748> -> __value __value = _static_140383634709472 econtext['macroname'] = __value # <Value 'load: extra_text_primary.pynml' (26:30)> -> __macro __token = 988 __macro = ' extra_text_primary.pynml' __macro = __loader(__macro) __token = 988 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_140383636024136 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_140383636024136 __append('\n\n') __backup_macroname_140383640021832 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7fad9cadd358> name=None at 7fad9cadd898> -> __value __value = _static_140383634707288 econtext['macroname'] = __value # <Value 'load: produce_primary.pynml' (28:30)> -> __macro __token = 1054 __macro = ' produce_primary.pynml' __macro = __loader(__macro) __token = 1054 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_140383640021832 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_140383640021832 __append('\n\n') __backup_macroname_140383636023816 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7fad9cadd7f0> name=None at 7fad9cadda90> -> __value __value = _static_140383634708464 econtext['macroname'] = __value # <Value 'load: check_primary_supplies_delivered.pynml' (30:30)> -> __macro __token = 1117 __macro = ' check_primary_supplies_delivered.pynml' __macro = __loader(__macro) __token = 1117 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_140383636023816 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_140383636023816 __append('\n\n') __backup_macroname_140383634541960 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7fad9cadd5c0> name=None at 7fad9caddd30> -> __value __value = _static_140383634707904 econtext['macroname'] = __value # <Value 'load: availability.pynml' (32:30)> -> __macro __token = 1197 __macro = ' availability.pynml' __macro = __loader(__macro) __token = 1197 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_140383634541960 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_140383634541960 __append('\n\n') __backup_location_checks_industry_140383636914416 = get( 'location_checks_industry', __marker) # <Value 'load: location_check_macros_industry.pynml' (34:46)> -> __value __token = 1273 __value = ' location_check_macros_industry.pynml' __value = __loader(__value) econtext['location_checks_industry'] = __value __backup_macroname_140383635892872 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7fad9cadde10> name=None at 7fad9cadd320> -> __value __value = _static_140383634710032 econtext['macroname'] = __value # <Value "location_checks_industry.macros['render_tree']" (35:30)> -> __macro __token = 1347 __macro = _lookup_attr(getitem('location_checks_industry'), 'macros')['render_tree'] __token = 1347 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_140383635892872 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_140383635892872 if (__backup_location_checks_industry_140383636914416 is __marker): del econtext['location_checks_industry'] else: econtext[ 'location_checks_industry'] = __backup_location_checks_industry_140383636914416 __append('\n\n') __backup_macroname_140383636342216 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7fad9cadd588> name=None at 7fad9cadd4a8> -> __value __value = _static_140383634707848 econtext['macroname'] = __value # <Value 'load: properties_industry.pynml' (37:30)> -> __macro __token = 1429 __macro = ' properties_industry.pynml' __macro = __loader(__macro) __token = 1429 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_140383636342216 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_140383636342216 __append('\n\n') __append('\n') __backup_economy_140383636914640 = get('economy', __marker) # <Value 'economies' (40:37)> -> __iterator __token = 1613 __iterator = getitem('economies') ( __iterator, ____index_140383637128920, ) = getitem('repeat')('economy', __iterator) econtext['economy'] = None for __item in __iterator: econtext['economy'] = __item __append('\n ') # <Value "industry.get_property('enabled', economy) == True" (41:39)> -> __condition __token = 1664 __condition = (_lookup_attr( getitem('industry'), 'get_property')('enabled', getitem('economy')) == True) if __condition: # <Interpolation value=<Substitution '\n if (economy==${economy.numeric_id}) {\n item(FEAT_INDUSTRIES, ${industry.id}, ${industry.numeric_id}) {\n graphics {\n construction_probability: ${industry.id}_check_availability;\n build_prod_change: randomise_primary_production_on_build;\n produce_cargo_arrival: ${industry.id}_produce;\n produce_256_ticks: ${industry.id}_produce_256_ticks;\n monthly_prod_change: ${industry.id}_monthly_update;\n random_prod_change: return CB_RESULT_IND_PROD_NO_CHANGE;\n location_check: ${industry.id}_check_location;\n extra_text_fund: ${industry.get_extra_text_fund(economy)};\n extra_text_industry: ${industry.id}_extra_text;\n cargo_subtype_display: ${industry.id}_cargo_subtype_display;\n colour: switch_colour;\n }\n }\n }\n ' (41:90)> braces_required=True translation=False at 7fad9cd2c470> -> __content_140383655711776 __token = 1724 __token = 1739 __content_140383655711776 = _lookup_attr( getitem('economy'), 'numeric_id') __content_140383655711776 = __quote( __content_140383655711776, '\x00', '�', None, False) __token = 1798 __content_140383655711776_1796 = _lookup_attr( getitem('industry'), 'id') __content_140383655711776_1796 = __quote( __content_140383655711776_1796, '\x00', '�', None, False) __token = 1814 __content_140383655711776_1812 = _lookup_attr( getitem('industry'), 'numeric_id') __content_140383655711776_1812 = __quote( __content_140383655711776_1812, '\x00', '�', None, False) __token = 1913 __content_140383655711776_1911 = _lookup_attr( getitem('industry'), 'id') __content_140383655711776_1911 = __quote( __content_140383655711776_1911, '\x00', '�', None, False) __token = 2079 __content_140383655711776_2077 = _lookup_attr( getitem('industry'), 'id') __content_140383655711776_2077 = __quote( __content_140383655711776_2077, '\x00', '�', None, False) __token = 2149 __content_140383655711776_2147 = _lookup_attr( getitem('industry'), 'id') __content_140383655711776_2147 = __quote( __content_140383655711776_2147, '\x00', '�', None, False) __token = 2229 __content_140383655711776_2227 = _lookup_attr( getitem('industry'), 'id') __content_140383655711776_2227 = __quote( __content_140383655711776_2227, '\x00', '�', None, False) __token = 2389 __content_140383655711776_2387 = _lookup_attr( getitem('industry'), 'id') __content_140383655711776_2387 = __quote( __content_140383655711776_2387, '\x00', '�', None, False) __token = 2466 __content_140383655711776_2464 = _lookup_attr( getitem('industry'), 'get_extra_text_fund')(getitem('economy')) __content_140383655711776_2464 = __quote( __content_140383655711776_2464, '\x00', '�', None, False) __token = 2554 __content_140383655711776_2552 = _lookup_attr( getitem('industry'), 'id') __content_140383655711776_2552 = __quote( __content_140383655711776_2552, '\x00', '�', None, False) __token = 2627 __content_140383655711776_2625 = _lookup_attr( getitem('industry'), 'id') __content_140383655711776_2625 = __quote( __content_140383655711776_2625, '\x00', '�', None, False) __content_140383655711776 = ('%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s' % ( '\n if (economy==', (__content_140383655711776 if (__content_140383655711776 is not None) else ''), ') {\n item(FEAT_INDUSTRIES, ', (__content_140383655711776_1796 if (__content_140383655711776_1796 is not None) else ''), ', ', (__content_140383655711776_1812 if (__content_140383655711776_1812 is not None) else ''), ') {\n graphics {\n construction_probability: ', (__content_140383655711776_1911 if (__content_140383655711776_1911 is not None) else ''), '_check_availability;\n build_prod_change: randomise_primary_production_on_build;\n produce_cargo_arrival: ', (__content_140383655711776_2077 if (__content_140383655711776_2077 is not None) else ''), '_produce;\n produce_256_ticks: ', (__content_140383655711776_2147 if (__content_140383655711776_2147 is not None) else ''), '_produce_256_ticks;\n monthly_prod_change: ', (__content_140383655711776_2227 if (__content_140383655711776_2227 is not None) else ''), '_monthly_update;\n random_prod_change: return CB_RESULT_IND_PROD_NO_CHANGE;\n location_check: ', (__content_140383655711776_2387 if (__content_140383655711776_2387 is not None) else ''), '_check_location;\n extra_text_fund: ', (__content_140383655711776_2464 if (__content_140383655711776_2464 is not None) else ''), ';\n extra_text_industry: ', (__content_140383655711776_2552 if (__content_140383655711776_2552 is not None) else ''), '_extra_text;\n cargo_subtype_display: ', (__content_140383655711776_2625 if (__content_140383655711776_2625 is not None) else ''), '_cargo_subtype_display;\n colour: switch_colour;\n }\n }\n }\n ', )) if (__content_140383655711776 is None): pass else: if (__content_140383655711776 is False): __content_140383655711776 = None else: __tt = type(__content_140383655711776) if ((__tt is int) or (__tt is float) or (__tt is int)): __content_140383655711776 = str( __content_140383655711776) else: if (__tt is bytes): __content_140383655711776 = decode( __content_140383655711776) else: if (__tt is not str): try: __content_140383655711776 = __content_140383655711776.__html__ except get('AttributeError', AttributeError): __converted = convert( __content_140383655711776) __content_140383655711776 = ( str(__content_140383655711776) if (__content_140383655711776 is __converted) else __converted) else: __content_140383655711776 = __content_140383655711776( ) if (__content_140383655711776 is not None): __append(__content_140383655711776) __append('\n') ____index_140383637128920 -= 1 if (____index_140383637128920 > 0): __append('') if (__backup_economy_140383636914640 is __marker): del econtext['economy'] else: econtext['economy'] = __backup_economy_140383636914640 __append('\n') except: if (__token is not None): rcontext.setdefault('__error__', []).append( (__tokens[__token] + ( __filename, _exc_info()[1], ))) raise
def render(__stream, econtext, rcontext, __i18n_domain=None, __i18n_context=None): __append = __stream.append __re_amp = g_re_amp __token = None __re_needs_escape = g_re_needs_escape def __convert(target): if (target is None): return __tt = type(target) if ((__tt is int) or (__tt is float) or (__tt is int)): target = str(target) else: if (__tt is bytes): target = decode(target) else: if (__tt is not str): try: target = target.__html__ except AttributeError: __converted = convert(target) target = (str(target) if (target is __converted) else __converted) else: target = target() return target def __quote(target, quote, quote_entity, default, default_marker): if (target is None): return if (target is default_marker): return default __tt = type(target) if ((__tt is int) or (__tt is float) or (__tt is int)): target = str(target) else: if (__tt is bytes): target = decode(target) else: if (__tt is not str): try: target = target.__html__ except: __converted = convert(target) target = (str(target) if (target is __converted) else __converted) else: return target() if (target is not None): try: escape = (__re_needs_escape(target) is not None) except TypeError: pass else: if escape: if ('&' in target): target = target.replace('&', '&') if ('<' in target): target = target.replace('<', '<') if ('>' in target): target = target.replace('>', '>') if ((quote is not None) and (quote in target)): target = target.replace(quote, quote_entity) return target translate = econtext['__translate'] decode = econtext['__decode'] convert = econtext['__convert'] on_error_handler = econtext['__on_error_handler'] try: getitem = econtext.__getitem__ get = econtext.get # <Interpolation value=<Substitution 'STR_GRF_NAME :HIS Heavy Industry Set ${makefile_args.repo_version}\n' (1:0)> braces_required=True translation=False at 7f6b196572b0> -> __content_140097982888960 __token = 0 __token = 90 __content_140097982888960 = _lookup_attr(getitem('makefile_args'), 'repo_version') __content_140097982888960 = __quote(__content_140097982888960, '\x00', '�', None, False) __content_140097982888960 = ('%s%s%s' % ( 'STR_GRF_NAME :HIS Heavy Industry Set ', (__content_140097982888960 if (__content_140097982888960 is not None) else ''), '\n', )) if (__content_140097982888960 is None): pass else: if (__content_140097982888960 is False): __content_140097982888960 = None else: __tt = type(__content_140097982888960) if ((__tt is int) or (__tt is float) or (__tt is int)): __content_140097982888960 = str( __content_140097982888960) else: if (__tt is bytes): __content_140097982888960 = decode( __content_140097982888960) else: if (__tt is not str): try: __content_140097982888960 = __content_140097982888960.__html__ except get('AttributeError', AttributeError): __converted = convert( __content_140097982888960) __content_140097982888960 = ( str(__content_140097982888960) if (__content_140097982888960 is __converted) else __converted) else: __content_140097982888960 = __content_140097982888960( ) if (__content_140097982888960 is not None): __append(__content_140097982888960) __append( '\nSTR_EMPTY :\n' ) except: if (__token is not None): rcontext.setdefault('__error__', []).append( (__tokens[__token] + ( __filename, _exc_info()[1], ))) raise
def render(__stream, econtext, rcontext, __i18n_domain=None, __i18n_context=None): __append = __stream.append __re_amp = g_re_amp __token = None __re_needs_escape = g_re_needs_escape def __convert(target): if (target is None): return __tt = type(target) if ((__tt is int) or (__tt is float) or (__tt is int)): target = str(target) else: if (__tt is bytes): target = decode(target) else: if (__tt is not str): try: target = target.__html__ except AttributeError: __converted = convert(target) target = (str(target) if (target is __converted) else __converted) else: target = target() return target def __quote(target, quote, quote_entity, default, default_marker): if (target is None): return if (target is default_marker): return default __tt = type(target) if ((__tt is int) or (__tt is float) or (__tt is int)): target = str(target) else: if (__tt is bytes): target = decode(target) else: if (__tt is not str): try: target = target.__html__ except: __converted = convert(target) target = (str(target) if (target is __converted) else __converted) else: return target() if (target is not None): try: escape = (__re_needs_escape(target) is not None) except TypeError: pass else: if escape: if ('&' in target): target = target.replace('&', '&') if ('<' in target): target = target.replace('<', '<') if ('>' in target): target = target.replace('>', '>') if ((quote is not None) and (quote in target)): target = target.replace(quote, quote_entity) return target translate = econtext['__translate'] decode = econtext['__decode'] convert = econtext['__convert'] on_error_handler = econtext['__on_error_handler'] try: getitem = econtext.__getitem__ get = econtext.get __append( '\n\n/* =================================== */\n/* Production change evaluated monthly */\n/* =================================== */\n' ) __backup_perm_storage_139703105753664 = get( 'perm_storage', __marker) # <Value 'industry.perm_storage' (6:32)> -> __value __token = 245 __value = _lookup_attr(getitem('industry'), 'perm_storage') econtext['perm_storage'] = __value # <Interpolation value=<Substitution '\n switch(FEAT_INDUSTRIES, SELF, ${industry.id}_monthly_update, [\n STORE_PERM(LOAD_PERM(${perm_storage.var_num_supplies_delivered_last}), ${perm_storage.var_num_supplies_delivered_bef_last}),\n STORE_PERM(LOAD_PERM(${perm_storage.var_num_supplies_delivered}), ${perm_storage.var_num_supplies_delivered_last}),\n STORE_PERM(0, ${perm_storage.var_num_supplies_delivered})\n ]) {\n return CB_RESULT_IND_PROD_NO_CHANGE;\n }\n' (6:55)> braces_required=True translation=False at 7f0f29f9cdd8> -> __content_139703124559104 __token = 273 __token = 305 __content_139703124559104 = _lookup_attr(getitem('industry'), 'id') __content_139703124559104 = __quote(__content_139703124559104, '\x00', '�', None, False) __token = 367 __content_139703124559104_365 = _lookup_attr( getitem('perm_storage'), 'var_num_supplies_delivered_last') __content_139703124559104_365 = __quote( __content_139703124559104_365, '\x00', '�', None, False) __token = 417 __content_139703124559104_415 = _lookup_attr( getitem('perm_storage'), 'var_num_supplies_delivered_bef_last') __content_139703124559104_415 = __quote( __content_139703124559104_415, '\x00', '�', None, False) __token = 500 __content_139703124559104_498 = _lookup_attr( getitem('perm_storage'), 'var_num_supplies_delivered') __content_139703124559104_498 = __quote( __content_139703124559104_498, '\x00', '�', None, False) __token = 545 __content_139703124559104_543 = _lookup_attr( getitem('perm_storage'), 'var_num_supplies_delivered_last') __content_139703124559104_543 = __quote( __content_139703124559104_543, '\x00', '�', None, False) __token = 617 __content_139703124559104_615 = _lookup_attr( getitem('perm_storage'), 'var_num_supplies_delivered') __content_139703124559104_615 = __quote( __content_139703124559104_615, '\x00', '�', None, False) __content_139703124559104 = ('%s%s%s%s%s%s%s%s%s%s%s%s%s' % ( '\n switch(FEAT_INDUSTRIES, SELF, ', (__content_139703124559104 if (__content_139703124559104 is not None) else ''), '_monthly_update, [\n STORE_PERM(LOAD_PERM(', (__content_139703124559104_365 if (__content_139703124559104_365 is not None) else ''), '), ', (__content_139703124559104_415 if (__content_139703124559104_415 is not None) else ''), '),\n STORE_PERM(LOAD_PERM(', (__content_139703124559104_498 if (__content_139703124559104_498 is not None) else ''), '), ', (__content_139703124559104_543 if (__content_139703124559104_543 is not None) else ''), '),\n STORE_PERM(0, ', (__content_139703124559104_615 if (__content_139703124559104_615 is not None) else ''), ')\n ]) {\n return CB_RESULT_IND_PROD_NO_CHANGE;\n }\n', )) if (__content_139703124559104 is None): pass else: if (__content_139703124559104 is False): __content_139703124559104 = None else: __tt = type(__content_139703124559104) if ((__tt is int) or (__tt is float) or (__tt is int)): __content_139703124559104 = str( __content_139703124559104) else: if (__tt is bytes): __content_139703124559104 = decode( __content_139703124559104) else: if (__tt is not str): try: __content_139703124559104 = __content_139703124559104.__html__ except get('AttributeError', AttributeError): __converted = convert( __content_139703124559104) __content_139703124559104 = ( str(__content_139703124559104) if (__content_139703124559104 is __converted) else __converted) else: __content_139703124559104 = __content_139703124559104( ) if (__content_139703124559104 is not None): __append(__content_139703124559104) if (__backup_perm_storage_139703105753664 is __marker): del econtext['perm_storage'] else: econtext[ 'perm_storage'] = __backup_perm_storage_139703105753664 __append('\n') except: if (__token is not None): rcontext.setdefault('__error__', []).append( (__tokens[__token] + ( __filename, _exc_info()[1], ))) raise
def render(__stream, econtext, rcontext, __i18n_domain=None, __i18n_context=None): __append = __stream.append __re_amp = g_re_amp __token = None __re_needs_escape = g_re_needs_escape def __convert(target): if (target is None): return __tt = type(target) if ((__tt is int) or (__tt is float) or (__tt is int)): target = str(target) else: if (__tt is bytes): target = decode(target) else: if (__tt is not str): try: target = target.__html__ except AttributeError: __converted = convert(target) target = (str(target) if (target is __converted) else __converted) else: target = target() return target def __quote(target, quote, quote_entity, default, default_marker): if (target is None): return if (target is default_marker): return default __tt = type(target) if ((__tt is int) or (__tt is float) or (__tt is int)): target = str(target) else: if (__tt is bytes): target = decode(target) else: if (__tt is not str): try: target = target.__html__ except: __converted = convert(target) target = (str(target) if (target is __converted) else __converted) else: return target() if (target is not None): try: escape = (__re_needs_escape(target) is not None) except TypeError: pass else: if escape: if ('&' in target): target = target.replace('&', '&') if ('<' in target): target = target.replace('<', '<') if ('>' in target): target = target.replace('>', '>') if ((quote is not None) and (quote in target)): target = target.replace(quote, quote_entity) return target translate = econtext['__translate'] decode = econtext['__decode'] convert = econtext['__convert'] on_error_handler = econtext['__on_error_handler'] try: getitem = econtext.__getitem__ get = econtext.get # <Interpolation value=<Substitution '\n\nswitch (FEAT_INDUSTRIES, SELF, ${industry.id}_extra_text, economy) {\n ' (1:57)> braces_required=True translation=False at 7f9ab095a6a0> -> __content_140302383355024 __token = 59 __token = 92 __content_140302383355024 = _lookup_attr(getitem('industry'), 'id') __content_140302383355024 = __quote(__content_140302383355024, '\x00', '�', None, False) __content_140302383355024 = ('%s%s%s' % ( '\n\nswitch (FEAT_INDUSTRIES, SELF, ', (__content_140302383355024 if (__content_140302383355024 is not None) else ''), '_extra_text, economy) {\n ', )) if (__content_140302383355024 is None): pass else: if (__content_140302383355024 is False): __content_140302383355024 = None else: __tt = type(__content_140302383355024) if ((__tt is int) or (__tt is float) or (__tt is int)): __content_140302383355024 = str( __content_140302383355024) else: if (__tt is bytes): __content_140302383355024 = decode( __content_140302383355024) else: if (__tt is not str): try: __content_140302383355024 = __content_140302383355024.__html__ except get('AttributeError', AttributeError): __converted = convert( __content_140302383355024) __content_140302383355024 = ( str(__content_140302383355024) if (__content_140302383355024 is __converted) else __converted) else: __content_140302383355024 = __content_140302383355024( ) if (__content_140302383355024 is not None): __append(__content_140302383355024) __backup_economy_140302363472056 = get('economy', __marker) # <Value 'economies' (4:35)> -> __iterator __token = 163 __iterator = getitem('economies') ( __iterator, ____index_140302364158944, ) = getitem('repeat')('economy', __iterator) econtext['economy'] = None for __item in __iterator: econtext['economy'] = __item __append('\n ') # <Value "industry.get_property('enabled', economy) == True" (5:43)> -> __condition __token = 218 __condition = (_lookup_attr( getitem('industry'), 'get_property')('enabled', getitem('economy')) == True) if __condition: # <Interpolation value=<Substitution '\n ${economy.numeric_id}: return ${industry.get_extra_text_string(economy)};\n ' (5:94)> braces_required=True translation=False at 7f9ab093aa58> -> __content_140302383355024 __token = 282 __token = 284 __content_140302383355024 = _lookup_attr( getitem('economy'), 'numeric_id') __content_140302383355024 = __quote( __content_140302383355024, '\x00', '�', None, False) __token = 314 __content_140302383355024_312 = _lookup_attr( getitem('industry'), 'get_extra_text_string')(getitem('economy')) __content_140302383355024_312 = __quote( __content_140302383355024_312, '\x00', '�', None, False) __content_140302383355024 = ('%s%s%s%s%s' % ( '\n ', (__content_140302383355024 if (__content_140302383355024 is not None) else ''), ': return ', (__content_140302383355024_312 if (__content_140302383355024_312 is not None) else ''), ';\n ', )) if (__content_140302383355024 is None): pass else: if (__content_140302383355024 is False): __content_140302383355024 = None else: __tt = type(__content_140302383355024) if ((__tt is int) or (__tt is float) or (__tt is int)): __content_140302383355024 = str( __content_140302383355024) else: if (__tt is bytes): __content_140302383355024 = decode( __content_140302383355024) else: if (__tt is not str): try: __content_140302383355024 = __content_140302383355024.__html__ except get('AttributeError', AttributeError): __converted = convert( __content_140302383355024) __content_140302383355024 = ( str(__content_140302383355024) if (__content_140302383355024 is __converted) else __converted) else: __content_140302383355024 = __content_140302383355024( ) if (__content_140302383355024 is not None): __append(__content_140302383355024) __append('\n ') ____index_140302364158944 -= 1 if (____index_140302364158944 > 0): __append('') if (__backup_economy_140302363472056 is __marker): del econtext['economy'] else: econtext['economy'] = __backup_economy_140302363472056 __append('\n}\n\n\n') # <Interpolation value=<Substitution '\n\nswitch (FEAT_INDUSTRIES, SELF, ${industry.id}_cargo_subtype_display_cargo_1, [current_date - LOAD_PERM(${industry.perm_storage.date_received_1}) > 90]) {\n 0: return 0x3800 + string(STR_CARGO_SUBTYPE_DISPLAY_SECONDARY_CARGO_DELIVERED);\n 1: return 0x3800 + string(STR_EMPTY);\n}\n\nswitch (FEAT_INDUSTRIES, SELF, ${industry.id}_cargo_subtype_display_cargo_2, [current_date - LOAD_PERM(${industry.perm_storage.date_received_2}) > 90]) {\n 0: return 0x3800 + string(STR_CARGO_SUBTYPE_DISPLAY_SECONDARY_CARGO_DELIVERED);\n 1: return 0x3800 + string(STR_EMPTY);\n}\n\nswitch (FEAT_INDUSTRIES, SELF, ${industry.id}_cargo_subtype_display_cargo_3, [current_date - LOAD_PERM(${industry.perm_storage.date_received_3}) > 90]) {\n 0: return 0x3800 + string(STR_CARGO_SUBTYPE_DISPLAY_SECONDARY_CARGO_DELIVERED);\n 1: return 0x3800 + string(STR_EMPTY);\n}\n\nswitch (FEAT_INDUSTRIES, SELF, ${industry.id}_cargo_subtype_display_switch_cargo, getbits(extra_callback_info2, 0, 8)) {\n 0: ${industry.id}_cargo_subtype_display_cargo_1;\n 1: ${industry.id}_cargo_subtype_display_cargo_2;\n 2: ${industry.id}_cargo_subtype_display_cargo_3;\n return CB_RESULT_NO_TEXT;\n}\n' (15:3)> braces_required=True translation=False at 7f9ab095aa58> -> __content_140302383355024 __token = 637 __token = 670 __content_140302383355024 = _lookup_attr(getitem('industry'), 'id') __content_140302383355024 = __quote(__content_140302383355024, '\x00', '�', None, False) __token = 742 __content_140302383355024_740 = _lookup_attr( _lookup_attr(getitem('industry'), 'perm_storage'), 'date_received_1') __content_140302383355024_740 = __quote( __content_140302383355024_740, '\x00', '�', None, False) __token = 953 __content_140302383355024_951 = _lookup_attr( getitem('industry'), 'id') __content_140302383355024_951 = __quote( __content_140302383355024_951, '\x00', '�', None, False) __token = 1025 __content_140302383355024_1023 = _lookup_attr( _lookup_attr(getitem('industry'), 'perm_storage'), 'date_received_2') __content_140302383355024_1023 = __quote( __content_140302383355024_1023, '\x00', '�', None, False) __token = 1236 __content_140302383355024_1234 = _lookup_attr( getitem('industry'), 'id') __content_140302383355024_1234 = __quote( __content_140302383355024_1234, '\x00', '�', None, False) __token = 1308 __content_140302383355024_1306 = _lookup_attr( _lookup_attr(getitem('industry'), 'perm_storage'), 'date_received_3') __content_140302383355024_1306 = __quote( __content_140302383355024_1306, '\x00', '�', None, False) __token = 1519 __content_140302383355024_1517 = _lookup_attr( getitem('industry'), 'id') __content_140302383355024_1517 = __quote( __content_140302383355024_1517, '\x00', '�', None, False) __token = 1616 __content_140302383355024_1614 = _lookup_attr( getitem('industry'), 'id') __content_140302383355024_1614 = __quote( __content_140302383355024_1614, '\x00', '�', None, False) __token = 1669 __content_140302383355024_1667 = _lookup_attr( getitem('industry'), 'id') __content_140302383355024_1667 = __quote( __content_140302383355024_1667, '\x00', '�', None, False) __token = 1722 __content_140302383355024_1720 = _lookup_attr( getitem('industry'), 'id') __content_140302383355024_1720 = __quote( __content_140302383355024_1720, '\x00', '�', None, False) __content_140302383355024 = ('%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s' % ( '\n\nswitch (FEAT_INDUSTRIES, SELF, ', (__content_140302383355024 if (__content_140302383355024 is not None) else ''), '_cargo_subtype_display_cargo_1, [current_date - LOAD_PERM(', (__content_140302383355024_740 if (__content_140302383355024_740 is not None) else ''), ') > 90]) {\n 0: return 0x3800 + string(STR_CARGO_SUBTYPE_DISPLAY_SECONDARY_CARGO_DELIVERED);\n 1: return 0x3800 + string(STR_EMPTY);\n}\n\nswitch (FEAT_INDUSTRIES, SELF, ', (__content_140302383355024_951 if (__content_140302383355024_951 is not None) else ''), '_cargo_subtype_display_cargo_2, [current_date - LOAD_PERM(', (__content_140302383355024_1023 if (__content_140302383355024_1023 is not None) else ''), ') > 90]) {\n 0: return 0x3800 + string(STR_CARGO_SUBTYPE_DISPLAY_SECONDARY_CARGO_DELIVERED);\n 1: return 0x3800 + string(STR_EMPTY);\n}\n\nswitch (FEAT_INDUSTRIES, SELF, ', (__content_140302383355024_1234 if (__content_140302383355024_1234 is not None) else ''), '_cargo_subtype_display_cargo_3, [current_date - LOAD_PERM(', (__content_140302383355024_1306 if (__content_140302383355024_1306 is not None) else ''), ') > 90]) {\n 0: return 0x3800 + string(STR_CARGO_SUBTYPE_DISPLAY_SECONDARY_CARGO_DELIVERED);\n 1: return 0x3800 + string(STR_EMPTY);\n}\n\nswitch (FEAT_INDUSTRIES, SELF, ', (__content_140302383355024_1517 if (__content_140302383355024_1517 is not None) else ''), '_cargo_subtype_display_switch_cargo, getbits(extra_callback_info2, 0, 8)) {\n 0: ', (__content_140302383355024_1614 if (__content_140302383355024_1614 is not None) else ''), '_cargo_subtype_display_cargo_1;\n 1: ', (__content_140302383355024_1667 if (__content_140302383355024_1667 is not None) else ''), '_cargo_subtype_display_cargo_2;\n 2: ', (__content_140302383355024_1720 if (__content_140302383355024_1720 is not None) else ''), '_cargo_subtype_display_cargo_3;\n return CB_RESULT_NO_TEXT;\n}\n', )) if (__content_140302383355024 is None): pass else: if (__content_140302383355024 is False): __content_140302383355024 = None else: __tt = type(__content_140302383355024) if ((__tt is int) or (__tt is float) or (__tt is int)): __content_140302383355024 = str( __content_140302383355024) else: if (__tt is bytes): __content_140302383355024 = decode( __content_140302383355024) else: if (__tt is not str): try: __content_140302383355024 = __content_140302383355024.__html__ except get('AttributeError', AttributeError): __converted = convert( __content_140302383355024) __content_140302383355024 = ( str(__content_140302383355024) if (__content_140302383355024 is __converted) else __converted) else: __content_140302383355024 = __content_140302383355024( ) if (__content_140302383355024 is not None): __append(__content_140302383355024) # <Interpolation value=<Substitution '\nswitch (FEAT_INDUSTRIES, SELF, ${industry.id}_cargo_subtype_display, getbits(extra_callback_info2, 8, 8)) {\n 1: ${industry.id}_cargo_subtype_display_switch_cargo;\n return CB_RESULT_NO_TEXT;\n}\n' (38:66)> braces_required=True translation=False at 7f9ab093a128> -> __content_140302383355024 __token = 1865 __token = 1898 __content_140302383355024 = _lookup_attr(getitem('industry'), 'id') __content_140302383355024 = __quote(__content_140302383355024, '\x00', '�', None, False) __token = 1982 __content_140302383355024_1980 = _lookup_attr( getitem('industry'), 'id') __content_140302383355024_1980 = __quote( __content_140302383355024_1980, '\x00', '�', None, False) __content_140302383355024 = ('%s%s%s%s%s' % ( '\nswitch (FEAT_INDUSTRIES, SELF, ', (__content_140302383355024 if (__content_140302383355024 is not None) else ''), '_cargo_subtype_display, getbits(extra_callback_info2, 8, 8)) {\n 1: ', (__content_140302383355024_1980 if (__content_140302383355024_1980 is not None) else ''), '_cargo_subtype_display_switch_cargo;\n return CB_RESULT_NO_TEXT;\n}\n', )) if (__content_140302383355024 is None): pass else: if (__content_140302383355024 is False): __content_140302383355024 = None else: __tt = type(__content_140302383355024) if ((__tt is int) or (__tt is float) or (__tt is int)): __content_140302383355024 = str( __content_140302383355024) else: if (__tt is bytes): __content_140302383355024 = decode( __content_140302383355024) else: if (__tt is not str): try: __content_140302383355024 = __content_140302383355024.__html__ except get('AttributeError', AttributeError): __converted = convert( __content_140302383355024) __content_140302383355024 = ( str(__content_140302383355024) if (__content_140302383355024 is __converted) else __converted) else: __content_140302383355024 = __content_140302383355024( ) if (__content_140302383355024 is not None): __append(__content_140302383355024) except: if (__token is not None): rcontext.setdefault('__error__', []).append( (__tokens[__token] + ( __filename, _exc_info()[1], ))) raise
def render(__stream, econtext, rcontext, __i18n_domain=None, __i18n_context=None): __append = __stream.append __re_amp = g_re_amp __token = None __re_needs_escape = g_re_needs_escape def __convert(target): if (target is None): return __tt = type(target) if ((__tt is int) or (__tt is float) or (__tt is int)): target = str(target) else: if (__tt is bytes): target = decode(target) else: if (__tt is not str): try: target = target.__html__ except AttributeError: __converted = convert(target) target = (str(target) if (target is __converted) else __converted) else: target = target() return target def __quote(target, quote, quote_entity, default, default_marker): if (target is None): return if (target is default_marker): return default __tt = type(target) if ((__tt is int) or (__tt is float) or (__tt is int)): target = str(target) else: if (__tt is bytes): target = decode(target) else: if (__tt is not str): try: target = target.__html__ except: __converted = convert(target) target = (str(target) if (target is __converted) else __converted) else: return target() if (target is not None): try: escape = (__re_needs_escape(target) is not None) except TypeError: pass else: if escape: if ('&' in target): target = target.replace('&', '&') if ('<' in target): target = target.replace('<', '<') if ('>' in target): target = target.replace('>', '>') if ((quote is not None) and (quote in target)): target = target.replace(quote, quote_entity) return target translate = econtext['__translate'] decode = econtext['__decode'] convert = econtext['__convert'] on_error_handler = econtext['__on_error_handler'] try: getitem = econtext.__getitem__ get = econtext.get __append('\n\n') __append('\n\n') __append('\nif (ttd_platform != PLATFORM_OPENTTD || openttd_version ') __append('<') __append(' version_openttd(1, 7, 0, 27769)) {\n\terror(FATAL, REQUIRES_OPENTTD, string(STR_ERR_OPENTTD_VERSION));\n\texit;\n}\n\n') __backup_incompatible_grf_140166525546392 = get('incompatible_grf', __marker) # <Value 'incompatible_grfs' (14:48)> -> __iterator __token = 503 __iterator = getitem('incompatible_grfs') (__iterator, ____index_140166499866832, ) = getitem('repeat')('incompatible_grf', __iterator) econtext['incompatible_grf'] = None for __item in __iterator: econtext['incompatible_grf'] = __item # <Interpolation value=<Substitution '\n if (grf_future_status("${incompatible_grf.grfid}")) {\n error(FATAL, string(STR_ERR_INCOMPATIBLE_SET, "${incompatible_grf.grfname}"));\n }\n' (14:67)> braces_required=True translation=False at 7f7b0e6f1d68> -> __content_140166518101192 __token = 527 __token = 552 __content_140166518101192 = _lookup_attr(getitem('incompatible_grf'), 'grfid') __content_140166518101192 = __quote(__content_140166518101192, '\x00', '�', None, False) __token = 638 __content_140166518101192_636 = _lookup_attr(getitem('incompatible_grf'), 'grfname') __content_140166518101192_636 = __quote(__content_140166518101192_636, '\x00', '�', None, False) __content_140166518101192 = ('%s%s%s%s%s' % ('\n if (grf_future_status("', (__content_140166518101192 if (__content_140166518101192 is not None) else ''), '")) {\n error(FATAL, string(STR_ERR_INCOMPATIBLE_SET, "', (__content_140166518101192_636 if (__content_140166518101192_636 is not None) else ''), '"));\n }\n', )) if (__content_140166518101192 is None): pass else: if (__content_140166518101192 is False): __content_140166518101192 = None else: __tt = type(__content_140166518101192) if ((__tt is int) or (__tt is float) or (__tt is int)): __content_140166518101192 = str(__content_140166518101192) else: if (__tt is bytes): __content_140166518101192 = decode(__content_140166518101192) else: if (__tt is not str): try: __content_140166518101192 = __content_140166518101192.__html__ except get('AttributeError', AttributeError): __converted = convert(__content_140166518101192) __content_140166518101192 = (str(__content_140166518101192) if (__content_140166518101192 is __converted) else __converted) else: __content_140166518101192 = __content_140166518101192() if (__content_140166518101192 is not None): __append(__content_140166518101192) ____index_140166499866832 -= 1 if (____index_140166499866832 > 0): __append('') if (__backup_incompatible_grf_140166525546392 is __marker): del econtext['incompatible_grf'] else: econtext['incompatible_grf'] = __backup_incompatible_grf_140166525546392 __append('\n\n\n') __append('\n/* this one might not survive as artic-only\nif (climate == CLIMATE_ARCTIC) {\n\tINCOMPATIBLE_GRF("mb\\07\\00", "Alpine Climate");\n}\n*/\n\nif (grf_future_status("MG\\08\\00", "\\FF\\FF\\FF\\00")) {\n\terror(FATAL, string(STR_ERR_INCOMPATIBLE_SET, "Lumber Mill"));\n}\n\nif (grf_future_status("CACa")) {\n\tif (param["CACa", 1] != 0) {\n\t\terror(FATAL, string(STR_ERR_INCOMPATIBLE_PARAM_CITYSET));\n\t}\n}\nif (grf_future_status("CASa")) {\n\tif (param["CASa", 1] != 0) {\n\t\terror(FATAL, string(STR_ERR_INCOMPATIBLE_PARAM_CANSET));\n\t}\n}\nif (grf_future_status("VC\\00\\01")) {\n\tif (param["VC\\00\\01", 254] ') __append('<') __append('= 17) {\n\t\terror(FATAL, string(STR_ERR_INCOMPATIBLE_SET_TTRS_VERSION));\n\t}\n}\n') except: if (__token is not None): rcontext.setdefault('__error__', []).append((__tokens[__token] + (__filename, _exc_info()[1], ))) raise
def render(__stream, econtext, rcontext, __i18n_domain=None, __i18n_context=None): __append = __stream.append __re_amp = g_re_amp __token = None __re_needs_escape = g_re_needs_escape def __convert(target): if (target is None): return __tt = type(target) if ((__tt is int) or (__tt is float) or (__tt is int)): target = str(target) else: if (__tt is bytes): target = decode(target) else: if (__tt is not str): try: target = target.__html__ except AttributeError: __converted = convert(target) target = (str(target) if (target is __converted) else __converted) else: target = target() return target def __quote(target, quote, quote_entity, default, default_marker): if (target is None): return if (target is default_marker): return default __tt = type(target) if ((__tt is int) or (__tt is float) or (__tt is int)): target = str(target) else: if (__tt is bytes): target = decode(target) else: if (__tt is not str): try: target = target.__html__ except: __converted = convert(target) target = (str(target) if (target is __converted) else __converted) else: return target() if (target is not None): try: escape = (__re_needs_escape(target) is not None) except TypeError: pass else: if escape: if ('&' in target): target = target.replace('&', '&') if ('<' in target): target = target.replace('<', '<') if ('>' in target): target = target.replace('>', '>') if ((quote is not None) and (quote in target)): target = target.replace(quote, quote_entity) return target translate = econtext['__translate'] decode = econtext['__decode'] convert = econtext['__convert'] on_error_handler = econtext['__on_error_handler'] try: getitem = econtext.__getitem__ get = econtext.get __append('\n\n') __backup_industry_layout_139703104062520 = get( 'industry_layout', __marker) # <Value 'python:industry.industry_layouts' (8:64)> -> __iterator __token = 658 __iterator = _lookup_attr(getitem('industry'), 'industry_layouts') ( __iterator, ____index_139703106016816, ) = getitem('repeat')('industry_layout', __iterator) econtext['industry_layout'] = None for __item in __iterator: econtext['industry_layout'] = __item # <Interpolation value=<Substitution '\n tilelayout ${industry_layout.id}_tilelayout {\n ' (8:98)> braces_required=True translation=False at 7f0f2a021ba8> -> __content_139703124559104 __token = 697 __token = 710 __content_139703124559104 = _lookup_attr( getitem('industry_layout'), 'id') __content_139703124559104 = __quote(__content_139703124559104, '\x00', '�', None, False) __content_139703124559104 = ('%s%s%s' % ( '\n tilelayout ', (__content_139703124559104 if (__content_139703124559104 is not None) else ''), '_tilelayout {\n ', )) if (__content_139703124559104 is None): pass else: if (__content_139703124559104 is False): __content_139703124559104 = None else: __tt = type(__content_139703124559104) if ((__tt is int) or (__tt is float) or (__tt is int)): __content_139703124559104 = str( __content_139703124559104) else: if (__tt is bytes): __content_139703124559104 = decode( __content_139703124559104) else: if (__tt is not str): try: __content_139703124559104 = __content_139703124559104.__html__ except get('AttributeError', AttributeError): __converted = convert( __content_139703124559104) __content_139703124559104 = ( str(__content_139703124559104) if (__content_139703124559104 is __converted) else __converted) else: __content_139703124559104 = __content_139703124559104( ) if (__content_139703124559104 is not None): __append(__content_139703124559104) __backup_layout_139703104048040 = get('layout', __marker) # <Value 'industry_layout.layout' (10:50)> -> __iterator __token = 793 __iterator = _lookup_attr(getitem('industry_layout'), 'layout') ( __iterator, ____index_139703106019168, ) = getitem('repeat')('layout', __iterator) econtext['layout'] = None for __item in __iterator: econtext['layout'] = __item # <Interpolation value=<Substitution '\n ${layout[0]}, ${layout[1]}: ${layout[2]};\n ' (10:74)> braces_required=True translation=False at 7f0f2a021358> -> __content_139703124559104 __token = 830 __token = 832 __content_139703124559104 = getitem('layout')[0] __content_139703124559104 = __quote( __content_139703124559104, '\x00', '�', None, False) __token = 846 __content_139703124559104_844 = getitem('layout')[1] __content_139703124559104_844 = __quote( __content_139703124559104_844, '\x00', '�', None, False) __token = 860 __content_139703124559104_858 = getitem('layout')[2] __content_139703124559104_858 = __quote( __content_139703124559104_858, '\x00', '�', None, False) __content_139703124559104 = ('%s%s%s%s%s%s%s' % ( '\n ', (__content_139703124559104 if (__content_139703124559104 is not None) else ''), ', ', (__content_139703124559104_844 if (__content_139703124559104_844 is not None) else ''), ': ', (__content_139703124559104_858 if (__content_139703124559104_858 is not None) else ''), ';\n ', )) if (__content_139703124559104 is None): pass else: if (__content_139703124559104 is False): __content_139703124559104 = None else: __tt = type(__content_139703124559104) if ((__tt is int) or (__tt is float) or (__tt is int)): __content_139703124559104 = str( __content_139703124559104) else: if (__tt is bytes): __content_139703124559104 = decode( __content_139703124559104) else: if (__tt is not str): try: __content_139703124559104 = __content_139703124559104.__html__ except get('AttributeError', AttributeError): __converted = convert( __content_139703124559104) __content_139703124559104 = ( str(__content_139703124559104) if (__content_139703124559104 is __converted) else __converted) else: __content_139703124559104 = __content_139703124559104( ) if (__content_139703124559104 is not None): __append(__content_139703124559104) ____index_139703106019168 -= 1 if (____index_139703106019168 > 0): __append('') if (__backup_layout_139703104048040 is __marker): del econtext['layout'] else: econtext['layout'] = __backup_layout_139703104048040 __append('\n }\n') ____index_139703106016816 -= 1 if (____index_139703106016816 > 0): __append('') if (__backup_industry_layout_139703104062520 is __marker): del econtext['industry_layout'] else: econtext[ 'industry_layout'] = __backup_industry_layout_139703104062520 __append('\n') except: if (__token is not None): rcontext.setdefault('__error__', []).append( (__tokens[__token] + ( __filename, _exc_info()[1], ))) raise
def render(__stream, econtext, rcontext, __i18n_domain=None, __i18n_context=None): __append = __stream.append __re_amp = g_re_amp __token = None __re_needs_escape = g_re_needs_escape def __convert(target): if (target is None): return __tt = type(target) if ((__tt is int) or (__tt is float) or (__tt is int)): target = str(target) else: if (__tt is bytes): target = decode(target) else: if (__tt is not str): try: target = target.__html__ except AttributeError: __converted = convert(target) target = (str(target) if (target is __converted) else __converted) else: target = target() return target def __quote(target, quote, quote_entity, default, default_marker): if (target is None): return if (target is default_marker): return default __tt = type(target) if ((__tt is int) or (__tt is float) or (__tt is int)): target = str(target) else: if (__tt is bytes): target = decode(target) else: if (__tt is not str): try: target = target.__html__ except: __converted = convert(target) target = (str(target) if (target is __converted) else __converted) else: return target() if (target is not None): try: escape = (__re_needs_escape(target) is not None) except TypeError: pass else: if escape: if ('&' in target): target = target.replace('&', '&') if ('<' in target): target = target.replace('<', '<') if ('>' in target): target = target.replace('>', '>') if ((quote is not None) and (quote in target)): target = target.replace(quote, quote_entity) return target translate = econtext['__translate'] decode = econtext['__decode'] convert = econtext['__convert'] on_error_handler = econtext['__on_error_handler'] try: getitem = econtext.__getitem__ get = econtext.get __backup_economy_140383637162696 = get('economy', __marker) # <Value 'economies' (1:37)> -> __iterator __token = 37 __iterator = getitem('economies') ( __iterator, ____index_140383634707008, ) = getitem('repeat')('economy', __iterator) econtext['economy'] = None for __item in __iterator: econtext['economy'] = __item __append('\n ') # <Value "industry.get_property('enabled', economy) == True" (2:39)> -> __condition __token = 88 __condition = (_lookup_attr( getitem('industry'), 'get_property')('enabled', getitem('economy')) == True) if __condition: # <Interpolation value=<Substitution '\n if (economy==${economy.numeric_id}) {\n item(FEAT_INDUSTRIES, ${industry.id}, ${industry.numeric_id}) {\n property {\n ' (2:90)> braces_required=True translation=False at 7fad9cadd518> -> __content_140383655711776 __token = 148 __token = 163 __content_140383655711776 = _lookup_attr( getitem('economy'), 'numeric_id') __content_140383655711776 = __quote( __content_140383655711776, '\x00', '�', None, False) __token = 222 __content_140383655711776_220 = _lookup_attr( getitem('industry'), 'id') __content_140383655711776_220 = __quote( __content_140383655711776_220, '\x00', '�', None, False) __token = 238 __content_140383655711776_236 = _lookup_attr( getitem('industry'), 'numeric_id') __content_140383655711776_236 = __quote( __content_140383655711776_236, '\x00', '�', None, False) __content_140383655711776 = ('%s%s%s%s%s%s%s' % ( '\n if (economy==', (__content_140383655711776 if (__content_140383655711776 is not None) else ''), ') {\n item(FEAT_INDUSTRIES, ', (__content_140383655711776_220 if (__content_140383655711776_220 is not None) else ''), ', ', (__content_140383655711776_236 if (__content_140383655711776_236 is not None) else ''), ') {\n property {\n ', )) if (__content_140383655711776 is None): pass else: if (__content_140383655711776 is False): __content_140383655711776 = None else: __tt = type(__content_140383655711776) if ((__tt is int) or (__tt is float) or (__tt is int)): __content_140383655711776 = str( __content_140383655711776) else: if (__tt is bytes): __content_140383655711776 = decode( __content_140383655711776) else: if (__tt is not str): try: __content_140383655711776 = __content_140383655711776.__html__ except get('AttributeError', AttributeError): __converted = convert( __content_140383655711776) __content_140383655711776 = ( str(__content_140383655711776) if (__content_140383655711776 is __converted) else __converted) else: __content_140383655711776 = __content_140383655711776( ) if (__content_140383655711776 is not None): __append(__content_140383655711776) # <Interpolation value=<Substitution "\n ${industry.get_property_declaration('substitute')}\n ${industry.get_property_declaration('override')}\n ${industry.get_property_declaration('map_colour')}\n ${industry.get_property_declaration('life_type')}\n ${industry.get_property_declaration('closure_msg')}\n ${industry.get_property_declaration('prod_increase_msg')}\n ${industry.get_property_declaration('prod_decrease_msg')}\n ${industry.get_property_declaration('new_ind_msg')}\n ${industry.get_property_declaration('min_cargo_distr')}\n ${industry.get_property_declaration('spec_flags')}\n ${industry.get_industry_layouts_as_property()}\n conflicting_ind_types: []; // set this prop empty, FIRS has it's own better checks for this\n random_sound_effects: []; // set this empty to avoid spurious default industry sounds (as of May 2017 FIRS does not yet use sound effects)\n " (6:79)> braces_required=True translation=False at 7fad9cadddd8> -> __content_140383655711776 __token = 389 __token = 391 __content_140383655711776 = _lookup_attr( getitem('industry'), 'get_property_declaration')('substitute') __content_140383655711776 = __quote( __content_140383655711776, '\x00', '�', None, False) __token = 462 __content_140383655711776_460 = _lookup_attr( getitem('industry'), 'get_property_declaration')('override') __content_140383655711776_460 = __quote( __content_140383655711776_460, '\x00', '�', None, False) __token = 531 __content_140383655711776_529 = _lookup_attr( getitem('industry'), 'get_property_declaration')('map_colour') __content_140383655711776_529 = __quote( __content_140383655711776_529, '\x00', '�', None, False) __token = 602 __content_140383655711776_600 = _lookup_attr( getitem('industry'), 'get_property_declaration')('life_type') __content_140383655711776_600 = __quote( __content_140383655711776_600, '\x00', '�', None, False) __token = 672 __content_140383655711776_670 = _lookup_attr( getitem('industry'), 'get_property_declaration')('closure_msg') __content_140383655711776_670 = __quote( __content_140383655711776_670, '\x00', '�', None, False) __token = 744 __content_140383655711776_742 = _lookup_attr( getitem('industry'), 'get_property_declaration')('prod_increase_msg') __content_140383655711776_742 = __quote( __content_140383655711776_742, '\x00', '�', None, False) __token = 822 __content_140383655711776_820 = _lookup_attr( getitem('industry'), 'get_property_declaration')('prod_decrease_msg') __content_140383655711776_820 = __quote( __content_140383655711776_820, '\x00', '�', None, False) __token = 900 __content_140383655711776_898 = _lookup_attr( getitem('industry'), 'get_property_declaration')('new_ind_msg') __content_140383655711776_898 = __quote( __content_140383655711776_898, '\x00', '�', None, False) __token = 972 __content_140383655711776_970 = _lookup_attr( getitem('industry'), 'get_property_declaration')('min_cargo_distr') __content_140383655711776_970 = __quote( __content_140383655711776_970, '\x00', '�', None, False) __token = 1048 __content_140383655711776_1046 = _lookup_attr( getitem('industry'), 'get_property_declaration')('spec_flags') __content_140383655711776_1046 = __quote( __content_140383655711776_1046, '\x00', '�', None, False) __token = 1119 __content_140383655711776_1117 = _lookup_attr( getitem('industry'), 'get_industry_layouts_as_property')() __content_140383655711776_1117 = __quote( __content_140383655711776_1117, '\x00', '�', None, False) __content_140383655711776 = ( '%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s' % ( '\n ', (__content_140383655711776 if (__content_140383655711776 is not None) else ''), '\n ', (__content_140383655711776_460 if (__content_140383655711776_460 is not None) else ''), '\n ', (__content_140383655711776_529 if (__content_140383655711776_529 is not None) else ''), '\n ', (__content_140383655711776_600 if (__content_140383655711776_600 is not None) else ''), '\n ', (__content_140383655711776_670 if (__content_140383655711776_670 is not None) else ''), '\n ', (__content_140383655711776_742 if (__content_140383655711776_742 is not None) else ''), '\n ', (__content_140383655711776_820 if (__content_140383655711776_820 is not None) else ''), '\n ', (__content_140383655711776_898 if (__content_140383655711776_898 is not None) else ''), '\n ', (__content_140383655711776_970 if (__content_140383655711776_970 is not None) else ''), '\n ', (__content_140383655711776_1046 if (__content_140383655711776_1046 is not None) else ''), '\n ', (__content_140383655711776_1117 if (__content_140383655711776_1117 is not None) else ''), "\n conflicting_ind_types: []; // set this prop empty, FIRS has it's own better checks for this\n random_sound_effects: []; // set this empty to avoid spurious default industry sounds (as of May 2017 FIRS does not yet use sound effects)\n ", )) if (__content_140383655711776 is None): pass else: if (__content_140383655711776 is False): __content_140383655711776 = None else: __tt = type(__content_140383655711776) if ((__tt is int) or (__tt is float) or (__tt is int)): __content_140383655711776 = str( __content_140383655711776) else: if (__tt is bytes): __content_140383655711776 = decode( __content_140383655711776) else: if (__tt is not str): try: __content_140383655711776 = __content_140383655711776.__html__ except get('AttributeError', AttributeError): __converted = convert( __content_140383655711776) __content_140383655711776 = ( str(__content_140383655711776) if (__content_140383655711776 is __converted) else __converted) else: __content_140383655711776 = __content_140383655711776( ) if (__content_140383655711776 is not None): __append(__content_140383655711776) # <Interpolation value=<Substitution "\n ${industry.get_property_declaration('name', economy)}\n ${industry.get_property_declaration('prod_multiplier', economy)}\n ${industry.get_property_declaration('input_multiplier_1', economy)}\n ${industry.get_property_declaration('input_multiplier_2', economy)}\n ${industry.get_property_declaration('input_multiplier_3', economy)}\n ${industry.get_property_declaration('prob_random', economy)}\n ${industry.get_property_declaration('prob_in_game', economy)}\n ${industry.get_property_declaration('prospect_chance', economy)}\n ${industry.get_property_declaration('fund_cost_multiplier', economy)}\n ${industry.get_property_declaration('remove_cost_multiplier', economy)}\n ${industry.get_property_declaration('remove_cost_multiplier', economy)}\n " (20:102)> braces_required=True translation=False at 7fad9cadd198> -> __content_140383655711776 __token = 1558 __token = 1560 __content_140383655711776 = _lookup_attr( getitem('industry'), 'get_property_declaration')('name', getitem('economy')) __content_140383655711776 = __quote( __content_140383655711776, '\x00', '�', None, False) __token = 1634 __content_140383655711776_1632 = _lookup_attr( getitem('industry'), 'get_property_declaration')('prod_multiplier', getitem('economy')) __content_140383655711776_1632 = __quote( __content_140383655711776_1632, '\x00', '�', None, False) __token = 1719 __content_140383655711776_1717 = _lookup_attr( getitem('industry'), 'get_property_declaration')('input_multiplier_1', getitem('economy')) __content_140383655711776_1717 = __quote( __content_140383655711776_1717, '\x00', '�', None, False) __token = 1807 __content_140383655711776_1805 = _lookup_attr( getitem('industry'), 'get_property_declaration')('input_multiplier_2', getitem('economy')) __content_140383655711776_1805 = __quote( __content_140383655711776_1805, '\x00', '�', None, False) __token = 1895 __content_140383655711776_1893 = _lookup_attr( getitem('industry'), 'get_property_declaration')('input_multiplier_3', getitem('economy')) __content_140383655711776_1893 = __quote( __content_140383655711776_1893, '\x00', '�', None, False) __token = 1983 __content_140383655711776_1981 = _lookup_attr( getitem('industry'), 'get_property_declaration')('prob_random', getitem('economy')) __content_140383655711776_1981 = __quote( __content_140383655711776_1981, '\x00', '�', None, False) __token = 2064 __content_140383655711776_2062 = _lookup_attr( getitem('industry'), 'get_property_declaration')('prob_in_game', getitem('economy')) __content_140383655711776_2062 = __quote( __content_140383655711776_2062, '\x00', '�', None, False) __token = 2146 __content_140383655711776_2144 = _lookup_attr( getitem('industry'), 'get_property_declaration')('prospect_chance', getitem('economy')) __content_140383655711776_2144 = __quote( __content_140383655711776_2144, '\x00', '�', None, False) __token = 2231 __content_140383655711776_2229 = _lookup_attr( getitem('industry'), 'get_property_declaration')('fund_cost_multiplier', getitem('economy')) __content_140383655711776_2229 = __quote( __content_140383655711776_2229, '\x00', '�', None, False) __token = 2321 __content_140383655711776_2319 = _lookup_attr( getitem('industry'), 'get_property_declaration')('remove_cost_multiplier', getitem('economy')) __content_140383655711776_2319 = __quote( __content_140383655711776_2319, '\x00', '�', None, False) __token = 2413 __content_140383655711776_2411 = _lookup_attr( getitem('industry'), 'get_property_declaration')('remove_cost_multiplier', getitem('economy')) __content_140383655711776_2411 = __quote( __content_140383655711776_2411, '\x00', '�', None, False) __content_140383655711776 = ( '%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s' % ( '\n ', (__content_140383655711776 if (__content_140383655711776 is not None) else ''), '\n ', (__content_140383655711776_1632 if (__content_140383655711776_1632 is not None) else ''), '\n ', (__content_140383655711776_1717 if (__content_140383655711776_1717 is not None) else ''), '\n ', (__content_140383655711776_1805 if (__content_140383655711776_1805 is not None) else ''), '\n ', (__content_140383655711776_1893 if (__content_140383655711776_1893 is not None) else ''), '\n ', (__content_140383655711776_1981 if (__content_140383655711776_1981 is not None) else ''), '\n ', (__content_140383655711776_2062 if (__content_140383655711776_2062 is not None) else ''), '\n ', (__content_140383655711776_2144 if (__content_140383655711776_2144 is not None) else ''), '\n ', (__content_140383655711776_2229 if (__content_140383655711776_2229 is not None) else ''), '\n ', (__content_140383655711776_2319 if (__content_140383655711776_2319 is not None) else ''), '\n ', (__content_140383655711776_2411 if (__content_140383655711776_2411 is not None) else ''), '\n ', )) if (__content_140383655711776 is None): pass else: if (__content_140383655711776 is False): __content_140383655711776 = None else: __tt = type(__content_140383655711776) if ((__tt is int) or (__tt is float) or (__tt is int)): __content_140383655711776 = str( __content_140383655711776) else: if (__tt is bytes): __content_140383655711776 = decode( __content_140383655711776) else: if (__tt is not str): try: __content_140383655711776 = __content_140383655711776.__html__ except get('AttributeError', AttributeError): __converted = convert( __content_140383655711776) __content_140383655711776 = ( str(__content_140383655711776) if (__content_140383655711776 is __converted) else __converted) else: __content_140383655711776 = __content_140383655711776( ) if (__content_140383655711776 is not None): __append(__content_140383655711776) # <Interpolation value=<Substitution '\n ${industry.get_accept_cargo_types_declaration(economy)}\n ${industry.get_prod_cargo_types_declaration(economy)}\n ${industry.get_nearby_station_name_declaration()}\n }\n }\n }\n ' (32:46)> braces_required=True translation=False at 7fad9cadd828> -> __content_140383655711776 __token = 2550 __token = 2552 __content_140383655711776 = _lookup_attr( getitem('industry'), 'get_accept_cargo_types_declaration')( getitem('economy')) __content_140383655711776 = __quote( __content_140383655711776, '\x00', '�', None, False) __token = 2628 __content_140383655711776_2626 = _lookup_attr( getitem('industry'), 'get_prod_cargo_types_declaration')(getitem('economy')) __content_140383655711776_2626 = __quote( __content_140383655711776_2626, '\x00', '�', None, False) __token = 2702 __content_140383655711776_2700 = _lookup_attr( getitem('industry'), 'get_nearby_station_name_declaration')() __content_140383655711776_2700 = __quote( __content_140383655711776_2700, '\x00', '�', None, False) __content_140383655711776 = ('%s%s%s%s%s%s%s' % ( '\n ', (__content_140383655711776 if (__content_140383655711776 is not None) else ''), '\n ', (__content_140383655711776_2626 if (__content_140383655711776_2626 is not None) else ''), '\n ', (__content_140383655711776_2700 if (__content_140383655711776_2700 is not None) else ''), '\n }\n }\n }\n ', )) if (__content_140383655711776 is None): pass else: if (__content_140383655711776 is False): __content_140383655711776 = None else: __tt = type(__content_140383655711776) if ((__tt is int) or (__tt is float) or (__tt is int)): __content_140383655711776 = str( __content_140383655711776) else: if (__tt is bytes): __content_140383655711776 = decode( __content_140383655711776) else: if (__tt is not str): try: __content_140383655711776 = __content_140383655711776.__html__ except get('AttributeError', AttributeError): __converted = convert( __content_140383655711776) __content_140383655711776 = ( str(__content_140383655711776) if (__content_140383655711776 is __converted) else __converted) else: __content_140383655711776 = __content_140383655711776( ) if (__content_140383655711776 is not None): __append(__content_140383655711776) __append('\n') ____index_140383634707008 -= 1 if (____index_140383634707008 > 0): __append('') if (__backup_economy_140383637162696 is __marker): del econtext['economy'] else: econtext['economy'] = __backup_economy_140383637162696 except: if (__token is not None): rcontext.setdefault('__error__', []).append( (__tokens[__token] + ( __filename, _exc_info()[1], ))) raise
def render(__stream, econtext, rcontext, __i18n_domain=None, __i18n_context=None): __append = __stream.append __re_amp = g_re_amp __token = None __re_needs_escape = g_re_needs_escape def __convert(target): if (target is None): return __tt = type(target) if ((__tt is int) or (__tt is float) or (__tt is int)): target = str(target) else: if (__tt is bytes): target = decode(target) else: if (__tt is not str): try: target = target.__html__ except AttributeError: __converted = convert(target) target = (str(target) if (target is __converted) else __converted) else: target = target() return target def __quote(target, quote, quote_entity, default, default_marker): if (target is None): return if (target is default_marker): return default __tt = type(target) if ((__tt is int) or (__tt is float) or (__tt is int)): target = str(target) else: if (__tt is bytes): target = decode(target) else: if (__tt is not str): try: target = target.__html__ except: __converted = convert(target) target = (str(target) if (target is __converted) else __converted) else: return target() if (target is not None): try: escape = (__re_needs_escape(target) is not None) except TypeError: pass else: if escape: if ('&' in target): target = target.replace('&', '&') if ('<' in target): target = target.replace('<', '<') if ('>' in target): target = target.replace('>', '>') if ((quote is not None) and (quote in target)): target = target.replace(quote, quote_entity) return target translate = econtext['__translate'] decode = econtext['__decode'] convert = econtext['__convert'] on_error_handler = econtext['__on_error_handler'] try: getitem = econtext.__getitem__ get = econtext.get __append( '/* ******************************************************************\n * Definition of the industry tile, its callbacks, and graphics chain\n * ******************************************************************/\n\n' ) __backup_macroname_140383635816328 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7fad9cd43c50> name=None at 7fad9cd43ba8> -> __value __value = _static_140383637224528 econtext['macroname'] = __value # <Value 'load: spritesets.pynml' (5:30)> -> __macro __token = 242 __macro = ' spritesets.pynml' __macro = __loader(__macro) __token = 242 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_140383635816328 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_140383635816328 __append('\n\n') __backup_macroname_140383636694536 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7fad9cb53668> name=None at 7fad9cb533c8> -> __value __value = _static_140383635191400 econtext['macroname'] = __value # <Value 'load: spritelayouts.pynml' (7:30)> -> __macro __token = 300 __macro = ' spritelayouts.pynml' __macro = __loader(__macro) __token = 300 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_140383636694536 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_140383636694536 __append('\n\n') __backup_macroname_140383636696520 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7fad9cb534e0> name=None at 7fad9cb53320> -> __value __value = _static_140383635191008 econtext['macroname'] = __value # <Value 'load: graphics_switches.pynml' (9:30)> -> __macro __token = 361 __macro = ' graphics_switches.pynml' __macro = __loader(__macro) __token = 361 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_140383636696520 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_140383636696520 __append('\n\n') __backup_location_checks_tile_140383635887664 = get( 'location_checks_tile', __marker) # <Value 'load: location_check_macros_tile.pynml' (11:42)> -> __value __token = 438 __value = ' location_check_macros_tile.pynml' __value = __loader(__value) econtext['location_checks_tile'] = __value __backup_macroname_140383635671624 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7fad9cb53630> name=None at 7fad9cb53c50> -> __value __value = _static_140383635191344 econtext['macroname'] = __value # <Value "location_checks_tile.macros['render_tree']" (12:30)> -> __macro __token = 508 __macro = _lookup_attr(getitem('location_checks_tile'), 'macros')['render_tree'] __token = 508 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_140383635671624 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_140383635671624 if (__backup_location_checks_tile_140383635887664 is __marker): del econtext['location_checks_tile'] else: econtext[ 'location_checks_tile'] = __backup_location_checks_tile_140383635887664 __append('\n\n') __backup_animation_macros_140383635886992 = get( 'animation_macros', __marker) # <Value 'load: animation_macros.pynml' (14:38)> -> __value __token = 594 __value = ' animation_macros.pynml' __value = __loader(__value) econtext['animation_macros'] = __value __backup_macroname_140383635672520 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7fad9cb53588> name=None at 7fad9cb53ac8> -> __value __value = _static_140383635191176 econtext['macroname'] = __value # <Value "animation_macros.macros['tile_animation']" (15:30)> -> __macro __token = 654 __macro = _lookup_attr(getitem('animation_macros'), 'macros')['tile_animation'] __token = 654 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_140383635672520 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_140383635672520 if (__backup_animation_macros_140383635886992 is __marker): del econtext['animation_macros'] else: econtext[ 'animation_macros'] = __backup_animation_macros_140383635886992 __append('\n\n') __backup_macroname_140383637568904 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7fad9cb6ff28> name=None at 7fad9cb6ff60> -> __value __value = _static_140383635308328 econtext['macroname'] = __value # <Value 'load: properties_tile.pynml' (17:30)> -> __macro __token = 731 __macro = ' properties_tile.pynml' __macro = __loader(__macro) __token = 731 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_140383637568904 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_140383637568904 __append( '\n\n\n/* *************************************************\n * Definition of the industry\n * *************************************************/\n\n' ) __backup_macroname_140383634449800 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7fad9cca15c0> name=None at 7fad9cca12e8> -> __value __value = _static_140383636559296 econtext['macroname'] = __value # <Value 'load: layouts.pynml' (24:30)> -> __macro __token = 933 __macro = ' layouts.pynml' __macro = __loader(__macro) __token = 933 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_140383634449800 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_140383634449800 __append('\n\n') __backup_macroname_140383634451656 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7fad9cca19e8> name=None at 7fad9cca1390> -> __value __value = _static_140383636560360 econtext['macroname'] = __value # <Value 'load: availability.pynml' (26:30)> -> __macro __token = 988 __macro = ' availability.pynml' __macro = __loader(__macro) __token = 988 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_140383634451656 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_140383634451656 __append('\n\n') __backup_location_checks_industry_140383635889344 = get( 'location_checks_industry', __marker) # <Value 'load: location_check_macros_industry.pynml' (28:46)> -> __value __token = 1064 __value = ' location_check_macros_industry.pynml' __value = __loader(__value) econtext['location_checks_industry'] = __value __backup_macroname_140383634449928 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7fad9cca13c8> name=None at 7fad9cca1b70> -> __value __value = _static_140383636558792 econtext['macroname'] = __value # <Value "location_checks_industry.macros['render_tree']" (29:30)> -> __macro __token = 1138 __macro = _lookup_attr(getitem('location_checks_industry'), 'macros')['render_tree'] __token = 1138 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_140383634449928 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_140383634449928 if (__backup_location_checks_industry_140383635889344 is __marker): del econtext['location_checks_industry'] else: econtext[ 'location_checks_industry'] = __backup_location_checks_industry_140383635889344 __append('\n\n') __backup_macroname_140383636959432 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7fad9caddf60> name=None at 7fad9caddb38> -> __value __value = _static_140383634710368 econtext['macroname'] = __value # <Value 'load: properties_industry.pynml' (31:30)> -> __macro __token = 1220 __macro = ' properties_industry.pynml' __macro = __loader(__macro) __token = 1220 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_140383636959432 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_140383636959432 __append('\n\n') __append('\n') # <Interpolation value=<Substitution '\nitem(FEAT_INDUSTRIES, ${industry.id}, ${industry.numeric_id}) {\n\tgraphics {\n\t\tconstruction_probability:${industry.id}_check_availability;\n build_prod_change: randomise_primary_production_on_build;\n\t\tlocation_check: ${industry.id}_check_location;\n\t\tmonthly_prod_change: return CB_RESULT_IND_PROD_NO_CHANGE;\n\t\trandom_prod_change: return CB_RESULT_IND_PROD_NO_CHANGE;\n//\t\textra_text_industry: // no extra text. No production increase by means of FMSP\n\t\tcolour: switch_colour;\n\t}\n}\n' (34:38)> braces_required=True translation=False at 7fad9ccbd7b8> -> __content_140383655711776 __token = 1406 __token = 1430 __content_140383655711776 = _lookup_attr(getitem('industry'), 'id') __content_140383655711776 = __quote(__content_140383655711776, '\x00', '�', None, False) __token = 1446 __content_140383655711776_1444 = _lookup_attr( getitem('industry'), 'numeric_id') __content_140383655711776_1444 = __quote( __content_140383655711776_1444, '\x00', '�', None, False) __token = 1511 __content_140383655711776_1509 = _lookup_attr( getitem('industry'), 'id') __content_140383655711776_1509 = __quote( __content_140383655711776_1509, '\x00', '�', None, False) __token = 1645 __content_140383655711776_1643 = _lookup_attr( getitem('industry'), 'id') __content_140383655711776_1643 = __quote( __content_140383655711776_1643, '\x00', '�', None, False) __content_140383655711776 = ('%s%s%s%s%s%s%s%s%s' % ( '\nitem(FEAT_INDUSTRIES, ', (__content_140383655711776 if (__content_140383655711776 is not None) else ''), ', ', (__content_140383655711776_1444 if (__content_140383655711776_1444 is not None) else ''), ') {\n\tgraphics {\n\t\tconstruction_probability:', (__content_140383655711776_1509 if (__content_140383655711776_1509 is not None) else ''), '_check_availability;\n build_prod_change: randomise_primary_production_on_build;\n\t\tlocation_check: ', (__content_140383655711776_1643 if (__content_140383655711776_1643 is not None) else ''), '_check_location;\n\t\tmonthly_prod_change: return CB_RESULT_IND_PROD_NO_CHANGE;\n\t\trandom_prod_change: return CB_RESULT_IND_PROD_NO_CHANGE;\n//\t\textra_text_industry: // no extra text. No production increase by means of FMSP\n\t\tcolour: switch_colour;\n\t}\n}\n', )) if (__content_140383655711776 is None): pass else: if (__content_140383655711776 is False): __content_140383655711776 = None else: __tt = type(__content_140383655711776) if ((__tt is int) or (__tt is float) or (__tt is int)): __content_140383655711776 = str( __content_140383655711776) else: if (__tt is bytes): __content_140383655711776 = decode( __content_140383655711776) else: if (__tt is not str): try: __content_140383655711776 = __content_140383655711776.__html__ except get('AttributeError', AttributeError): __converted = convert( __content_140383655711776) __content_140383655711776 = ( str(__content_140383655711776) if (__content_140383655711776 is __converted) else __converted) else: __content_140383655711776 = __content_140383655711776( ) if (__content_140383655711776 is not None): __append(__content_140383655711776) except: if (__token is not None): rcontext.setdefault('__error__', []).append( (__tokens[__token] + ( __filename, _exc_info()[1], ))) raise
def render(__stream, econtext, rcontext, __i18n_domain=None, __i18n_context=None): __append = __stream.append __re_amp = g_re_amp __token = None __re_needs_escape = g_re_needs_escape def __convert(target): if (target is None): return __tt = type(target) if ((__tt is int) or (__tt is float) or (__tt is int)): target = str(target) else: if (__tt is bytes): target = decode(target) else: if (__tt is not str): try: target = target.__html__ except AttributeError: __converted = convert(target) target = (str(target) if (target is __converted) else __converted) else: target = target() return target def __quote(target, quote, quote_entity, default, default_marker): if (target is None): return if (target is default_marker): return default __tt = type(target) if ((__tt is int) or (__tt is float) or (__tt is int)): target = str(target) else: if (__tt is bytes): target = decode(target) else: if (__tt is not str): try: target = target.__html__ except: __converted = convert(target) target = (str(target) if (target is __converted) else __converted) else: return target() if (target is not None): try: escape = (__re_needs_escape(target) is not None) except TypeError: pass else: if escape: if ('&' in target): target = target.replace('&', '&') if ('<' in target): target = target.replace('<', '<') if ('>' in target): target = target.replace('>', '>') if ((quote is not None) and (quote in target)): target = target.replace(quote, quote_entity) return target translate = econtext['__translate'] decode = econtext['__decode'] convert = econtext['__convert'] on_error_handler = econtext['__on_error_handler'] try: getitem = econtext.__getitem__ get = econtext.get __append( '/* ******************************************************************\n * Definition of the industry tile, its callbacks, and graphics chain\n * ******************************************************************/\n\n' ) __backup_macroname_140302364938952 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7f9ab09862b0> name=None at 7f9ab0986e80> -> __value __value = _static_140302364467888 econtext['macroname'] = __value # <Value 'load: spritesets.pynml' (5:30)> -> __macro __token = 242 __macro = ' spritesets.pynml' __macro = __loader(__macro) __token = 242 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_140302364938952 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_140302364938952 __append('\n\n') __backup_macroname_140302364369160 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7f9ab09db2e8> name=None at 7f9ab09db940> -> __value __value = _static_140302364816104 econtext['macroname'] = __value # <Value 'load: spritelayouts.pynml' (7:30)> -> __macro __token = 300 __macro = ' spritelayouts.pynml' __macro = __loader(__macro) __token = 300 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_140302364369160 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_140302364369160 __append('\n\n') __backup_macroname_140302364371336 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7f9ab09dbac8> name=None at 7f9ab09db8d0> -> __value __value = _static_140302364818120 econtext['macroname'] = __value # <Value 'load: graphics_switches.pynml' (9:30)> -> __macro __token = 361 __macro = ' graphics_switches.pynml' __macro = __loader(__macro) __token = 361 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_140302364371336 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_140302364371336 __append('\n\n') __backup_location_checks_tile_140302390806288 = get( 'location_checks_tile', __marker) # <Value 'load: location_check_macros_tile.pynml' (11:42)> -> __value __token = 438 __value = ' location_check_macros_tile.pynml' __value = __loader(__value) econtext['location_checks_tile'] = __value __backup_macroname_140302364369992 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7f9ab09db4e0> name=None at 7f9ab09db470> -> __value __value = _static_140302364816608 econtext['macroname'] = __value # <Value "location_checks_tile.macros['render_tree']" (12:30)> -> __macro __token = 508 __macro = _lookup_attr(getitem('location_checks_tile'), 'macros')['render_tree'] __token = 508 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_140302364369992 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_140302364369992 if (__backup_location_checks_tile_140302390806288 is __marker): del econtext['location_checks_tile'] else: econtext[ 'location_checks_tile'] = __backup_location_checks_tile_140302390806288 __append('\n\n') __backup_animation_macros_140302390818296 = get( 'animation_macros', __marker) # <Value 'load: animation_macros.pynml' (14:38)> -> __value __token = 594 __value = ' animation_macros.pynml' __value = __loader(__value) econtext['animation_macros'] = __value __backup_macroname_140302364812296 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7f9ab09db9e8> name=None at 7f9ab09db278> -> __value __value = _static_140302364817896 econtext['macroname'] = __value # <Value "animation_macros.macros['tile_animation']" (15:30)> -> __macro __token = 654 __macro = _lookup_attr(getitem('animation_macros'), 'macros')['tile_animation'] __token = 654 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_140302364812296 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_140302364812296 if (__backup_animation_macros_140302390818296 is __marker): del econtext['animation_macros'] else: econtext[ 'animation_macros'] = __backup_animation_macros_140302390818296 __append('\n\n') __backup_macroname_140302364623304 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7f9ab09dbf28> name=None at 7f9ab09dbc18> -> __value __value = _static_140302364819240 econtext['macroname'] = __value # <Value 'load: properties_tile.pynml' (17:30)> -> __macro __token = 731 __macro = ' properties_tile.pynml' __macro = __loader(__macro) __token = 731 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_140302364623304 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_140302364623304 __append( '\n\n\n/* *************************************************\n * Definition of the industry\n * *************************************************/\n\n' ) __backup_macroname_140302364197064 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7f9ab09db978> name=None at 7f9ab09dbef0> -> __value __value = _static_140302364817784 econtext['macroname'] = __value # <Value 'load: layouts.pynml' (24:30)> -> __macro __token = 933 __macro = ' layouts.pynml' __macro = __loader(__macro) __token = 933 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_140302364197064 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_140302364197064 __append('\n\n') __backup_macroname_140302364198344 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7f9ab09db7f0> name=None at 7f9ab09db860> -> __value __value = _static_140302364817392 econtext['macroname'] = __value # <Value 'load: produce_secondary.pynml' (26:30)> -> __macro __token = 988 __macro = ' produce_secondary.pynml' __macro = __loader(__macro) __token = 988 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_140302364198344 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_140302364198344 __append('\n\n') __backup_macroname_140302364811848 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7f9ab09dbb70> name=None at 7f9ab09dbd30> -> __value __value = _static_140302364818288 econtext['macroname'] = __value # <Value 'load: closure_secondary.pynml' (28:30)> -> __macro __token = 1053 __macro = ' closure_secondary.pynml' __macro = __loader(__macro) __token = 1053 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_140302364811848 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_140302364811848 __append('\n\n') __backup_macroname_140302364200776 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7f9ab09ca048> name=None at 7f9ab09cab38> -> __value __value = _static_140302364745800 econtext['macroname'] = __value # <Value 'load: extra_text_secondary.pynml' (30:30)> -> __macro __token = 1118 __macro = ' extra_text_secondary.pynml' __macro = __loader(__macro) __token = 1118 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_140302364200776 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_140302364200776 __append('\n\n') __backup_macroname_140302364952584 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7f9ab09ca588> name=None at 7f9ab09ca860> -> __value __value = _static_140302364747144 econtext['macroname'] = __value # <Value 'load: availability.pynml' (32:30)> -> __macro __token = 1186 __macro = ' availability.pynml' __macro = __loader(__macro) __token = 1186 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_140302364952584 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_140302364952584 __append('\n\n') __backup_location_checks_industry_140302390808416 = get( 'location_checks_industry', __marker) # <Value 'load: location_check_macros_industry.pynml' (34:46)> -> __value __token = 1262 __value = ' location_check_macros_industry.pynml' __value = __loader(__value) econtext['location_checks_industry'] = __value __backup_macroname_140302364511304 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7f9ab09cae10> name=None at 7f9ab09ca6a0> -> __value __value = _static_140302364749328 econtext['macroname'] = __value # <Value "location_checks_industry.macros['render_tree']" (35:30)> -> __macro __token = 1336 __macro = _lookup_attr(getitem('location_checks_industry'), 'macros')['render_tree'] __token = 1336 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_140302364511304 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_140302364511304 if (__backup_location_checks_industry_140302390808416 is __marker): del econtext['location_checks_industry'] else: econtext[ 'location_checks_industry'] = __backup_location_checks_industry_140302390808416 __append('\n\n') __backup_macroname_140302364511112 = get('macroname', __marker) # <Static value=<_ast.Str object at 0x7f9ab09ca550> name=None at 7f9ab09ca3c8> -> __value __value = _static_140302364747088 econtext['macroname'] = __value # <Value 'load: properties_industry.pynml' (37:30)> -> __macro __token = 1418 __macro = ' properties_industry.pynml' __macro = __loader(__macro) __token = 1418 __m = __macro.include __m(__stream, econtext.copy(), rcontext, __i18n_domain) econtext.update(rcontext) if (__backup_macroname_140302364511112 is __marker): del econtext['macroname'] else: econtext['macroname'] = __backup_macroname_140302364511112 __append('\n\n') __append('\n') __backup_economy_140302364495376 = get('economy', __marker) # <Value 'economies' (40:37)> -> __iterator __token = 1602 __iterator = getitem('economies') ( __iterator, ____index_140302364748320, ) = getitem('repeat')('economy', __iterator) econtext['economy'] = None for __item in __iterator: econtext['economy'] = __item __append('\n ') # <Value "industry.get_property('enabled', economy) == True" (41:39)> -> __condition __token = 1653 __condition = (_lookup_attr( getitem('industry'), 'get_property')('enabled', getitem('economy')) == True) if __condition: # <Interpolation value=<Substitution '\n if (economy==${economy.numeric_id}) {\n item(FEAT_INDUSTRIES, ${industry.id}, ${industry.numeric_id}) {\n graphics {\n construction_probability: ${industry.id}_check_availability;\n produce_cargo_arrival: ${industry.id}_produce;\n monthly_prod_change: ${industry.id}_check_secondary_production_level;\n random_prod_change: ${industry.id}_check_secondary_closure;\n location_check: ${industry.id}_check_location;\n extra_text_fund: ${industry.get_extra_text_fund(economy)};\n extra_text_industry: ${industry.id}_extra_text;\n cargo_subtype_display: ${industry.id}_cargo_subtype_display;\n colour: switch_colour;\n }\n }\n }\n ' (41:90)> braces_required=True translation=False at 7f9ab09cac88> -> __content_140302383355024 __token = 1713 __token = 1728 __content_140302383355024 = _lookup_attr( getitem('economy'), 'numeric_id') __content_140302383355024 = __quote( __content_140302383355024, '\x00', '�', None, False) __token = 1787 __content_140302383355024_1785 = _lookup_attr( getitem('industry'), 'id') __content_140302383355024_1785 = __quote( __content_140302383355024_1785, '\x00', '�', None, False) __token = 1803 __content_140302383355024_1801 = _lookup_attr( getitem('industry'), 'numeric_id') __content_140302383355024_1801 = __quote( __content_140302383355024_1801, '\x00', '�', None, False) __token = 1902 __content_140302383355024_1900 = _lookup_attr( getitem('industry'), 'id') __content_140302383355024_1900 = __quote( __content_140302383355024_1900, '\x00', '�', None, False) __token = 1983 __content_140302383355024_1981 = _lookup_attr( getitem('industry'), 'id') __content_140302383355024_1981 = __quote( __content_140302383355024_1981, '\x00', '�', None, False) __token = 2053 __content_140302383355024_2051 = _lookup_attr( getitem('industry'), 'id') __content_140302383355024_2051 = __quote( __content_140302383355024_2051, '\x00', '�', None, False) __token = 2148 __content_140302383355024_2146 = _lookup_attr( getitem('industry'), 'id') __content_140302383355024_2146 = __quote( __content_140302383355024_2146, '\x00', '�', None, False) __token = 2234 __content_140302383355024_2232 = _lookup_attr( getitem('industry'), 'id') __content_140302383355024_2232 = __quote( __content_140302383355024_2232, '\x00', '�', None, False) __token = 2311 __content_140302383355024_2309 = _lookup_attr( getitem('industry'), 'get_extra_text_fund')(getitem('economy')) __content_140302383355024_2309 = __quote( __content_140302383355024_2309, '\x00', '�', None, False) __token = 2399 __content_140302383355024_2397 = _lookup_attr( getitem('industry'), 'id') __content_140302383355024_2397 = __quote( __content_140302383355024_2397, '\x00', '�', None, False) __token = 2472 __content_140302383355024_2470 = _lookup_attr( getitem('industry'), 'id') __content_140302383355024_2470 = __quote( __content_140302383355024_2470, '\x00', '�', None, False) __content_140302383355024 = ('%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s' % ( '\n if (economy==', (__content_140302383355024 if (__content_140302383355024 is not None) else ''), ') {\n item(FEAT_INDUSTRIES, ', (__content_140302383355024_1785 if (__content_140302383355024_1785 is not None) else ''), ', ', (__content_140302383355024_1801 if (__content_140302383355024_1801 is not None) else ''), ') {\n graphics {\n construction_probability: ', (__content_140302383355024_1900 if (__content_140302383355024_1900 is not None) else ''), '_check_availability;\n produce_cargo_arrival: ', (__content_140302383355024_1981 if (__content_140302383355024_1981 is not None) else ''), '_produce;\n monthly_prod_change: ', (__content_140302383355024_2051 if (__content_140302383355024_2051 is not None) else ''), '_check_secondary_production_level;\n random_prod_change: ', (__content_140302383355024_2146 if (__content_140302383355024_2146 is not None) else ''), '_check_secondary_closure;\n location_check: ', (__content_140302383355024_2232 if (__content_140302383355024_2232 is not None) else ''), '_check_location;\n extra_text_fund: ', (__content_140302383355024_2309 if (__content_140302383355024_2309 is not None) else ''), ';\n extra_text_industry: ', (__content_140302383355024_2397 if (__content_140302383355024_2397 is not None) else ''), '_extra_text;\n cargo_subtype_display: ', (__content_140302383355024_2470 if (__content_140302383355024_2470 is not None) else ''), '_cargo_subtype_display;\n colour: switch_colour;\n }\n }\n }\n ', )) if (__content_140302383355024 is None): pass else: if (__content_140302383355024 is False): __content_140302383355024 = None else: __tt = type(__content_140302383355024) if ((__tt is int) or (__tt is float) or (__tt is int)): __content_140302383355024 = str( __content_140302383355024) else: if (__tt is bytes): __content_140302383355024 = decode( __content_140302383355024) else: if (__tt is not str): try: __content_140302383355024 = __content_140302383355024.__html__ except get('AttributeError', AttributeError): __converted = convert( __content_140302383355024) __content_140302383355024 = ( str(__content_140302383355024) if (__content_140302383355024 is __converted) else __converted) else: __content_140302383355024 = __content_140302383355024( ) if (__content_140302383355024 is not None): __append(__content_140302383355024) __append('\n') ____index_140302364748320 -= 1 if (____index_140302364748320 > 0): __append('') if (__backup_economy_140302364495376 is __marker): del econtext['economy'] else: econtext['economy'] = __backup_economy_140302364495376 __append('\n') except: if (__token is not None): rcontext.setdefault('__error__', []).append( (__tokens[__token] + ( __filename, _exc_info()[1], ))) raise