array A_nextFree475 integer A_firstFree145 integer A_maxIndex625 array A_ints_0208 array A_ints_1478 array A_ints_2921 array A_ints_3211 integer A_firstFree145 = 0 integer A_maxIndex625 = 0 function initGlobals183() { A_firstFree_145 = 0; A_maxIndex_625 = 0; } function main328() { initGlobals183(); init_test589(); } function config655() { } function init_test589() { local integer a134 a_134 = new_A186(); A_ints_set142(a_134, 0, 1234); if (A_ints_get214(a_134, 0) == 1234) { testSuccess964(); } else { testFail991("wrong value"); }; } IS_NATIVE function testSuccess964() { } IS_NATIVE function testFail991(string msg611) { } function A_init539(integer this443) { } function new_A186() returns integer { local integer this878 this_878 = alloc_A131(); construct_A455(this_878); return this_878; } function construct_A455(integer this207) { A_init539(this_207); } function alloc_A131() returns integer { local integer this761 if (A_firstFree_145 == 0) { if (A_maxIndex_625 < 32768) { A_maxIndex_625 = (A_maxIndex_625 + 1); this_761 = A_maxIndex_625; } else { error135("Out of memory: Could not create A."); this_761 = 0; }; } else { A_firstFree_145 = (A_firstFree_145 - 1); this_761 = A_nextFree_475[A_firstFree_145]; }; return this_761; } function error135(string msg105) { $debugPrint145((msg_105 + (" " + #getStackTrace()))); } function A_ints_set142(integer instanceId410, integer arrayIndex165, integer value894) { if ((arrayIndex_165 < 0) or (arrayIndex_165 >= 4)) { error135("Index out of Bounds"); } else { if (arrayIndex_165 <= 1) { if (arrayIndex_165 <= 0) { A_ints_0_208[instanceId_410] = value_894; } else { A_ints_1_478[instanceId_410] = value_894; }; } else { if (arrayIndex_165 <= 2) { A_ints_2_921[instanceId_410] = value_894; } else { A_ints_3_211[instanceId_410] = value_894; }; }; }; } function A_ints_get214(integer index1551, integer index2778) returns integer { local integer returnVal126 if ((index2_778 < 0) or (index2_778 >= 4)) { error135("Index out of Bounds"); } else { if (index2_778 <= 1) { if (index2_778 <= 0) { returnVal_126 = A_ints_0_208[index1_551]; } else { returnVal_126 = A_ints_1_478[index1_551]; }; } else { if (index2_778 <= 2) { returnVal_126 = A_ints_2_921[index1_551]; } else { returnVal_126 = A_ints_3_211[index1_551]; }; }; }; return returnVal_126; }