array Func_nextFree933 integer Func_firstFree170 integer Func_maxIndex108 array Func_typeId132 integer Func_firstFree170 = 0 integer Func_maxIndex108 = 0 integer Func2_firstFree256 = 0 integer Func2_maxIndex263 = 0 function initGlobals202() { Func_firstFree_170 = 0; Func_maxIndex_108 = 0; } function main245() { initGlobals202(); init_A547(); } function config100() { } function init_A547() { local integer clVar202 clVar_202 = alloc_Func_bar_A898(); if (bar791(clVar_202) == 2) { testSuccess158(); } else { }; } function bar791(integer f195) returns integer { return dispatch_Func_A_Func_apply385(f_195, 1); } IS_NATIVE function testSuccess158() { } function apply_bar_A496(integer this710, integer x571) returns integer { return (x_571 + 1); } function alloc_Func_bar_A898() returns integer { local integer this129 if (Func_firstFree_170 == 0) { if (Func_maxIndex_108 < 32768) { Func_maxIndex_108 = (Func_maxIndex_108 + 1); this_129 = Func_maxIndex_108; Func_typeId_132[this_129] = 2; } else { error336("Out of memory: Could not create Func_bar_A."); this_129 = 0; }; } else { Func_firstFree_170 = (Func_firstFree_170 - 1); this_129 = Func_nextFree_933[Func_firstFree_170]; Func_typeId_132[this_129] = 2; }; return this_129; } function error336(string msg819) { $debugPrint164((msg_819 + (" " + #getStackTrace()))); } function dispatch_Func_A_Func_apply385(integer this798, integer x176) returns integer { local integer A_Func_apply_result100 if (Func_typeId_132[this_798] == 0) { if (this_798 == 0) { error336("Nullpointer exception when calling Func.apply"); } else { error336("Called Func.apply on invalid object."); }; } else { }; A_Func_apply_result_100 = apply_bar_A496(this_798, x_176); return A_Func_apply_result_100; }