array C_nextFree162 integer C_firstFree198 integer C_maxIndex753 array C_v_0184 array C_v_1205 array C_v_2320 integer C_firstFree198 = 0 integer C_maxIndex753 = 0 function initGlobals176() { C_firstFree_198 = 0; C_maxIndex_753 = 0; } function main695() { initGlobals176(); init_test143(); } function config305() { } function init_test143() { local integer c133 c_133 = new_C146(); if (((C_v_get154(c_133, 0) == 7) and (C_v_get154(c_133, 1) == 8)) and (C_v_get154(c_133, 2) == 9)) { testSuccess817(); } else { }; } IS_NATIVE function testSuccess817() { } function C_init153(integer this462) { C_v_set124(this_462, 0, 7); C_v_set124(this_462, 1, 8); C_v_set124(this_462, 2, 9); } function new_C146() returns integer { local integer this132 this_132 = alloc_C172(); construct_C142(this_132); return this_132; } function construct_C142(integer this109) { C_init153(this_109); } function alloc_C172() returns integer { local integer this162 if (C_firstFree_198 == 0) { if (C_maxIndex_753 < 32768) { C_maxIndex_753 = (C_maxIndex_753 + 1); this_162 = C_maxIndex_753; } else { error240("Out of memory: Could not create C."); this_162 = 0; }; } else { C_firstFree_198 = (C_firstFree_198 - 1); this_162 = C_nextFree_162[C_firstFree_198]; }; return this_162; } function error240(string msg895) { $debugPrint408((msg_895 + (" " + #getStackTrace()))); } function C_v_set124(integer instanceId325, integer arrayIndex162, integer value301) { if ((arrayIndex_162 < 0) or (arrayIndex_162 >= 3)) { error240("Index out of Bounds"); } else { if (arrayIndex_162 <= 1) { if (arrayIndex_162 <= 0) { C_v_0_184[instanceId_325] = value_301; } else { C_v_1_205[instanceId_325] = value_301; }; } else { C_v_2_320[instanceId_325] = value_301; }; }; } function C_v_get154(integer index1417, integer index2829) returns integer { local integer returnVal200 if ((index2_829 < 0) or (index2_829 >= 3)) { error240("Index out of Bounds"); } else { if (index2_829 <= 1) { if (index2_829 <= 0) { returnVal_200 = C_v_0_184[index1_417]; } else { returnVal_200 = C_v_1_205[index1_417]; }; } else { returnVal_200 = C_v_2_320[index1_417]; }; }; return returnVal_200; }