ats_bool_type
_2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_basics_2esats__funclo_is_ptr (ats_ptr_type arg0) {
    /* local vardec */
    ATSlocal (ats_bool_type, tmp49) ;
    ATSlocal (ats_int_type, tmp50) ;

__ats_lab__2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_basics_2esats__funclo_is_ptr:
    do {
        /* branch: __ats_lab_54 */
__ats_lab_54_0:
        if (arg0 == (ats_sum_ptr_type)0) {
            goto __ats_lab_55_0 ;
        }
__ats_lab_54_1:
        tmp50 = ats_caselptrlab_mac(anairiats_sum_0, arg0, atslab_0) ;
        tmp49 = atspre_neq_int_int (tmp50, 0) ;
        break ;

        /* branch: __ats_lab_55 */
__ats_lab_55_0:
// if (arg0 != (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
__ats_lab_55_1:
        tmp49 = ats_true_bool ;
        break ;
    } while (0) ;
    return (tmp49) ;
} /* end of [_2home_2hwxi_2Research_2ATS_2dPostiats_2src_2pats_basics_2esats__funclo_is_ptr] */
ats_bool_type
_2home_2hwxi_2research_2Postiats_2git_2src_2pats_counter_2esats__neq_count_count (ats_int_type arg0, ats_int_type arg1) {
/* local vardec */
ATSlocal (ats_bool_type, tmp6) ;

__ats_lab__2home_2hwxi_2research_2Postiats_2git_2src_2pats_counter_2esats__neq_count_count:
tmp6 = atspre_neq_int_int (arg0, arg1) ;
return (tmp6) ;
} /* end of [_2home_2hwxi_2research_2Postiats_2git_2src_2pats_counter_2esats__neq_count_count] */
ats_void_type
f_4 (ats_ptr_type arg0, ats_ref_type arg1) {
/* local vardec */
// ATSlocal_void (tmp16) ;
ATSlocal (ats_ptr_type, tmp17) ;
ATSlocal (ats_ptr_type, tmp18) ;
ATSlocal (ats_ptr_type, tmp19) ;
ATSlocal (ats_int_type, tmp20) ;
ATSlocal (ats_bool_type, tmp21) ;
ATSlocal (ats_bool_type, tmp22) ;
// ATSlocal_void (tmp23) ;
// ATSlocal_void (tmp24) ;
ATSlocal (ats_ptr_type, tmp25) ;
ATSlocal (ats_ptr_type, tmp26) ;
ATSlocal (ats_ptr_type, tmp27) ;
ATSlocal (ats_ptr_type, tmp28) ;
ATSlocal (ats_ptr_type, tmp29) ;

__ats_lab_f_4:
/* ats_ptr_type tmp17 ; */
tmp18 = atspre_ptr_alloc_tsz (sizeof(ats_dirent_type)) ;
tmp19 = ats_selsin_mac(tmp18, atslab_2) ;
tmp20 = atslib_readdir_r (arg0, tmp19, (&tmp17)) ;
tmp22 = atspre_neq_int_int (tmp20, 0) ;
if (tmp22) {
tmp21 = ats_true_bool ;
} else {
tmp21 = atspre_peq (tmp17, atspre_null_ptr) ;
} /* end of [if] */
if (tmp21) {
/* tmp23 = */ atspre_ptr_free (tmp19) ;
/* tmp24 = */ atslib_closedir_exn (arg0) ;
tmp25 = (ats_sum_ptr_type)0 ;
ats_ptrget_mac(ats_ptr_type, arg1) = tmp25 ;
} else {
tmp26 = tmp19 ;
tmp27 = ATS_MALLOC(sizeof(anairiats_sum_1)) ;
ats_selptrset_mac(anairiats_sum_1, tmp27, atslab_0, tmp26) ;
ats_ptrget_mac(ats_ptr_type, arg1) = tmp27 ;
// if (ats_ptrget_mac(ats_ptr_type, arg1) == (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
tmp28 = &ats_caselptrlab_mac(anairiats_sum_1, ats_ptrget_mac(ats_ptr_type, arg1), atslab_1) ;
tmp29 = ATS_2d0_2e2_2e10_2libc_2SATS_2dirent_2esats__direntptr_stream_vt_make_DIR (arg0) ;
ats_ptrget_mac(ats_ptr_type, tmp28) = tmp29 ;
} /* end of [if] */
return /* (tmp16) */ ;
} /* end of [f_4] */
ats_bool_type
_2opt_2ats_2d0_2e2_2e9_2src_2ats_label_2esats__neq_label_label (ats_ptr_type arg0, ats_ptr_type arg1) {
/* local vardec */
ATSlocal (ats_bool_type, tmp21) ;
ATSlocal (ats_int_type, tmp22) ;
ATSlocal (ats_int_type, tmp23) ;
ATSlocal (ats_ptr_type, tmp24) ;
ATSlocal (ats_ptr_type, tmp25) ;

__ats_lab__2opt_2ats_2d0_2e2_2e9_2src_2ats_label_2esats__neq_label_label:
do {
/* branch: __ats_lab_7 */
__ats_lab_7_0:
if (((ats_sum_ptr_type)arg0)->tag != 0) { goto __ats_lab_8_0 ; }
__ats_lab_7_1:
if (((ats_sum_ptr_type)arg1)->tag != 0) { goto __ats_lab_9_1 ; }
__ats_lab_7_2:
tmp22 = ats_caselptrlab_mac(anairiats_sum_0, arg0, atslab_0) ;
tmp23 = ats_caselptrlab_mac(anairiats_sum_0, arg1, atslab_0) ;
tmp21 = atspre_neq_int_int (tmp22, tmp23) ;
break ;

/* branch: __ats_lab_8 */
__ats_lab_8_0:
if (((ats_sum_ptr_type)arg0)->tag != 1) { goto __ats_lab_9_0 ; }
__ats_lab_8_1:
if (((ats_sum_ptr_type)arg1)->tag != 1) { goto __ats_lab_9_1 ; }
__ats_lab_8_2:
tmp24 = ats_caselptrlab_mac(anairiats_sum_1, arg0, atslab_0) ;
tmp25 = ats_caselptrlab_mac(anairiats_sum_1, arg1, atslab_0) ;
tmp21 = _2opt_2ats_2d0_2e2_2e9_2src_2ats_symbol_2esats__neq_symbol_symbol (tmp24, tmp25) ;
break ;

/* branch: __ats_lab_9 */
__ats_lab_9_0:
__ats_lab_9_1:
__ats_lab_9_2:
tmp21 = ats_true_bool ;
break ;
} while (0) ;
return (tmp21) ;
} /* end of [_2opt_2ats_2d0_2e2_2e9_2src_2ats_label_2esats__neq_label_label] */
ats_void_type
f_1 (ats_ptr_type arg0, ats_ref_type arg1) {
/* local vardec */
// ATSlocal_void (tmp1) ;
ATSlocal (ats_ptr_type, tmp2) ;
ATSlocal (ats_ptr_type, tmp3) ;
ATSlocal (ats_ptr_type, tmp4) ;
ATSlocal (ats_ptr_type, tmp5) ;
ATSlocal (ats_int_type, tmp6) ;
ATSlocal (ats_bool_type, tmp7) ;
ATSlocal (ats_bool_type, tmp8) ;
// ATSlocal_void (tmp9) ;
ATSlocal (ats_ptr_type, tmp10) ;
ATSlocal (ats_ptr_type, tmp11) ;

__ats_lab_f_1:
/* ats_ptr_type tmp2 ; */
tmp3 = ATS_MALLOC(sizeof(anairiats_sum_0)) ;
ats_ptrget_mac(ats_ptr_type, arg1) = tmp3 ;
// if (ats_ptrget_mac(ats_ptr_type, arg1) == (ats_sum_ptr_type)0) { ats_deadcode_failure_handle () ; }
tmp4 = &ats_caselptrlab_mac(anairiats_sum_0, ats_ptrget_mac(ats_ptr_type, arg1), atslab_0) ;
tmp5 = &ats_caselptrlab_mac(anairiats_sum_0, ats_ptrget_mac(ats_ptr_type, arg1), atslab_1) ;
tmp6 = atslib_readdir_r (arg0, tmp4, (&tmp2)) ;
tmp8 = atspre_neq_int_int (tmp6, 0) ;
if (tmp8) {
tmp7 = ats_true_bool ;
} else {
tmp7 = atspre_peq (tmp2, atspre_null_ptr) ;
} /* end of [if] */
if (tmp7) {
/* tmp9 = */ atslib_closedir_exn (arg0) ;
ATS_FREE(ats_ptrget_mac(ats_ptr_type, arg1)) ;
tmp10 = (ats_sum_ptr_type)0 ;
ats_ptrget_mac(ats_ptr_type, arg1) = tmp10 ;
} else {
tmp11 = ATS_2d0_2e2_2e10_2libc_2SATS_2dirent_2esats__dirent_stream_vt_make_DIR (arg0) ;
ats_ptrget_mac(ats_ptr_type, tmp5) = tmp11 ;
} /* end of [if] */
return /* (tmp1) */ ;
} /* end of [f_1] */