function acker($arg0, $arg1)
{
    /*
      // $apy0
      // $apy1
      // $tmpret0
      // $tmp1
      // $tmp2
      // $tmp3
      // $tmp4
    */
    __patsflab_acker:
    // ATScaseofseq_beg
    do {
        // ATSbranchseq_beg
        __atstmplab0:
        if (!ATSCKpat_int($arg0, 0)) {
            goto __atstmplab2;
        }
        __atstmplab1:
        $tmpret0 = ats2phppre_add_int0_int0($arg1, 1);
        break;
        // ATSbranchseq_end
        // ATSbranchseq_beg
        __atstmplab2:
        if (!ATSCKpat_int($arg1, 0)) {
            goto __atstmplab4;
        }
        __atstmplab3:
        $tmp1 = ats2phppre_sub_int0_int0($arg0, 1);
        // ATStailcalseq_beg
        $apy0 = $tmp1;
        $apy1 = 1;
        $arg0 = $apy0;
        $arg1 = $apy1;
        goto __patsflab_acker;
        // ATStailcalseq_end
        break;
        // ATSbranchseq_end
        // ATSbranchseq_beg
        __atstmplab4:
        $tmp2 = ats2phppre_sub_int0_int0($arg0, 1);
        $tmp4 = ats2phppre_sub_int0_int0($arg1, 1);
        $tmp3 = acker($arg0, $tmp4);
        // ATStailcalseq_beg
        $apy0 = $tmp2;
        $apy1 = $tmp3;
        $arg0 = $apy0;
        $arg1 = $apy1;
        goto __patsflab_acker;
        // ATStailcalseq_end
        break;
        // ATSbranchseq_end
    } while (0);
    // ATScaseofseq_end
    return $tmpret0;
}
function fact($arg0)
{
    /*
      // $tmpret0
      // $tmp1
      // $tmp2
      // $tmp3
    */
    __patsflab_fact:
    $tmp1 = ats2phppre_gt_int0_int0($arg0, 0);
    if ($tmp1) {
        $tmp3 = ats2phppre_sub_int0_int0($arg0, 1);
        $tmp2 = fact($tmp3);
        $tmpret0 = ats2phppre_mul_int0_int0($arg0, $tmp2);
    } else {
        $tmpret0 = 1;
    }
    // endif
    return $tmpret0;
}
function _ats2phppre_intrange_loop_2($arg0, $arg1)
{
    /*
      // $apy0
      // $apy1
      // $tmp4
      // $tmp6
    */
    __patsflab__ats2phppre_intrange_loop_2:
    $tmp4 = ats2phppre_gt_int0_int0($arg0, 0);
    if ($tmp4) {
        $arg1[0]($arg1);
        $tmp6 = ats2phppre_sub_int0_int0($arg0, 1);
        // ATStailcalseq_beg
        $apy0 = $tmp6;
        $apy1 = $arg1;
        $arg0 = $apy0;
        $arg1 = $apy1;
        goto __patsflab__ats2phppre_intrange_loop_2;
        // ATStailcalseq_end
    } else {
        // ATSINSmove_void;
    }
    // endif
    return;
}