array<integer> C_nextFree581
integer C_firstFree769
integer C_maxIndex954
array<real> C_v_x_0193
array<real> C_v_x_1193
array<real> C_v_x_2837
array<real> C_v_x_3845
array<real> C_v_x_4175
array<real> C_v_y_0356
array<real> C_v_y_1383
array<real> C_v_y_2169
array<real> C_v_y_3751
array<real> C_v_y_4151
array<real> C_v_z_0996
array<real> C_v_z_1246
array<real> C_v_z_2204
array<real> C_v_z_3198
array<real> C_v_z_4136


integer C_firstFree769 = 0
integer C_maxIndex954 = 0


function initGlobals212() { 
}


function main931() { 
    initGlobals212();
    init_test119();
}


function config198() { 
}


function init_test119() { 
    local integer c154
    c_154 = new_C172();
    C_v_x_set186(c_154, 0, 1.);
    C_v_y_set399(c_154, 0, 2.);
    C_v_z_set132(c_154, 0, 3.);
    C_v_x_set186(c_154, 1, 5.);
    C_v_y_set399(c_154, 1, 6.);
    C_v_z_set132(c_154, 1, 7.);
    println163(R2S348(C_v_x_get184(c_154, 0)));
    println163(R2S348(C_v_z_get158(c_154, 0)));
    println163(R2S348(C_v_y_get205(c_154, 1)));
    if (((C_v_x_get184(c_154, 0) == 1.) and (C_v_z_get158(c_154, 0) == 3.)) and (C_v_y_get205(c_154, 1) == 6.)) {
        testSuccess440();
    } else {
    };
}


IS_NATIVE IS_EXTERN @extern function R2S348(real r319) returns string { 
}


IS_NATIVE function println163(string s213) { 
}


IS_NATIVE function testSuccess440() { 
}


function C_init105(integer this153) { 
}


function new_C172() returns integer { 
    local integer this372
    this_372 = alloc_C339();
    construct_C435(this_372);
    return this_372;
}


function construct_C435(integer this204) { 
    C_init105(this_204);
}


function alloc_C339() returns integer { 
    local integer this190
    if (C_firstFree_769 == 0) {
        if (C_maxIndex_954 < 32768) {
            C_maxIndex_954 = (C_maxIndex_954 + 1);
            this_190 = C_maxIndex_954;
        } else {
            error200("Out of memory: Could not create C.");
            this_190 = 0;
        };
    } else {
        C_firstFree_769 = (C_firstFree_769 - 1);
        this_190 = C_nextFree_581[C_firstFree_769];
    };
    return this_190;
}


function error200(string msg456) { 
    $debugPrint161((msg_456 + ("
" + #getStackTrace())));
}


function C_v_x_set186(integer instanceId105, integer arrayIndex457, real value712) { 
    if ((arrayIndex_457 < 0) or (arrayIndex_457 >= 5)) {
        error200("Index out of Bounds");
    } else {
        if (arrayIndex_457 <= 2) {
            if (arrayIndex_457 <= 1) {
                if (arrayIndex_457 <= 0) {
                    C_v_x_0_193[instanceId_105] = value_712;
                } else {
                    C_v_x_1_193[instanceId_105] = value_712;
                };
            } else {
                C_v_x_2_837[instanceId_105] = value_712;
            };
        } else {
            if (arrayIndex_457 <= 3) {
                C_v_x_3_845[instanceId_105] = value_712;
            } else {
                C_v_x_4_175[instanceId_105] = value_712;
            };
        };
    };
}


function C_v_x_get184(integer index1438, integer index2654) returns real { 
    local real returnVal713
    if ((index2_654 < 0) or (index2_654 >= 5)) {
        error200("Index out of Bounds");
    } else {
        if (index2_654 <= 2) {
            if (index2_654 <= 1) {
                if (index2_654 <= 0) {
                    returnVal_713 = C_v_x_0_193[index1_438];
                } else {
                    returnVal_713 = C_v_x_1_193[index1_438];
                };
            } else {
                returnVal_713 = C_v_x_2_837[index1_438];
            };
        } else {
            if (index2_654 <= 3) {
                returnVal_713 = C_v_x_3_845[index1_438];
            } else {
                returnVal_713 = C_v_x_4_175[index1_438];
            };
        };
    };
    return returnVal_713;
}


function C_v_y_set399(integer instanceId202, integer arrayIndex701, real value971) { 
    if ((arrayIndex_701 < 0) or (arrayIndex_701 >= 5)) {
        error200("Index out of Bounds");
    } else {
        if (arrayIndex_701 <= 2) {
            if (arrayIndex_701 <= 1) {
                if (arrayIndex_701 <= 0) {
                    C_v_y_0_356[instanceId_202] = value_971;
                } else {
                    C_v_y_1_383[instanceId_202] = value_971;
                };
            } else {
                C_v_y_2_169[instanceId_202] = value_971;
            };
        } else {
            if (arrayIndex_701 <= 3) {
                C_v_y_3_751[instanceId_202] = value_971;
            } else {
                C_v_y_4_151[instanceId_202] = value_971;
            };
        };
    };
}


function C_v_y_get205(integer index1115, integer index2976) returns real { 
    local real returnVal637
    if ((index2_976 < 0) or (index2_976 >= 5)) {
        error200("Index out of Bounds");
    } else {
        if (index2_976 <= 2) {
            if (index2_976 <= 1) {
                if (index2_976 <= 0) {
                    returnVal_637 = C_v_y_0_356[index1_115];
                } else {
                    returnVal_637 = C_v_y_1_383[index1_115];
                };
            } else {
                returnVal_637 = C_v_y_2_169[index1_115];
            };
        } else {
            if (index2_976 <= 3) {
                returnVal_637 = C_v_y_3_751[index1_115];
            } else {
                returnVal_637 = C_v_y_4_151[index1_115];
            };
        };
    };
    return returnVal_637;
}


function C_v_z_set132(integer instanceId128, integer arrayIndex369, real value125) { 
    if ((arrayIndex_369 < 0) or (arrayIndex_369 >= 5)) {
        error200("Index out of Bounds");
    } else {
        if (arrayIndex_369 <= 2) {
            if (arrayIndex_369 <= 1) {
                if (arrayIndex_369 <= 0) {
                    C_v_z_0_996[instanceId_128] = value_125;
                } else {
                    C_v_z_1_246[instanceId_128] = value_125;
                };
            } else {
                C_v_z_2_204[instanceId_128] = value_125;
            };
        } else {
            if (arrayIndex_369 <= 3) {
                C_v_z_3_198[instanceId_128] = value_125;
            } else {
                C_v_z_4_136[instanceId_128] = value_125;
            };
        };
    };
}


function C_v_z_get158(integer index1187, integer index2760) returns real { 
    local real returnVal508
    if ((index2_760 < 0) or (index2_760 >= 5)) {
        error200("Index out of Bounds");
    } else {
        if (index2_760 <= 2) {
            if (index2_760 <= 1) {
                if (index2_760 <= 0) {
                    returnVal_508 = C_v_z_0_996[index1_187];
                } else {
                    returnVal_508 = C_v_z_1_246[index1_187];
                };
            } else {
                returnVal_508 = C_v_z_2_204[index1_187];
            };
        } else {
            if (index2_760 <= 3) {
                returnVal_508 = C_v_z_3_198[index1_187];
            } else {
                returnVal_508 = C_v_z_4_136[index1_187];
            };
        };
    };
    return returnVal_508;
}