array I_nextFree176 integer I_firstFree903 integer I_maxIndex174 array I_typeId101 array C_nextFree680 integer C_firstFree329 integer C_maxIndex121 array D_nextFree628 integer D_firstFree864 integer D_maxIndex875 integer I_firstFree903 = 0 integer I_maxIndex174 = 0 integer C_firstFree329 = 0 integer C_maxIndex121 = 0 integer D_firstFree864 = 0 integer D_maxIndex875 = 0 function initGlobals908() { } function main749() { initGlobals908(); init_Test390(); } function config100() { } function init_Test390() { dispatch_I_Test_I_bla508(new_B131(), new_D208(), new_C154()); } function A_init432(integer this101) { } function construct_A161(integer this592) { A_init432(this_592); } function B_init128(integer this161) { } function new_B131() returns integer { local integer this515 this_515 = alloc_B505(); construct_B183(this_515); return this_515; } function construct_B183(integer this371) { construct_A161(this_371); B_init128(this_371); } function C_init399(integer this355) { } function new_C154() returns integer { local integer this115 this_115 = alloc_C183(); construct_C128(this_115); return this_115; } function construct_C128(integer this199) { C_init399(this_199); } function D_init180(integer this117) { } function new_D208() returns integer { local integer this941 this_941 = alloc_D321(); construct_D561(this_941); return this_941; } function construct_D561(integer this135) { D_init180(this_135); } function I_bla287(integer this112, any t461, any s195) { } function error651(string msg154) { $debugPrint174((msg_154 + (" " + #getStackTrace()))); } function alloc_B505() returns integer { local integer this206 if (I_firstFree_903 == 0) { if (I_maxIndex_174 < 32768) { I_maxIndex_174 = (I_maxIndex_174 + 1); this_206 = I_maxIndex_174; I_typeId_101[this_206] = 5; } else { error651("Out of memory: Could not create B."); this_206 = 0; }; } else { I_firstFree_903 = (I_firstFree_903 - 1); this_206 = I_nextFree_176[I_firstFree_903]; I_typeId_101[this_206] = 5; }; return this_206; } function alloc_C183() returns integer { local integer this179 if (C_firstFree_329 == 0) { if (C_maxIndex_121 < 32768) { C_maxIndex_121 = (C_maxIndex_121 + 1); this_179 = C_maxIndex_121; } else { error651("Out of memory: Could not create C."); this_179 = 0; }; } else { C_firstFree_329 = (C_firstFree_329 - 1); this_179 = C_nextFree_680[C_firstFree_329]; }; return this_179; } function alloc_D321() returns integer { local integer this149 if (D_firstFree_864 == 0) { if (D_maxIndex_875 < 32768) { D_maxIndex_875 = (D_maxIndex_875 + 1); this_149 = D_maxIndex_875; } else { error651("Out of memory: Could not create D."); this_149 = 0; }; } else { D_firstFree_864 = (D_firstFree_864 - 1); this_149 = D_nextFree_628[D_firstFree_864]; }; return this_149; } function dispatch_I_Test_I_bla508(integer this117, any t195, any s205) { if (I_typeId_101[this_117] == 0) { if (this_117 == 0) { error651("Nullpointer exception when calling I.bla"); } else { error651("Called I.bla on invalid object."); }; } else { }; I_bla287(this_117, t_195, s_205); }