#include "cdefs.h"
cint slimi_globals = 0;
extern cint boolean_True;
extern cint boolean_False;
extern cint object_Undefined;
extern cptr scope_curr;
extern cint scope_global;
extern cptr scope_methods[meth_max];
extern cint boolean_True;
extern cint object_Undefined;
extern cptr identifier_methods[meth_max];
extern cptr idstring_methods[meth_max];
extern cptr integer_methods[meth_max];
extern cptr slist_methods[meth_max];
cint slimi_g1;
cint slimi_g2;
cint slimi_g3;
cint slimi_g4;
cint slimi_g5;
cint slimi_g6;
cint slimi_g7;
cint slimi_g8;
cint slimi_g9;
cint slimi_g10;
cint slimi_g11;
cint slimi_g12;
cint slimi_g13;
cint slimi_g14;
cint slimi_g15;
cint slimi_g16;
cint slimi_g17;
cint slimi_g18;
cint slimi_g19;
cint slimi_g20;
cint slimi_g21;

void import_slimi(){
cint saved_curr;
cint t1, t2, t3, t4, t5, t6, t7, t8, t9, t10, t11, t12, t13, t14, t15, t16, t17, t18, t19, t20, t21, t22, t23, t24, t25, t26, t27, t28, t29, t30, t31, t32, t33, t34, t35, t36, t37, t38, t39, t40, t41, t42, t43, t44, t45, t46, t47, t48, t49, t50, t51, t52, t53, t54, t55, t56, t57, t58, t59, t60, t61, t62, t63, t64, t65, t66, t67, t68, t69, t70, t71, t72, t73, t74, t75, t76, t77, t78, t79, t80, t81, t82, t83, t84, t85, t86, t87, t88, t89, t90, t91, t92, t93, t94, t95, t96, t97, t98, t99, t100, t101, t102, t103, t104, t105, t106, t107, t108, t109, t110, t111, t112, t113, t114, t115, t116, t117, t118, t119, t120, t121, t122, t123, t124, t125, t126, t127, t128, t129, t130, t131, t132, t133, t134, t135, t136, t137, t138, t139, t140, t141, t142, t143, t144, t145, t146, t147, t148, t149, t150, t151, t152, t153, t154, t155, t156, t157, t158, t159, t160, t161, t162, t163, t164;
if (!slimi_globals){
debug_set_module("slimi");
saved_curr = scope_curr;scope_curr = mem_malloc(scope_methods[0]); scope_curr[0] = scope_methods;
scope_curr = scope_alloc(scope_curr, scope_global);
{
slimi_g1=(t1 = (t3 = mem_malloc(idstring_methods[0]), ((cptr)t3)[0] = idstring_methods, t3), t2 = ((cptr)(((cptr)t1)[0]))[3], ((f0)t2)((cint)t1, (cint)"!opsys"));
slimi_g2=(t4 = (t6 = mem_malloc(idstring_methods[0]), ((cptr)t6)[0] = idstring_methods, t6), t5 = ((cptr)(((cptr)t4)[0]))[3], ((f0)t5)((cint)t4, (cint)"!builder"));
slimi_g3=(t7 = (t9 = mem_malloc(idstring_methods[0]), ((cptr)t9)[0] = idstring_methods, t9), t8 = ((cptr)(((cptr)t7)[0]))[3], ((f0)t8)((cint)t7, (cint)"!custbld"));
slimi_g4=(t10 = (t12 = mem_malloc(idstring_methods[0]), ((cptr)t12)[0] = idstring_methods, t12), t11 = ((cptr)(((cptr)t10)[0]))[3], ((f0)t11)((cint)t10, (cint)"!walker"));
slimi_g5=(t13 = (t15 = mem_malloc(identifier_methods[0]), ((cptr)t15)[0] = identifier_methods, t15), t14 = ((cptr)(((cptr)t13)[0]))[3], ((f0)t14)((cint)t13, (cint)"Module_id"));
slimi_g6=(t16 = (t18 = mem_malloc(identifier_methods[0]), ((cptr)t18)[0] = identifier_methods, t18), t17 = ((cptr)(((cptr)t16)[0]))[3], ((f0)t17)((cint)t16, (cint)"extension"));
slimi_g7=(t19 = (t21 = mem_malloc(identifier_methods[0]), ((cptr)t21)[0] = identifier_methods, t21), t20 = ((cptr)(((cptr)t19)[0]))[3], ((f0)t20)((cint)t19, (cint)"String"));
slimi_g9=(t22 = (t24 = mem_malloc(identifier_methods[0]), ((cptr)t24)[0] = identifier_methods, t24), t23 = ((cptr)(((cptr)t22)[0]))[3], ((f0)t23)((cint)t22, (cint)"split"));
slimi_g10=(t25 = (t27 = mem_malloc(idstring_methods[0]), ((cptr)t27)[0] = idstring_methods, t27), t26 = ((cptr)(((cptr)t25)[0]))[3], ((f0)t26)((cint)t25, (cint)"."));
slimi_g11=(t28 = (t30 = mem_malloc(identifier_methods[0]), ((cptr)t30)[0] = identifier_methods, t30), t29 = ((cptr)(((cptr)t28)[0]))[3], ((f0)t29)((cint)t28, (cint)"locase"));
slimi_g12=(t31 = (t33 = mem_malloc(identifier_methods[0]), ((cptr)t33)[0] = identifier_methods, t33), t32 = ((cptr)(((cptr)t31)[0]))[3], ((f0)t32)((cint)t31, (cint)"Command_line"));
slimi_g13=(t34 = (t36 = mem_malloc(integer_methods[0]), ((cptr)t36)[0] = integer_methods, t36), t35 = ((cptr)(((cptr)t34)[0]))[3], ((f0)t35)((cint)t34, (cint)"2"));
slimi_g14=(t37 = (t39 = mem_malloc(idstring_methods[0]), ((cptr)t39)[0] = idstring_methods, t39), t38 = ((cptr)(((cptr)t37)[0]))[3], ((f0)t38)((cint)t37, (cint)"slm"));
slimi_g15=(t40 = (t42 = mem_malloc(idstring_methods[0]), ((cptr)t42)[0] = idstring_methods, t42), t41 = ((cptr)(((cptr)t40)[0]))[3], ((f0)t41)((cint)t40, (cint)"Source file should be called: "));
slimi_g16=(t43 = (t45 = mem_malloc(idstring_methods[0]), ((cptr)t45)[0] = idstring_methods, t45), t44 = ((cptr)(((cptr)t43)[0]))[3], ((f0)t44)((cint)t43, (cint)".slm"));
slimi_g17=(t46 = (t48 = mem_malloc(idstring_methods[0]), ((cptr)t48)[0] = idstring_methods, t48), t47 = ((cptr)(((cptr)t46)[0]))[3], ((f0)t47)((cint)t46, (cint)"r"));
slimi_g18=(t49 = (t51 = mem_malloc(identifier_methods[0]), ((cptr)t51)[0] = identifier_methods, t51), t50 = ((cptr)(((cptr)t49)[0]))[3], ((f0)t50)((cint)t49, (cint)"x"));
slimi_g19=(t52 = (t54 = mem_malloc(identifier_methods[0]), ((cptr)t54)[0] = identifier_methods, t54), t53 = ((cptr)(((cptr)t52)[0]))[3], ((f0)t53)((cint)t52, (cint)"Walk"));
slimi_g20=(t55 = (t57 = mem_malloc(identifier_methods[0]), ((cptr)t57)[0] = identifier_methods, t57), t56 = ((cptr)(((cptr)t55)[0]))[3], ((f0)t56)((cint)t55, (cint)"Stack"));
slimi_g21=(t58 = (t60 = mem_malloc(integer_methods[0]), ((cptr)t60)[0] = integer_methods, t60), t59 = ((cptr)(((cptr)t58)[0]))[3], ((f0)t59)((cint)t58, (cint)"1"));
};
{
{
(t61 = (t63 = slimi_g1, ((cptr)t63)[1] += 1, t63), t62 = ((cptr)(((cptr)t61)[0]))[49], ((f0)t62)((cint)t61));
(t64 = (t66 = slimi_g2, ((cptr)t66)[1] += 1, t66), t65 = ((cptr)(((cptr)t64)[0]))[49], ((f0)t65)((cint)t64));
(t67 = (t69 = slimi_g3, ((cptr)t69)[1] += 1, t69), t68 = ((cptr)(((cptr)t67)[0]))[49], ((f0)t68)((cint)t67));
(t70 = (t72 = slimi_g4, ((cptr)t72)[1] += 1, t72), t71 = ((cptr)(((cptr)t70)[0]))[49], ((f0)t71)((cint)t70));
};
debug_set_line_num_and_col((cint)3, (cint)1);
{
(t73 = (t75 = (t77 = (t79 = slimi_g5, ((cptr)t79)[1] += 1, t79), t78 = ((cptr)(((cptr)t77)[0]))[69], ((f0)t78)((cint)t77, (cint)(t80 = slimi_g6, ((cptr)t80)[1] += 1, t80))), t76 = ((cptr)(((cptr)t75)[0]))[27], ((f0)t76)((cint)t75, (cint)(t81 = (t83 = slimi_g7, ((cptr)t83)[1] += 1, t83), t82 = ((cptr)(((cptr)t81)[0]))[57], ((f0)t82)((cint)t81)), (cint)3)), t74 = ((cptr)(((cptr)t73)[0]))[13], ((f0)t74)((cint)t73, (cint)(((slimi_g8=(t84 = (t86 = (t88 = (t90 = slimi_g9, ((cptr)t90)[1] += 1, t90), t89 = ((cptr)(((cptr)t88)[0]))[77], ((f0)t89)((cint)t88, (cint)(t91 = slimi_g10, ((cptr)t91)[1] += 1, t91))), t87 = ((cptr)(((cptr)t86)[0]))[77], ((f0)t87)((cint)t86, (cint)(t92 = (t94 = (t96 = slimi_g11, ((cptr)t96)[1] += 1, t96), t95 = ((cptr)(((cptr)t94)[0]))[77], ((f0)t95)((cint)t94, (cint)(t97 = (t99 = (t101 = slimi_g12, ((cptr)t101)[1] += 1, t101), t100 = ((cptr)(((cptr)t99)[0]))[77], ((f0)t100)((cint)t99, (cint)(t102 = slimi_g13, ((cptr)t102)[1] += 1, t102))), t98 = ((cptr)(((cptr)t97)[0]))[38], ((f0)t98)((cint)t97)))), t93 = ((cptr)(((cptr)t92)[0]))[38], ((f0)t93)((cint)t92)))), t85 = ((cptr)(((cptr)t84)[0]))[38], ((f0)t85)((cint)t84)))!=object_Undefined)?slimi_g8:(t103 = (t105 = (t107 = (t109 = (t111 = mem_malloc(slist_methods[0]), ((cptr)t111)[0] = slist_methods, t111), t110 = ((cptr)(((cptr)t109)[0]))[3], ((f0)t110)((cint)t109, (cint)2)), t108 = ((cptr)(((cptr)t107)[0]))[7], ((f0)t108)((cint)t107, (cint)(t112 = (t114 = (t116 = slimi_g11, ((cptr)t116)[1] += 1, t116), t115 = ((cptr)(((cptr)t114)[0]))[77], ((f0)t115)((cint)t114, (cint)(t117 = (t119 = (t121 = slimi_g12, ((cptr)t121)[1] += 1, t121), t120 = ((cptr)(((cptr)t119)[0]))[77], ((f0)t120)((cint)t119, (cint)(t122 = slimi_g13, ((cptr)t122)[1] += 1, t122))), t118 = ((cptr)(((cptr)t117)[0]))[38], ((f0)t118)((cint)t117)))), t113 = ((cptr)(((cptr)t112)[0]))[38], ((f0)t113)((cint)t112)))), t106 = ((cptr)(((cptr)t105)[0]))[7], ((f0)t106)((cint)t105, (cint)(t123 = slimi_g14, ((cptr)t123)[1] += 1, t123))), t104 = ((cptr)(((cptr)t103)[0]))[107], ((f0)t104)((cint)t103)))));
debug_set_line_num_and_col((cint)5, (cint)1);
};
debug_set_line_num_and_col((cint)5, (cint)1);
if (((t124 = (t126 = (t128 = (t130 = slimi_g6, ((cptr)t130)[1] += 1, t130), t129 = ((cptr)(((cptr)t128)[0]))[38], ((f0)t129)((cint)t128)), t127 = ((cptr)(((cptr)t126)[0]))[36], ((f0)t127)((cint)t126, (cint)(t131 = slimi_g14, ((cptr)t131)[1] += 1, t131))), t125 = ((cptr)(((cptr)t124)[0]))[95], ((f0)t125)((cint)t124))==boolean_True)){
{
debug_set_line_num_and_col((cint)6, (cint)6);
debug_set_line_num_and_col((cint)6, (cint)7);
stdout_Put((cint)(t132 = slimi_g15, ((cptr)t132)[1] += 1, t132));
debug_set_line_num_and_col((cint)6, (cint)39);
stdout_Put((cint)(t133 = (t135 = (t137 = slimi_g5, ((cptr)t137)[1] += 1, t137), t136 = ((cptr)(((cptr)t135)[0]))[38], ((f0)t136)((cint)t135)), t134 = ((cptr)(((cptr)t133)[0]))[97], ((f0)t134)((cint)t133, (cint)(t138 = slimi_g16, ((cptr)t138)[1] += 1, t138))));
debug_set_line_num_and_col((cint)7, (cint)1);
stdout_Put_eol();
debug_set_line_num_and_col((cint)7, (cint)1);
};
debug_set_line_num_and_col((cint)7, (cint)1);
}
else
{
clib_Parse((cint)(t139 = (t141 = (t143 = (t145 = slimi_g5, ((cptr)t145)[1] += 1, t145), t144 = ((cptr)(((cptr)t143)[0]))[38], ((f0)t144)((cint)t143)), t142 = ((cptr)(((cptr)t141)[0]))[97], ((f0)t142)((cint)t141, (cint)(t146 = slimi_g10, ((cptr)t146)[1] += 1, t146))), t140 = ((cptr)(((cptr)t139)[0]))[97], ((f0)t140)((cint)t139, (cint)(t147 = (t149 = slimi_g6, ((cptr)t149)[1] += 1, t149), t148 = ((cptr)(((cptr)t147)[0]))[38], ((f0)t148)((cint)t147)))), (cint)(t150 = slimi_g17, ((cptr)t150)[1] += 1, t150));
debug_set_line_num_and_col((cint)9, (cint)1);
{
(t151 = (t153 = slimi_g18, ((cptr)t153)[1] += 1, t153), t152 = ((cptr)(((cptr)t151)[0]))[13], ((f0)t152)((cint)t151, (cint)(t154 = (t156 = (t158 = slimi_g19, ((cptr)t158)[1] += 1, t158), t157 = ((cptr)(((cptr)t156)[0]))[77], ((f0)t157)((cint)t156, (cint)(t159 = (t161 = (t163 = slimi_g20, ((cptr)t163)[1] += 1, t163), t162 = ((cptr)(((cptr)t161)[0]))[77], ((f0)t162)((cint)t161, (cint)(t164 = slimi_g21, ((cptr)t164)[1] += 1, t164))), t160 = ((cptr)(((cptr)t159)[0]))[38], ((f0)t160)((cint)t159)))), t155 = ((cptr)(((cptr)t154)[0]))[38], ((f0)t155)((cint)t154))));
debug_set_line_num_and_col((cint)12, (cint)1);
};
debug_set_line_num_and_col((cint)12, (cint)1);
}
;
debug_set_line_num_and_col((cint)13, (cint)1);
};
slimi_globals = scope_curr;
scope_curr = saved_curr;
};
scope_import_exports(scope_curr, slimi_globals);
}

