#ifdef OMC_BASE_FILE
#define OMC_FILE OMC_BASE_FILE
#else
#define OMC_FILE "TplMain.c"
#endif
#include "omc_simulation_settings.h"
#include "TplMain.h"
#define _OMC_LIT0_data "[ "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT0,2,_OMC_LIT0_data);
#define _OMC_LIT0 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT0)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT1,2,4) {&Tpl_StringToken_ST__STRING__desc,_OMC_LIT0}};
#define _OMC_LIT1 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT1)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT2,2,7) {&Tpl_BlockType_BT__ANCHOR__desc,MMC_IMMEDIATE(MMC_TAGFIXNUM(0))}};
#define _OMC_LIT2 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT2)
#define _OMC_LIT3_data ";\n"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT3,2,_OMC_LIT3_data);
#define _OMC_LIT3 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT3)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT4,2,5) {&Tpl_StringToken_ST__LINE__desc,_OMC_LIT3}};
#define _OMC_LIT4 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT4)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT5,1,1) {_OMC_LIT4}};
#define _OMC_LIT5 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT5)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT6,1,3) {&Tpl_StringToken_ST__NEW__LINE__desc,}};
#define _OMC_LIT6 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT6)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT7,9,3) {&Tpl_IterOptions_ITER__OPTIONS__desc,MMC_IMMEDIATE(MMC_TAGFIXNUM(0)),MMC_REFSTRUCTLIT(mmc_none),_OMC_LIT5,MMC_IMMEDIATE(MMC_TAGFIXNUM(0)),MMC_IMMEDIATE(MMC_TAGFIXNUM(0)),_OMC_LIT6,MMC_IMMEDIATE(MMC_TAGFIXNUM(0)),_OMC_LIT6}};
#define _OMC_LIT7 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT7)
#define _OMC_LIT8_data " ]"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT8,2,_OMC_LIT8_data);
#define _OMC_LIT8 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT8)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT9,2,4) {&Tpl_StringToken_ST__STRING__desc,_OMC_LIT8}};
#define _OMC_LIT9 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT9)
#define _OMC_LIT10_data ", "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT10,2,_OMC_LIT10_data);
#define _OMC_LIT10 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT10)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT11,2,4) {&Tpl_StringToken_ST__STRING__desc,_OMC_LIT10}};
#define _OMC_LIT11 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT11)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT12,1,1) {_OMC_LIT11}};
#define _OMC_LIT12 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT12)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT13,9,3) {&Tpl_IterOptions_ITER__OPTIONS__desc,MMC_IMMEDIATE(MMC_TAGFIXNUM(0)),MMC_REFSTRUCTLIT(mmc_none),_OMC_LIT12,MMC_IMMEDIATE(MMC_TAGFIXNUM(0)),MMC_IMMEDIATE(MMC_TAGFIXNUM(0)),_OMC_LIT6,MMC_IMMEDIATE(MMC_TAGFIXNUM(0)),_OMC_LIT6}};
#define _OMC_LIT13 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT13)
#define _OMC_LIT14_data "+"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT14,1,_OMC_LIT14_data);
#define _OMC_LIT14 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT14)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT15,2,4) {&Tpl_StringToken_ST__STRING__desc,_OMC_LIT14}};
#define _OMC_LIT15 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT15)
#define _OMC_LIT16_data "*"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT16,1,_OMC_LIT16_data);
#define _OMC_LIT16 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT16)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT17,2,4) {&Tpl_StringToken_ST__STRING__desc,_OMC_LIT16}};
#define _OMC_LIT17 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT17)
#define _OMC_LIT18_data "<"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT18,1,_OMC_LIT18_data);
#define _OMC_LIT18 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT18)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT19,2,4) {&Tpl_StringToken_ST__STRING__desc,_OMC_LIT18}};
#define _OMC_LIT19 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT19)
#define _OMC_LIT20_data "("
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT20,1,_OMC_LIT20_data);
#define _OMC_LIT20 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT20)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT21,2,4) {&Tpl_StringToken_ST__STRING__desc,_OMC_LIT20}};
#define _OMC_LIT21 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT21)
#define _OMC_LIT22_data " "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT22,1,_OMC_LIT22_data);
#define _OMC_LIT22 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT22)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT23,2,4) {&Tpl_StringToken_ST__STRING__desc,_OMC_LIT22}};
#define _OMC_LIT23 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT23)
#define _OMC_LIT24_data ")"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT24,1,_OMC_LIT24_data);
#define _OMC_LIT24 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT24)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT25,2,4) {&Tpl_StringToken_ST__STRING__desc,_OMC_LIT24}};
#define _OMC_LIT25 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT25)
#define _OMC_LIT26_data " = "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT26,3,_OMC_LIT26_data);
#define _OMC_LIT26 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT26)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT27,2,4) {&Tpl_StringToken_ST__STRING__desc,_OMC_LIT26}};
#define _OMC_LIT27 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT27)
#define _OMC_LIT28_data ";"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT28,1,_OMC_LIT28_data);
#define _OMC_LIT28 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT28)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT29,2,4) {&Tpl_StringToken_ST__STRING__desc,_OMC_LIT28}};
#define _OMC_LIT29 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT29)
#define _OMC_LIT30_data "while("
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT30,6,_OMC_LIT30_data);
#define _OMC_LIT30 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT30)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT31,2,4) {&Tpl_StringToken_ST__STRING__desc,_OMC_LIT30}};
#define _OMC_LIT31 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT31)
#define _OMC_LIT32_data ") {\n"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT32,4,_OMC_LIT32_data);
#define _OMC_LIT32 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT32)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT33,2,5) {&Tpl_StringToken_ST__LINE__desc,_OMC_LIT32}};
#define _OMC_LIT33 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT33)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT34,2,4) {&Tpl_BlockType_BT__INDENT__desc,MMC_IMMEDIATE(MMC_TAGFIXNUM(2))}};
#define _OMC_LIT34 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT34)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT35,1,1) {_OMC_LIT6}};
#define _OMC_LIT35 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT35)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT36,9,3) {&Tpl_IterOptions_ITER__OPTIONS__desc,MMC_IMMEDIATE(MMC_TAGFIXNUM(0)),MMC_REFSTRUCTLIT(mmc_none),_OMC_LIT35,MMC_IMMEDIATE(MMC_TAGFIXNUM(0)),MMC_IMMEDIATE(MMC_TAGFIXNUM(0)),_OMC_LIT6,MMC_IMMEDIATE(MMC_TAGFIXNUM(0)),_OMC_LIT6}};
#define _OMC_LIT36 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT36)
#define _OMC_LIT37_data "}"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT37,1,_OMC_LIT37_data);
#define _OMC_LIT37 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT37)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT38,2,4) {&Tpl_StringToken_ST__STRING__desc,_OMC_LIT37}};
#define _OMC_LIT38 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT38)
#define _OMC_LIT39_data "\n A Test:\n"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT39,10,_OMC_LIT39_data);
#define _OMC_LIT39 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT39)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT40,3,3) {&Tpl_Text_MEM__TEXT__desc,MMC_REFSTRUCTLIT(mmc_nil),MMC_REFSTRUCTLIT(mmc_nil)}};
#define _OMC_LIT40 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT40)
#define _OMC_LIT41_data "Ahoj Susan"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT41,10,_OMC_LIT41_data);
#define _OMC_LIT41 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT41)
#define _OMC_LIT42_data "Ahoj SusanAhoj Susan\n          Ahoj Susan"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT42,41,_OMC_LIT42_data);
#define _OMC_LIT42 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT42)
#define _OMC_LIT43_data "Anchor"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT43,6,_OMC_LIT43_data);
#define _OMC_LIT43 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT43)
#define _OMC_LIT44_data "Susan"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT44,5,_OMC_LIT44_data);
#define _OMC_LIT44 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT44)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT45,2,3) {&TplAbsyn_PathIdent_IDENT__desc,_OMC_LIT44}};
#define _OMC_LIT45 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT45)
#define _OMC_LIT46_data "PathIdent IDENT"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT46,15,_OMC_LIT46_data);
#define _OMC_LIT46 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT46)
#define _OMC_LIT47_data "Hej"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT47,3,_OMC_LIT47_data);
#define _OMC_LIT47 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT47)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT48,3,4) {&TplAbsyn_PathIdent_PATH__IDENT__desc,_OMC_LIT47,_OMC_LIT45}};
#define _OMC_LIT48 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT48)
#define _OMC_LIT49_data "Hej.Susan"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT49,9,_OMC_LIT49_data);
#define _OMC_LIT49 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT49)
#define _OMC_LIT50_data "PathIdent PATH_IDENT"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT50,20,_OMC_LIT50_data);
#define _OMC_LIT50 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT50)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT51,1,9) {&TplAbsyn_TypeSignature_TEXT__TYPE__desc,}};
#define _OMC_LIT51 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT51)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT52,2,0) {_OMC_LIT47,_OMC_LIT51}};
#define _OMC_LIT52 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT52)
#define _OMC_LIT53_data "Pa"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT53,2,_OMC_LIT53_data);
#define _OMC_LIT53 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT53)
#define _OMC_LIT54_data "Li"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT54,2,_OMC_LIT54_data);
#define _OMC_LIT54 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT54)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT55,2,3) {&TplAbsyn_PathIdent_IDENT__desc,_OMC_LIT54}};
#define _OMC_LIT55 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT55)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT56,3,4) {&TplAbsyn_PathIdent_PATH__IDENT__desc,_OMC_LIT53,_OMC_LIT55}};
#define _OMC_LIT56 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT56)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT57,2,7) {&TplAbsyn_TypeSignature_NAMED__TYPE__desc,_OMC_LIT56}};
#define _OMC_LIT57 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT57)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT58,2,3) {&TplAbsyn_TypeSignature_LIST__TYPE__desc,_OMC_LIT57}};
#define _OMC_LIT58 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT58)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT59,2,0) {_OMC_LIT44,_OMC_LIT58}};
#define _OMC_LIT59 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT59)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT60,2,1) {_OMC_LIT59,MMC_REFSTRUCTLIT(mmc_nil)}};
#define _OMC_LIT60 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT60)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT61,2,1) {_OMC_LIT52,_OMC_LIT60}};
#define _OMC_LIT61 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT61)
#define _OMC_LIT62_data "Tpl.Text Hej;\nlist<Pa.Li> Susan;"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT62,32,_OMC_LIT62_data);
#define _OMC_LIT62 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT62)
#define _OMC_LIT63_data "typedIdents"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT63,11,_OMC_LIT63_data);
#define _OMC_LIT63 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT63)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT64,2,0) {_OMC_LIT44,_OMC_LIT57}};
#define _OMC_LIT64 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT64)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT65,2,1) {_OMC_LIT64,MMC_REFSTRUCTLIT(mmc_nil)}};
#define _OMC_LIT65 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT65)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT66,2,1) {_OMC_LIT52,_OMC_LIT65}};
#define _OMC_LIT66 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT66)
#define _OMC_LIT67_data "input"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT67,5,_OMC_LIT67_data);
#define _OMC_LIT67 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT67)
#define _OMC_LIT68_data "in"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT68,2,_OMC_LIT68_data);
#define _OMC_LIT68 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT68)
#define _OMC_LIT69_data "input Tpl.Text inHej;\ninput Pa.Li inSusan;"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT69,42,_OMC_LIT69_data);
#define _OMC_LIT69 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT69)
#define _OMC_LIT70_data "typedIdentsEx"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT70,13,_OMC_LIT70_data);
#define _OMC_LIT70 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT70)
#define _OMC_LIT71_data "Ko"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT71,2,_OMC_LIT71_data);
#define _OMC_LIT71 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT71)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT72,2,3) {&TplAbsyn_PathIdent_IDENT__desc,_OMC_LIT71}};
#define _OMC_LIT72 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT72)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT73,3,4) {&TplAbsyn_PathIdent_PATH__IDENT__desc,_OMC_LIT54,_OMC_LIT72}};
#define _OMC_LIT73 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT73)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT74,3,4) {&TplAbsyn_PathIdent_PATH__IDENT__desc,_OMC_LIT53,_OMC_LIT73}};
#define _OMC_LIT74 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT74)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT75,3,3) {&TplAbsyn_MMDeclaration_MM__IMPORT__desc,MMC_IMMEDIATE(MMC_TAGFIXNUM(1)),_OMC_LIT74}};
#define _OMC_LIT75 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT75)
#define _OMC_LIT76_data "strTokConst"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT76,11,_OMC_LIT76_data);
#define _OMC_LIT76 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT76)
#define _OMC_LIT77_data "is"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT77,2,_OMC_LIT77_data);
#define _OMC_LIT77 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT77)
#define _OMC_LIT78_data "beautiful\n"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT78,10,_OMC_LIT78_data);
#define _OMC_LIT78 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT78)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT79,2,1) {_OMC_LIT78,MMC_REFSTRUCTLIT(mmc_nil)}};
#define _OMC_LIT79 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT79)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT80,2,1) {_OMC_LIT77,_OMC_LIT79}};
#define _OMC_LIT80 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT80)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT81,2,1) {_OMC_LIT44,_OMC_LIT80}};
#define _OMC_LIT81 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT81)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT82,3,6) {&Tpl_StringToken_ST__STRING__LIST__desc,_OMC_LIT81,MMC_IMMEDIATE(MMC_TAGFIXNUM(1))}};
#define _OMC_LIT82 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT82)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT83,4,4) {&TplAbsyn_MMDeclaration_MM__STR__TOKEN__DECL__desc,MMC_IMMEDIATE(MMC_TAGFIXNUM(1)),_OMC_LIT76,_OMC_LIT82}};
#define _OMC_LIT83 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT83)
#define _OMC_LIT84_data "c_literalValueConst"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT84,19,_OMC_LIT84_data);
#define _OMC_LIT84 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT84)
#define _OMC_LIT85_data "123"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT85,3,_OMC_LIT85_data);
#define _OMC_LIT85 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT85)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT86,1,11) {&TplAbsyn_TypeSignature_INTEGER__TYPE__desc,}};
#define _OMC_LIT86 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT86)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT87,5,5) {&TplAbsyn_MMDeclaration_MM__LITERAL__DECL__desc,MMC_IMMEDIATE(MMC_TAGFIXNUM(0)),_OMC_LIT84,_OMC_LIT85,_OMC_LIT86}};
#define _OMC_LIT87 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT87)
#define _OMC_LIT88_data "MuchFun"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT88,7,_OMC_LIT88_data);
#define _OMC_LIT88 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT88)
#define _OMC_LIT89_data "txt"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT89,3,_OMC_LIT89_data);
#define _OMC_LIT89 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT89)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT90,2,0) {_OMC_LIT89,_OMC_LIT51}};
#define _OMC_LIT90 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT90)
#define _OMC_LIT91_data "laughLevel"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT91,10,_OMC_LIT91_data);
#define _OMC_LIT91 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT91)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT92,2,0) {_OMC_LIT91,_OMC_LIT86}};
#define _OMC_LIT92 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT92)
#define _OMC_LIT93_data "jokes"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT93,5,_OMC_LIT93_data);
#define _OMC_LIT93 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT93)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT94,1,8) {&TplAbsyn_TypeSignature_STRING__TYPE__desc,}};
#define _OMC_LIT94 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT94)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT95,2,3) {&TplAbsyn_TypeSignature_LIST__TYPE__desc,_OMC_LIT94}};
#define _OMC_LIT95 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT95)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT96,2,0) {_OMC_LIT93,_OMC_LIT95}};
#define _OMC_LIT96 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT96)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT97,2,1) {_OMC_LIT96,MMC_REFSTRUCTLIT(mmc_nil)}};
#define _OMC_LIT97 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT97)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT98,2,1) {_OMC_LIT92,_OMC_LIT97}};
#define _OMC_LIT98 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT98)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT99,2,1) {_OMC_LIT90,_OMC_LIT98}};
#define _OMC_LIT99 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT99)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT100,2,1) {_OMC_LIT90,MMC_REFSTRUCTLIT(mmc_nil)}};
#define _OMC_LIT100 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT100)
#define _OMC_LIT101_data "out_txt"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT101,7,_OMC_LIT101_data);
#define _OMC_LIT101 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT101)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT102,2,1) {_OMC_LIT101,MMC_REFSTRUCTLIT(mmc_nil)}};
#define _OMC_LIT102 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT102)
#define _OMC_LIT103_data "Tpl"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT103,3,_OMC_LIT103_data);
#define _OMC_LIT103 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT103)
#define _OMC_LIT104_data "writeStr"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT104,8,_OMC_LIT104_data);
#define _OMC_LIT104 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT104)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT105,2,3) {&TplAbsyn_PathIdent_IDENT__desc,_OMC_LIT104}};
#define _OMC_LIT105 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT105)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT106,3,4) {&TplAbsyn_PathIdent_PATH__IDENT__desc,_OMC_LIT103,_OMC_LIT105}};
#define _OMC_LIT106 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT106)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT107,2,3) {&TplAbsyn_PathIdent_IDENT__desc,_OMC_LIT89}};
#define _OMC_LIT107 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT107)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT108,2,5) {&TplAbsyn_MMExp_MM__IDENT__desc,_OMC_LIT107}};
#define _OMC_LIT108 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT108)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT109,2,7) {&TplAbsyn_MMExp_MM__STRING__desc,_OMC_LIT44}};
#define _OMC_LIT109 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT109)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT110,2,1) {_OMC_LIT109,MMC_REFSTRUCTLIT(mmc_nil)}};
#define _OMC_LIT110 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT110)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT111,2,1) {_OMC_LIT108,_OMC_LIT110}};
#define _OMC_LIT111 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT111)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT112,3,4) {&TplAbsyn_MMExp_MM__FN__CALL__desc,_OMC_LIT106,_OMC_LIT111}};
#define _OMC_LIT112 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT112)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT113,3,3) {&TplAbsyn_MMExp_MM__ASSIGN__desc,_OMC_LIT102,_OMC_LIT112}};
#define _OMC_LIT113 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT113)
#define _OMC_LIT114_data "writeTok"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT114,8,_OMC_LIT114_data);
#define _OMC_LIT114 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT114)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT115,2,3) {&TplAbsyn_PathIdent_IDENT__desc,_OMC_LIT114}};
#define _OMC_LIT115 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT115)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT116,3,4) {&TplAbsyn_PathIdent_PATH__IDENT__desc,_OMC_LIT103,_OMC_LIT115}};
#define _OMC_LIT116 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT116)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT117,2,3) {&TplAbsyn_PathIdent_IDENT__desc,_OMC_LIT101}};
#define _OMC_LIT117 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT117)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT118,2,5) {&TplAbsyn_MMExp_MM__IDENT__desc,_OMC_LIT117}};
#define _OMC_LIT118 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT118)
#define _OMC_LIT119_data "Susan is cosmic!\n"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT119,17,_OMC_LIT119_data);
#define _OMC_LIT119 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT119)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT120,2,5) {&Tpl_StringToken_ST__LINE__desc,_OMC_LIT119}};
#define _OMC_LIT120 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT120)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT121,2,6) {&TplAbsyn_MMExp_MM__STR__TOKEN__desc,_OMC_LIT120}};
#define _OMC_LIT121 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT121)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT122,2,1) {_OMC_LIT121,MMC_REFSTRUCTLIT(mmc_nil)}};
#define _OMC_LIT122 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT122)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT123,2,1) {_OMC_LIT118,_OMC_LIT122}};
#define _OMC_LIT123 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT123)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT124,3,4) {&TplAbsyn_MMExp_MM__FN__CALL__desc,_OMC_LIT116,_OMC_LIT123}};
#define _OMC_LIT124 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT124)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT125,3,3) {&TplAbsyn_MMExp_MM__ASSIGN__desc,_OMC_LIT102,_OMC_LIT124}};
#define _OMC_LIT125 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT125)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT126,2,1) {_OMC_LIT125,MMC_REFSTRUCTLIT(mmc_nil)}};
#define _OMC_LIT126 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT126)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT127,2,1) {_OMC_LIT113,_OMC_LIT126}};
#define _OMC_LIT127 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT127)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT128,1,3) {&TplAbsyn_GenInfo_GI__TEMPL__FUN__desc,}};
#define _OMC_LIT128 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT128)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT129,8,6) {&TplAbsyn_MMDeclaration_MM__FUN__desc,MMC_IMMEDIATE(MMC_TAGFIXNUM(1)),_OMC_LIT88,_OMC_LIT99,_OMC_LIT100,_OMC_LIT99,_OMC_LIT127,_OMC_LIT128}};
#define _OMC_LIT129 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT129)
#define _OMC_LIT130_data "MoreFun"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT130,7,_OMC_LIT130_data);
#define _OMC_LIT130 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT130)
#define _OMC_LIT131_data "v_laughLevel"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT131,12,_OMC_LIT131_data);
#define _OMC_LIT131 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT131)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT132,2,5) {&TplAbsyn_TypeSignature_OPTION__TYPE__desc,_OMC_LIT94}};
#define _OMC_LIT132 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT132)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT133,2,0) {_OMC_LIT131,_OMC_LIT132}};
#define _OMC_LIT133 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT133)
#define _OMC_LIT134_data "v_jokes"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT134,7,_OMC_LIT134_data);
#define _OMC_LIT134 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT134)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT135,2,0) {_OMC_LIT134,_OMC_LIT95}};
#define _OMC_LIT135 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT135)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT136,2,1) {_OMC_LIT135,MMC_REFSTRUCTLIT(mmc_nil)}};
#define _OMC_LIT136 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT136)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT137,2,1) {_OMC_LIT133,_OMC_LIT136}};
#define _OMC_LIT137 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT137)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT138,2,1) {_OMC_LIT90,_OMC_LIT137}};
#define _OMC_LIT138 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT138)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT139,2,4) {&TplAbsyn_MatchingExp_BIND__MATCH__desc,_OMC_LIT89}};
#define _OMC_LIT139 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT139)
#define _OMC_LIT140_data "v_hej"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT140,5,_OMC_LIT140_data);
#define _OMC_LIT140 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT140)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT141,2,11) {&TplAbsyn_MatchingExp_STRING__MATCH__desc,_OMC_LIT47}};
#define _OMC_LIT141 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT141)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT142,3,3) {&TplAbsyn_MatchingExp_BIND__AS__MATCH__desc,_OMC_LIT140,_OMC_LIT141}};
#define _OMC_LIT142 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT142)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT143,2,6) {&TplAbsyn_MatchingExp_SOME__MATCH__desc,_OMC_LIT142}};
#define _OMC_LIT143 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT143)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT144,2,4) {&TplAbsyn_MatchingExp_BIND__MATCH__desc,_OMC_LIT134}};
#define _OMC_LIT144 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT144)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT145,2,1) {_OMC_LIT144,MMC_REFSTRUCTLIT(mmc_nil)}};
#define _OMC_LIT145 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT145)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT146,2,1) {_OMC_LIT143,_OMC_LIT145}};
#define _OMC_LIT146 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT146)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT147,2,1) {_OMC_LIT139,_OMC_LIT146}};
#define _OMC_LIT147 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT147)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT148,2,1) {_OMC_LIT89,MMC_REFSTRUCTLIT(mmc_nil)}};
#define _OMC_LIT148 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT148)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT149,2,3) {&TplAbsyn_PathIdent_IDENT__desc,_OMC_LIT140}};
#define _OMC_LIT149 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT149)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT150,2,5) {&TplAbsyn_MMExp_MM__IDENT__desc,_OMC_LIT149}};
#define _OMC_LIT150 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT150)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT151,2,1) {_OMC_LIT150,MMC_REFSTRUCTLIT(mmc_nil)}};
#define _OMC_LIT151 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT151)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT152,2,1) {_OMC_LIT108,_OMC_LIT151}};
#define _OMC_LIT152 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT152)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT153,3,4) {&TplAbsyn_MMExp_MM__FN__CALL__desc,_OMC_LIT106,_OMC_LIT152}};
#define _OMC_LIT153 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT153)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT154,3,3) {&TplAbsyn_MMExp_MM__ASSIGN__desc,_OMC_LIT148,_OMC_LIT153}};
#define _OMC_LIT154 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT154)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT155,2,1) {_OMC_LIT154,MMC_REFSTRUCTLIT(mmc_nil)}};
#define _OMC_LIT155 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT155)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT156,2,0) {_OMC_LIT147,_OMC_LIT155}};
#define _OMC_LIT156 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT156)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT157,2,4) {&TplAbsyn_MatchingExp_BIND__MATCH__desc,_OMC_LIT140}};
#define _OMC_LIT157 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT157)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT158,2,6) {&TplAbsyn_MatchingExp_SOME__MATCH__desc,_OMC_LIT157}};
#define _OMC_LIT158 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT158)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT159,1,13) {&TplAbsyn_MatchingExp_REST__MATCH__desc,}};
#define _OMC_LIT159 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT159)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT160,2,1) {_OMC_LIT159,MMC_REFSTRUCTLIT(mmc_nil)}};
#define _OMC_LIT160 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT160)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT161,2,1) {_OMC_LIT158,_OMC_LIT160}};
#define _OMC_LIT161 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT161)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT162,2,1) {_OMC_LIT139,_OMC_LIT161}};
#define _OMC_LIT162 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT162)
#define _OMC_LIT163_data "Not hej:"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT163,8,_OMC_LIT163_data);
#define _OMC_LIT163 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT163)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT164,2,7) {&TplAbsyn_MMExp_MM__STRING__desc,_OMC_LIT163}};
#define _OMC_LIT164 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT164)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT165,2,1) {_OMC_LIT164,MMC_REFSTRUCTLIT(mmc_nil)}};
#define _OMC_LIT165 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT165)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT166,2,1) {_OMC_LIT108,_OMC_LIT165}};
#define _OMC_LIT166 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT166)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT167,3,4) {&TplAbsyn_MMExp_MM__FN__CALL__desc,_OMC_LIT106,_OMC_LIT166}};
#define _OMC_LIT167 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT167)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT168,3,3) {&TplAbsyn_MMExp_MM__ASSIGN__desc,_OMC_LIT148,_OMC_LIT167}};
#define _OMC_LIT168 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT168)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT169,2,1) {_OMC_LIT168,_OMC_LIT155}};
#define _OMC_LIT169 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT169)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT170,2,0) {_OMC_LIT162,_OMC_LIT169}};
#define _OMC_LIT170 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT170)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT171,1,7) {&TplAbsyn_MatchingExp_NONE__MATCH__desc,}};
#define _OMC_LIT171 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT171)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT172,2,1) {_OMC_LIT171,_OMC_LIT160}};
#define _OMC_LIT172 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT172)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT173,2,1) {_OMC_LIT139,_OMC_LIT172}};
#define _OMC_LIT173 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT173)
#define _OMC_LIT174_data "NONE at all"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT174,11,_OMC_LIT174_data);
#define _OMC_LIT174 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT174)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT175,2,7) {&TplAbsyn_MMExp_MM__STRING__desc,_OMC_LIT174}};
#define _OMC_LIT175 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT175)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT176,2,1) {_OMC_LIT175,MMC_REFSTRUCTLIT(mmc_nil)}};
#define _OMC_LIT176 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT176)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT177,2,1) {_OMC_LIT108,_OMC_LIT176}};
#define _OMC_LIT177 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT177)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT178,3,4) {&TplAbsyn_MMExp_MM__FN__CALL__desc,_OMC_LIT106,_OMC_LIT177}};
#define _OMC_LIT178 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT178)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT179,3,3) {&TplAbsyn_MMExp_MM__ASSIGN__desc,_OMC_LIT148,_OMC_LIT178}};
#define _OMC_LIT179 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT179)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT180,2,1) {_OMC_LIT179,MMC_REFSTRUCTLIT(mmc_nil)}};
#define _OMC_LIT180 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT180)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT181,2,0) {_OMC_LIT173,_OMC_LIT180}};
#define _OMC_LIT181 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT181)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT182,2,1) {_OMC_LIT181,MMC_REFSTRUCTLIT(mmc_nil)}};
#define _OMC_LIT182 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT182)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT183,2,1) {_OMC_LIT170,_OMC_LIT182}};
#define _OMC_LIT183 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT183)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT184,2,1) {_OMC_LIT156,_OMC_LIT183}};
#define _OMC_LIT184 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT184)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT185,2,9) {&TplAbsyn_MMExp_MM__MATCH__desc,_OMC_LIT184}};
#define _OMC_LIT185 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT185)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT186,2,1) {_OMC_LIT185,MMC_REFSTRUCTLIT(mmc_nil)}};
#define _OMC_LIT186 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT186)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT187,8,6) {&TplAbsyn_MMDeclaration_MM__FUN__desc,MMC_IMMEDIATE(MMC_TAGFIXNUM(1)),_OMC_LIT130,_OMC_LIT138,_OMC_LIT100,_OMC_LIT100,_OMC_LIT186,_OMC_LIT128}};
#define _OMC_LIT187 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT187)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT188,2,1) {_OMC_LIT187,MMC_REFSTRUCTLIT(mmc_nil)}};
#define _OMC_LIT188 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT188)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT189,2,1) {_OMC_LIT129,_OMC_LIT188}};
#define _OMC_LIT189 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT189)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT190,2,1) {_OMC_LIT87,_OMC_LIT189}};
#define _OMC_LIT190 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT190)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT191,2,1) {_OMC_LIT83,_OMC_LIT190}};
#define _OMC_LIT191 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT191)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT192,2,1) {_OMC_LIT75,_OMC_LIT191}};
#define _OMC_LIT192 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT192)
#define _OMC_LIT193_data ""
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT193,0,_OMC_LIT193_data);
#define _OMC_LIT193 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT193)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT194,4,3) {&TplAbsyn_MMPackage_MM__PACKAGE__desc,_OMC_LIT45,_OMC_LIT192,_OMC_LIT193}};
#define _OMC_LIT194 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT194)
#define _OMC_LIT195_data "package Susan\n\npublic import Tpl;\n\npublic import Pa.Li.Ko;\n\npublic constant Tpl.StringToken strTokConst = Tpl.ST_STRING_LIST({\n                                                  \"Susan\",\n                                                  \"is\",\n                                                  \"beautiful\\n\"\n                                              }, true);\n\nprotected constant Integer c_literalValueConst = 123;\n\npublic function MuchFun\n  input Tpl.Text txt;\n  input Integer laughLevel;\n  input list<String> jokes;\n\n  output Tpl.Text out_txt;\nalgorithm\n  out_txt := Tpl.writeStr(txt, \"Susan\");\n  out_txt := Tpl.writeTok(out_txt, Tpl.ST_LINE(\"Susan is cosmic!\\n\"));\nend MuchFun;\n\npublic function MoreFun\n  input Tpl.Text in_txt;\n  input Option<String> in_v_laughLevel;\n  input list<String> in_v_jokes;\n\n  output Tpl.Text out_txt;\nalgorithm\n  out_txt :=\n  matchcontinue(in_txt, in_v_laughLevel, in_v_jokes)\n    local\n      Tpl.Text txt;\n\n    case ( txt,\n           SOME((v_hej as \"Hej\")),\n           v_jokes )\n      local\n        String v_hej;\n        list<String> v_jokes;\n      equation\n        txt = Tpl.writeStr(txt, v_hej);\n      then txt;\n\n    case ( txt,\n           SOME(v_hej),\n           _ )\n      local\n        String v_hej;\n      equation\n        txt = Tpl.writeStr(txt, \"Not hej:\");\n        txt = Tpl.writeStr(txt, v_hej);\n      then txt;\n\n    case ( txt,\n           NONE(),\n           _ )\n      equation\n        txt = Tpl.writeStr(txt, \"NONE at all\");\n      then txt;\n  end matchcontinue;\nend MoreFun;\n\nend Susan;"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT195,1529,_OMC_LIT195_data);
#define _OMC_LIT195 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT195)
#define _OMC_LIT196_data "mmPackage"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT196,9,_OMC_LIT196_data);
#define _OMC_LIT196 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT196)
#define _OMC_LIT197_data "TplAbsyn"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT197,8,_OMC_LIT197_data);
#define _OMC_LIT197 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT197)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT198,2,3) {&TplAbsyn_PathIdent_IDENT__desc,_OMC_LIT197}};
#define _OMC_LIT198 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT198)
#define _OMC_LIT199_data "Ident"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT199,5,_OMC_LIT199_data);
#define _OMC_LIT199 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT199)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT200,2,5) {&TplAbsyn_TypeInfo_TI__ALIAS__TYPE__desc,_OMC_LIT94}};
#define _OMC_LIT200 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT200)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT201,2,0) {_OMC_LIT199,_OMC_LIT200}};
#define _OMC_LIT201 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT201)
#define _OMC_LIT202_data "TypedIdents"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT202,11,_OMC_LIT202_data);
#define _OMC_LIT202 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT202)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT203,2,3) {&TplAbsyn_PathIdent_IDENT__desc,_OMC_LIT199}};
#define _OMC_LIT203 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT203)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT204,2,7) {&TplAbsyn_TypeSignature_NAMED__TYPE__desc,_OMC_LIT203}};
#define _OMC_LIT204 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT204)
#define _OMC_LIT205_data "PathIdent"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT205,9,_OMC_LIT205_data);
#define _OMC_LIT205 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT205)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT206,2,3) {&TplAbsyn_PathIdent_IDENT__desc,_OMC_LIT205}};
#define _OMC_LIT206 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT206)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT207,2,7) {&TplAbsyn_TypeSignature_NAMED__TYPE__desc,_OMC_LIT206}};
#define _OMC_LIT207 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT207)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT208,2,1) {_OMC_LIT207,MMC_REFSTRUCTLIT(mmc_nil)}};
#define _OMC_LIT208 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT208)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT209,2,1) {_OMC_LIT204,_OMC_LIT208}};
#define _OMC_LIT209 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT209)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT210,2,6) {&TplAbsyn_TypeSignature_TUPLE__TYPE__desc,_OMC_LIT209}};
#define _OMC_LIT210 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT210)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT211,2,3) {&TplAbsyn_TypeSignature_LIST__TYPE__desc,_OMC_LIT210}};
#define _OMC_LIT211 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT211)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT212,2,5) {&TplAbsyn_TypeInfo_TI__ALIAS__TYPE__desc,_OMC_LIT211}};
#define _OMC_LIT212 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT212)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT213,2,0) {_OMC_LIT202,_OMC_LIT212}};
#define _OMC_LIT213 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT213)
#define _OMC_LIT214_data "IDENT"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT214,5,_OMC_LIT214_data);
#define _OMC_LIT214 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT214)
#define _OMC_LIT215_data "ident"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT215,5,_OMC_LIT215_data);
#define _OMC_LIT215 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT215)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT216,2,0) {_OMC_LIT215,_OMC_LIT204}};
#define _OMC_LIT216 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT216)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT217,2,1) {_OMC_LIT216,MMC_REFSTRUCTLIT(mmc_nil)}};
#define _OMC_LIT217 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT217)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT218,2,0) {_OMC_LIT214,_OMC_LIT217}};
#define _OMC_LIT218 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT218)
#define _OMC_LIT219_data "PATH_IDENT"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT219,10,_OMC_LIT219_data);
#define _OMC_LIT219 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT219)
#define _OMC_LIT220_data "path"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT220,4,_OMC_LIT220_data);
#define _OMC_LIT220 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT220)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT221,2,0) {_OMC_LIT220,_OMC_LIT207}};
#define _OMC_LIT221 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT221)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT222,2,1) {_OMC_LIT221,MMC_REFSTRUCTLIT(mmc_nil)}};
#define _OMC_LIT222 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT222)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT223,2,1) {_OMC_LIT216,_OMC_LIT222}};
#define _OMC_LIT223 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT223)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT224,2,0) {_OMC_LIT219,_OMC_LIT223}};
#define _OMC_LIT224 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT224)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT225,2,1) {_OMC_LIT224,MMC_REFSTRUCTLIT(mmc_nil)}};
#define _OMC_LIT225 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT225)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT226,2,1) {_OMC_LIT218,_OMC_LIT225}};
#define _OMC_LIT226 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT226)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT227,2,3) {&TplAbsyn_TypeInfo_TI__UNION__TYPE__desc,_OMC_LIT226}};
#define _OMC_LIT227 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT227)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT228,2,0) {_OMC_LIT205,_OMC_LIT227}};
#define _OMC_LIT228 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT228)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT229,2,1) {_OMC_LIT228,MMC_REFSTRUCTLIT(mmc_nil)}};
#define _OMC_LIT229 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT229)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT230,2,1) {_OMC_LIT213,_OMC_LIT229}};
#define _OMC_LIT230 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT230)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT231,2,1) {_OMC_LIT201,_OMC_LIT230}};
#define _OMC_LIT231 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT231)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT232,4,3) {&TplAbsyn_ASTDef_AST__DEF__desc,_OMC_LIT198,MMC_IMMEDIATE(MMC_TAGFIXNUM(1)),_OMC_LIT231}};
#define _OMC_LIT232 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT232)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT233,2,1) {_OMC_LIT232,MMC_REFSTRUCTLIT(mmc_nil)}};
#define _OMC_LIT233 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT233)
#define _OMC_LIT234_data "pathIdent"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT234,9,_OMC_LIT234_data);
#define _OMC_LIT234 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT234)
#define _OMC_LIT235_data "it"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT235,2,_OMC_LIT235_data);
#define _OMC_LIT235 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT235)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT236,2,0) {_OMC_LIT235,_OMC_LIT207}};
#define _OMC_LIT236 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT236)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT237,2,1) {_OMC_LIT236,MMC_REFSTRUCTLIT(mmc_nil)}};
#define _OMC_LIT237 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT237)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT238,2,3) {&TplAbsyn_PathIdent_IDENT__desc,_OMC_LIT235}};
#define _OMC_LIT238 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT238)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT239,2,7) {&TplAbsyn_ExpressionBase_BOUND__VALUE__desc,_OMC_LIT238}};
#define _OMC_LIT239 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT239)
#define _OMC_LIT240_data "NoFileName.xxx"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT240,14,_OMC_LIT240_data);
#define _OMC_LIT240 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT240)
static const MMC_DEFREALLIT(_OMC_LIT_STRUCT241,0.0);
#define _OMC_LIT241 MMC_REFREALLIT(_OMC_LIT_STRUCT241)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT242,8,3) {&SourceInfo_SOURCEINFO__desc,_OMC_LIT240,MMC_IMMEDIATE(MMC_TAGFIXNUM(0)),MMC_IMMEDIATE(MMC_TAGFIXNUM(0)),MMC_IMMEDIATE(MMC_TAGFIXNUM(0)),MMC_IMMEDIATE(MMC_TAGFIXNUM(0)),MMC_IMMEDIATE(MMC_TAGFIXNUM(0)),_OMC_LIT241}};
#define _OMC_LIT242 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT242)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT243,2,0) {_OMC_LIT239,_OMC_LIT242}};
#define _OMC_LIT243 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT243)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT244,2,3) {&TplAbsyn_PathIdent_IDENT__desc,_OMC_LIT214}};
#define _OMC_LIT244 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT244)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT245,3,5) {&TplAbsyn_MatchingExp_RECORD__MATCH__desc,_OMC_LIT244,MMC_REFSTRUCTLIT(mmc_nil)}};
#define _OMC_LIT245 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT245)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT246,2,3) {&TplAbsyn_PathIdent_IDENT__desc,_OMC_LIT215}};
#define _OMC_LIT246 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT246)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT247,2,7) {&TplAbsyn_ExpressionBase_BOUND__VALUE__desc,_OMC_LIT246}};
#define _OMC_LIT247 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT247)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT248,2,0) {_OMC_LIT247,_OMC_LIT242}};
#define _OMC_LIT248 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT248)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT249,2,0) {_OMC_LIT245,_OMC_LIT248}};
#define _OMC_LIT249 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT249)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT250,2,3) {&TplAbsyn_PathIdent_IDENT__desc,_OMC_LIT219}};
#define _OMC_LIT250 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT250)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT251,3,5) {&TplAbsyn_MatchingExp_RECORD__MATCH__desc,_OMC_LIT250,MMC_REFSTRUCTLIT(mmc_nil)}};
#define _OMC_LIT251 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT251)
#define _OMC_LIT252_data "."
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT252,1,_OMC_LIT252_data);
#define _OMC_LIT252 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT252)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT253,2,4) {&Tpl_StringToken_ST__STRING__desc,_OMC_LIT252}};
#define _OMC_LIT253 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT253)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT254,2,4) {&TplAbsyn_ExpressionBase_STR__TOKEN__desc,_OMC_LIT253}};
#define _OMC_LIT254 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT254)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT255,2,0) {_OMC_LIT254,_OMC_LIT242}};
#define _OMC_LIT255 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT255)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT256,2,3) {&TplAbsyn_PathIdent_IDENT__desc,_OMC_LIT234}};
#define _OMC_LIT256 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT256)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT257,2,3) {&TplAbsyn_PathIdent_IDENT__desc,_OMC_LIT220}};
#define _OMC_LIT257 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT257)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT258,2,7) {&TplAbsyn_ExpressionBase_BOUND__VALUE__desc,_OMC_LIT257}};
#define _OMC_LIT258 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT258)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT259,2,0) {_OMC_LIT258,_OMC_LIT242}};
#define _OMC_LIT259 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT259)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT260,2,1) {_OMC_LIT259,MMC_REFSTRUCTLIT(mmc_nil)}};
#define _OMC_LIT260 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT260)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT261,3,8) {&TplAbsyn_ExpressionBase_FUN__CALL__desc,_OMC_LIT256,_OMC_LIT260}};
#define _OMC_LIT261 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT261)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT262,2,0) {_OMC_LIT261,_OMC_LIT242}};
#define _OMC_LIT262 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT262)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT263,2,1) {_OMC_LIT262,MMC_REFSTRUCTLIT(mmc_nil)}};
#define _OMC_LIT263 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT263)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT264,2,1) {_OMC_LIT255,_OMC_LIT263}};
#define _OMC_LIT264 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT264)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT265,2,1) {_OMC_LIT248,_OMC_LIT264}};
#define _OMC_LIT265 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT265)
#define _OMC_LIT266_data "\""
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT266,1,_OMC_LIT266_data);
#define _OMC_LIT266 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT266)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT267,4,3) {&TplAbsyn_ExpressionBase_TEMPLATE__desc,_OMC_LIT265,_OMC_LIT266,_OMC_LIT266}};
#define _OMC_LIT267 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT267)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT268,2,0) {_OMC_LIT267,_OMC_LIT242}};
#define _OMC_LIT268 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT268)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT269,2,0) {_OMC_LIT251,_OMC_LIT268}};
#define _OMC_LIT269 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT269)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT270,2,1) {_OMC_LIT269,MMC_REFSTRUCTLIT(mmc_nil)}};
#define _OMC_LIT270 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT270)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT271,2,1) {_OMC_LIT249,_OMC_LIT270}};
#define _OMC_LIT271 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT271)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT272,3,10) {&TplAbsyn_ExpressionBase_MATCH__desc,_OMC_LIT243,_OMC_LIT271}};
#define _OMC_LIT272 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT272)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT273,2,0) {_OMC_LIT272,_OMC_LIT242}};
#define _OMC_LIT273 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT273)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT274,5,5) {&TplAbsyn_TemplateDef_TEMPLATE__DEF__desc,_OMC_LIT237,_OMC_LIT193,_OMC_LIT193,_OMC_LIT273}};
#define _OMC_LIT274 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT274)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT275,2,0) {_OMC_LIT234,_OMC_LIT274}};
#define _OMC_LIT275 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT275)
#define _OMC_LIT276_data "decls"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT276,5,_OMC_LIT276_data);
#define _OMC_LIT276 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT276)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT277,2,3) {&TplAbsyn_PathIdent_IDENT__desc,_OMC_LIT202}};
#define _OMC_LIT277 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT277)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT278,2,7) {&TplAbsyn_TypeSignature_NAMED__TYPE__desc,_OMC_LIT277}};
#define _OMC_LIT278 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT278)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT279,2,0) {_OMC_LIT276,_OMC_LIT278}};
#define _OMC_LIT279 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT279)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT280,2,1) {_OMC_LIT279,MMC_REFSTRUCTLIT(mmc_nil)}};
#define _OMC_LIT280 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT280)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT281,2,3) {&TplAbsyn_PathIdent_IDENT__desc,_OMC_LIT276}};
#define _OMC_LIT281 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT281)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT282,2,7) {&TplAbsyn_ExpressionBase_BOUND__VALUE__desc,_OMC_LIT281}};
#define _OMC_LIT282 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT282)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT283,2,0) {_OMC_LIT282,_OMC_LIT242}};
#define _OMC_LIT283 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT283)
#define _OMC_LIT284_data "id"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT284,2,_OMC_LIT284_data);
#define _OMC_LIT284 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT284)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT285,2,4) {&TplAbsyn_MatchingExp_BIND__MATCH__desc,_OMC_LIT284}};
#define _OMC_LIT285 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT285)
#define _OMC_LIT286_data "pid"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT286,3,_OMC_LIT286_data);
#define _OMC_LIT286 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT286)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT287,2,4) {&TplAbsyn_MatchingExp_BIND__MATCH__desc,_OMC_LIT286}};
#define _OMC_LIT287 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT287)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT288,2,1) {_OMC_LIT287,MMC_REFSTRUCTLIT(mmc_nil)}};
#define _OMC_LIT288 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT288)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT289,2,1) {_OMC_LIT285,_OMC_LIT288}};
#define _OMC_LIT289 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT289)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT290,2,8) {&TplAbsyn_MatchingExp_TUPLE__MATCH__desc,_OMC_LIT289}};
#define _OMC_LIT290 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT290)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT291,2,3) {&TplAbsyn_PathIdent_IDENT__desc,_OMC_LIT286}};
#define _OMC_LIT291 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT291)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT292,2,7) {&TplAbsyn_ExpressionBase_BOUND__VALUE__desc,_OMC_LIT291}};
#define _OMC_LIT292 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT292)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT293,2,0) {_OMC_LIT292,_OMC_LIT242}};
#define _OMC_LIT293 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT293)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT294,2,1) {_OMC_LIT293,MMC_REFSTRUCTLIT(mmc_nil)}};
#define _OMC_LIT294 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT294)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT295,3,8) {&TplAbsyn_ExpressionBase_FUN__CALL__desc,_OMC_LIT256,_OMC_LIT294}};
#define _OMC_LIT295 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT295)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT296,2,0) {_OMC_LIT295,_OMC_LIT242}};
#define _OMC_LIT296 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT296)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT297,2,4) {&TplAbsyn_ExpressionBase_STR__TOKEN__desc,_OMC_LIT23}};
#define _OMC_LIT297 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT297)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT298,2,0) {_OMC_LIT297,_OMC_LIT242}};
#define _OMC_LIT298 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT298)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT299,2,3) {&TplAbsyn_PathIdent_IDENT__desc,_OMC_LIT284}};
#define _OMC_LIT299 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT299)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT300,2,7) {&TplAbsyn_ExpressionBase_BOUND__VALUE__desc,_OMC_LIT299}};
#define _OMC_LIT300 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT300)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT301,2,0) {_OMC_LIT300,_OMC_LIT242}};
#define _OMC_LIT301 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT301)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT302,2,4) {&TplAbsyn_ExpressionBase_STR__TOKEN__desc,_OMC_LIT29}};
#define _OMC_LIT302 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT302)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT303,2,0) {_OMC_LIT302,_OMC_LIT242}};
#define _OMC_LIT303 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT303)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT304,2,1) {_OMC_LIT303,MMC_REFSTRUCTLIT(mmc_nil)}};
#define _OMC_LIT304 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT304)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT305,2,1) {_OMC_LIT301,_OMC_LIT304}};
#define _OMC_LIT305 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT305)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT306,2,1) {_OMC_LIT298,_OMC_LIT305}};
#define _OMC_LIT306 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT306)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT307,2,1) {_OMC_LIT296,_OMC_LIT306}};
#define _OMC_LIT307 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT307)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT308,4,3) {&TplAbsyn_ExpressionBase_TEMPLATE__desc,_OMC_LIT307,_OMC_LIT266,_OMC_LIT266}};
#define _OMC_LIT308 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT308)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT309,2,0) {_OMC_LIT308,_OMC_LIT242}};
#define _OMC_LIT309 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT309)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT310,5,11) {&TplAbsyn_ExpressionBase_MAP__desc,_OMC_LIT283,_OMC_LIT290,_OMC_LIT309,MMC_REFSTRUCTLIT(mmc_none)}};
#define _OMC_LIT310 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT310)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT311,2,0) {_OMC_LIT310,_OMC_LIT242}};
#define _OMC_LIT311 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT311)
#define _OMC_LIT312_data "separator"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT312,9,_OMC_LIT312_data);
#define _OMC_LIT312 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT312)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT313,2,4) {&TplAbsyn_ExpressionBase_STR__TOKEN__desc,_OMC_LIT6}};
#define _OMC_LIT313 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT313)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT314,2,0) {_OMC_LIT313,_OMC_LIT242}};
#define _OMC_LIT314 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT314)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT315,1,1) {_OMC_LIT314}};
#define _OMC_LIT315 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT315)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT316,2,0) {_OMC_LIT312,_OMC_LIT315}};
#define _OMC_LIT316 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT316)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT317,2,1) {_OMC_LIT316,MMC_REFSTRUCTLIT(mmc_nil)}};
#define _OMC_LIT317 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT317)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT318,3,13) {&TplAbsyn_ExpressionBase_ESCAPED__desc,_OMC_LIT311,_OMC_LIT317}};
#define _OMC_LIT318 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT318)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT319,2,0) {_OMC_LIT318,_OMC_LIT242}};
#define _OMC_LIT319 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT319)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT320,5,5) {&TplAbsyn_TemplateDef_TEMPLATE__DEF__desc,_OMC_LIT280,_OMC_LIT193,_OMC_LIT193,_OMC_LIT319}};
#define _OMC_LIT320 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT320)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT321,2,0) {_OMC_LIT63,_OMC_LIT320}};
#define _OMC_LIT321 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT321)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT322,2,1) {_OMC_LIT321,MMC_REFSTRUCTLIT(mmc_nil)}};
#define _OMC_LIT322 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT322)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT323,2,1) {_OMC_LIT275,_OMC_LIT322}};
#define _OMC_LIT323 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT323)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT324,5,3) {&TplAbsyn_TemplPackage_TEMPL__PACKAGE__desc,_OMC_LIT45,_OMC_LIT233,_OMC_LIT323,_OMC_LIT193}};
#define _OMC_LIT324 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT324)
#define _OMC_LIT325_data "package Susan\n\npublic import Tpl;\n\npublic import TplAbsyn;\n\npublic function pathIdent\n  input Tpl.Text in_txt;\n  input TplAbsyn.PathIdent in_i_it;\n\n  output Tpl.Text out_txt;\nalgorithm\n  out_txt :=\n  matchcontinue(in_txt, in_i_it)\n    local\n      Tpl.Text txt;\n\n    case ( txt,\n           TplAbsyn.IDENT(ident = i_ident) )\n      local\n        TplAbsyn.Ident i_ident;\n      equation\n        txt = Tpl.writeStr(txt, i_ident);\n      then txt;\n\n    case ( txt,\n           TplAbsyn.PATH_IDENT(ident = i_ident, path = i_path) )\n      local\n        TplAbsyn.PathIdent i_path;\n        TplAbsyn.Ident i_ident;\n      equation\n        txt = Tpl.writeStr(txt, i_ident);\n        txt = Tpl.writeTok(txt, Tpl.ST_STRING(\".\"));\n        txt = pathIdent(txt, i_path);\n      then txt;\n\n    else in_txt;\n  end matchcontinue;\nend pathIdent;\n\nprotected function lm_2\n  input Tpl.Text in_txt;\n  input TplAbsyn.TypedIdents in_items;\n\n  output Tpl.Text out_txt;\nalgorithm\n  out_txt :=\n  matchcontinue(in_txt, in_items)\n    local\n      Tpl.Text txt;\n\n    case ( txt,\n           {} )\n      then txt;\n\n    case ( txt,\n           (i_id, i_pid) :: rest )\n      local\n        TplAbsyn.TypedIdents rest;\n        TplAbsyn.PathIdent i_pid;\n        TplAbsyn.Ident i_id;\n      equation\n        txt = pathIdent(txt, i_pid);\n        txt = Tpl.writeTok(txt, Tpl.ST_STRING(\" \"));\n        txt = Tpl.writeStr(txt, i_id);\n        txt = Tpl.writeTok(txt, Tpl.ST_STRING(\";\"));\n        txt = Tpl.nextIter(txt);\n        txt = lm_2(txt, rest);\n      then txt;\n\n    case ( txt,\n           _ :: rest )\n      local\n        TplAbsyn.TypedIdents rest;\n      equation\n        txt = lm_2(txt, rest);\n      then txt;\n  end matchcontinue;\nend lm_2;\n\npublic function typedIdents\n  input Tpl.Text txt;\n  input TplAbsyn.TypedIdents i_decls;\n\n  output Tpl.Text out_txt;\nalgorithm\n  out_txt := Tpl.pushIter(txt, Tpl.ITER_OPTIONS(0, NONE(), SOME(Tpl.ST_NEW_LINE()), 0, 0, Tpl.ST_NEW_LINE(), 0, Tpl.ST_NEW_LINE()));\n  out_txt := lm_2(out_txt, i_decls);\n  out_txt := Tpl.popIter(out_txt);\nend typedIdents;\n\nend Susan;"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT325,2051,_OMC_LIT325_data);
#define _OMC_LIT325 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT325)
#define _OMC_LIT326_data "transformAST - pathIdent() + typedIdents()"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT326,42,_OMC_LIT326_data);
#define _OMC_LIT326 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT326)
#define _OMC_LIT327_data "// Hej Susan\n/*this is another dance with Susan */\n/* event I will /*nest*/ into */ //and still comment\n      Susan lives!"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT327,122,_OMC_LIT327_data);
#define _OMC_LIT327 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT327)
#define _OMC_LIT328_data "in memory test"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT328,14,_OMC_LIT328_data);
#define _OMC_LIT328 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT328)
#define _OMC_LIT329_data "Susan lives!"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT329,12,_OMC_LIT329_data);
#define _OMC_LIT329 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT329)
#define _OMC_LIT330_data "TplParser.interleave \n\""
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT330,23,_OMC_LIT330_data);
#define _OMC_LIT330 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT330)
#define _OMC_LIT331_data "\"\n"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT331,2,_OMC_LIT331_data);
#define _OMC_LIT331 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT331)
#define _OMC_LIT332_data "(Susan)"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT332,7,_OMC_LIT332_data);
#define _OMC_LIT332 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT332)
#define _OMC_LIT333_data "TplParser.afterKeyword \n\""
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT333,25,_OMC_LIT333_data);
#define _OMC_LIT333 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT333)
#define _OMC_LIT334_data "Susan2:)"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT334,8,_OMC_LIT334_data);
#define _OMC_LIT334 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT334)
#define _OMC_LIT335_data "*Susan2*:)"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT335,10,_OMC_LIT335_data);
#define _OMC_LIT335 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT335)
#define _OMC_LIT336_data "TplParser.identifier \n\""
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT336,23,_OMC_LIT336_data);
#define _OMC_LIT336 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT336)
#define _OMC_LIT337_data "Susan:)"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT337,7,_OMC_LIT337_data);
#define _OMC_LIT337 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT337)
#define _OMC_LIT338_data "*Susan*:)"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT338,9,_OMC_LIT338_data);
#define _OMC_LIT338 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT338)
#define _OMC_LIT339_data "TplParser.pathIdent \n\""
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT339,22,_OMC_LIT339_data);
#define _OMC_LIT339 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT339)
#define _OMC_LIT340_data "Susan./*comment*/ Susan2 . tpl3_h4:)"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT340,36,_OMC_LIT340_data);
#define _OMC_LIT340 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT340)
#define _OMC_LIT341_data "*Susan.Susan2.tpl3_h4*:)"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT341,24,_OMC_LIT341_data);
#define _OMC_LIT341 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT341)
#define _OMC_LIT342_data "Tpl.Susan:)"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT342,11,_OMC_LIT342_data);
#define _OMC_LIT342 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT342)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT343,3,4) {&TplAbsyn_PathIdent_PATH__IDENT__desc,_OMC_LIT103,_OMC_LIT45}};
#define _OMC_LIT343 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT343)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT344,2,7) {&TplAbsyn_TypeSignature_NAMED__TYPE__desc,_OMC_LIT343}};
#define _OMC_LIT344 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT344)
#define _OMC_LIT345_data "true*Tpl.Susan*:)"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT345,17,_OMC_LIT345_data);
#define _OMC_LIT345 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT345)
#define _OMC_LIT346_data "TplParser.typeSig \n\""
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT346,20,_OMC_LIT346_data);
#define _OMC_LIT346 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT346)
#define _OMC_LIT347_data "list< tuple<Hej.Susan,list <String>,Option< /*uáá*/Integer>> >:)"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT347,66,_OMC_LIT347_data);
#define _OMC_LIT347 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT347)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT348,2,7) {&TplAbsyn_TypeSignature_NAMED__TYPE__desc,_OMC_LIT48}};
#define _OMC_LIT348 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT348)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT349,2,5) {&TplAbsyn_TypeSignature_OPTION__TYPE__desc,_OMC_LIT86}};
#define _OMC_LIT349 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT349)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT350,2,1) {_OMC_LIT349,MMC_REFSTRUCTLIT(mmc_nil)}};
#define _OMC_LIT350 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT350)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT351,2,1) {_OMC_LIT95,_OMC_LIT350}};
#define _OMC_LIT351 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT351)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT352,2,1) {_OMC_LIT348,_OMC_LIT351}};
#define _OMC_LIT352 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT352)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT353,2,6) {&TplAbsyn_TypeSignature_TUPLE__TYPE__desc,_OMC_LIT352}};
#define _OMC_LIT353 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT353)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT354,2,3) {&TplAbsyn_TypeSignature_LIST__TYPE__desc,_OMC_LIT353}};
#define _OMC_LIT354 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT354)
#define _OMC_LIT355_data "true*list<tuple<Hej.Susan, list<String>, Option<Integer>>>*:)"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT355,61,_OMC_LIT355_data);
#define _OMC_LIT355 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT355)
#define _OMC_LIT356_data "\ninterface package Susan\n  package TplAbsyn\n    type Ident = String;\n    type TypedIdents = list<tuple<Ident, PathIdent>>;\n\n    uniontype PathIdent\n      record IDENT\n        Ident ident;\n      end IDENT;\n\n      record PATH_IDENT\n        Ident ident;\n        PathIdent path;\n      end PATH_IDENT;\n    end PathIdent;\n  end TplAbsyn;\nend Susan;:)"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT356,344,_OMC_LIT356_data);
#define _OMC_LIT356 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT356)
#define _OMC_LIT357_data "true*Susan*:)"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT357,13,_OMC_LIT357_data);
#define _OMC_LIT357 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT357)
#define _OMC_LIT358_data "TplParser.templPackage - absyn - type Ident, TypedIdents, PathIdent \n"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT358,69,_OMC_LIT358_data);
#define _OMC_LIT358 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT358)
#define _OMC_LIT359_data "\ninterface package Susan\npackage builtin\n  function stringListStringChar\n    input String inString;\n    output list<String> outStringList;\n  end stringListStringChar;\nend builtin;\nend Susan;:)"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT359,192,_OMC_LIT359_data);
#define _OMC_LIT359 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT359)
#define _OMC_LIT360_data "builtin"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT360,7,_OMC_LIT360_data);
#define _OMC_LIT360 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT360)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT361,2,3) {&TplAbsyn_PathIdent_IDENT__desc,_OMC_LIT360}};
#define _OMC_LIT361 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT361)
#define _OMC_LIT362_data "stringListStringChar"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT362,20,_OMC_LIT362_data);
#define _OMC_LIT362 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT362)
#define _OMC_LIT363_data "inString"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT363,8,_OMC_LIT363_data);
#define _OMC_LIT363 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT363)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT364,2,0) {_OMC_LIT363,_OMC_LIT94}};
#define _OMC_LIT364 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT364)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT365,2,1) {_OMC_LIT364,MMC_REFSTRUCTLIT(mmc_nil)}};
#define _OMC_LIT365 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT365)
#define _OMC_LIT366_data "outStringList"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT366,13,_OMC_LIT366_data);
#define _OMC_LIT366 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT366)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT367,2,0) {_OMC_LIT366,_OMC_LIT95}};
#define _OMC_LIT367 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT367)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT368,2,1) {_OMC_LIT367,MMC_REFSTRUCTLIT(mmc_nil)}};
#define _OMC_LIT368 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT368)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT369,4,6) {&TplAbsyn_TypeInfo_TI__FUN__TYPE__desc,_OMC_LIT365,_OMC_LIT368,MMC_REFSTRUCTLIT(mmc_nil)}};
#define _OMC_LIT369 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT369)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT370,2,0) {_OMC_LIT362,_OMC_LIT369}};
#define _OMC_LIT370 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT370)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT371,2,1) {_OMC_LIT370,MMC_REFSTRUCTLIT(mmc_nil)}};
#define _OMC_LIT371 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT371)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT372,4,3) {&TplAbsyn_ASTDef_AST__DEF__desc,_OMC_LIT361,MMC_IMMEDIATE(MMC_TAGFIXNUM(1)),_OMC_LIT371}};
#define _OMC_LIT372 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT372)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT373,2,1) {_OMC_LIT372,MMC_REFSTRUCTLIT(mmc_nil)}};
#define _OMC_LIT373 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT373)
#define _OMC_LIT374_data "true*:)"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT374,7,_OMC_LIT374_data);
#define _OMC_LIT374 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT374)
#define _OMC_LIT375_data "TplParser.templPackage - function stringListStringChar\n"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT375,55,_OMC_LIT375_data);
#define _OMC_LIT375 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT375)
#define _OMC_LIT376_data "\ninterface package Susan\npackage builtin\n  function stringListStringChar\n    input String inString;\n    output list<String> outStringList;\n  end stringListStringChar;\nend builtin;\n\n\nprotected package Tpl\n  uniontype StringToken\n    record ST_NEW_LINE \"Always outputs the new-line char.\"  end ST_NEW_LINE;\n\n    record ST_STRING \"A string without new-lines in it.\"\n      String value;\n    end ST_STRING;\n\n    record ST_LINE \"A (non-empty) string with new-line at the end.\"\n      String line;\n    end ST_LINE;\n\n    record ST_STRING_LIST \"Every string in the list can have a new-line at its end (but does not have to).\"\n      list<String> strList;\n      Boolean lastHasNewLine \"True when the last string in the list has new-line at the end.\";\n    end ST_STRING_LIST;\n  end StringToken;\nend Tpl;\n\n\npackage TplAbsyn\n  type Ident = String;\n  type TypedIdents = list<tuple<Ident, TypeSignature>>;\n  type StringToken = Tpl.StringToken;\n\n  uniontype PathIdent\n    record IDENT\n      Ident ident;\n    end IDENT;\n\n    record PATH_IDENT\n      Ident ident;\n      PathIdent path;\n    end PATH_IDENT;\n  end PathIdent;\n\n  uniontype TypeSignature\n    record LIST_TYPE\n      TypeSignature ofType;\n    end LIST_TYPE;\n\n    record ARRAY_TYPE  // one-dimensional arrays --> with only (safe) list behaviour\n      TypeSignature ofType;\n    end ARRAY_TYPE;\n\n    record OPTION_TYPE\n      TypeSignature ofType;\n    end OPTION_TYPE;\n\n    record TUPLE_TYPE\n      list<TypeSignature> ofTypes;\n    end TUPLE_TYPE;\n\n    record NAMED_TYPE \"key/path to a TypeInfo list from an AST definition\"\n      PathIdent name;\n    end NAMED_TYPE;\n\n    record STRING_TYPE  end STRING_TYPE;\n    record TEXT_TYPE    end TEXT_TYPE;\n    record STRING_TOKEN_TYPE \"Used only for internal string constants.\" end STRING_TOKEN_TYPE;\n\n    record INTEGER_TYPE end INTEGER_TYPE;\n    record REAL_TYPE    end REAL_TYPE;\n    record BOOLEAN_TYPE end BOOLEAN_TYPE;\n\n    record UNRESOLVED_TYPE \"Errorneous resolving type. Only used during elaboration phase.\"\n      String reason;\n    end UNRESOLVED_TYPE;\n  end TypeSignature;\n\n\n  uniontype MatchingExp\n    record BIND_AS_MATCH\n      Ident bindIdent;\n      MatchingExp matchingExp;\n    end BIND_AS_MATCH;\n\n    record BIND_MATCH\n      Ident bindIdent;\n    end BIND_MATCH;\n\n    record RECORD_MATCH\n      PathIdent tagName;\n      list<tuple<Ident, MatchingExp>> fieldMatchings;\n    end RECORD_MATCH;\n\n    record SOME_MATCH\n      MatchingExp value;\n    end SOME_MATCH;\n\n    record NONE_MATCH end NONE_MATCH;\n\n    record TUPLE_MATCH\n      list<MatchingExp> tupleArgs;\n    end TUPLE_MATCH;\n\n    record LIST_MATCH //non-empty list\n      list<MatchingExp> listElts;\n    end LIST_MATCH;\n\n    record LIST_CONS_MATCH\n      MatchingExp head;\n      MatchingExp rest;\n    end LIST_CONS_MATCH;\n\n    record STRING_MATCH\n      String value;\n    end STRING_MATCH;\n\n    record LITERAL_MATCH\n      String value;\n      TypeSignature litType; // only INTEGER_TYPE, REAL_TYPE or BOOLEAN_TYPE\n    end LITERAL_MATCH;\n\n    record REST_MATCH end REST_MATCH;\n  end MatchingExp;\n\n\n  // **** the (core) output AST\n\n  uniontype MMPackage\n    record MM_PACKAGE\n      PathIdent name;\n      list<MMDeclaration> mmDeclarations;\n    end MM_PACKAGE;\n  end MMPackage;\n\n  type MMMatchCase = tuple<list<MatchingExp>, TypedIdents, list<MMExp>>;\n\n  uniontype MMDeclaration\n    record MM_IMPORT\n      Boolean isPublic;\n      PathIdent packageName;\n    end MM_IMPORT;\n\n    record MM_STR_TOKEN_DECL\n      Boolean isPublic;\n      Ident name;\n      StringToken value;\n    end MM_STR_TOKEN_DECL;\n\n    record MM_LITERAL_DECL\n      Boolean isPublic;\n      Ident name;\n      String value;\n      TypeSignature litType;\n    end MM_LITERAL_DECL;\n\n\n    record MM_FUN\n      Boolean isPublic;\n      Ident name;\n      TypedIdents inArgs; //inTxt inclusive\n      TypedIdents outArgs; // outTxt + extra Texts\n      TypedIdents locals;\n      list<MMExp> statements;\n    end MM_FUN;\n  end MMDeclaration;\n\n  uniontype MMExp\n    record MM_ASSIGN\n      list<Ident> lhsArgs;\n      MMExp rhs;\n    end MM_ASSIGN;\n\n    record MM_FN_CALL\n      PathIdent fnName;\n      list<MMExp> args;\n    end MM_FN_CALL;\n\n    record MM_IDENT\n      PathIdent ident;\n    end MM_IDENT;\n\n    record MM_STR_TOKEN \"constructor of type StringToken\"\n      StringToken value;\n    end MM_STR_TOKEN;\n\n    record MM_STRING \"to pass a string constant as parameter of type String\"\n      String value;\n    end MM_STRING;\n\n    record MM_LITERAL \"to pass a literal constant as parameter of type Integer, Real or Boolean\"\n      String value;\n    end MM_LITERAL;\n\n    record MM_MATCH\n      list<MMMatchCase> matchCases;\n    end MM_MATCH;\n  end MMExp;\nend TplAbsyn;\nend Susan;:)"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT376,4656,_OMC_LIT376_data);
#define _OMC_LIT376 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT376)
#define _OMC_LIT377_data "parsed*"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT377,7,_OMC_LIT377_data);
#define _OMC_LIT377 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT377)
#define _OMC_LIT378_data "parsed*:)"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT378,9,_OMC_LIT378_data);
#define _OMC_LIT378 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT378)
#define _OMC_LIT379_data "TplParser.templPackage - all types for Susan's backend\n"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT379,55,_OMC_LIT379_data);
#define _OMC_LIT379 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT379)
#define _OMC_LIT380_data "\"Susan\"~:)"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT380,10,_OMC_LIT380_data);
#define _OMC_LIT380 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT380)
#define _OMC_LIT381_data ">"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT381,1,_OMC_LIT381_data);
#define _OMC_LIT381 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT381)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT382,2,4) {&Tpl_StringToken_ST__STRING__desc,_OMC_LIT44}};
#define _OMC_LIT382 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT382)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT383,2,4) {&TplAbsyn_ExpressionBase_STR__TOKEN__desc,_OMC_LIT382}};
#define _OMC_LIT383 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT383)
#define _OMC_LIT384_data "true*Susan*~:)"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT384,14,_OMC_LIT384_data);
#define _OMC_LIT384 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT384)
#define _OMC_LIT385_data "TplParser.expression \n>"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT385,23,_OMC_LIT385_data);
#define _OMC_LIT385 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT385)
#define _OMC_LIT386_data "<\n"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT386,2,_OMC_LIT386_data);
#define _OMC_LIT386 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT386)
#define _OMC_LIT387_data "\"\\n\"~:)"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT387,7,_OMC_LIT387_data);
#define _OMC_LIT387 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT387)
#define _OMC_LIT388_data "true*\n*~:)"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT388,10,_OMC_LIT388_data);
#define _OMC_LIT388 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT388)
#define _OMC_LIT389_data "\",\\n\"~:)"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT389,8,_OMC_LIT389_data);
#define _OMC_LIT389 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT389)
#define _OMC_LIT390_data ",\n"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT390,2,_OMC_LIT390_data);
#define _OMC_LIT390 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT390)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT391,2,5) {&Tpl_StringToken_ST__LINE__desc,_OMC_LIT390}};
#define _OMC_LIT391 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT391)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT392,2,4) {&TplAbsyn_ExpressionBase_STR__TOKEN__desc,_OMC_LIT391}};
#define _OMC_LIT392 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT392)
#define _OMC_LIT393_data "true*,\n*~:)"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT393,11,_OMC_LIT393_data);
#define _OMC_LIT393 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT393)
#define _OMC_LIT394_data "\"Susan\nis\\nfantastic!\"~:)"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT394,25,_OMC_LIT394_data);
#define _OMC_LIT394 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT394)
#define _OMC_LIT395_data "Susan\n"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT395,6,_OMC_LIT395_data);
#define _OMC_LIT395 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT395)
#define _OMC_LIT396_data "is\n"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT396,3,_OMC_LIT396_data);
#define _OMC_LIT396 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT396)
#define _OMC_LIT397_data "fantastic!"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT397,10,_OMC_LIT397_data);
#define _OMC_LIT397 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT397)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT398,2,1) {_OMC_LIT397,MMC_REFSTRUCTLIT(mmc_nil)}};
#define _OMC_LIT398 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT398)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT399,2,1) {_OMC_LIT396,_OMC_LIT398}};
#define _OMC_LIT399 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT399)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT400,2,1) {_OMC_LIT395,_OMC_LIT399}};
#define _OMC_LIT400 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT400)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT401,3,6) {&Tpl_StringToken_ST__STRING__LIST__desc,_OMC_LIT400,MMC_IMMEDIATE(MMC_TAGFIXNUM(0))}};
#define _OMC_LIT401 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT401)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT402,2,4) {&TplAbsyn_ExpressionBase_STR__TOKEN__desc,_OMC_LIT401}};
#define _OMC_LIT402 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT402)
#define _OMC_LIT403_data "true*Susan\nis\nfantastic!*~:)"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT403,28,_OMC_LIT403_data);
#define _OMC_LIT403 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT403)
#define _OMC_LIT404_data "\"\nSusan\nis\\n new lined!\n\"~:)"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT404,28,_OMC_LIT404_data);
#define _OMC_LIT404 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT404)
#define _OMC_LIT405_data "\n"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT405,1,_OMC_LIT405_data);
#define _OMC_LIT405 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT405)
#define _OMC_LIT406_data " new lined!\n"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT406,12,_OMC_LIT406_data);
#define _OMC_LIT406 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT406)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT407,2,1) {_OMC_LIT406,MMC_REFSTRUCTLIT(mmc_nil)}};
#define _OMC_LIT407 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT407)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT408,2,1) {_OMC_LIT396,_OMC_LIT407}};
#define _OMC_LIT408 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT408)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT409,2,1) {_OMC_LIT395,_OMC_LIT408}};
#define _OMC_LIT409 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT409)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT410,2,1) {_OMC_LIT405,_OMC_LIT409}};
#define _OMC_LIT410 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT410)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT411,3,6) {&Tpl_StringToken_ST__STRING__LIST__desc,_OMC_LIT410,MMC_IMMEDIATE(MMC_TAGFIXNUM(1))}};
#define _OMC_LIT411 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT411)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT412,2,4) {&TplAbsyn_ExpressionBase_STR__TOKEN__desc,_OMC_LIT411}};
#define _OMC_LIT412 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT412)
#define _OMC_LIT413_data "true*\nSusan\nis\n new lined!\n*~:)"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT413,31,_OMC_LIT413_data);
#define _OMC_LIT413 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT413)
#define _OMC_LIT414_data "1234567~:)"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT414,10,_OMC_LIT414_data);
#define _OMC_LIT414 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT414)
#define _OMC_LIT415_data "1234567"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT415,7,_OMC_LIT415_data);
#define _OMC_LIT415 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT415)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT416,3,5) {&TplAbsyn_ExpressionBase_LITERAL__desc,_OMC_LIT415,_OMC_LIT86}};
#define _OMC_LIT416 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT416)
#define _OMC_LIT417_data "true*1234567*~:)"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT417,16,_OMC_LIT417_data);
#define _OMC_LIT417 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT417)
#define _OMC_LIT418_data "TplParser.expression \n\""
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT418,23,_OMC_LIT418_data);
#define _OMC_LIT418 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT418)
#define _OMC_LIT419_data "- 1234567~:)"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT419,12,_OMC_LIT419_data);
#define _OMC_LIT419 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT419)
#define _OMC_LIT420_data "-1234567"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT420,8,_OMC_LIT420_data);
#define _OMC_LIT420 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT420)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT421,3,5) {&TplAbsyn_ExpressionBase_LITERAL__desc,_OMC_LIT420,_OMC_LIT86}};
#define _OMC_LIT421 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT421)
#define _OMC_LIT422_data "true*-1234567*~:)"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT422,17,_OMC_LIT422_data);
#define _OMC_LIT422 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT422)
#define _OMC_LIT423_data "- 1234567.0123e-12~:)"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT423,21,_OMC_LIT423_data);
#define _OMC_LIT423 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT423)
#define _OMC_LIT424_data "-1234567.0123e-12"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT424,17,_OMC_LIT424_data);
#define _OMC_LIT424 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT424)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT425,1,12) {&TplAbsyn_TypeSignature_REAL__TYPE__desc,}};
#define _OMC_LIT425 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT425)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT426,3,5) {&TplAbsyn_ExpressionBase_LITERAL__desc,_OMC_LIT424,_OMC_LIT425}};
#define _OMC_LIT426 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT426)
#define _OMC_LIT427_data "true*-1234567.0123e-12*~:)"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT427,26,_OMC_LIT427_data);
#define _OMC_LIT427 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT427)
#define _OMC_LIT428_data ".0123E12~:)"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT428,11,_OMC_LIT428_data);
#define _OMC_LIT428 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT428)
#define _OMC_LIT429_data ".0123E12"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT429,8,_OMC_LIT429_data);
#define _OMC_LIT429 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT429)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT430,3,5) {&TplAbsyn_ExpressionBase_LITERAL__desc,_OMC_LIT429,_OMC_LIT425}};
#define _OMC_LIT430 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT430)
#define _OMC_LIT431_data "true*.0123E12*~:)"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT431,17,_OMC_LIT431_data);
#define _OMC_LIT431 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT431)
#define _OMC_LIT432_data "true~:)"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT432,7,_OMC_LIT432_data);
#define _OMC_LIT432 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT432)
#define _OMC_LIT433_data "true"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT433,4,_OMC_LIT433_data);
#define _OMC_LIT433 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT433)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT434,1,13) {&TplAbsyn_TypeSignature_BOOLEAN__TYPE__desc,}};
#define _OMC_LIT434 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT434)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT435,3,5) {&TplAbsyn_ExpressionBase_LITERAL__desc,_OMC_LIT433,_OMC_LIT434}};
#define _OMC_LIT435 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT435)
#define _OMC_LIT436_data "true*true*~:)"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT436,13,_OMC_LIT436_data);
#define _OMC_LIT436 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT436)
#define _OMC_LIT437_data "false~:)"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT437,8,_OMC_LIT437_data);
#define _OMC_LIT437 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT437)
#define _OMC_LIT438_data "false"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT438,5,_OMC_LIT438_data);
#define _OMC_LIT438 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT438)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT439,3,5) {&TplAbsyn_ExpressionBase_LITERAL__desc,_OMC_LIT438,_OMC_LIT434}};
#define _OMC_LIT439 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT439)
#define _OMC_LIT440_data "true*false*~:)"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT440,14,_OMC_LIT440_data);
#define _OMC_LIT440 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT440)
#define _OMC_LIT441_data "\\n~:)"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT441,5,_OMC_LIT441_data);
#define _OMC_LIT441 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT441)
#define _OMC_LIT442_data "\\\"\\n\\n\\ ~:)"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT442,11,_OMC_LIT442_data);
#define _OMC_LIT442 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT442)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT443,2,1) {_OMC_LIT22,MMC_REFSTRUCTLIT(mmc_nil)}};
#define _OMC_LIT443 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT443)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT444,2,1) {_OMC_LIT405,_OMC_LIT443}};
#define _OMC_LIT444 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT444)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT445,2,1) {_OMC_LIT331,_OMC_LIT444}};
#define _OMC_LIT445 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT445)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT446,3,6) {&Tpl_StringToken_ST__STRING__LIST__desc,_OMC_LIT445,MMC_IMMEDIATE(MMC_TAGFIXNUM(0))}};
#define _OMC_LIT446 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT446)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT447,2,4) {&TplAbsyn_ExpressionBase_STR__TOKEN__desc,_OMC_LIT446}};
#define _OMC_LIT447 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT447)
#define _OMC_LIT448_data "true*\"\n\n *~:)"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT448,13,_OMC_LIT448_data);
#define _OMC_LIT448 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT448)
#define _OMC_LIT449_data "'Susan'~:)"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT449,10,_OMC_LIT449_data);
#define _OMC_LIT449 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT449)
#define _OMC_LIT450_data "test - no file"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT450,14,_OMC_LIT450_data);
#define _OMC_LIT450 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT450)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT451,4,3) {&TplParser_ParseInfo_PARSE__INFO__desc,_OMC_LIT450,MMC_REFSTRUCTLIT(mmc_nil),MMC_IMMEDIATE(MMC_TAGFIXNUM(0))}};
#define _OMC_LIT451 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT451)
#define _OMC_LIT452_data ","
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT452,1,_OMC_LIT452_data);
#define _OMC_LIT452 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT452)
#define _OMC_LIT453_data " of "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT453,4,_OMC_LIT453_data);
#define _OMC_LIT453 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT453)
#define _OMC_LIT454_data "11,3 of 8"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT454,9,_OMC_LIT454_data);
#define _OMC_LIT454 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT454)
#define _OMC_LIT455_data "TplParser.charsTillEndOfLine and getPosition \n"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT455,46,_OMC_LIT455_data);
#define _OMC_LIT455 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT455)
#define _OMC_LIT456_data "x"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT456,1,_OMC_LIT456_data);
#define _OMC_LIT456 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT456)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT457,2,4) {&TplMain_Exp_VARIABLE__desc,_OMC_LIT456}};
#define _OMC_LIT457 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT457)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT458,1,5) {&TplMain_Operator_LESS__desc,}};
#define _OMC_LIT458 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT458)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT459,2,3) {&TplMain_Exp_ICONST__desc,MMC_IMMEDIATE(MMC_TAGFIXNUM(20))}};
#define _OMC_LIT459 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT459)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT460,4,5) {&TplMain_Exp_BINARY__desc,_OMC_LIT457,_OMC_LIT458,_OMC_LIT459}};
#define _OMC_LIT460 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT460)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT461,1,3) {&TplMain_Operator_PLUS__desc,}};
#define _OMC_LIT461 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT461)
#define _OMC_LIT462_data "y"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT462,1,_OMC_LIT462_data);
#define _OMC_LIT462 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT462)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT463,2,4) {&TplMain_Exp_VARIABLE__desc,_OMC_LIT462}};
#define _OMC_LIT463 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT463)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT464,1,4) {&TplMain_Operator_TIMES__desc,}};
#define _OMC_LIT464 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT464)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT465,2,3) {&TplMain_Exp_ICONST__desc,MMC_IMMEDIATE(MMC_TAGFIXNUM(2))}};
#define _OMC_LIT465 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT465)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT466,4,5) {&TplMain_Exp_BINARY__desc,_OMC_LIT463,_OMC_LIT464,_OMC_LIT465}};
#define _OMC_LIT466 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT466)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT467,4,5) {&TplMain_Exp_BINARY__desc,_OMC_LIT457,_OMC_LIT461,_OMC_LIT466}};
#define _OMC_LIT467 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT467)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT468,3,3) {&TplMain_Statement_ASSIGN__desc,_OMC_LIT457,_OMC_LIT467}};
#define _OMC_LIT468 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT468)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT469,2,1) {_OMC_LIT468,MMC_REFSTRUCTLIT(mmc_nil)}};
#define _OMC_LIT469 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT469)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT470,3,4) {&TplMain_Statement_WHILE__desc,_OMC_LIT460,_OMC_LIT469}};
#define _OMC_LIT470 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT470)
#define _OMC_LIT471_data "while((x < 20)) {\n  x = (x + (y * 2));\n}"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT471,40,_OMC_LIT471_data);
#define _OMC_LIT471 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT471)
#define _OMC_LIT472_data "Paper Example statement()"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT472,25,_OMC_LIT472_data);
#define _OMC_LIT472 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT472)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT473,2,1) {MMC_IMMEDIATE(MMC_TAGFIXNUM(5)),MMC_REFSTRUCTLIT(mmc_nil)}};
#define _OMC_LIT473 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT473)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT474,2,1) {MMC_IMMEDIATE(MMC_TAGFIXNUM(4)),_OMC_LIT473}};
#define _OMC_LIT474 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT474)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT475,2,1) {MMC_IMMEDIATE(MMC_TAGFIXNUM(3)),_OMC_LIT474}};
#define _OMC_LIT475 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT475)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT476,2,1) {MMC_IMMEDIATE(MMC_TAGFIXNUM(2)),_OMC_LIT475}};
#define _OMC_LIT476 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT476)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT477,2,1) {MMC_IMMEDIATE(MMC_TAGFIXNUM(1)),_OMC_LIT476}};
#define _OMC_LIT477 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT477)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT478,2,1) {MMC_IMMEDIATE(MMC_TAGFIXNUM(10)),MMC_REFSTRUCTLIT(mmc_nil)}};
#define _OMC_LIT478 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT478)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT479,2,1) {MMC_IMMEDIATE(MMC_TAGFIXNUM(9)),_OMC_LIT478}};
#define _OMC_LIT479 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT479)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT480,2,1) {MMC_IMMEDIATE(MMC_TAGFIXNUM(8)),_OMC_LIT479}};
#define _OMC_LIT480 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT480)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT481,2,1) {MMC_IMMEDIATE(MMC_TAGFIXNUM(7)),_OMC_LIT480}};
#define _OMC_LIT481 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT481)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT482,2,1) {MMC_IMMEDIATE(MMC_TAGFIXNUM(6)),_OMC_LIT481}};
#define _OMC_LIT482 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT482)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT483,2,1) {MMC_IMMEDIATE(MMC_TAGFIXNUM(15)),MMC_REFSTRUCTLIT(mmc_nil)}};
#define _OMC_LIT483 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT483)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT484,2,1) {MMC_IMMEDIATE(MMC_TAGFIXNUM(14)),_OMC_LIT483}};
#define _OMC_LIT484 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT484)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT485,2,1) {MMC_IMMEDIATE(MMC_TAGFIXNUM(13)),_OMC_LIT484}};
#define _OMC_LIT485 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT485)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT486,2,1) {MMC_IMMEDIATE(MMC_TAGFIXNUM(12)),_OMC_LIT485}};
#define _OMC_LIT486 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT486)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT487,2,1) {MMC_IMMEDIATE(MMC_TAGFIXNUM(11)),_OMC_LIT486}};
#define _OMC_LIT487 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT487)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT488,2,1) {_OMC_LIT487,MMC_REFSTRUCTLIT(mmc_nil)}};
#define _OMC_LIT488 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT488)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT489,2,1) {_OMC_LIT482,_OMC_LIT488}};
#define _OMC_LIT489 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT489)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT490,2,1) {_OMC_LIT477,_OMC_LIT489}};
#define _OMC_LIT490 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT490)
#define _OMC_LIT491_data "[ 1, 2, 3, 4, 5;\n  6, 7, 8, 9, 10;\n  11, 12, 13, 14, 15 ]"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT491,57,_OMC_LIT491_data);
#define _OMC_LIT491 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT491)
#define _OMC_LIT492_data "intMatrix() from test.tpl"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT492,25,_OMC_LIT492_data);
#define _OMC_LIT492 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT492)
#define _OMC_LIT493_data "TplCodegen"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT493,10,_OMC_LIT493_data);
#define _OMC_LIT493 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT493)
#define _OMC_LIT494_data "paper"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT494,5,_OMC_LIT494_data);
#define _OMC_LIT494 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT494)
#define _OMC_LIT495_data "test"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT495,4,_OMC_LIT495_data);
#define _OMC_LIT495 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT495)
#define _OMC_LIT496_data "All tests took "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT496,15,_OMC_LIT496_data);
#define _OMC_LIT496 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT496)
#define _OMC_LIT497_data " seconds.\n"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT497,10,_OMC_LIT497_data);
#define _OMC_LIT497 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT497)
#define _OMC_LIT498_data "\n ***** All a) tests OK *****\n\n"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT498,31,_OMC_LIT498_data);
#define _OMC_LIT498 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT498)
#define _OMC_LIT499_data "\n #### "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT499,7,_OMC_LIT499_data);
#define _OMC_LIT499 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT499)
#define _OMC_LIT500_data " test"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT500,5,_OMC_LIT500_data);
#define _OMC_LIT500 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT500)
#define _OMC_LIT501_data "s"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT501,1,_OMC_LIT501_data);
#define _OMC_LIT501 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT501)
#define _OMC_LIT502_data " DID NOT passed ####\n\n"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT502,22,_OMC_LIT502_data);
#define _OMC_LIT502 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT502)
#define _OMC_LIT503_data "\n######## tplMainTest '"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT503,23,_OMC_LIT503_data);
#define _OMC_LIT503 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT503)
#define _OMC_LIT504_data "' (fatally) failed!  ########\n"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT504,30,_OMC_LIT504_data);
#define _OMC_LIT504 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT504)
#define _OMC_LIT505_data "### Error Buffer ###\n"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT505,21,_OMC_LIT505_data);
#define _OMC_LIT505 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT505)
#define _OMC_LIT506_data "\n### End of Error Buffer ###\n"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT506,29,_OMC_LIT506_data);
#define _OMC_LIT506 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT506)
#define _OMC_LIT507_data "a"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT507,1,_OMC_LIT507_data);
#define _OMC_LIT507 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT507)
#define _OMC_LIT508_data ".mo"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT508,3,_OMC_LIT508_data);
#define _OMC_LIT508 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT508)
#define _OMC_LIT509_data "Test failed."
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT509,12,_OMC_LIT509_data);
#define _OMC_LIT509 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT509)
#define _OMC_LIT510_data ".tpl"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT510,4,_OMC_LIT510_data);
#define _OMC_LIT510 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT510)
#define _OMC_LIT511_data "\r"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT511,1,_OMC_LIT511_data);
#define _OMC_LIT511 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT511)
#define _OMC_LIT512_data "__testShouldBe.mo"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT512,17,_OMC_LIT512_data);
#define _OMC_LIT512 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT512)
#define _OMC_LIT513_data "translateFile "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT513,14,_OMC_LIT513_data);
#define _OMC_LIT513 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT513)
#define _OMC_LIT514_data "\n**************************************************\n"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT514,52,_OMC_LIT514_data);
#define _OMC_LIT514 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT514)
#define _OMC_LIT515_data "  returned <<\n"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT515,14,_OMC_LIT515_data);
#define _OMC_LIT515 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT515)
#define _OMC_LIT516_data ">>\n"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT516,3,_OMC_LIT516_data);
#define _OMC_LIT516 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT516)
#define _OMC_LIT517_data "\n result not shown \n"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT517,20,_OMC_LIT517_data);
#define _OMC_LIT517 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT517)
#define _OMC_LIT518_data "### Error Buffer is NOT empty - not shown ###\n"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT518,46,_OMC_LIT518_data);
#define _OMC_LIT518 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT518)
#define _OMC_LIT519_data "*** OK ***\n"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT519,11,_OMC_LIT519_data);
#define _OMC_LIT519 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT519)
#define _OMC_LIT520_data "\n##################################################\n"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT520,52,_OMC_LIT520_data);
#define _OMC_LIT520 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT520)
#define _OMC_LIT521_data ">>\nshould be <<\n"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT521,16,_OMC_LIT521_data);
#define _OMC_LIT521 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT521)
#define _OMC_LIT522_data "### NOT Passed ###\n"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT522,19,_OMC_LIT522_data);
#define _OMC_LIT522 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT522)
#define _OMC_LIT523_data "failtrace"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT523,9,_OMC_LIT523_data);
#define _OMC_LIT523 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT523)
#define _OMC_LIT524_data "Sets whether to print a failtrace or not."
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT524,41,_OMC_LIT524_data);
#define _OMC_LIT524 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT524)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT525,2,3) {&Gettext_TranslatableContent_gettext__desc,_OMC_LIT524}};
#define _OMC_LIT525 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT525)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT526,5,3) {&Flags_DebugFlag_DEBUG__FLAG__desc,MMC_IMMEDIATE(MMC_TAGFIXNUM(1)),_OMC_LIT523,MMC_IMMEDIATE(MMC_TAGFIXNUM(0)),_OMC_LIT525}};
#define _OMC_LIT526 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT526)
#define _OMC_LIT527_data "-!!!Tpl.tplMainTest failed.\n"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT527,28,_OMC_LIT527_data);
#define _OMC_LIT527 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT527)
#define _OMC_LIT528_data "\nProcessing file '"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT528,18,_OMC_LIT528_data);
#define _OMC_LIT528 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT528)
#define _OMC_LIT529_data "'\n"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT529,2,_OMC_LIT529_data);
#define _OMC_LIT529 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT529)
#define _OMC_LIT530_data ".tpl*"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT530,5,_OMC_LIT530_data);
#define _OMC_LIT530 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT530)
#define _OMC_LIT531_data ".err.mo"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT531,7,_OMC_LIT531_data);
#define _OMC_LIT531 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT531)
#define _OMC_LIT532_data "\nWriting result to file '"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT532,25,_OMC_LIT532_data);
#define _OMC_LIT532 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT532)
#define _OMC_LIT533_data "\n### translation of file '"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT533,26,_OMC_LIT533_data);
#define _OMC_LIT533 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT533)
#define _OMC_LIT534_data "' failed!  ###\n"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT534,15,_OMC_LIT534_data);
#define _OMC_LIT534 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT534)
#define _OMC_LIT535_data "SusanTest.tpl"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT535,13,_OMC_LIT535_data);
#define _OMC_LIT535 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT535)
#include "util/modelica.h"
#include "TplMain_includes.h"
#if !defined(PROTECTED_FUNCTION_STATIC)
#define PROTECTED_FUNCTION_STATIC
#endif
PROTECTED_FUNCTION_STATIC modelica_metatype omc_TplMain_lm__55(threadData_t *threadData, modelica_metatype _in_txt, modelica_metatype _in_items);
static const MMC_DEFSTRUCTLIT(boxvar_lit_TplMain_lm__55,2,0) {(void*) boxptr_TplMain_lm__55,0}};
#define boxvar_TplMain_lm__55 MMC_REFSTRUCTLIT(boxvar_lit_TplMain_lm__55)
PROTECTED_FUNCTION_STATIC modelica_metatype omc_TplMain_lm__54(threadData_t *threadData, modelica_metatype _in_txt, modelica_metatype _in_items);
static const MMC_DEFSTRUCTLIT(boxvar_lit_TplMain_lm__54,2,0) {(void*) boxptr_TplMain_lm__54,0}};
#define boxvar_TplMain_lm__54 MMC_REFSTRUCTLIT(boxvar_lit_TplMain_lm__54)
PROTECTED_FUNCTION_STATIC modelica_metatype omc_TplMain_lm__1(threadData_t *threadData, modelica_metatype _in_txt, modelica_metatype _in_items);
static const MMC_DEFSTRUCTLIT(boxvar_lit_TplMain_lm__1,2,0) {(void*) boxptr_TplMain_lm__1,0}};
#define boxvar_TplMain_lm__1 MMC_REFSTRUCTLIT(boxvar_lit_TplMain_lm__1)
DLLExport
modelica_metatype omc_TplMain_intMatrix(threadData_t *threadData, modelica_metatype _txt, modelica_metatype _i_lstOfLst)
{
modelica_metatype _out_txt = NULL;
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
_out_txt = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT1);
_out_txt = omc_Tpl_pushBlock(threadData, _out_txt, _OMC_LIT2);
_out_txt = omc_Tpl_pushIter(threadData, _out_txt, _OMC_LIT7);
_out_txt = omc_TplMain_lm__55(threadData, _out_txt, _i_lstOfLst);
_out_txt = omc_Tpl_popIter(threadData, _out_txt);
_out_txt = omc_Tpl_popBlock(threadData, _out_txt);
_out_txt = omc_Tpl_writeTok(threadData, _out_txt, _OMC_LIT9);
_return: OMC_LABEL_UNUSED
return _out_txt;
}
PROTECTED_FUNCTION_STATIC modelica_metatype omc_TplMain_lm__55(threadData_t *threadData, modelica_metatype _in_txt, modelica_metatype _in_items)
{
modelica_metatype _out_txt = NULL;
modelica_metatype tmpMeta1;
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
volatile modelica_metatype tmp4_1;volatile modelica_metatype tmp4_2;
tmp4_1 = _in_txt;
tmp4_2 = _in_items;
{
modelica_metatype _txt = NULL;
modelica_metatype _rest = NULL;
modelica_metatype _i_intLst = NULL;
volatile mmc_switch_type tmp4;
int tmp5;
tmp4 = 0;
MMC_TRY_INTERNAL(mmc_jumper)
tmp3_top:
threadData->mmc_jumper = &new_mmc_jumper;
for (; tmp4 < 3; tmp4++) {
switch (MMC_SWITCH_CAST(tmp4)) {
case 0: {
if (!listEmpty(tmp4_2)) goto tmp3_end;
_txt = tmp4_1;
tmp4 += 2;
tmpMeta1 = _txt;
goto tmp3_done;
}
case 1: {
modelica_metatype tmpMeta6;
modelica_metatype tmpMeta7;
if (listEmpty(tmp4_2)) goto tmp3_end;
tmpMeta6 = MMC_CAR(tmp4_2);
tmpMeta7 = MMC_CDR(tmp4_2);
_i_intLst = tmpMeta6;
_rest = tmpMeta7;
_txt = tmp4_1;
_txt = omc_Tpl_pushIter(threadData, _txt, _OMC_LIT13);
_txt = omc_TplMain_lm__54(threadData, _txt, _i_intLst);
_txt = omc_Tpl_popIter(threadData, _txt);
_txt = omc_Tpl_nextIter(threadData, _txt);
tmpMeta1 = omc_TplMain_lm__55(threadData, _txt, _rest);
goto tmp3_done;
}
case 2: {
modelica_metatype tmpMeta8;
modelica_metatype tmpMeta9;
if (listEmpty(tmp4_2)) goto tmp3_end;
tmpMeta8 = MMC_CAR(tmp4_2);
tmpMeta9 = MMC_CDR(tmp4_2);
_rest = tmpMeta9;
_txt = tmp4_1;
tmpMeta1 = omc_TplMain_lm__55(threadData, _txt, _rest);
goto tmp3_done;
}
}
goto tmp3_end;
tmp3_end: ;
}
goto goto_2;
tmp3_done:
(void)tmp4;
MMC_RESTORE_INTERNAL(mmc_jumper);
goto tmp3_done2;
goto_2:;
MMC_CATCH_INTERNAL(mmc_jumper);
if (++tmp4 < 3) {
goto tmp3_top;
}
MMC_THROW_INTERNAL();
tmp3_done2:;
}
}
_out_txt = tmpMeta1;
_return: OMC_LABEL_UNUSED
return _out_txt;
}
PROTECTED_FUNCTION_STATIC modelica_metatype omc_TplMain_lm__54(threadData_t *threadData, modelica_metatype _in_txt, modelica_metatype _in_items)
{
modelica_metatype _out_txt = NULL;
modelica_metatype tmpMeta1;
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
volatile modelica_metatype tmp4_1;volatile modelica_metatype tmp4_2;
tmp4_1 = _in_txt;
tmp4_2 = _in_items;
{
modelica_metatype _txt = NULL;
modelica_metatype _rest = NULL;
modelica_integer _i_it;
volatile mmc_switch_type tmp4;
int tmp5;
tmp4 = 0;
MMC_TRY_INTERNAL(mmc_jumper)
tmp3_top:
threadData->mmc_jumper = &new_mmc_jumper;
for (; tmp4 < 3; tmp4++) {
switch (MMC_SWITCH_CAST(tmp4)) {
case 0: {
if (!listEmpty(tmp4_2)) goto tmp3_end;
_txt = tmp4_1;
tmp4 += 2;
tmpMeta1 = _txt;
goto tmp3_done;
}
case 1: {
modelica_metatype tmpMeta6;
modelica_metatype tmpMeta7;
modelica_integer tmp8;
if (listEmpty(tmp4_2)) goto tmp3_end;
tmpMeta6 = MMC_CAR(tmp4_2);
tmpMeta7 = MMC_CDR(tmp4_2);
tmp8 = mmc_unbox_integer(tmpMeta6);
_i_it = tmp8;
_rest = tmpMeta7;
_txt = tmp4_1;
_txt = omc_Tpl_writeStr(threadData, _txt, intString(_i_it));
_txt = omc_Tpl_nextIter(threadData, _txt);
tmpMeta1 = omc_TplMain_lm__54(threadData, _txt, _rest);
goto tmp3_done;
}
case 2: {
modelica_metatype tmpMeta9;
modelica_metatype tmpMeta10;
if (listEmpty(tmp4_2)) goto tmp3_end;
tmpMeta9 = MMC_CAR(tmp4_2);
tmpMeta10 = MMC_CDR(tmp4_2);
_rest = tmpMeta10;
_txt = tmp4_1;
tmpMeta1 = omc_TplMain_lm__54(threadData, _txt, _rest);
goto tmp3_done;
}
}
goto tmp3_end;
tmp3_end: ;
}
goto goto_2;
tmp3_done:
(void)tmp4;
MMC_RESTORE_INTERNAL(mmc_jumper);
goto tmp3_done2;
goto_2:;
MMC_CATCH_INTERNAL(mmc_jumper);
if (++tmp4 < 3) {
goto tmp3_top;
}
MMC_THROW_INTERNAL();
tmp3_done2:;
}
}
_out_txt = tmpMeta1;
_return: OMC_LABEL_UNUSED
return _out_txt;
}
DLLExport
modelica_metatype omc_TplMain_oper(threadData_t *threadData, modelica_metatype _in_txt, modelica_metatype _in_i_it)
{
modelica_metatype _out_txt = NULL;
modelica_metatype tmpMeta1;
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
volatile modelica_metatype tmp4_1;volatile modelica_metatype tmp4_2;
tmp4_1 = _in_txt;
tmp4_2 = _in_i_it;
{
modelica_metatype _txt = NULL;
volatile mmc_switch_type tmp4;
int tmp5;
tmp4 = 0;
MMC_TRY_INTERNAL(mmc_jumper)
tmp3_top:
threadData->mmc_jumper = &new_mmc_jumper;
for (; tmp4 < 4; tmp4++) {
switch (MMC_SWITCH_CAST(tmp4)) {
case 0: {
if (mmc__uniontype__metarecord__typedef__equal(tmp4_2,0,0) == 0) goto tmp3_end;
_txt = tmp4_1;
tmp4 += 2;
tmpMeta1 = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT15);
goto tmp3_done;
}
case 1: {
if (mmc__uniontype__metarecord__typedef__equal(tmp4_2,1,0) == 0) goto tmp3_end;
_txt = tmp4_1;
tmp4 += 1;
tmpMeta1 = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT17);
goto tmp3_done;
}
case 2: {
if (mmc__uniontype__metarecord__typedef__equal(tmp4_2,2,0) == 0) goto tmp3_end;
_txt = tmp4_1;
tmpMeta1 = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT19);
goto tmp3_done;
}
case 3: {
tmpMeta1 = _in_txt;
goto tmp3_done;
}
}
goto tmp3_end;
tmp3_end: ;
}
goto goto_2;
tmp3_done:
(void)tmp4;
MMC_RESTORE_INTERNAL(mmc_jumper);
goto tmp3_done2;
goto_2:;
MMC_CATCH_INTERNAL(mmc_jumper);
if (++tmp4 < 4) {
goto tmp3_top;
}
MMC_THROW_INTERNAL();
tmp3_done2:;
}
}
_out_txt = tmpMeta1;
_return: OMC_LABEL_UNUSED
return _out_txt;
}
DLLExport
modelica_metatype omc_TplMain_exp(threadData_t *threadData, modelica_metatype _in_txt, modelica_metatype _in_i_it)
{
modelica_metatype _out_txt = NULL;
modelica_metatype tmpMeta1;
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
volatile modelica_metatype tmp4_1;volatile modelica_metatype tmp4_2;
tmp4_1 = _in_txt;
tmp4_2 = _in_i_it;
{
modelica_metatype _txt = NULL;
modelica_integer _i_value;
modelica_string _i_name = NULL;
modelica_metatype _i_rhs = NULL;
modelica_metatype _i_op = NULL;
modelica_metatype _i_lhs = NULL;
volatile mmc_switch_type tmp4;
int tmp5;
tmp4 = 0;
MMC_TRY_INTERNAL(mmc_jumper)
tmp3_top:
threadData->mmc_jumper = &new_mmc_jumper;
for (; tmp4 < 4; tmp4++) {
switch (MMC_SWITCH_CAST(tmp4)) {
case 0: {
modelica_metatype tmpMeta6;
modelica_integer tmp7;
if (mmc__uniontype__metarecord__typedef__equal(tmp4_2,0,1) == 0) goto tmp3_end;
tmpMeta6 = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_2), 2));
tmp7 = mmc_unbox_integer(tmpMeta6);
_i_value = tmp7;
_txt = tmp4_1;
tmp4 += 2;
tmpMeta1 = omc_Tpl_writeStr(threadData, _txt, intString(_i_value));
goto tmp3_done;
}
case 1: {
modelica_metatype tmpMeta8;
if (mmc__uniontype__metarecord__typedef__equal(tmp4_2,1,1) == 0) goto tmp3_end;
tmpMeta8 = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_2), 2));
_i_name = tmpMeta8;
_txt = tmp4_1;
tmp4 += 1;
tmpMeta1 = omc_Tpl_writeStr(threadData, _txt, _i_name);
goto tmp3_done;
}
case 2: {
modelica_metatype tmpMeta9;
modelica_metatype tmpMeta10;
modelica_metatype tmpMeta11;
if (mmc__uniontype__metarecord__typedef__equal(tmp4_2,2,3) == 0) goto tmp3_end;
tmpMeta9 = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_2), 2));
tmpMeta10 = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_2), 3));
tmpMeta11 = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_2), 4));
_i_lhs = tmpMeta9;
_i_op = tmpMeta10;
_i_rhs = tmpMeta11;
_txt = tmp4_1;
_txt = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT21);
_txt = omc_TplMain_exp(threadData, _txt, _i_lhs);
_txt = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT23);
_txt = omc_TplMain_oper(threadData, _txt, _i_op);
_txt = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT23);
_txt = omc_TplMain_exp(threadData, _txt, _i_rhs);
tmpMeta1 = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT25);
goto tmp3_done;
}
case 3: {
tmpMeta1 = _in_txt;
goto tmp3_done;
}
}
goto tmp3_end;
tmp3_end: ;
}
goto goto_2;
tmp3_done:
(void)tmp4;
MMC_RESTORE_INTERNAL(mmc_jumper);
goto tmp3_done2;
goto_2:;
MMC_CATCH_INTERNAL(mmc_jumper);
if (++tmp4 < 4) {
goto tmp3_top;
}
MMC_THROW_INTERNAL();
tmp3_done2:;
}
}
_out_txt = tmpMeta1;
_return: OMC_LABEL_UNUSED
return _out_txt;
}
DLLExport
modelica_metatype omc_TplMain_statement(threadData_t *threadData, modelica_metatype _in_txt, modelica_metatype _in_i_it)
{
modelica_metatype _out_txt = NULL;
modelica_metatype tmpMeta1;
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
volatile modelica_metatype tmp4_1;volatile modelica_metatype tmp4_2;
tmp4_1 = _in_txt;
tmp4_2 = _in_i_it;
{
modelica_metatype _txt = NULL;
modelica_metatype _i_statements = NULL;
modelica_metatype _i_condition = NULL;
modelica_metatype _i_rhs = NULL;
modelica_metatype _i_lhs = NULL;
volatile mmc_switch_type tmp4;
int tmp5;
tmp4 = 0;
MMC_TRY_INTERNAL(mmc_jumper)
tmp3_top:
threadData->mmc_jumper = &new_mmc_jumper;
for (; tmp4 < 3; tmp4++) {
switch (MMC_SWITCH_CAST(tmp4)) {
case 0: {
modelica_metatype tmpMeta6;
modelica_metatype tmpMeta7;
if (mmc__uniontype__metarecord__typedef__equal(tmp4_2,0,2) == 0) goto tmp3_end;
tmpMeta6 = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_2), 2));
tmpMeta7 = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_2), 3));
_i_lhs = tmpMeta6;
_i_rhs = tmpMeta7;
_txt = tmp4_1;
tmp4 += 1;
_txt = omc_TplMain_exp(threadData, _txt, _i_lhs);
_txt = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT27);
_txt = omc_TplMain_exp(threadData, _txt, _i_rhs);
tmpMeta1 = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT29);
goto tmp3_done;
}
case 1: {
modelica_metatype tmpMeta8;
modelica_metatype tmpMeta9;
if (mmc__uniontype__metarecord__typedef__equal(tmp4_2,1,2) == 0) goto tmp3_end;
tmpMeta8 = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_2), 2));
tmpMeta9 = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_2), 3));
_i_condition = tmpMeta8;
_i_statements = tmpMeta9;
_txt = tmp4_1;
_txt = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT31);
_txt = omc_TplMain_exp(threadData, _txt, _i_condition);
_txt = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT33);
_txt = omc_Tpl_pushBlock(threadData, _txt, _OMC_LIT34);
_txt = omc_Tpl_pushIter(threadData, _txt, _OMC_LIT36);
_txt = omc_TplMain_lm__1(threadData, _txt, _i_statements);
_txt = omc_Tpl_popIter(threadData, _txt);
_txt = omc_Tpl_softNewLine(threadData, _txt);
_txt = omc_Tpl_popBlock(threadData, _txt);
tmpMeta1 = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT38);
goto tmp3_done;
}
case 2: {
_txt = tmp4_1;
tmpMeta1 = _txt;
goto tmp3_done;
}
}
goto tmp3_end;
tmp3_end: ;
}
goto goto_2;
tmp3_done:
(void)tmp4;
MMC_RESTORE_INTERNAL(mmc_jumper);
goto tmp3_done2;
goto_2:;
MMC_CATCH_INTERNAL(mmc_jumper);
if (++tmp4 < 3) {
goto tmp3_top;
}
MMC_THROW_INTERNAL();
tmp3_done2:;
}
}
_out_txt = tmpMeta1;
_return: OMC_LABEL_UNUSED
return _out_txt;
}
PROTECTED_FUNCTION_STATIC modelica_metatype omc_TplMain_lm__1(threadData_t *threadData, modelica_metatype _in_txt, modelica_metatype _in_items)
{
modelica_metatype _out_txt = NULL;
modelica_metatype tmpMeta1;
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
volatile modelica_metatype tmp4_1;volatile modelica_metatype tmp4_2;
tmp4_1 = _in_txt;
tmp4_2 = _in_items;
{
modelica_metatype _txt = NULL;
modelica_metatype _rest = NULL;
modelica_metatype _i_it = NULL;
volatile mmc_switch_type tmp4;
int tmp5;
tmp4 = 0;
MMC_TRY_INTERNAL(mmc_jumper)
tmp3_top:
threadData->mmc_jumper = &new_mmc_jumper;
for (; tmp4 < 3; tmp4++) {
switch (MMC_SWITCH_CAST(tmp4)) {
case 0: {
if (!listEmpty(tmp4_2)) goto tmp3_end;
_txt = tmp4_1;
tmp4 += 2;
tmpMeta1 = _txt;
goto tmp3_done;
}
case 1: {
modelica_metatype tmpMeta6;
modelica_metatype tmpMeta7;
if (listEmpty(tmp4_2)) goto tmp3_end;
tmpMeta6 = MMC_CAR(tmp4_2);
tmpMeta7 = MMC_CDR(tmp4_2);
_i_it = tmpMeta6;
_rest = tmpMeta7;
_txt = tmp4_1;
_txt = omc_TplMain_statement(threadData, _txt, _i_it);
_txt = omc_Tpl_nextIter(threadData, _txt);
tmpMeta1 = omc_TplMain_lm__1(threadData, _txt, _rest);
goto tmp3_done;
}
case 2: {
modelica_metatype tmpMeta8;
modelica_metatype tmpMeta9;
if (listEmpty(tmp4_2)) goto tmp3_end;
tmpMeta8 = MMC_CAR(tmp4_2);
tmpMeta9 = MMC_CDR(tmp4_2);
_rest = tmpMeta9;
_txt = tmp4_1;
tmpMeta1 = omc_TplMain_lm__1(threadData, _txt, _rest);
goto tmp3_done;
}
}
goto tmp3_end;
tmp3_end: ;
}
goto goto_2;
tmp3_done:
(void)tmp4;
MMC_RESTORE_INTERNAL(mmc_jumper);
goto tmp3_done2;
goto_2:;
MMC_CATCH_INTERNAL(mmc_jumper);
if (++tmp4 < 3) {
goto tmp3_top;
}
MMC_THROW_INTERNAL();
tmp3_done2:;
}
}
_out_txt = tmpMeta1;
_return: OMC_LABEL_UNUSED
return _out_txt;
}
DLLExport
void omc_TplMain_tplMainTest(threadData_t *threadData, modelica_string _inFile)
{
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
volatile modelica_string tmp3_1;
tmp3_1 = _inFile;
{
modelica_string _str = NULL;
modelica_string _strOut = NULL;
modelica_string _ident = NULL;
modelica_string _cval = NULL;
modelica_metatype _chars = NULL;
modelica_metatype _txt = NULL;
modelica_boolean _tequal;
modelica_metatype _tplPackage = NULL;
modelica_metatype _mmPckg = NULL;
modelica_metatype _pid = NULL;
modelica_metatype _ts = NULL;
modelica_metatype _astDefs = NULL;
modelica_metatype _expB = NULL;
modelica_metatype _tok = NULL;
modelica_real _tstart;
modelica_integer _lnum;
modelica_integer _colnum;
modelica_integer _llen;
modelica_integer _notPassedCnt;
volatile mmc_switch_type tmp3;
int tmp4;
tmp3 = 0;
MMC_TRY_INTERNAL(mmc_jumper)
tmp2_top:
threadData->mmc_jumper = &new_mmc_jumper;
for (; tmp3 < 2; tmp3++) {
switch (MMC_SWITCH_CAST(tmp3)) {
case 0: {
modelica_metatype tmpMeta5;
modelica_metatype tmpMeta6;
modelica_metatype tmpMeta7;
modelica_metatype tmpMeta8;
modelica_metatype tmpMeta9;
modelica_metatype tmpMeta10;
modelica_metatype tmpMeta11;
modelica_metatype tmpMeta12;
modelica_metatype tmpMeta13;
modelica_metatype tmpMeta14;
modelica_metatype tmpMeta15;
modelica_metatype tmpMeta16;
modelica_metatype tmpMeta17;
modelica_metatype tmpMeta18;
modelica_metatype tmpMeta19;
modelica_metatype tmpMeta20;
modelica_metatype tmpMeta21;
modelica_metatype tmpMeta22;
modelica_metatype tmpMeta23;
modelica_metatype tmpMeta24;
modelica_metatype tmpMeta25;
modelica_metatype tmpMeta26;
modelica_metatype tmpMeta27;
modelica_metatype tmpMeta28;
modelica_metatype tmpMeta29;
modelica_metatype tmpMeta30;
modelica_metatype tmpMeta31;
modelica_metatype tmpMeta32;
modelica_metatype tmpMeta33;
modelica_metatype tmpMeta34;
modelica_metatype tmpMeta35;
modelica_metatype tmpMeta36;
modelica_metatype tmpMeta37;
modelica_metatype tmpMeta38;
modelica_metatype tmpMeta39;
modelica_metatype tmpMeta40;
modelica_metatype tmpMeta41;
modelica_metatype tmpMeta42;
modelica_metatype tmpMeta43;
modelica_metatype tmpMeta44;
modelica_metatype tmpMeta45;
modelica_metatype tmpMeta46;
modelica_metatype tmpMeta47;
modelica_metatype tmpMeta48;
modelica_metatype tmpMeta49;
modelica_metatype tmpMeta50;
modelica_metatype tmpMeta51;
modelica_metatype tmpMeta52;
modelica_metatype tmpMeta53;
modelica_metatype tmpMeta54;
modelica_metatype tmpMeta55;
modelica_metatype tmpMeta56;
modelica_metatype tmpMeta57;
modelica_metatype tmpMeta58;
modelica_metatype tmpMeta59;
modelica_metatype tmpMeta60;
modelica_metatype tmpMeta61;
modelica_metatype tmpMeta62;
modelica_metatype tmpMeta63;
modelica_metatype tmpMeta64;
modelica_metatype tmpMeta65;
modelica_metatype tmpMeta66;
modelica_metatype tmpMeta67;
modelica_metatype tmpMeta68;
modelica_metatype tmpMeta69;
modelica_metatype tmpMeta70;
modelica_metatype tmpMeta71;
modelica_metatype tmpMeta72;
modelica_metatype tmpMeta73;
modelica_metatype tmpMeta74;
modelica_metatype tmpMeta75;
modelica_metatype tmpMeta76;
modelica_metatype tmpMeta77;
modelica_metatype tmpMeta78;
modelica_metatype tmpMeta79;
modelica_metatype tmpMeta80;
modelica_metatype tmpMeta81;
modelica_metatype tmpMeta82;
modelica_metatype tmpMeta83;
modelica_metatype tmpMeta84;
modelica_metatype tmpMeta85;
modelica_metatype tmpMeta86;
modelica_metatype tmpMeta87;
modelica_metatype tmpMeta88;
modelica_metatype tmpMeta89;
modelica_metatype tmpMeta90;
modelica_metatype tmpMeta91;
modelica_metatype tmpMeta92;
modelica_metatype tmpMeta93;
modelica_metatype tmpMeta94;
modelica_metatype tmpMeta95;
modelica_metatype tmpMeta96;
modelica_metatype tmpMeta97;
modelica_metatype tmpMeta98;
modelica_metatype tmpMeta99;
modelica_metatype tmpMeta100;
modelica_metatype tmpMeta101;
modelica_metatype tmpMeta102;
modelica_metatype tmpMeta103;
modelica_metatype tmpMeta104;
modelica_metatype tmpMeta105;
modelica_metatype tmpMeta106;
modelica_metatype tmpMeta107;
modelica_metatype tmpMeta108;
modelica_metatype tmpMeta109;
modelica_metatype tmpMeta110;
modelica_metatype tmpMeta111;
modelica_metatype tmpMeta112;
modelica_metatype tmpMeta113;
modelica_metatype tmpMeta114;
modelica_metatype tmpMeta115;
modelica_metatype tmpMeta116;
modelica_metatype tmpMeta117;
modelica_metatype tmpMeta118;
modelica_metatype tmpMeta119;
modelica_metatype tmpMeta120;
modelica_metatype tmpMeta121;
modelica_metatype tmpMeta122;
modelica_metatype tmpMeta123;
modelica_metatype tmpMeta124;
modelica_metatype tmpMeta125;
modelica_metatype tmpMeta126;
modelica_metatype tmpMeta127;
modelica_metatype tmpMeta128;
modelica_metatype tmpMeta129;
modelica_metatype tmpMeta130;
modelica_metatype tmpMeta131;
modelica_metatype tmpMeta132;
modelica_metatype tmpMeta133;
modelica_metatype tmpMeta134;
modelica_metatype tmpMeta135;
modelica_metatype tmpMeta136;
modelica_metatype tmpMeta137;
modelica_metatype tmpMeta138;
modelica_metatype tmpMeta139;
modelica_metatype tmpMeta140;
modelica_metatype tmpMeta141;
modelica_metatype tmpMeta142;
modelica_metatype tmpMeta143;
modelica_metatype tmpMeta144;
modelica_metatype tmpMeta145;
modelica_metatype tmpMeta146;
modelica_metatype tmpMeta147;
modelica_metatype tmpMeta148;
modelica_metatype tmpMeta149;
modelica_metatype tmpMeta150;
modelica_metatype tmpMeta151;
modelica_metatype tmpMeta152;
modelica_metatype tmpMeta153;
modelica_metatype tmpMeta154;
modelica_metatype tmpMeta155;
modelica_metatype tmpMeta156;
modelica_metatype tmpMeta157;
modelica_metatype tmpMeta158;
modelica_metatype tmpMeta159;
modelica_metatype tmpMeta160;
modelica_metatype tmpMeta161;
modelica_metatype tmpMeta162;
modelica_metatype tmpMeta163;
modelica_metatype tmpMeta164;
modelica_metatype tmpMeta165;
modelica_metatype tmpMeta166;
modelica_metatype tmpMeta167;
modelica_metatype tmpMeta168;
modelica_metatype tmpMeta169;
modelica_metatype tmpMeta170;
modelica_metatype tmpMeta171;
modelica_metatype tmpMeta172;
modelica_metatype tmpMeta173;
modelica_metatype tmpMeta174;
modelica_metatype tmpMeta175;
modelica_metatype tmpMeta176;
modelica_metatype tmpMeta177;
modelica_metatype tmpMeta178;
modelica_metatype tmpMeta179;
modelica_metatype tmpMeta180;
modelica_metatype tmpMeta181;
modelica_metatype tmpMeta182;
modelica_metatype tmpMeta183;
modelica_metatype tmpMeta184;
modelica_metatype tmpMeta185;
modelica_metatype tmpMeta186;
modelica_metatype tmpMeta187;
modelica_metatype tmpMeta188;
modelica_metatype tmpMeta189;
modelica_metatype tmpMeta190;
modelica_metatype tmpMeta191;
modelica_metatype tmpMeta192;
modelica_metatype tmpMeta193;
modelica_metatype tmpMeta194;
modelica_metatype tmpMeta195;
modelica_metatype tmpMeta196;
modelica_metatype tmpMeta197;
modelica_metatype tmpMeta198;
modelica_metatype tmpMeta199;
modelica_metatype tmpMeta200;
modelica_metatype tmpMeta201;
modelica_metatype tmpMeta202;
modelica_metatype tmpMeta203;
modelica_metatype tmpMeta204;
modelica_metatype tmpMeta205;
modelica_metatype tmpMeta206;
modelica_metatype tmpMeta207;
modelica_metatype tmpMeta208;
modelica_metatype tmpMeta209;
modelica_metatype tmpMeta210;
modelica_metatype tmpMeta211;
modelica_metatype tmpMeta212;
modelica_metatype tmpMeta213;
modelica_metatype tmpMeta214;
modelica_metatype tmpMeta215;
modelica_boolean tmp216;
modelica_string tmp217;
if (1 != MMC_STRLEN(tmp3_1) || strcmp(MMC_STRINGDATA(_OMC_LIT507), MMC_STRINGDATA(tmp3_1)) != 0) goto tmp2_end;
_notPassedCnt = ((modelica_integer) 0);
omc_Print_clearErrorBuf(threadData);
fputs(MMC_STRINGDATA(_OMC_LIT39),stdout);
_tstart = mmc_clock();
_txt = omc_Tpl_writeStr(threadData, _OMC_LIT40, _OMC_LIT41);
_txt = omc_Tpl_pushBlock(threadData, _txt, _OMC_LIT2);
_txt = omc_Tpl_writeStr(threadData, _txt, _OMC_LIT41);
_txt = omc_Tpl_newLine(threadData, _txt);
_txt = omc_Tpl_writeStr(threadData, _txt, _OMC_LIT41);
_txt = omc_Tpl_popBlock(threadData, _txt);
_str = omc_Tpl_textString(threadData, _txt);
_notPassedCnt = omc_TplMain_testStringEquality(threadData, _str, _OMC_LIT42, 1, 1, _OMC_LIT43, _notPassedCnt);
_txt = _OMC_LIT40;
_txt = omc_TplCodegen_pathIdent(threadData, _txt, _OMC_LIT45);
_str = omc_Tpl_textString(threadData, _txt);
_notPassedCnt = omc_TplMain_testStringEquality(threadData, _str, _OMC_LIT44, 1, 1, _OMC_LIT46, _notPassedCnt);
_txt = _OMC_LIT40;
_txt = omc_TplCodegen_pathIdent(threadData, _txt, _OMC_LIT48);
_str = omc_Tpl_textString(threadData, _txt);
_notPassedCnt = omc_TplMain_testStringEquality(threadData, _str, _OMC_LIT49, 1, 1, _OMC_LIT50, _notPassedCnt);
_txt = _OMC_LIT40;
_txt = omc_TplCodegen_typedIdents(threadData, _txt, _OMC_LIT61);
_str = omc_Tpl_textString(threadData, _txt);
_notPassedCnt = omc_TplMain_testStringEquality(threadData, _str, _OMC_LIT62, 1, 1, _OMC_LIT63, _notPassedCnt);
_txt = _OMC_LIT40;
_txt = omc_TplCodegen_typedIdentsEx(threadData, _txt, _OMC_LIT66, _OMC_LIT67, _OMC_LIT68);
_str = omc_Tpl_textString(threadData, _txt);
_notPassedCnt = omc_TplMain_testStringEquality(threadData, _str, _OMC_LIT69, 1, 1, _OMC_LIT70, _notPassedCnt);
_txt = _OMC_LIT40;
_txt = omc_TplCodegen_mmPackage(threadData, _txt, _OMC_LIT194);
_str = omc_Tpl_textString(threadData, _txt);
_notPassedCnt = omc_TplMain_testStringEquality(threadData, _str, _OMC_LIT195, 0, 0, _OMC_LIT196, _notPassedCnt);
_tplPackage = _OMC_LIT324;
_mmPckg = omc_TplAbsyn_transformAST(threadData, _tplPackage);
_txt = _OMC_LIT40;
_txt = omc_TplCodegen_mmPackage(threadData, _txt, _mmPckg);
_str = omc_Tpl_textString(threadData, _txt);
_notPassedCnt = omc_TplMain_testStringEquality(threadData, _str, _OMC_LIT325, 0, 0, _OMC_LIT326, _notPassedCnt);
_str = _OMC_LIT327;
_chars = stringListStringChar(_str);
_chars = omc_TplParser_interleave(threadData, _chars, omc_TplParser_makeStartLineInfo(threadData, _chars, _OMC_LIT328), NULL);
_strOut = stringAppendList(_chars);
tmpMeta5 = stringAppend(_OMC_LIT330,_str);
tmpMeta6 = stringAppend(tmpMeta5,_OMC_LIT331);
_notPassedCnt = omc_TplMain_testStringEquality(threadData, _strOut, _OMC_LIT329, 1, 1, tmpMeta6, _notPassedCnt);
_str = _OMC_LIT332;
_chars = stringListStringChar(_str);
omc_TplParser_afterKeyword(threadData, _chars);
_strOut = stringAppendList(_chars);
tmpMeta7 = stringAppend(_OMC_LIT333,_str);
tmpMeta8 = stringAppend(tmpMeta7,_OMC_LIT331);
_notPassedCnt = omc_TplMain_testStringEquality(threadData, _strOut, _OMC_LIT332, 1, 1, tmpMeta8, _notPassedCnt);
_str = _OMC_LIT334;
_chars = stringListStringChar(_str);
_chars = omc_TplParser_identifier(threadData, _chars ,&_ident);
tmpMeta9 = stringAppend(_OMC_LIT16,_ident);
tmpMeta10 = stringAppend(tmpMeta9,_OMC_LIT16);
tmpMeta11 = stringAppend(tmpMeta10,stringAppendList(_chars));
_strOut = tmpMeta11;
tmpMeta12 = stringAppend(_OMC_LIT336,_str);
tmpMeta13 = stringAppend(tmpMeta12,_OMC_LIT331);
_notPassedCnt = omc_TplMain_testStringEquality(threadData, _strOut, _OMC_LIT335, 1, 1, tmpMeta13, _notPassedCnt);
_str = _OMC_LIT337;
_chars = stringListStringChar(_str);
_chars = omc_TplParser_pathIdent(threadData, _chars, omc_TplParser_makeStartLineInfo(threadData, _chars, _OMC_LIT328) ,NULL ,&_pid);
_txt = _OMC_LIT40;
_txt = omc_TplCodegen_pathIdent(threadData, _txt, _pid);
_ident = omc_Tpl_textString(threadData, _txt);
tmpMeta14 = stringAppend(_OMC_LIT16,_ident);
tmpMeta15 = stringAppend(tmpMeta14,_OMC_LIT16);
tmpMeta16 = stringAppend(tmpMeta15,stringAppendList(_chars));
_strOut = tmpMeta16;
tmpMeta17 = stringAppend(_OMC_LIT339,_str);
tmpMeta18 = stringAppend(tmpMeta17,_OMC_LIT331);
_notPassedCnt = omc_TplMain_testStringEquality(threadData, _strOut, _OMC_LIT338, 1, 1, tmpMeta18, _notPassedCnt);
_str = _OMC_LIT340;
_chars = stringListStringChar(_str);
_chars = omc_TplParser_pathIdent(threadData, _chars, omc_TplParser_makeStartLineInfo(threadData, _chars, _OMC_LIT328) ,NULL ,&_pid);
_txt = _OMC_LIT40;
_txt = omc_TplCodegen_pathIdent(threadData, _txt, _pid);
_ident = omc_Tpl_textString(threadData, _txt);
tmpMeta19 = stringAppend(_OMC_LIT16,_ident);
tmpMeta20 = stringAppend(tmpMeta19,_OMC_LIT16);
tmpMeta21 = stringAppend(tmpMeta20,stringAppendList(_chars));
_strOut = tmpMeta21;
tmpMeta22 = stringAppend(_OMC_LIT339,_str);
tmpMeta23 = stringAppend(tmpMeta22,_OMC_LIT331);
_notPassedCnt = omc_TplMain_testStringEquality(threadData, _strOut, _OMC_LIT341, 1, 1, tmpMeta23, _notPassedCnt);
_str = _OMC_LIT342;
_chars = stringListStringChar(_str);
_chars = omc_TplParser_typeSig(threadData, _chars, omc_TplParser_makeStartLineInfo(threadData, _chars, _OMC_LIT328) ,NULL ,&_ts);
_tequal = valueEq(_ts, _OMC_LIT344);
_txt = _OMC_LIT40;
_txt = omc_TplCodegen_typeSig(threadData, _txt, _ts);
_ident = omc_Tpl_textString(threadData, _txt);
tmpMeta24 = stringAppend(omc_Tpl_booleanString(threadData, _tequal),_OMC_LIT16);
tmpMeta25 = stringAppend(tmpMeta24,_ident);
tmpMeta26 = stringAppend(tmpMeta25,_OMC_LIT16);
tmpMeta27 = stringAppend(tmpMeta26,stringAppendList(_chars));
_strOut = tmpMeta27;
tmpMeta28 = stringAppend(_OMC_LIT346,_str);
tmpMeta29 = stringAppend(tmpMeta28,_OMC_LIT331);
_notPassedCnt = omc_TplMain_testStringEquality(threadData, _strOut, _OMC_LIT345, 1, 1, tmpMeta29, _notPassedCnt);
_str = _OMC_LIT347;
_chars = stringListStringChar(_str);
_chars = omc_TplParser_typeSig(threadData, _chars, omc_TplParser_makeStartLineInfo(threadData, _chars, _OMC_LIT328) ,NULL ,&_ts);
_tequal = valueEq(_ts, _OMC_LIT354);
_txt = _OMC_LIT40;
_txt = omc_TplCodegen_typeSig(threadData, _txt, _ts);
_ident = omc_Tpl_textString(threadData, _txt);
tmpMeta30 = stringAppend(omc_Tpl_booleanString(threadData, _tequal),_OMC_LIT16);
tmpMeta31 = stringAppend(tmpMeta30,_ident);
tmpMeta32 = stringAppend(tmpMeta31,_OMC_LIT16);
tmpMeta33 = stringAppend(tmpMeta32,stringAppendList(_chars));
_strOut = tmpMeta33;
tmpMeta34 = stringAppend(_OMC_LIT346,_str);
tmpMeta35 = stringAppend(tmpMeta34,_OMC_LIT331);
_notPassedCnt = omc_TplMain_testStringEquality(threadData, _strOut, _OMC_LIT355, 1, 1, tmpMeta35, _notPassedCnt);
_str = _OMC_LIT356;
_chars = stringListStringChar(_str);
tmpMeta36 = MMC_REFSTRUCTLIT(mmc_nil);
_chars = omc_TplParser_interfacePackage(threadData, _chars, omc_TplParser_makeStartLineInfo(threadData, _chars, _OMC_LIT328), tmpMeta36 ,NULL ,&_pid ,&_astDefs);
_tequal = valueEq(_astDefs, _OMC_LIT233);
_txt = _OMC_LIT40;
_txt = omc_TplCodegen_pathIdent(threadData, _txt, _pid);
_ident = omc_Tpl_textString(threadData, _txt);
tmpMeta37 = stringAppend(omc_Tpl_booleanString(threadData, _tequal),_OMC_LIT16);
tmpMeta38 = stringAppend(tmpMeta37,_ident);
tmpMeta39 = stringAppend(tmpMeta38,_OMC_LIT16);
tmpMeta40 = stringAppend(tmpMeta39,stringAppendList(_chars));
_strOut = tmpMeta40;
_notPassedCnt = omc_TplMain_testStringEquality(threadData, _strOut, _OMC_LIT357, 1, 1, _OMC_LIT358, _notPassedCnt);
_str = _OMC_LIT359;
_chars = stringListStringChar(_str);
tmpMeta41 = MMC_REFSTRUCTLIT(mmc_nil);
_chars = omc_TplParser_interfacePackage(threadData, _chars, omc_TplParser_makeStartLineInfo(threadData, _chars, _OMC_LIT328), tmpMeta41 ,NULL ,&_pid ,&_astDefs);
_tequal = (valueEq(_astDefs, _OMC_LIT373) && valueEq(_pid, _OMC_LIT45));
_txt = _OMC_LIT40;
_txt = omc_TplCodegen_pathIdent(threadData, _txt, _pid);
omc_Tpl_textString(threadData, _txt);
tmpMeta42 = stringAppend(omc_Tpl_booleanString(threadData, _tequal),_OMC_LIT16);
tmpMeta43 = stringAppend(tmpMeta42,stringAppendList(_chars));
_strOut = tmpMeta43;
_notPassedCnt = omc_TplMain_testStringEquality(threadData, _strOut, _OMC_LIT374, 1, 1, _OMC_LIT375, _notPassedCnt);
_str = _OMC_LIT376;
_chars = stringListStringChar(_str);
tmpMeta44 = MMC_REFSTRUCTLIT(mmc_nil);
_chars = omc_TplParser_interfacePackage(threadData, _chars, omc_TplParser_makeStartLineInfo(threadData, _chars, _OMC_LIT328), tmpMeta44 ,NULL ,&_pid ,NULL);
_txt = _OMC_LIT40;
_txt = omc_TplCodegen_pathIdent(threadData, _txt, _pid);
omc_Tpl_textString(threadData, _txt);
tmpMeta45 = stringAppend(_OMC_LIT377,stringAppendList(_chars));
_strOut = tmpMeta45;
_notPassedCnt = omc_TplMain_testStringEquality(threadData, _strOut, _OMC_LIT378, 1, 1, _OMC_LIT379, _notPassedCnt);
_str = _OMC_LIT380;
_chars = stringListStringChar(_str);
tmpMeta48 = omc_TplParser_expression(threadData, _chars, omc_TplParser_makeStartLineInfo(threadData, _chars, _OMC_LIT328), _OMC_LIT18, _OMC_LIT381, 0, NULL, &tmpMeta46);
_chars = tmpMeta48;
tmpMeta47 = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta46), 1));
_expB = tmpMeta47;
_tequal = valueEq(_expB, _OMC_LIT383);
tmpMeta49 = _expB;
if (mmc__uniontype__metarecord__typedef__equal(tmpMeta49,1,1) == 0) goto goto_1;
tmpMeta50 = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta49), 2));
_tok = tmpMeta50;
_txt = _OMC_LIT40;
_txt = omc_Tpl_writeTok(threadData, _txt, _tok);
_strOut = omc_Tpl_textString(threadData, _txt);
tmpMeta51 = stringAppend(omc_Tpl_booleanString(threadData, _tequal),_OMC_LIT16);
tmpMeta52 = stringAppend(tmpMeta51,_strOut);
tmpMeta53 = stringAppend(tmpMeta52,_OMC_LIT16);
tmpMeta54 = stringAppend(tmpMeta53,stringAppendList(_chars));
_strOut = tmpMeta54;
tmpMeta55 = stringAppend(_OMC_LIT385,_str);
tmpMeta56 = stringAppend(tmpMeta55,_OMC_LIT386);
_notPassedCnt = omc_TplMain_testStringEquality(threadData, _strOut, _OMC_LIT384, 1, 1, tmpMeta56, _notPassedCnt);
_str = _OMC_LIT387;
_chars = stringListStringChar(_str);
tmpMeta59 = omc_TplParser_expression(threadData, _chars, omc_TplParser_makeStartLineInfo(threadData, _chars, _OMC_LIT328), _OMC_LIT18, _OMC_LIT381, 0, NULL, &tmpMeta57);
_chars = tmpMeta59;
tmpMeta58 = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta57), 1));
_expB = tmpMeta58;
_tequal = valueEq(_expB, _OMC_LIT313);
tmpMeta60 = _expB;
if (mmc__uniontype__metarecord__typedef__equal(tmpMeta60,1,1) == 0) goto goto_1;
tmpMeta61 = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta60), 2));
_tok = tmpMeta61;
_txt = _OMC_LIT40;
_txt = omc_Tpl_writeTok(threadData, _txt, _tok);
_strOut = omc_Tpl_textString(threadData, _txt);
tmpMeta62 = stringAppend(omc_Tpl_booleanString(threadData, _tequal),_OMC_LIT16);
tmpMeta63 = stringAppend(tmpMeta62,_strOut);
tmpMeta64 = stringAppend(tmpMeta63,_OMC_LIT16);
tmpMeta65 = stringAppend(tmpMeta64,stringAppendList(_chars));
_strOut = tmpMeta65;
tmpMeta66 = stringAppend(_OMC_LIT385,_str);
tmpMeta67 = stringAppend(tmpMeta66,_OMC_LIT386);
_notPassedCnt = omc_TplMain_testStringEquality(threadData, _strOut, _OMC_LIT388, 1, 1, tmpMeta67, _notPassedCnt);
_str = _OMC_LIT389;
_chars = stringListStringChar(_str);
tmpMeta70 = omc_TplParser_expression(threadData, _chars, omc_TplParser_makeStartLineInfo(threadData, _chars, _OMC_LIT328), _OMC_LIT18, _OMC_LIT381, 0, NULL, &tmpMeta68);
_chars = tmpMeta70;
tmpMeta69 = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta68), 1));
_expB = tmpMeta69;
_tequal = valueEq(_expB, _OMC_LIT392);
tmpMeta71 = _expB;
if (mmc__uniontype__metarecord__typedef__equal(tmpMeta71,1,1) == 0) goto goto_1;
tmpMeta72 = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta71), 2));
_tok = tmpMeta72;
_txt = _OMC_LIT40;
_txt = omc_Tpl_writeTok(threadData, _txt, _tok);
_strOut = omc_Tpl_textString(threadData, _txt);
tmpMeta73 = stringAppend(omc_Tpl_booleanString(threadData, _tequal),_OMC_LIT16);
tmpMeta74 = stringAppend(tmpMeta73,_strOut);
tmpMeta75 = stringAppend(tmpMeta74,_OMC_LIT16);
tmpMeta76 = stringAppend(tmpMeta75,stringAppendList(_chars));
_strOut = tmpMeta76;
tmpMeta77 = stringAppend(_OMC_LIT385,_str);
tmpMeta78 = stringAppend(tmpMeta77,_OMC_LIT386);
_notPassedCnt = omc_TplMain_testStringEquality(threadData, _strOut, _OMC_LIT393, 1, 1, tmpMeta78, _notPassedCnt);
_str = _OMC_LIT394;
_chars = stringListStringChar(_str);
tmpMeta81 = omc_TplParser_expression(threadData, _chars, omc_TplParser_makeStartLineInfo(threadData, _chars, _OMC_LIT328), _OMC_LIT18, _OMC_LIT381, 0, NULL, &tmpMeta79);
_chars = tmpMeta81;
tmpMeta80 = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta79), 1));
_expB = tmpMeta80;
_tequal = valueEq(_expB, _OMC_LIT402);
tmpMeta82 = _expB;
if (mmc__uniontype__metarecord__typedef__equal(tmpMeta82,1,1) == 0) goto goto_1;
tmpMeta83 = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta82), 2));
_tok = tmpMeta83;
_txt = _OMC_LIT40;
_txt = omc_Tpl_writeTok(threadData, _txt, _tok);
_strOut = omc_Tpl_textString(threadData, _txt);
tmpMeta84 = stringAppend(omc_Tpl_booleanString(threadData, _tequal),_OMC_LIT16);
tmpMeta85 = stringAppend(tmpMeta84,_strOut);
tmpMeta86 = stringAppend(tmpMeta85,_OMC_LIT16);
tmpMeta87 = stringAppend(tmpMeta86,stringAppendList(_chars));
_strOut = tmpMeta87;
tmpMeta88 = stringAppend(_OMC_LIT385,_str);
tmpMeta89 = stringAppend(tmpMeta88,_OMC_LIT386);
_notPassedCnt = omc_TplMain_testStringEquality(threadData, _strOut, _OMC_LIT403, 1, 1, tmpMeta89, _notPassedCnt);
_str = _OMC_LIT404;
_chars = stringListStringChar(_str);
tmpMeta92 = omc_TplParser_expression(threadData, _chars, omc_TplParser_makeStartLineInfo(threadData, _chars, _OMC_LIT328), _OMC_LIT18, _OMC_LIT381, 0, NULL, &tmpMeta90);
_chars = tmpMeta92;
tmpMeta91 = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta90), 1));
_expB = tmpMeta91;
_tequal = valueEq(_expB, _OMC_LIT412);
tmpMeta93 = _expB;
if (mmc__uniontype__metarecord__typedef__equal(tmpMeta93,1,1) == 0) goto goto_1;
tmpMeta94 = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta93), 2));
_tok = tmpMeta94;
_txt = _OMC_LIT40;
_txt = omc_Tpl_writeTok(threadData, _txt, _tok);
_strOut = omc_Tpl_textString(threadData, _txt);
tmpMeta95 = stringAppend(omc_Tpl_booleanString(threadData, _tequal),_OMC_LIT16);
tmpMeta96 = stringAppend(tmpMeta95,_strOut);
tmpMeta97 = stringAppend(tmpMeta96,_OMC_LIT16);
tmpMeta98 = stringAppend(tmpMeta97,stringAppendList(_chars));
_strOut = tmpMeta98;
tmpMeta99 = stringAppend(_OMC_LIT385,_str);
tmpMeta100 = stringAppend(tmpMeta99,_OMC_LIT386);
_notPassedCnt = omc_TplMain_testStringEquality(threadData, _strOut, _OMC_LIT413, 1, 1, tmpMeta100, _notPassedCnt);
_str = _OMC_LIT414;
_chars = stringListStringChar(_str);
tmpMeta103 = omc_TplParser_expression(threadData, _chars, omc_TplParser_makeStartLineInfo(threadData, _chars, _OMC_LIT328), _OMC_LIT18, _OMC_LIT381, 0, NULL, &tmpMeta101);
_chars = tmpMeta103;
tmpMeta102 = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta101), 1));
_expB = tmpMeta102;
_tequal = valueEq(_expB, _OMC_LIT416);
tmpMeta104 = _expB;
if (mmc__uniontype__metarecord__typedef__equal(tmpMeta104,2,2) == 0) goto goto_1;
tmpMeta105 = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta104), 2));
_cval = tmpMeta105;
tmpMeta106 = stringAppend(omc_Tpl_booleanString(threadData, _tequal),_OMC_LIT16);
tmpMeta107 = stringAppend(tmpMeta106,_cval);
tmpMeta108 = stringAppend(tmpMeta107,_OMC_LIT16);
tmpMeta109 = stringAppend(tmpMeta108,stringAppendList(_chars));
_strOut = tmpMeta109;
tmpMeta110 = stringAppend(_OMC_LIT418,_str);
tmpMeta111 = stringAppend(tmpMeta110,_OMC_LIT331);
_notPassedCnt = omc_TplMain_testStringEquality(threadData, _strOut, _OMC_LIT417, 1, 1, tmpMeta111, _notPassedCnt);
_str = _OMC_LIT419;
_chars = stringListStringChar(_str);
tmpMeta114 = omc_TplParser_expression(threadData, _chars, omc_TplParser_makeStartLineInfo(threadData, _chars, _OMC_LIT328), _OMC_LIT18, _OMC_LIT381, 0, NULL, &tmpMeta112);
_chars = tmpMeta114;
tmpMeta113 = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta112), 1));
_expB = tmpMeta113;
_tequal = valueEq(_expB, _OMC_LIT421);
tmpMeta115 = _expB;
if (mmc__uniontype__metarecord__typedef__equal(tmpMeta115,2,2) == 0) goto goto_1;
tmpMeta116 = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta115), 2));
_cval = tmpMeta116;
tmpMeta117 = stringAppend(omc_Tpl_booleanString(threadData, _tequal),_OMC_LIT16);
tmpMeta118 = stringAppend(tmpMeta117,_cval);
tmpMeta119 = stringAppend(tmpMeta118,_OMC_LIT16);
tmpMeta120 = stringAppend(tmpMeta119,stringAppendList(_chars));
_strOut = tmpMeta120;
tmpMeta121 = stringAppend(_OMC_LIT418,_str);
tmpMeta122 = stringAppend(tmpMeta121,_OMC_LIT331);
_notPassedCnt = omc_TplMain_testStringEquality(threadData, _strOut, _OMC_LIT422, 1, 1, tmpMeta122, _notPassedCnt);
_str = _OMC_LIT423;
_chars = stringListStringChar(_str);
tmpMeta125 = omc_TplParser_expression(threadData, _chars, omc_TplParser_makeStartLineInfo(threadData, _chars, _OMC_LIT328), _OMC_LIT18, _OMC_LIT381, 0, NULL, &tmpMeta123);
_chars = tmpMeta125;
tmpMeta124 = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta123), 1));
_expB = tmpMeta124;
_tequal = valueEq(_expB, _OMC_LIT426);
tmpMeta126 = _expB;
if (mmc__uniontype__metarecord__typedef__equal(tmpMeta126,2,2) == 0) goto goto_1;
tmpMeta127 = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta126), 2));
_cval = tmpMeta127;
tmpMeta128 = stringAppend(omc_Tpl_booleanString(threadData, _tequal),_OMC_LIT16);
tmpMeta129 = stringAppend(tmpMeta128,_cval);
tmpMeta130 = stringAppend(tmpMeta129,_OMC_LIT16);
tmpMeta131 = stringAppend(tmpMeta130,stringAppendList(_chars));
_strOut = tmpMeta131;
tmpMeta132 = stringAppend(_OMC_LIT418,_str);
tmpMeta133 = stringAppend(tmpMeta132,_OMC_LIT331);
_notPassedCnt = omc_TplMain_testStringEquality(threadData, _strOut, _OMC_LIT427, 1, 1, tmpMeta133, _notPassedCnt);
_str = _OMC_LIT428;
_chars = stringListStringChar(_str);
tmpMeta136 = omc_TplParser_expression(threadData, _chars, omc_TplParser_makeStartLineInfo(threadData, _chars, _OMC_LIT328), _OMC_LIT18, _OMC_LIT381, 0, NULL, &tmpMeta134);
_chars = tmpMeta136;
tmpMeta135 = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta134), 1));
_expB = tmpMeta135;
_tequal = valueEq(_expB, _OMC_LIT430);
tmpMeta137 = _expB;
if (mmc__uniontype__metarecord__typedef__equal(tmpMeta137,2,2) == 0) goto goto_1;
tmpMeta138 = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta137), 2));
_cval = tmpMeta138;
tmpMeta139 = stringAppend(omc_Tpl_booleanString(threadData, _tequal),_OMC_LIT16);
tmpMeta140 = stringAppend(tmpMeta139,_cval);
tmpMeta141 = stringAppend(tmpMeta140,_OMC_LIT16);
tmpMeta142 = stringAppend(tmpMeta141,stringAppendList(_chars));
_strOut = tmpMeta142;
tmpMeta143 = stringAppend(_OMC_LIT418,_str);
tmpMeta144 = stringAppend(tmpMeta143,_OMC_LIT331);
_notPassedCnt = omc_TplMain_testStringEquality(threadData, _strOut, _OMC_LIT431, 1, 1, tmpMeta144, _notPassedCnt);
_str = _OMC_LIT432;
_chars = stringListStringChar(_str);
tmpMeta147 = omc_TplParser_expression(threadData, _chars, omc_TplParser_makeStartLineInfo(threadData, _chars, _OMC_LIT328), _OMC_LIT18, _OMC_LIT381, 0, NULL, &tmpMeta145);
_chars = tmpMeta147;
tmpMeta146 = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta145), 1));
_expB = tmpMeta146;
_tequal = valueEq(_expB, _OMC_LIT435);
tmpMeta148 = _expB;
if (mmc__uniontype__metarecord__typedef__equal(tmpMeta148,2,2) == 0) goto goto_1;
tmpMeta149 = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta148), 2));
_cval = tmpMeta149;
tmpMeta150 = stringAppend(omc_Tpl_booleanString(threadData, _tequal),_OMC_LIT16);
tmpMeta151 = stringAppend(tmpMeta150,_cval);
tmpMeta152 = stringAppend(tmpMeta151,_OMC_LIT16);
tmpMeta153 = stringAppend(tmpMeta152,stringAppendList(_chars));
_strOut = tmpMeta153;
tmpMeta154 = stringAppend(_OMC_LIT418,_str);
tmpMeta155 = stringAppend(tmpMeta154,_OMC_LIT331);
_notPassedCnt = omc_TplMain_testStringEquality(threadData, _strOut, _OMC_LIT436, 1, 1, tmpMeta155, _notPassedCnt);
_str = _OMC_LIT437;
_chars = stringListStringChar(_str);
tmpMeta158 = omc_TplParser_expression(threadData, _chars, omc_TplParser_makeStartLineInfo(threadData, _chars, _OMC_LIT328), _OMC_LIT18, _OMC_LIT381, 0, NULL, &tmpMeta156);
_chars = tmpMeta158;
tmpMeta157 = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta156), 1));
_expB = tmpMeta157;
_tequal = valueEq(_expB, _OMC_LIT439);
tmpMeta159 = _expB;
if (mmc__uniontype__metarecord__typedef__equal(tmpMeta159,2,2) == 0) goto goto_1;
tmpMeta160 = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta159), 2));
_cval = tmpMeta160;
tmpMeta161 = stringAppend(omc_Tpl_booleanString(threadData, _tequal),_OMC_LIT16);
tmpMeta162 = stringAppend(tmpMeta161,_cval);
tmpMeta163 = stringAppend(tmpMeta162,_OMC_LIT16);
tmpMeta164 = stringAppend(tmpMeta163,stringAppendList(_chars));
_strOut = tmpMeta164;
tmpMeta165 = stringAppend(_OMC_LIT418,_str);
tmpMeta166 = stringAppend(tmpMeta165,_OMC_LIT331);
_notPassedCnt = omc_TplMain_testStringEquality(threadData, _strOut, _OMC_LIT440, 1, 1, tmpMeta166, _notPassedCnt);
_str = _OMC_LIT441;
_chars = stringListStringChar(_str);
tmpMeta169 = omc_TplParser_expression(threadData, _chars, omc_TplParser_makeStartLineInfo(threadData, _chars, _OMC_LIT328), _OMC_LIT18, _OMC_LIT381, 0, NULL, &tmpMeta167);
_chars = tmpMeta169;
tmpMeta168 = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta167), 1));
_expB = tmpMeta168;
_tequal = valueEq(_expB, _OMC_LIT313);
tmpMeta170 = _expB;
if (mmc__uniontype__metarecord__typedef__equal(tmpMeta170,1,1) == 0) goto goto_1;
tmpMeta171 = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta170), 2));
_tok = tmpMeta171;
_txt = _OMC_LIT40;
_txt = omc_Tpl_writeTok(threadData, _txt, _tok);
_strOut = omc_Tpl_textString(threadData, _txt);
tmpMeta172 = stringAppend(omc_Tpl_booleanString(threadData, _tequal),_OMC_LIT16);
tmpMeta173 = stringAppend(tmpMeta172,_strOut);
tmpMeta174 = stringAppend(tmpMeta173,_OMC_LIT16);
tmpMeta175 = stringAppend(tmpMeta174,stringAppendList(_chars));
_strOut = tmpMeta175;
tmpMeta176 = stringAppend(_OMC_LIT418,_str);
tmpMeta177 = stringAppend(tmpMeta176,_OMC_LIT331);
_notPassedCnt = omc_TplMain_testStringEquality(threadData, _strOut, _OMC_LIT388, 1, 1, tmpMeta177, _notPassedCnt);
_str = _OMC_LIT442;
_chars = stringListStringChar(_str);
tmpMeta180 = omc_TplParser_expression(threadData, _chars, omc_TplParser_makeStartLineInfo(threadData, _chars, _OMC_LIT328), _OMC_LIT18, _OMC_LIT381, 0, NULL, &tmpMeta178);
_chars = tmpMeta180;
tmpMeta179 = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta178), 1));
_expB = tmpMeta179;
_tequal = valueEq(_expB, _OMC_LIT447);
tmpMeta181 = _expB;
if (mmc__uniontype__metarecord__typedef__equal(tmpMeta181,1,1) == 0) goto goto_1;
tmpMeta182 = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta181), 2));
_tok = tmpMeta182;
_txt = _OMC_LIT40;
_txt = omc_Tpl_writeTok(threadData, _txt, _tok);
_strOut = omc_Tpl_textString(threadData, _txt);
tmpMeta183 = stringAppend(omc_Tpl_booleanString(threadData, _tequal),_OMC_LIT16);
tmpMeta184 = stringAppend(tmpMeta183,_strOut);
tmpMeta185 = stringAppend(tmpMeta184,_OMC_LIT16);
tmpMeta186 = stringAppend(tmpMeta185,stringAppendList(_chars));
_strOut = tmpMeta186;
tmpMeta187 = stringAppend(_OMC_LIT418,_str);
tmpMeta188 = stringAppend(tmpMeta187,_OMC_LIT331);
_notPassedCnt = omc_TplMain_testStringEquality(threadData, _strOut, _OMC_LIT448, 1, 1, tmpMeta188, _notPassedCnt);
_str = _OMC_LIT449;
_chars = stringListStringChar(_str);
tmpMeta191 = omc_TplParser_expression(threadData, _chars, omc_TplParser_makeStartLineInfo(threadData, _chars, _OMC_LIT328), _OMC_LIT18, _OMC_LIT381, 0, NULL, &tmpMeta189);
_chars = tmpMeta191;
tmpMeta190 = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta189), 1));
_expB = tmpMeta190;
_tequal = valueEq(_expB, _OMC_LIT383);
tmpMeta192 = _expB;
if (mmc__uniontype__metarecord__typedef__equal(tmpMeta192,1,1) == 0) goto goto_1;
tmpMeta193 = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta192), 2));
_tok = tmpMeta193;
_txt = _OMC_LIT40;
_txt = omc_Tpl_writeTok(threadData, _txt, _tok);
_strOut = omc_Tpl_textString(threadData, _txt);
tmpMeta194 = stringAppend(omc_Tpl_booleanString(threadData, _tequal),_OMC_LIT16);
tmpMeta195 = stringAppend(tmpMeta194,_strOut);
tmpMeta196 = stringAppend(tmpMeta195,_OMC_LIT16);
tmpMeta197 = stringAppend(tmpMeta196,stringAppendList(_chars));
_strOut = tmpMeta197;
tmpMeta198 = stringAppend(_OMC_LIT418,_str);
tmpMeta199 = stringAppend(tmpMeta198,_OMC_LIT331);
_notPassedCnt = omc_TplMain_testStringEquality(threadData, _strOut, _OMC_LIT384, 1, 1, tmpMeta199, _notPassedCnt);
_str = _OMC_LIT337;
_chars = stringListStringChar(_str);
_llen = omc_TplParser_charsTillEndOfLine(threadData, _chars, ((modelica_integer) 1));
tmpMeta200 = _chars;
if (listEmpty(tmpMeta200)) goto goto_1;
tmpMeta201 = MMC_CAR(tmpMeta200);
tmpMeta202 = MMC_CDR(tmpMeta200);
if (listEmpty(tmpMeta202)) goto goto_1;
tmpMeta203 = MMC_CAR(tmpMeta202);
tmpMeta204 = MMC_CDR(tmpMeta202);
_chars = tmpMeta204;
tmpMeta205 = mmc_mk_box5(3, &TplParser_LineInfo_LINE__INFO__desc, _OMC_LIT451, mmc_mk_integer(((modelica_integer) 11)), mmc_mk_integer(_llen), _chars);
_lnum = omc_TplParser_getPosition(threadData, _chars, tmpMeta205 ,&_colnum);
tmpMeta206 = stringAppend(intString(_lnum),_OMC_LIT452);
tmpMeta207 = stringAppend(tmpMeta206,intString(_colnum));
tmpMeta208 = stringAppend(tmpMeta207,_OMC_LIT453);
tmpMeta209 = stringAppend(tmpMeta208,intString(_llen));
_notPassedCnt = omc_TplMain_testStringEquality(threadData, tmpMeta209, _OMC_LIT454, 1, 1, _OMC_LIT455, _notPassedCnt);
_txt = _OMC_LIT40;
_txt = omc_TplMain_statement(threadData, _txt, _OMC_LIT470);
_str = omc_Tpl_textString(threadData, _txt);
_notPassedCnt = omc_TplMain_testStringEquality(threadData, _str, _OMC_LIT471, 1, 1, _OMC_LIT472, _notPassedCnt);
_txt = _OMC_LIT40;
_txt = omc_TplMain_intMatrix(threadData, _txt, _OMC_LIT490);
_str = omc_Tpl_textString(threadData, _txt);
_notPassedCnt = omc_TplMain_testStringEquality(threadData, _str, _OMC_LIT491, 1, 1, _OMC_LIT492, _notPassedCnt);
_notPassedCnt = omc_TplMain_testTranslateTplFile(threadData, _OMC_LIT493, 0, 0, _notPassedCnt);
_notPassedCnt = omc_TplMain_testTranslateTplFile(threadData, _OMC_LIT494, 0, 0, _notPassedCnt);
_notPassedCnt = omc_TplMain_testTranslateTplFile(threadData, _OMC_LIT495, 0, 1, _notPassedCnt);
tmpMeta210 = stringAppend(_OMC_LIT496,realString(mmc_clock() - _tstart));
tmpMeta211 = stringAppend(tmpMeta210,_OMC_LIT497);
fputs(MMC_STRINGDATA(tmpMeta211),stdout);
tmp216 = (modelica_boolean)(_notPassedCnt == ((modelica_integer) 0));
if(tmp216)
{
tmp217 = _OMC_LIT498;
}
else
{
tmpMeta212 = stringAppend(_OMC_LIT499,intString(_notPassedCnt));
tmpMeta213 = stringAppend(tmpMeta212,_OMC_LIT500);
tmpMeta214 = stringAppend(tmpMeta213,((_notPassedCnt > ((modelica_integer) 1))?_OMC_LIT501:_OMC_LIT193));
tmpMeta215 = stringAppend(tmpMeta214,_OMC_LIT502);
tmp217 = tmpMeta215;
}
_str = tmp217;
fputs(MMC_STRINGDATA(_str),stdout);
goto tmp2_done;
}
case 1: {
modelica_metatype tmpMeta218;
modelica_metatype tmpMeta219;
_str = tmp3_1;
tmpMeta218 = stringAppend(_OMC_LIT503,_str);
tmpMeta219 = stringAppend(tmpMeta218,_OMC_LIT504);
fputs(MMC_STRINGDATA(tmpMeta219),stdout);
fputs(MMC_STRINGDATA(_OMC_LIT505),stdout);
fputs(MMC_STRINGDATA(omc_Print_getErrorString(threadData)),stdout);
fputs(MMC_STRINGDATA(_OMC_LIT506),stdout);
omc_Print_clearErrorBuf(threadData);
goto tmp2_done;
}
}
goto tmp2_end;
tmp2_end: ;
}
goto goto_1;
tmp2_done:
(void)tmp3;
MMC_RESTORE_INTERNAL(mmc_jumper);
goto tmp2_done2;
goto_1:;
MMC_CATCH_INTERNAL(mmc_jumper);
if (++tmp3 < 2) {
goto tmp2_top;
}
MMC_THROW_INTERNAL();
tmp2_done2:;
}
}
;
_return: OMC_LABEL_UNUSED
return;
}
DLLExport
modelica_integer omc_TplMain_testTranslateTplFile(threadData_t *threadData, modelica_string _inFile, modelica_boolean _inPrintResult, modelica_boolean _inPrintErrorBuffer, modelica_integer _inNotPassedCnt)
{
modelica_integer _outNotPassedCnt;
modelica_integer tmp1 = 0;
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
volatile modelica_string tmp4_1;volatile modelica_boolean tmp4_2;volatile modelica_boolean tmp4_3;volatile modelica_integer tmp4_4;
tmp4_1 = _inFile;
tmp4_2 = _inPrintResult;
tmp4_3 = _inPrintErrorBuffer;
tmp4_4 = _inNotPassedCnt;
{
modelica_string _file = NULL;
modelica_string _res = NULL;
modelica_string _resToBe = NULL;
modelica_boolean _printRes;
modelica_boolean _printErrBuf;
modelica_integer _notPassedCnt;
volatile mmc_switch_type tmp4;
int tmp5;
tmp4 = 0;
MMC_TRY_INTERNAL(mmc_jumper)
tmp3_top:
threadData->mmc_jumper = &new_mmc_jumper;
for (; tmp4 < 2; tmp4++) {
switch (MMC_SWITCH_CAST(tmp4)) {
case 0: {
modelica_metatype tmpMeta6;
modelica_metatype tmpMeta7;
modelica_metatype tmpMeta8;
modelica_metatype tmpMeta9;
modelica_metatype tmpMeta10;
modelica_metatype tmpMeta11;
_file = tmp4_1;
_printRes = tmp4_2;
_printErrBuf = tmp4_3;
_notPassedCnt = tmp4_4;
tmpMeta6 = stringAppend(_file,_OMC_LIT508);
omc_System_writeFile(threadData, tmpMeta6, _OMC_LIT509);
tmpMeta7 = stringAppend(_file,_OMC_LIT510);
omc_TplMain_translateFile(threadData, tmpMeta7);
tmpMeta8 = stringAppend(_file,_OMC_LIT508);
_res = omc_System_stringReplace(threadData, omc_System_readFile(threadData, tmpMeta8), _OMC_LIT511, _OMC_LIT193);
tmpMeta9 = stringAppend(_file,_OMC_LIT512);
_resToBe = omc_System_stringReplace(threadData, omc_System_readFile(threadData, tmpMeta9), _OMC_LIT511, _OMC_LIT193);
tmpMeta10 = stringAppend(_OMC_LIT513,_file);
tmpMeta11 = stringAppend(tmpMeta10,_OMC_LIT510);
tmp1 = omc_TplMain_testStringEquality(threadData, _res, _resToBe, _printRes, _printErrBuf, tmpMeta11, _notPassedCnt);
goto tmp3_done;
}
case 1: {
modelica_metatype tmpMeta12;
modelica_metatype tmpMeta13;
modelica_metatype tmpMeta14;
modelica_metatype tmpMeta15;
modelica_metatype tmpMeta16;
_file = tmp4_1;
_printRes = tmp4_2;
_printErrBuf = tmp4_3;
_notPassedCnt = tmp4_4;
tmpMeta12 = stringAppend(_file,_OMC_LIT508);
omc_System_writeFile(threadData, tmpMeta12, _OMC_LIT509);
tmpMeta13 = stringAppend(_file,_OMC_LIT508);
_res = omc_System_stringReplace(threadData, omc_System_readFile(threadData, tmpMeta13), _OMC_LIT511, _OMC_LIT193);
tmpMeta14 = stringAppend(_file,_OMC_LIT512);
_resToBe = omc_System_stringReplace(threadData, omc_System_readFile(threadData, tmpMeta14), _OMC_LIT511, _OMC_LIT193);
tmpMeta15 = stringAppend(_OMC_LIT513,_file);
tmpMeta16 = stringAppend(tmpMeta15,_OMC_LIT510);
tmp1 = omc_TplMain_testStringEquality(threadData, _res, _resToBe, _printRes, _printErrBuf, tmpMeta16, _notPassedCnt);
goto tmp3_done;
}
}
goto tmp3_end;
tmp3_end: ;
}
goto goto_2;
tmp3_done:
(void)tmp4;
MMC_RESTORE_INTERNAL(mmc_jumper);
goto tmp3_done2;
goto_2:;
MMC_CATCH_INTERNAL(mmc_jumper);
if (++tmp4 < 2) {
goto tmp3_top;
}
MMC_THROW_INTERNAL();
tmp3_done2:;
}
}
_outNotPassedCnt = tmp1;
_return: OMC_LABEL_UNUSED
return _outNotPassedCnt;
}
modelica_metatype boxptr_TplMain_testTranslateTplFile(threadData_t *threadData, modelica_metatype _inFile, modelica_metatype _inPrintResult, modelica_metatype _inPrintErrorBuffer, modelica_metatype _inNotPassedCnt)
{
modelica_integer tmp1;
modelica_integer tmp2;
modelica_integer tmp3;
modelica_integer _outNotPassedCnt;
modelica_metatype out_outNotPassedCnt;
tmp1 = mmc_unbox_integer(_inPrintResult);
tmp2 = mmc_unbox_integer(_inPrintErrorBuffer);
tmp3 = mmc_unbox_integer(_inNotPassedCnt);
_outNotPassedCnt = omc_TplMain_testTranslateTplFile(threadData, _inFile, tmp1, tmp2, tmp3);
out_outNotPassedCnt = mmc_mk_icon(_outNotPassedCnt);
return out_outNotPassedCnt;
}
DLLExport
modelica_integer omc_TplMain_testStringEquality(threadData_t *threadData, modelica_string _inStringReturned, modelica_string _inStringShouldBe, modelica_boolean _inPrintResult, modelica_boolean _inPrintErrorBuffer, modelica_string _inTestLabel, modelica_integer _inNotPassedCnt)
{
modelica_integer _outNotPassedCnt;
modelica_integer tmp1 = 0;
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
volatile modelica_string tmp4_1;volatile modelica_string tmp4_2;volatile modelica_boolean tmp4_3;volatile modelica_boolean tmp4_4;volatile modelica_string tmp4_5;volatile modelica_integer tmp4_6;
tmp4_1 = _inStringReturned;
tmp4_2 = _inStringShouldBe;
tmp4_3 = _inPrintResult;
tmp4_4 = _inPrintErrorBuffer;
tmp4_5 = _inTestLabel;
tmp4_6 = _inNotPassedCnt;
{
modelica_string _strRet = NULL;
modelica_string _strShouldBe = NULL;
modelica_string _strLabel = NULL;
modelica_string _strRes = NULL;
modelica_string _strErrBuf = NULL;
modelica_boolean _printResult;
modelica_boolean _printErrBuf;
modelica_integer _notPassedCnt;
volatile mmc_switch_type tmp4;
int tmp5;
tmp4 = 0;
MMC_TRY_INTERNAL(mmc_jumper)
tmp3_top:
threadData->mmc_jumper = &new_mmc_jumper;
for (; tmp4 < 3; tmp4++) {
switch (MMC_SWITCH_CAST(tmp4)) {
case 0: {
modelica_boolean tmp6;
modelica_metatype tmpMeta7;
modelica_metatype tmpMeta8;
modelica_metatype tmpMeta9;
modelica_boolean tmp10;
modelica_string tmp11;
modelica_metatype tmpMeta12;
modelica_metatype tmpMeta13;
modelica_boolean tmp14;
modelica_string tmp15;
modelica_boolean tmp16;
modelica_string tmp17;
_strRet = tmp4_1;
_strShouldBe = tmp4_2;
_printResult = tmp4_3;
_printErrBuf = tmp4_4;
_strLabel = tmp4_5;
_notPassedCnt = tmp4_6;
tmp6 = (stringEqual(_strRet, _strShouldBe));
if (1 != tmp6) goto goto_2;
tmpMeta7 = stringAppend(_OMC_LIT514,_strLabel);
fputs(MMC_STRINGDATA(tmpMeta7),stdout);
tmp10 = (modelica_boolean)_printResult;
if(tmp10)
{
tmpMeta8 = stringAppend(_OMC_LIT515,_strRet);
tmpMeta9 = stringAppend(tmpMeta8,_OMC_LIT516);
tmp11 = tmpMeta9;
}
else
{
tmp11 = _OMC_LIT517;
}
_strRes = tmp11;
fputs(MMC_STRINGDATA(_strRes),stdout);
_strErrBuf = omc_Print_getErrorString(threadData);
tmp16 = (modelica_boolean)(stringEqual(_strErrBuf, _OMC_LIT193));
if(tmp16)
{
tmp17 = _OMC_LIT193;
}
else
{
tmp14 = (modelica_boolean)_printErrBuf;
if(tmp14)
{
tmpMeta12 = stringAppend(_OMC_LIT505,_strErrBuf);
tmpMeta13 = stringAppend(tmpMeta12,_OMC_LIT506);
tmp15 = tmpMeta13;
}
else
{
tmp15 = _OMC_LIT518;
}
tmp17 = tmp15;
}
_strErrBuf = tmp17;
fputs(MMC_STRINGDATA(_strErrBuf),stdout);
fputs(MMC_STRINGDATA(_OMC_LIT519),stdout);
omc_Print_clearErrorBuf(threadData);
tmp1 = _notPassedCnt;
goto tmp3_done;
}
case 1: {
modelica_boolean tmp18;
modelica_metatype tmpMeta19;
modelica_metatype tmpMeta20;
modelica_metatype tmpMeta21;
modelica_metatype tmpMeta22;
modelica_metatype tmpMeta23;
modelica_boolean tmp24;
modelica_string tmp25;
modelica_metatype tmpMeta26;
modelica_metatype tmpMeta27;
modelica_boolean tmp28;
modelica_string tmp29;
modelica_boolean tmp30;
modelica_string tmp31;
_strRet = tmp4_1;
_strShouldBe = tmp4_2;
_printResult = tmp4_3;
_printErrBuf = tmp4_4;
_strLabel = tmp4_5;
_notPassedCnt = tmp4_6;
tmp18 = (stringEqual(_strRet, _strShouldBe));
if (0 != tmp18) goto goto_2;
tmpMeta19 = stringAppend(_OMC_LIT520,_strLabel);
fputs(MMC_STRINGDATA(tmpMeta19),stdout);
tmp24 = (modelica_boolean)_printResult;
if(tmp24)
{
tmpMeta20 = stringAppend(_OMC_LIT515,_strRet);
tmpMeta21 = stringAppend(tmpMeta20,_OMC_LIT521);
tmpMeta22 = stringAppend(tmpMeta21,_strShouldBe);
tmpMeta23 = stringAppend(tmpMeta22,_OMC_LIT516);
tmp25 = tmpMeta23;
}
else
{
tmp25 = _OMC_LIT517;
}
_strRes = tmp25;
fputs(MMC_STRINGDATA(_strRes),stdout);
_strErrBuf = omc_Print_getErrorString(threadData);
tmp30 = (modelica_boolean)(stringEqual(_strErrBuf, _OMC_LIT193));
if(tmp30)
{
tmp31 = _OMC_LIT193;
}
else
{
tmp28 = (modelica_boolean)_printErrBuf;
if(tmp28)
{
tmpMeta26 = stringAppend(_OMC_LIT505,_strErrBuf);
tmpMeta27 = stringAppend(tmpMeta26,_OMC_LIT506);
tmp29 = tmpMeta27;
}
else
{
tmp29 = _OMC_LIT518;
}
tmp31 = tmp29;
}
_strErrBuf = tmp31;
fputs(MMC_STRINGDATA(_strErrBuf),stdout);
fputs(MMC_STRINGDATA(_OMC_LIT522),stdout);
omc_Print_clearErrorBuf(threadData);
tmp1 = ((modelica_integer) 1) + _notPassedCnt;
goto tmp3_done;
}
case 2: {
modelica_boolean tmp32;
tmp32 = omc_Flags_isSet(threadData, _OMC_LIT526);
if (1 != tmp32) goto goto_2;
omc_Debug_trace(threadData, _OMC_LIT527);
goto goto_2;
goto tmp3_done;
}
}
goto tmp3_end;
tmp3_end: ;
}
goto goto_2;
tmp3_done:
(void)tmp4;
MMC_RESTORE_INTERNAL(mmc_jumper);
goto tmp3_done2;
goto_2:;
MMC_CATCH_INTERNAL(mmc_jumper);
if (++tmp4 < 3) {
goto tmp3_top;
}
MMC_THROW_INTERNAL();
tmp3_done2:;
}
}
_outNotPassedCnt = tmp1;
_return: OMC_LABEL_UNUSED
return _outNotPassedCnt;
}
modelica_metatype boxptr_TplMain_testStringEquality(threadData_t *threadData, modelica_metatype _inStringReturned, modelica_metatype _inStringShouldBe, modelica_metatype _inPrintResult, modelica_metatype _inPrintErrorBuffer, modelica_metatype _inTestLabel, modelica_metatype _inNotPassedCnt)
{
modelica_integer tmp1;
modelica_integer tmp2;
modelica_integer tmp3;
modelica_integer _outNotPassedCnt;
modelica_metatype out_outNotPassedCnt;
tmp1 = mmc_unbox_integer(_inPrintResult);
tmp2 = mmc_unbox_integer(_inPrintErrorBuffer);
tmp3 = mmc_unbox_integer(_inNotPassedCnt);
_outNotPassedCnt = omc_TplMain_testStringEquality(threadData, _inStringReturned, _inStringShouldBe, tmp1, tmp2, _inTestLabel, tmp3);
out_outNotPassedCnt = mmc_mk_icon(_outNotPassedCnt);
return out_outNotPassedCnt;
}
DLLExport
void omc_TplMain_translateFile(threadData_t *threadData, modelica_string _inFile)
{
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
volatile modelica_string tmp3_1;
tmp3_1 = _inFile;
{
modelica_string _file = NULL;
modelica_string _destFile = NULL;
modelica_string _res = NULL;
modelica_metatype _txt = NULL;
modelica_metatype _tplPackage = NULL;
modelica_metatype _mmPckg = NULL;
modelica_integer _nErrors;
modelica_boolean _wasError;
volatile mmc_switch_type tmp3;
int tmp4;
tmp3 = 0;
MMC_TRY_INTERNAL(mmc_jumper)
tmp2_top:
threadData->mmc_jumper = &new_mmc_jumper;
for (; tmp3 < 2; tmp3++) {
switch (MMC_SWITCH_CAST(tmp3)) {
case 0: {
modelica_metatype tmpMeta5;
modelica_metatype tmpMeta6;
modelica_metatype tmpMeta7;
modelica_boolean tmp8;
modelica_metatype tmpMeta9;
modelica_metatype tmpMeta10;
modelica_metatype tmpMeta11;
modelica_boolean tmp12;
_file = tmp3_1;
tmpMeta5 = stringAppend(_OMC_LIT528,_file);
tmpMeta6 = stringAppend(tmpMeta5,_OMC_LIT529);
fputs(MMC_STRINGDATA(tmpMeta6),stdout);
_nErrors = omc_Error_getNumErrorMessages(threadData);
tmpMeta7 = stringAppend(_file,_OMC_LIT16);
_destFile = omc_System_stringReplace(threadData, tmpMeta7, _OMC_LIT530, _OMC_LIT508);
tmp8 = (stringEqual(_file, _destFile));
if (0 != tmp8) goto goto_1;
_tplPackage = omc_TplParser_templPackageFromFile(threadData, _file);
_mmPckg = omc_TplAbsyn_transformAST(threadData, _tplPackage);
_txt = _OMC_LIT40;
_txt = omc_TplCodegen_mmPackage(threadData, _txt, _mmPckg);
_res = omc_Tpl_textString(threadData, _txt);
_wasError = (_nErrors < omc_Error_getNumErrorMessages(threadData));
tmpMeta9 = stringAppend(_destFile,(_wasError?_OMC_LIT531:_OMC_LIT193));
_destFile = tmpMeta9;
tmpMeta10 = stringAppend(_OMC_LIT532,_destFile);
tmpMeta11 = stringAppend(tmpMeta10,_OMC_LIT529);
fputs(MMC_STRINGDATA(tmpMeta11),stdout);
omc_System_writeFile(threadData, _destFile, _res);
tmp12 = _wasError;
if (0 != tmp12) goto goto_1;
goto tmp2_done;
}
case 1: {
modelica_metatype tmpMeta13;
modelica_metatype tmpMeta14;
_file = tmp3_1;
tmpMeta13 = stringAppend(_OMC_LIT533,_file);
tmpMeta14 = stringAppend(tmpMeta13,_OMC_LIT534);
fputs(MMC_STRINGDATA(tmpMeta14),stdout);
fputs(MMC_STRINGDATA(_OMC_LIT505),stdout);
fputs(MMC_STRINGDATA(omc_Print_getErrorString(threadData)),stdout);
fputs(MMC_STRINGDATA(_OMC_LIT506),stdout);
omc_Print_clearErrorBuf(threadData);
goto goto_1;
goto tmp2_done;
}
}
goto tmp2_end;
tmp2_end: ;
}
goto goto_1;
tmp2_done:
(void)tmp3;
MMC_RESTORE_INTERNAL(mmc_jumper);
goto tmp2_done2;
goto_1:;
MMC_CATCH_INTERNAL(mmc_jumper);
if (++tmp3 < 2) {
goto tmp2_top;
}
MMC_THROW_INTERNAL();
tmp2_done2:;
}
}
;
_return: OMC_LABEL_UNUSED
return;
}
DLLExport
void omc_TplMain_main(threadData_t *threadData, modelica_string _inFile)
{
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
modelica_string tmp3_1;
tmp3_1 = _inFile;
{
modelica_string _file = NULL;
modelica_string _strErrBuf = NULL;
volatile mmc_switch_type tmp3;
int tmp4;
tmp3 = 0;
for (; tmp3 < 2; tmp3++) {
switch (MMC_SWITCH_CAST(tmp3)) {
case 0: {
if (13 != MMC_STRLEN(tmp3_1) || strcmp(MMC_STRINGDATA(_OMC_LIT535), MMC_STRINGDATA(tmp3_1)) != 0) goto tmp2_end;
omc_TplMain_tplMainTest(threadData, _OMC_LIT507);
goto tmp2_done;
}
case 1: {
modelica_metatype tmpMeta5;
modelica_metatype tmpMeta6;
modelica_boolean tmp7;
modelica_string tmp8;
_file = tmp3_1;
omc_Print_clearBuf(threadData);
omc_TplMain_translateFile(threadData, _file);
_strErrBuf = omc_Print_getErrorString(threadData);
tmp7 = (modelica_boolean)(stringEqual(_strErrBuf, _OMC_LIT193));
if(tmp7)
{
tmp8 = _OMC_LIT193;
}
else
{
tmpMeta5 = stringAppend(_OMC_LIT505,_strErrBuf);
tmpMeta6 = stringAppend(tmpMeta5,_OMC_LIT506);
tmp8 = tmpMeta6;
}
_strErrBuf = tmp8;
fputs(MMC_STRINGDATA(_strErrBuf),stdout);
goto tmp2_done;
}
}
goto tmp2_end;
tmp2_end: ;
}
goto goto_1;
goto_1:;
MMC_THROW_INTERNAL();
goto tmp2_done;
tmp2_done:;
}
}
;
_return: OMC_LABEL_UNUSED
return;
}
