array A_nextFree200 integer A_firstFree185 integer A_maxIndex185 array A_typeId182 array A_i134 integer A_firstFree185 = 0 integer A_maxIndex185 = 0 function initGlobals201() { } function main215() { initGlobals201(); init_test186(); } function config754() { } function init_test186() { local integer receiver760 receiver_760 = new_A885(); dispatch_A_test_A_plus885(receiver_760, 3); dispatch_A_test_A_minus118(receiver_760, 4); dispatch_A_test_A_plus885(receiver_760, 5); if (A_i_134[receiver_760] == 4) { testSuccess112(); } else { }; } IS_NATIVE function testSuccess112() { } function A_plus160(integer this401, integer x127) { A_i_134[this_401] = (A_i_134[this_401] + x_127); } function A_minus144(integer this143, integer x162) { A_i_134[this_143] = (A_i_134[this_143] - x_162); } function A_init530(integer this104) { } function new_A885() returns integer { local integer this175 this_175 = alloc_A273(); construct_A542(this_175); return this_175; } function construct_A542(integer this682) { A_init530(this_682); } function alloc_A273() returns integer { local integer this174 if (A_firstFree_185 == 0) { if (A_maxIndex_185 < 32768) { A_maxIndex_185 = (A_maxIndex_185 + 1); this_174 = A_maxIndex_185; A_typeId_182[this_174] = 1; } else { error208("Out of memory: Could not create A."); this_174 = 0; }; } else { A_firstFree_185 = (A_firstFree_185 - 1); this_174 = A_nextFree_200[A_firstFree_185]; A_typeId_182[this_174] = 1; }; return this_174; } function error208(string msg569) { $debugPrint701((msg_569 + (" " + #getStackTrace()))); } function dispatch_A_test_A_plus885(integer this704, integer x189) { if (A_typeId_182[this_704] == 0) { if (this_704 == 0) { error208("Nullpointer exception when calling A.plus"); } else { error208("Called A.plus on invalid object."); }; } else { }; A_plus160(this_704, x_189); } function dispatch_A_test_A_minus118(integer this147, integer x763) { if (A_typeId_182[this_147] == 0) { if (this_147 == 0) { error208("Nullpointer exception when calling A.minus"); } else { error208("Called A.minus on invalid object."); }; } else { }; A_minus144(this_147, x_763); }