extern void import_scanner();
extern void import_parser();
extern void import_cbuilder();
extern void import_builder();
extern void import_custbld();
extern void import_custwalk();
extern void import_walker();
extern void import_interp();
extern void import_debug();
extern void import_opsys();
extern cint clib_ArgC;
extern cptr clib_ArgV;
extern cptr identifier_methods[meth_max];
extern cptr procedure_methods[meth_max];

void main(cint argc, cptr argv){
  cptr f, m;
  cptr Iscanner, Pscanner;
  cptr Iparser, Pparser;
  cptr Icbuilder, Pcbuilder;
  cptr Ibuilder, Pbuilder;
  cptr Icustbld, Pcustbld;
  cptr Icustwalk, Pcustwalk;
  cptr Iwalker, Pwalker;
  cptr Iinterp, Pinterp;
  cptr Idebug, Pdebug;
  cptr Islimi, Pslimi;
  cptr Iopsys, Popsys;
  clib_ArgC = argc; clib_ArgV = argv;
  interp_init();
  m = mem_malloc(identifier_methods[0]); m[0] = identifier_methods;
  Iscanner = identifier_alloc((cint)m, (cint)"!scanner");
  m = mem_malloc(procedure_methods[0]); m[0] = procedure_methods;
  Pscanner = procedure_alloc((cint)m, (cint)import_scanner, (cint)Iscanner);
  m = mem_malloc(identifier_methods[0]); m[0] = identifier_methods;
  Iparser = identifier_alloc((cint)m, (cint)"!parser");
  m = mem_malloc(procedure_methods[0]); m[0] = procedure_methods;
  Pparser = procedure_alloc((cint)m, (cint)import_parser, (cint)Iparser);
  m = mem_malloc(identifier_methods[0]); m[0] = identifier_methods;
  Icbuilder = identifier_alloc((cint)m, (cint)"!cbuilder");
  m = mem_malloc(procedure_methods[0]); m[0] = procedure_methods;
  Pcbuilder = procedure_alloc((cint)m, (cint)import_cbuilder, (cint)Icbuilder);
  m = mem_malloc(identifier_methods[0]); m[0] = identifier_methods;
  Ibuilder = identifier_alloc((cint)m, (cint)"!builder");
  m = mem_malloc(procedure_methods[0]); m[0] = procedure_methods;
  Pbuilder = procedure_alloc((cint)m, (cint)import_builder, (cint)Ibuilder);
  m = mem_malloc(identifier_methods[0]); m[0] = identifier_methods;
  Icustbld = identifier_alloc((cint)m, (cint)"!custbld");
  m = mem_malloc(procedure_methods[0]); m[0] = procedure_methods;
  Pcustbld = procedure_alloc((cint)m, (cint)import_custbld, (cint)Icustbld);
  m = mem_malloc(identifier_methods[0]); m[0] = identifier_methods;
  Icustwalk = identifier_alloc((cint)m, (cint)"!custwalk");
  m = mem_malloc(procedure_methods[0]); m[0] = procedure_methods;
  Pcustwalk = procedure_alloc((cint)m, (cint)import_custwalk, (cint)Icustwalk);
  m = mem_malloc(identifier_methods[0]); m[0] = identifier_methods;
  Iwalker = identifier_alloc((cint)m, (cint)"!walker");
  m = mem_malloc(procedure_methods[0]); m[0] = procedure_methods;
  Pwalker = procedure_alloc((cint)m, (cint)import_walker, (cint)Iwalker);
  m = mem_malloc(identifier_methods[0]); m[0] = identifier_methods;
  Iinterp = identifier_alloc((cint)m, (cint)"!interp");
  m = mem_malloc(procedure_methods[0]); m[0] = procedure_methods;
  Pinterp = procedure_alloc((cint)m, (cint)import_interp, (cint)Iinterp);
  m = mem_malloc(identifier_methods[0]); m[0] = identifier_methods;
  Idebug = identifier_alloc((cint)m, (cint)"!debug");
  m = mem_malloc(procedure_methods[0]); m[0] = procedure_methods;
  Pdebug = procedure_alloc((cint)m, (cint)import_debug, (cint)Idebug);
  m = mem_malloc(identifier_methods[0]); m[0] = identifier_methods;
  Islimi = identifier_alloc((cint)m, (cint)"!slimi");
  m = mem_malloc(procedure_methods[0]); m[0] = procedure_methods;
  Pslimi = procedure_alloc((cint)m, (cint)import_slimi, (cint)Islimi);
  m = mem_malloc(identifier_methods[0]); m[0] = identifier_methods;
  Iopsys = identifier_alloc((cint)m, (cint)"!opsys");
  m = mem_malloc(procedure_methods[0]); m[0] = procedure_methods;
  Popsys = procedure_alloc((cint)m, (cint)import_opsys, (cint)Iopsys);
  import_slimi();
  interp_fini();
  exit(0);
};
