static int sp_Check_Address(char *t1, char *t2)
{
    char t18[8];
    char t19[8];
    int t0;
    char *t3;
    char *t4;
    char *t5;
    char *t6;
    unsigned int t7;
    unsigned int t8;
    unsigned int t9;
    int t10;
    char *t11;
    char *t12;
    char *t13;
    char *t14;
    char *t15;
    char *t16;
    char *t17;
    unsigned int t20;
    unsigned int t21;
    unsigned int t22;
    unsigned int t23;
    unsigned int t24;
    unsigned int t25;
    unsigned int t26;
    unsigned int t27;
    unsigned int t28;
    unsigned int t29;
    unsigned int t30;
    unsigned int t31;
    unsigned int t32;
    unsigned int t33;
    char *t34;
    char *t35;
    char *t36;
    char *t37;
    char *t38;
    char *t39;
    char *t40;
    char *t41;
    char *t42;
    char *t43;
    char *t44;
    char *t45;
    char *t46;
    char *t47;
    char *t48;
    char *t49;

LAB0:    t0 = 1;
    t3 = (t2 + 48U);
    t4 = *((char **)t3);
    if (t4 == 0)
        goto LAB2;

LAB3:    goto *t4;

LAB2:    t4 = (t1 + 1280);
    xsi_vlog_subprogram_setdisablestate(t4, &&LAB4);
    xsi_set_current_line(54, ng0);

LAB5:    xsi_set_current_line(55, ng0);
    t5 = ((char*)((ng3)));
    t6 = (t5 + 4);
    t7 = *((unsigned int *)t6);
    t8 = (~(t7));
    t9 = *((unsigned int *)t5);
    t10 = (t9 & t8);
    t11 = (t1 + 8848);
    *((int *)t11) = t10;

LAB6:    t12 = (t1 + 8848);
    if (*((int *)t12) > 0)
        goto LAB7;

LAB8:    xsi_set_current_line(60, ng0);
    t4 = (t1 + 3656);
    t5 = (t4 + 56U);
    t6 = *((char **)t5);
    t11 = (t1 + 3816);
    t12 = (t11 + 56U);
    t13 = *((char **)t12);
    memset(t18, 0, 8);
    t14 = (t6 + 4);
    t15 = (t13 + 4);
    t7 = *((unsigned int *)t6);
    t8 = *((unsigned int *)t13);
    t9 = (t7 ^ t8);
    t20 = *((unsigned int *)t14);
    t21 = *((unsigned int *)t15);
    t22 = (t20 ^ t21);
    t23 = (t9 | t22);
    t24 = *((unsigned int *)t14);
    t25 = *((unsigned int *)t15);
    t26 = (t24 | t25);
    t27 = (~(t26));
    t28 = (t23 & t27);
    if (t28 != 0)
        goto LAB14;

LAB11:    if (t26 != 0)
        goto LAB13;

LAB12:    *((unsigned int *)t18) = 1;

LAB14:    t17 = (t18 + 4);
    t29 = *((unsigned int *)t17);
    t30 = (~(t29));
    t31 = *((unsigned int *)t18);
    t32 = (t31 & t30);
    t33 = (t32 != 0);
    if (t33 > 0)
        goto LAB15;

LAB16:
LAB17:
LAB4:    xsi_vlog_dispose_subprogram_invocation(t2);
    t4 = (t2 + 48U);
    *((char **)t4) = &&LAB2;
    t0 = 0;

LAB1:    return t0;
LAB7:    xsi_set_current_line(55, ng0);

LAB9:    xsi_set_current_line(56, ng0);
    t13 = (t2 + 88U);
    t14 = *((char **)t13);
    t15 = (t14 + 0U);
    xsi_wp_set_status(t15, 1);
    *((char **)t3) = &&LAB10;
    goto LAB1;

LAB10:    xsi_set_current_line(57, ng0);
    t16 = (t1 + 2776U);
    t17 = *((char **)t16);
    t16 = (t1 + 4616);
    xsi_vlogvar_assign_value(t16, t17, 0, 0, 1);
    xsi_set_current_line(58, ng0);
    t4 = (t1 + 3656);
    t5 = (t4 + 56U);
    t6 = *((char **)t5);
    t11 = (t1 + 4616);
    t12 = (t11 + 56U);
    t13 = *((char **)t12);
    xsi_vlogtype_concat(t18, 9, 9, 2U, t13, 1, t6, 8);
    t14 = ((char*)((ng4)));
    memset(t19, 0, 8);
    xsi_vlog_unsigned_rshift(t19, 9, t18, 9, t14, 32);
    t15 = (t1 + 3656);
    xsi_vlogvar_assign_value(t15, t19, 0, 0, 8);
    t4 = (t1 + 8848);
    t10 = *((int *)t4);
    *((int *)t4) = (t10 - 1);
    goto LAB6;

LAB13:    t16 = (t18 + 4);
    *((unsigned int *)t18) = 1;
    *((unsigned int *)t16) = 1;
    goto LAB14;

LAB15:    xsi_set_current_line(60, ng0);

LAB18:    xsi_set_current_line(61, ng0);
    t34 = (t1 + 3656);
    t35 = (t34 + 56U);
    t36 = *((char **)t35);
    t37 = (t1 + 4296);
    xsi_vlogvar_assign_value(t37, t36, 0, 0, 1);
    xsi_set_current_line(62, ng0);
    t4 = (t2 + 56U);
    t5 = *((char **)t4);
    t6 = (t2 + 56U);
    t11 = *((char **)t6);
    xsi_vlog_subprograminvocation_setJumpstate(t2, t11, &&LAB19);
    t12 = (t2 + 56U);
    t13 = *((char **)t12);
    t14 = (t1 + 848);
    t15 = xsi_create_subprogram_invocation(t13, 0, t1, t14, 0, t2);
    xsi_vlog_subprogram_pushinvocation(t14, t15);

LAB21:    t16 = (t2 + 64U);
    t17 = *((char **)t16);
    t34 = (t17 + 80U);
    t35 = *((char **)t34);
    t36 = (t35 + 272U);
    t37 = *((char **)t36);
    t38 = (t37 + 0U);
    t39 = *((char **)t38);
    t10 = ((int  (*)(char *, char *))t39)(t1, t17);
    if (t10 == -1)
        goto LAB22;

LAB23:    if (t10 != 0)
        goto LAB24;

LAB19:    t17 = (t1 + 848);
    xsi_vlog_subprogram_popinvocation(t17);

LAB20:    t40 = (t2 + 64U);
    t41 = *((char **)t40);
    t40 = (t1 + 848);
    t42 = (t2 + 56U);
    t43 = *((char **)t42);
    xsi_delete_subprogram_invocation(t40, t41, t1, t43, t2);
    xsi_set_current_line(63, ng0);
    t4 = (t1 + 4296);
    t5 = (t4 + 56U);
    t6 = *((char **)t5);
    t11 = (t6 + 4);
    t7 = *((unsigned int *)t11);
    t8 = (~(t7));
    t9 = *((unsigned int *)t6);
    t20 = (t9 & t8);
    t21 = (t20 != 0);
    if (t21 > 0)
        goto LAB25;

LAB26:    xsi_set_current_line(70, ng0);

LAB47:    xsi_set_current_line(71, ng0);
    t4 = (t2 + 56U);
    t5 = *((char **)t4);
    xsi_process_wait(t5, 7000LL);
    *((char **)t3) = &&LAB48;
    t0 = 1;
    goto LAB1;

LAB22:    t0 = -1;
    goto LAB1;

LAB24:    t16 = (t2 + 48U);
    *((char **)t16) = &&LAB21;
    goto LAB1;

LAB25:    xsi_set_current_line(63, ng0);

LAB28:    xsi_set_current_line(64, ng0);
    t12 = (t2 + 56U);
    t13 = *((char **)t12);
    xsi_process_wait(t13, 2000LL);
    *((char **)t3) = &&LAB29;
    t0 = 1;
    goto LAB1;

LAB27:    goto LAB17;

LAB29:    xsi_set_current_line(64, ng0);
    t14 = ((char*)((ng1)));
    t15 = (t1 + 3976);
    xsi_vlogvar_assign_value(t15, t14, 0, 0, 1);
    xsi_set_current_line(64, ng0);
    t4 = (t2 + 56U);
    t5 = *((char **)t4);
    xsi_process_wait(t5, 5000LL);
    *((char **)t3) = &&LAB30;
    t0 = 1;
    goto LAB1;

LAB30:    xsi_set_current_line(65, ng0);

LAB31:    t4 = (t1 + 4136);
    t5 = (t4 + 56U);
    t6 = *((char **)t5);
    memset(t18, 0, 8);
    t11 = (t6 + 4);
    t7 = *((unsigned int *)t11);
    t8 = (~(t7));
    t9 = *((unsigned int *)t6);
    t20 = (t9 & t8);
    t21 = (t20 & 1U);
    if (t21 != 0)
        goto LAB35;

LAB33:    if (*((unsigned int *)t11) == 0)
        goto LAB32;

LAB34:    t12 = (t18 + 4);
    *((unsigned int *)t18) = 1;
    *((unsigned int *)t12) = 1;

LAB35:    t13 = (t18 + 4);
    t22 = *((unsigned int *)t13);
    t23 = (~(t22));
    t24 = *((unsigned int *)t18);
    t25 = (t24 & t23);
    t26 = (t25 != 0);
    if (t26 > 0)
        goto LAB36;

LAB37:    goto LAB27;

LAB32:    *((unsigned int *)t18) = 1;
    goto LAB35;

LAB36:    xsi_set_current_line(65, ng0);

LAB38:    xsi_set_current_line(66, ng0);
    t14 = (t2 + 56U);
    t15 = *((char **)t14);
    t16 = (t2 + 56U);
    t17 = *((char **)t16);
    xsi_vlog_subprograminvocation_setJumpstate(t2, t17, &&LAB39);
    t34 = (t2 + 56U);
    t35 = *((char **)t34);
    t36 = (t1 + 2144);
    t37 = xsi_create_subprogram_invocation(t35, 0, t1, t36, 0, t2);
    xsi_vlog_subprogram_pushinvocation(t36, t37);

LAB41:    t38 = (t2 + 64U);
    t39 = *((char **)t38);
    t40 = (t39 + 80U);
    t41 = *((char **)t40);
    t42 = (t41 + 272U);
    t43 = *((char **)t42);
    t44 = (t43 + 0U);
    t45 = *((char **)t44);
    t10 = ((int  (*)(char *, char *))t45)(t1, t39);
    if (t10 == -1)
        goto LAB42;

LAB43:    if (t10 != 0)
        goto LAB44;

LAB39:    t39 = (t1 + 2144);
    xsi_vlog_subprogram_popinvocation(t39);

LAB40:    t46 = (t2 + 64U);
    t47 = *((char **)t46);
    t46 = (t1 + 2144);
    t48 = (t2 + 56U);
    t49 = *((char **)t48);
    xsi_delete_subprogram_invocation(t46, t47, t1, t49, t2);
    xsi_set_current_line(67, ng0);
    t4 = (t2 + 56U);
    t5 = *((char **)t4);
    xsi_process_wait(t5, 2000LL);
    *((char **)t3) = &&LAB45;
    t0 = 1;
    goto LAB1;

LAB42:    t0 = -1;
    goto LAB1;

LAB44:    t38 = (t2 + 48U);
    *((char **)t38) = &&LAB41;
    goto LAB1;

LAB45:    xsi_set_current_line(67, ng0);
    t6 = ((char*)((ng1)));
    t11 = (t1 + 3976);
    xsi_vlogvar_assign_value(t11, t6, 0, 0, 1);
    xsi_set_current_line(67, ng0);
    t4 = (t2 + 56U);
    t5 = *((char **)t4);
    xsi_process_wait(t5, 5000LL);
    *((char **)t3) = &&LAB46;
    t0 = 1;
    goto LAB1;

LAB46:    goto LAB31;

LAB48:    xsi_set_current_line(71, ng0);
    t6 = (t1 + 3096U);
    t11 = *((char **)t6);
    t6 = (t1 + 3656);
    xsi_vlogvar_assign_value(t6, t11, 0, 0, 8);
    xsi_set_current_line(72, ng0);
    t4 = (t2 + 56U);
    t5 = *((char **)t4);
    t6 = (t2 + 56U);
    t11 = *((char **)t6);
    xsi_vlog_subprograminvocation_setJumpstate(t2, t11, &&LAB49);
    t12 = (t2 + 56U);
    t13 = *((char **)t12);
    t14 = (t1 + 1712);
    t15 = xsi_create_subprogram_invocation(t13, 0, t1, t14, 0, t2);
    xsi_vlog_subprogram_pushinvocation(t14, t15);

LAB51:    t16 = (t2 + 64U);
    t17 = *((char **)t16);
    t34 = (t17 + 80U);
    t35 = *((char **)t34);
    t36 = (t35 + 272U);
    t37 = *((char **)t36);
    t38 = (t37 + 0U);
    t39 = *((char **)t38);
    t10 = ((int  (*)(char *, char *))t39)(t1, t17);
    if (t10 == -1)
        goto LAB52;

LAB53:    if (t10 != 0)
        goto LAB54;

LAB49:    t17 = (t1 + 1712);
    xsi_vlog_subprogram_popinvocation(t17);

LAB50:    t40 = (t2 + 64U);
    t41 = *((char **)t40);
    t40 = (t1 + 1712);
    t42 = (t2 + 56U);
    t43 = *((char **)t42);
    xsi_delete_subprogram_invocation(t40, t41, t1, t43, t2);
    goto LAB27;

LAB52:    t0 = -1;
    goto LAB1;

LAB54:    t16 = (t2 + 48U);
    *((char **)t16) = &&LAB51;
    goto LAB1;

}
void design_a_2773784971_2730021763_sub_105344256_1881409087(char *t0, char *t1, int t2)
{
    char t4[8];
    char *t5;
    int t6;
    int t7;
    char *t8;
    char *t9;
    char *t10;
    char *t11;
    char *t12;
    char *t13;
    char *t14;
    char *t15;
    char *t16;
    char *t17;
    char *t18;
    char *t19;
    unsigned int t20;
    char *t21;
    char *t22;
    char *t23;
    unsigned char t24;
    char *t25;
    unsigned char t26;
    char *t27;
    char *t28;
    unsigned char t29;
    unsigned char t30;
    int t31;

LAB0:    t5 = (t4 + 4U);
    *((int *)t5) = t2;
    t6 = 1;
    t7 = t2;

LAB2:    if (t6 <= t7)
        goto LAB3;

LAB5:
LAB1:    return;
LAB3:    t8 = (t0 + 2432U);
    xsi_add_dynamic_wait(t1, t8, -1, -1);
    t9 = (t0 + 2432U);
    xsi_add_dynamic_wait(t1, t9, -1, -1);

LAB9:    t10 = (t1 + 224U);
    t10 = *((char **)t10);
    xsi_wp_set_status(t10, 1);
    t11 = (t1 + 88U);
    t12 = *((char **)t11);
    t13 = (t12 + 2480U);
    *((unsigned int *)t13) = 1U;
    t14 = (t1 + 88U);
    t15 = *((char **)t14);
    t16 = (t15 + 0U);
    getcontext(t16);
    t17 = (t1 + 88U);
    t18 = *((char **)t17);
    t19 = (t18 + 2480U);
    t20 = *((unsigned int *)t19);
    if (t20 == 1)
        goto LAB10;

LAB11:    t21 = (t1 + 88U);
    t22 = *((char **)t21);
    t23 = (t22 + 2480U);
    *((unsigned int *)t23) = 3U;

LAB7:
LAB8:    t25 = (t0 + 2432U);
    t26 = xsi_signal_has_event(t25);
    if (t26 == 1)
        goto LAB12;

LAB13:    t24 = (unsigned char)0;

LAB14:    if (t24 == 1)
        goto LAB6;
    else
        goto LAB9;

LAB4:    if (t6 == t7)
        goto LAB5;

LAB15:    t31 = (t6 + 1);
    t6 = t31;
    goto LAB2;

LAB6:    xsi_remove_dynamic_wait(t1, t8);
    xsi_remove_dynamic_wait(t1, t9);
    goto LAB4;

LAB10:    xsi_saveStackAndSuspend(t1);
    goto LAB11;

LAB12:    t27 = (t0 + 2472U);
    t28 = *((char **)t27);
    t29 = *((unsigned char *)t28);
    t30 = (t29 == (unsigned char)3);
    t24 = t30;
    goto LAB14;

}
static int sp_Send_Data(char *t1, char *t2)
{
    char t21[8];
    int t0;
    char *t3;
    char *t4;
    char *t5;
    char *t6;
    unsigned int t7;
    unsigned int t8;
    unsigned int t9;
    int t10;
    char *t11;
    char *t12;
    char *t13;
    char *t14;
    char *t15;
    char *t16;
    char *t17;
    char *t18;
    char *t19;
    char *t20;

LAB0:    t0 = 1;
    t3 = (t2 + 48U);
    t4 = *((char **)t3);
    if (t4 == 0)
        goto LAB2;

LAB3:    goto *t4;

LAB2:    t4 = (t1 + 1712);
    xsi_vlog_subprogram_setdisablestate(t4, &&LAB4);
    xsi_set_current_line(79, ng0);

LAB5:    xsi_set_current_line(80, ng0);
    t5 = ((char*)((ng2)));
    t6 = (t1 + 3976);
    xsi_vlogvar_assign_value(t6, t5, 0, 0, 1);
    xsi_set_current_line(81, ng0);
    t4 = ((char*)((ng3)));
    t5 = (t4 + 4);
    t7 = *((unsigned int *)t5);
    t8 = (~(t7));
    t9 = *((unsigned int *)t4);
    t10 = (t9 & t8);
    t6 = (t1 + 8852);
    *((int *)t6) = t10;

LAB6:    t11 = (t1 + 8852);
    if (*((int *)t11) > 0)
        goto LAB7;

LAB8:    xsi_set_current_line(87, ng0);
    t4 = (t2 + 88U);
    t5 = *((char **)t4);
    t6 = (t5 + 16U);
    xsi_wp_set_status(t6, 1);
    *((char **)t3) = &&LAB13;

LAB1:    return t0;
LAB4:    xsi_vlog_dispose_subprogram_invocation(t2);
    t4 = (t2 + 48U);
    *((char **)t4) = &&LAB2;
    t0 = 0;
    goto LAB1;

LAB7:    xsi_set_current_line(81, ng0);

LAB9:    xsi_set_current_line(82, ng0);
    t12 = (t2 + 88U);
    t13 = *((char **)t12);
    t14 = (t13 + 0U);
    xsi_wp_set_status(t14, 1);
    *((char **)t3) = &&LAB10;
    goto LAB1;

LAB10:    xsi_set_current_line(82, ng0);

LAB11:    xsi_set_current_line(83, ng0);
    t15 = (t2 + 56U);
    t16 = *((char **)t15);
    xsi_process_wait(t16, 1000LL);
    *((char **)t3) = &&LAB12;
    t0 = 1;
    goto LAB1;

LAB12:    xsi_set_current_line(83, ng0);
    t17 = (t1 + 3656);
    t18 = (t17 + 56U);
    t19 = *((char **)t18);
    t20 = (t1 + 4456);
    xsi_vlogvar_assign_value(t20, t19, 0, 0, 1);
    xsi_set_current_line(85, ng0);
    t4 = (t1 + 3656);
    t5 = (t4 + 56U);
    t6 = *((char **)t5);
    t11 = ((char*)((ng4)));
    memset(t21, 0, 8);
    xsi_vlog_unsigned_rshift(t21, 8, t6, 8, t11, 32);
    t12 = (t1 + 3656);
    xsi_vlogvar_assign_value(t12, t21, 0, 0, 8);
    t4 = (t1 + 8852);
    t10 = *((int *)t4);
    *((int *)t4) = (t10 - 1);
    goto LAB6;

LAB13:    xsi_set_current_line(87, ng0);
    t11 = (t2 + 56U);
    t12 = *((char **)t11);
    xsi_process_wait(t12, 1000LL);
    *((char **)t3) = &&LAB14;
    t0 = 1;
    goto LAB1;

LAB14:    xsi_set_current_line(87, ng0);
    t13 = ((char*)((ng2)));
    t14 = (t1 + 4456);
    xsi_vlogvar_assign_value(t14, t13, 0, 0, 1);
    goto LAB4;

}
static int sp_Read_Data(char *t1, char *t2)
{
    char t18[8];
    char t19[8];
    int t0;
    char *t3;
    char *t4;
    char *t5;
    char *t6;
    unsigned int t7;
    unsigned int t8;
    unsigned int t9;
    int t10;
    char *t11;
    char *t12;
    char *t13;
    char *t14;
    char *t15;
    char *t16;
    char *t17;
    char *t20;
    char *t21;
    char *t22;
    char *t23;
    char *t24;
    char *t25;
    char *t26;
    char *t27;
    char *t28;
    char *t29;

LAB0:    t0 = 1;
    t3 = (t2 + 48U);
    t4 = *((char **)t3);
    if (t4 == 0)
        goto LAB2;

LAB3:    goto *t4;

LAB2:    t4 = (t1 + 2144);
    xsi_vlog_subprogram_setdisablestate(t4, &&LAB4);
    xsi_set_current_line(93, ng0);

LAB5:    xsi_set_current_line(94, ng0);
    t5 = ((char*)((ng3)));
    t6 = (t5 + 4);
    t7 = *((unsigned int *)t6);
    t8 = (~(t7));
    t9 = *((unsigned int *)t5);
    t10 = (t9 & t8);
    t11 = (t1 + 8856);
    *((int *)t11) = t10;

LAB6:    t12 = (t1 + 8856);
    if (*((int *)t12) > 0)
        goto LAB7;

LAB8:    xsi_set_current_line(99, ng0);
    t4 = (t2 + 56U);
    t5 = *((char **)t4);
    t6 = (t2 + 56U);
    t11 = *((char **)t6);
    xsi_vlog_subprograminvocation_setJumpstate(t2, t11, &&LAB11);
    t12 = (t2 + 56U);
    t13 = *((char **)t12);
    t14 = (t1 + 848);
    t15 = xsi_create_subprogram_invocation(t13, 0, t1, t14, 0, t2);
    xsi_vlog_subprogram_pushinvocation(t14, t15);

LAB13:    t16 = (t2 + 64U);
    t17 = *((char **)t16);
    t20 = (t17 + 80U);
    t21 = *((char **)t20);
    t22 = (t21 + 272U);
    t23 = *((char **)t22);
    t24 = (t23 + 0U);
    t25 = *((char **)t24);
    t10 = ((int  (*)(char *, char *))t25)(t1, t17);
    if (t10 == -1)
        goto LAB14;

LAB15:    if (t10 != 0)
        goto LAB16;

LAB11:    t17 = (t1 + 848);
    xsi_vlog_subprogram_popinvocation(t17);

LAB12:    t26 = (t2 + 64U);
    t27 = *((char **)t26);
    t26 = (t1 + 848);
    t28 = (t2 + 56U);
    t29 = *((char **)t28);
    xsi_delete_subprogram_invocation(t26, t27, t1, t29, t2);
    xsi_set_current_line(100, ng0);
    t4 = (t1 + 3656);
    t5 = (t4 + 56U);
    t6 = *((char **)t5);
    t11 = (t1 + 2144);
    xsi_vlogfile_write(1, 0, 0, ng5, 2, t11, (char)118, t6, 8);
    xsi_set_current_line(101, ng0);
    t4 = (t1 + 3656);
    t5 = (t4 + 56U);
    t6 = *((char **)t5);
    t11 = (t1 + 3496);
    xsi_vlogvar_assign_value(t11, t6, 0, 0, 8);

LAB4:    xsi_vlog_dispose_subprogram_invocation(t2);
    t4 = (t2 + 48U);
    *((char **)t4) = &&LAB2;
    t0 = 0;

LAB1:    return t0;
LAB7:    xsi_set_current_line(94, ng0);

LAB9:    xsi_set_current_line(95, ng0);
    t13 = (t2 + 88U);
    t14 = *((char **)t13);
    t15 = (t14 + 0U);
    xsi_wp_set_status(t15, 1);
    *((char **)t3) = &&LAB10;
    goto LAB1;

LAB10:    xsi_set_current_line(96, ng0);
    t16 = (t1 + 2776U);
    t17 = *((char **)t16);
    t16 = (t1 + 4776);
    xsi_vlogvar_assign_value(t16, t17, 0, 0, 1);
    xsi_set_current_line(97, ng0);
    t4 = (t1 + 3656);
    t5 = (t4 + 56U);
    t6 = *((char **)t5);
    t11 = (t1 + 4776);
    t12 = (t11 + 56U);
    t13 = *((char **)t12);
    xsi_vlogtype_concat(t18, 9, 9, 2U, t13, 1, t6, 8);
    t14 = ((char*)((ng4)));
    memset(t19, 0, 8);
    xsi_vlog_unsigned_rshift(t19, 9, t18, 9, t14, 32);
    t15 = (t1 + 3656);
    xsi_vlogvar_assign_value(t15, t19, 0, 0, 8);
    t4 = (t1 + 8856);
    t10 = *((int *)t4);
    *((int *)t4) = (t10 - 1);
    goto LAB6;

LAB14:    t0 = -1;
    goto LAB1;

LAB16:    t16 = (t2 + 48U);
    *((char **)t16) = &&LAB13;
    goto LAB1;

}
static int sp_Acknowledgement(char *t1, char *t2)
{
    int t0;
    char *t3;
    char *t4;
    char *t5;
    char *t6;
    char *t7;

LAB0:    t0 = 1;
    t3 = (t2 + 48U);
    t4 = *((char **)t3);
    if (t4 == 0)
        goto LAB2;

LAB3:    goto *t4;

LAB2:    t4 = (t1 + 848);
    xsi_vlog_subprogram_setdisablestate(t4, &&LAB4);
    xsi_set_current_line(44, ng0);

LAB5:    xsi_set_current_line(45, ng0);
    t5 = ((char*)((ng1)));
    t6 = (t1 + 4456);
    xsi_vlogvar_assign_value(t6, t5, 0, 0, 1);
    xsi_set_current_line(46, ng0);
    t4 = (t2 + 88U);
    t5 = *((char **)t4);
    t6 = (t5 + 0U);
    xsi_wp_set_status(t6, 1);
    *((char **)t3) = &&LAB6;

LAB1:    return t0;
LAB4:    xsi_vlog_dispose_subprogram_invocation(t2);
    t4 = (t2 + 48U);
    *((char **)t4) = &&LAB2;
    t0 = 0;
    goto LAB1;

LAB6:    xsi_set_current_line(47, ng0);
    t4 = (t2 + 56U);
    t5 = *((char **)t4);
    xsi_process_wait(t5, 1000LL);
    *((char **)t3) = &&LAB7;
    t0 = 1;
    goto LAB1;

LAB7:    xsi_set_current_line(47, ng0);
    t6 = ((char*)((ng2)));
    t7 = (t1 + 3976);
    xsi_vlogvar_assign_value(t7, t6, 0, 0, 1);
    xsi_set_current_line(48, ng0);
    t4 = (t2 + 88U);
    t5 = *((char **)t4);
    t6 = (t5 + 16U);
    xsi_wp_set_status(t6, 1);
    *((char **)t3) = &&LAB8;
    goto LAB1;

LAB8:    goto LAB4;

}
static int sp_Acknowledgement(char *t1, char *t2)
{
    int t0;
    char *t3;
    char *t4;
    char *t5;
    char *t6;
    char *t7;
    char *t8;
    int t9;
    char *t10;
    char *t11;

LAB0:    t0 = 1;
    t3 = (t2 + 48U);
    t4 = *((char **)t3);
    if (t4 == 0)
        goto LAB2;

LAB3:    goto *t4;

LAB2:    t4 = (t1 + 1280);
    xsi_vlog_subprogram_setdisablestate(t4, &&LAB4);
    xsi_set_current_line(52, ng0);

LAB5:    xsi_set_current_line(53, ng0);
    t5 = (t2 + 56U);
    t6 = *((char **)t5);
    xsi_process_wait(t6, 1000LL);
    *((char **)t3) = &&LAB6;
    t0 = 1;

LAB1:    return t0;
LAB4:    xsi_vlog_dispose_subprogram_invocation(t2);
    t4 = (t2 + 48U);
    *((char **)t4) = &&LAB2;
    t0 = 0;
    goto LAB1;

LAB6:    xsi_set_current_line(53, ng0);
    t7 = ((char*)((ng2)));
    t8 = (t1 + 4136);
    xsi_vlogvar_assign_value(t8, t7, 0, 0, 1);
    xsi_set_current_line(54, ng0);
    t4 = ((char*)((ng2)));
    t5 = (t1 + 4616);
    xsi_vlogvar_assign_value(t5, t4, 0, 0, 1);
    xsi_set_current_line(55, ng0);
    t4 = (t2 + 88U);
    t5 = *((char **)t4);
    t6 = (t5 + 0U);
    xsi_wp_set_status(t6, 1);
    *((char **)t3) = &&LAB7;
    goto LAB1;

LAB7:    xsi_set_current_line(56, ng0);
    t9 = xsi_create_forkvar_inside_subprogram_invocation(t2, 2, 0);
    t4 = (t2 + 80U);
    t5 = *((char **)t4);
    xsi_create_forkjoin_process_inside_subprogram(0, (void *)Forked_57_2, t2, t5);
    t6 = (t2 + 80U);
    t7 = *((char **)t6);
    xsi_create_forkjoin_process_inside_subprogram(0, (void *)Forked_60_3, t2, t7);
    xsi_set_forkwaitinfo_inside_subprogram_status(t2, 0, 1);
    *((char **)t3) = &&LAB8;
    goto LAB1;

LAB8:    t8 = xsi_get_forkvar_inside_subprogram_invocation(t2, 0);
    t10 = (t8 + 56U);
    t11 = *((char **)t10);
    if (*((int *)t11) > 0)
        goto LAB9;

LAB10:    xsi_clean_active_fork_process_list(t2);
    xsi_set_current_line(63, ng0);
    t4 = ((char*)((ng2)));
    t5 = (t1 + 3976);
    xsi_vlogvar_assign_value(t5, t4, 0, 0, 1);
    xsi_set_current_line(64, ng0);
    t4 = (t2 + 56U);
    t5 = *((char **)t4);
    xsi_process_wait(t5, 2000LL);
    *((char **)t3) = &&LAB11;
    t0 = 1;
    goto LAB1;

LAB9:    xsi_set_forkwaitinfo_inside_subprogram_status(t2, 0, 1);
    goto LAB1;

LAB11:    xsi_set_current_line(64, ng0);
    t6 = ((char*)((ng1)));
    t7 = (t1 + 4136);
    xsi_vlogvar_assign_value(t7, t6, 0, 0, 1);
    goto LAB4;

}
static int sp_START_STOP(char *t1, char *t2)
{
    int t0;
    char *t3;
    char *t4;
    char *t5;
    char *t6;
    char *t7;
    char *t8;
    char *t9;
    char *t10;
    char *t11;
    char *t12;

LAB0:    t0 = 1;
    t3 = (t2 + 48U);
    t4 = *((char **)t3);
    if (t4 == 0)
        goto LAB2;

LAB3:    goto *t4;

LAB2:    t4 = (t1 + 848);
    xsi_vlog_subprogram_setdisablestate(t4, &&LAB4);
    xsi_set_current_line(43, ng0);

LAB5:    xsi_set_current_line(44, ng0);
    t5 = ((char*)((ng1)));
    t6 = (t1 + 4136);
    xsi_vlogvar_assign_value(t6, t5, 0, 0, 1);
    xsi_set_current_line(45, ng0);
    t4 = (t2 + 88U);
    t5 = *((char **)t4);
    t6 = (t5 + 0U);
    xsi_wp_set_status(t6, 1);
    *((char **)t3) = &&LAB6;

LAB1:    return t0;
LAB4:    xsi_vlog_dispose_subprogram_invocation(t2);
    t4 = (t2 + 48U);
    *((char **)t4) = &&LAB2;
    t0 = 0;
    goto LAB1;

LAB6:    xsi_set_current_line(46, ng0);
    t7 = (t2 + 56U);
    t8 = *((char **)t7);
    xsi_process_wait(t8, 1000LL);
    *((char **)t3) = &&LAB7;
    t0 = 1;
    goto LAB1;

LAB7:    xsi_set_current_line(46, ng0);
    t9 = (t1 + 4456);
    t10 = (t9 + 56U);
    t11 = *((char **)t10);
    t12 = (t1 + 3976);
    xsi_vlogvar_assign_value(t12, t11, 0, 0, 1);
    goto LAB4;

}
static int sp_Send_Data(char *t1, char *t2)
{
    char t22[8];
    int t0;
    char *t3;
    char *t4;
    char *t5;
    char *t6;
    unsigned int t7;
    unsigned int t8;
    unsigned int t9;
    int t10;
    char *t11;
    char *t12;
    char *t13;
    char *t14;
    char *t15;
    char *t16;
    char *t17;
    char *t18;
    char *t19;
    char *t20;
    char *t21;
    char *t23;
    char *t24;
    char *t25;
    char *t26;
    char *t27;
    char *t28;

LAB0:    t0 = 1;
    t3 = (t2 + 48U);
    t4 = *((char **)t3);
    if (t4 == 0)
        goto LAB2;

LAB3:    goto *t4;

LAB2:    t4 = (t1 + 2144);
    xsi_vlog_subprogram_setdisablestate(t4, &&LAB4);
    xsi_set_current_line(82, ng0);

LAB5:    xsi_set_current_line(83, ng0);
    t5 = ((char*)((ng5)));
    t6 = (t5 + 4);
    t7 = *((unsigned int *)t6);
    t8 = (~(t7));
    t9 = *((unsigned int *)t5);
    t10 = (t9 & t8);
    t11 = (t1 + 8196);
    *((int *)t11) = t10;

LAB6:    t12 = (t1 + 8196);
    if (*((int *)t12) > 0)
        goto LAB7;

LAB8:    xsi_set_current_line(89, ng0);
    t4 = (t2 + 88U);
    t5 = *((char **)t4);
    t6 = (t5 + 16U);
    xsi_wp_set_status(t6, 1);
    *((char **)t3) = &&LAB13;

LAB1:    return t0;
LAB4:    xsi_vlog_dispose_subprogram_invocation(t2);
    t4 = (t2 + 48U);
    *((char **)t4) = &&LAB2;
    t0 = 0;
    goto LAB1;

LAB7:    xsi_set_current_line(83, ng0);

LAB9:    xsi_set_current_line(84, ng0);
    t13 = (t2 + 88U);
    t14 = *((char **)t13);
    t15 = (t14 + 0U);
    xsi_wp_set_status(t15, 1);
    *((char **)t3) = &&LAB10;
    goto LAB1;

LAB10:    xsi_set_current_line(84, ng0);

LAB11:    xsi_set_current_line(85, ng0);
    t16 = (t2 + 56U);
    t17 = *((char **)t16);
    xsi_process_wait(t17, 1000LL);
    *((char **)t3) = &&LAB12;
    t0 = 1;
    goto LAB1;

LAB12:    xsi_set_current_line(85, ng0);
    t18 = (t1 + 3656);
    t19 = (t18 + 56U);
    t20 = *((char **)t19);
    t21 = (t1 + 3976);
    xsi_vlogvar_assign_value(t21, t20, 0, 0, 1);
    xsi_set_current_line(87, ng0);
    t4 = (t1 + 3656);
    t5 = (t4 + 56U);
    t6 = *((char **)t5);
    t11 = ((char*)((ng6)));
    memset(t22, 0, 8);
    xsi_vlog_unsigned_rshift(t22, 8, t6, 8, t11, 32);
    t12 = (t1 + 3656);
    xsi_vlogvar_assign_value(t12, t22, 0, 0, 8);
    t4 = (t1 + 8196);
    t10 = *((int *)t4);
    *((int *)t4) = (t10 - 1);
    goto LAB6;

LAB13:    xsi_set_current_line(89, ng0);
    t11 = (t2 + 56U);
    t12 = *((char **)t11);
    xsi_process_wait(t12, 1000LL);
    *((char **)t3) = &&LAB14;
    t0 = 1;
    goto LAB1;

LAB14:    xsi_set_current_line(89, ng0);
    t13 = ((char*)((ng1)));
    t14 = (t1 + 3976);
    xsi_vlogvar_assign_value(t14, t13, 0, 0, 1);
    xsi_set_current_line(90, ng0);
    t4 = (t2 + 56U);
    t5 = *((char **)t4);
    t6 = (t2 + 56U);
    t11 = *((char **)t6);
    xsi_vlog_subprograminvocation_setJumpstate(t2, t11, &&LAB15);
    t12 = (t2 + 56U);
    t13 = *((char **)t12);
    t14 = (t1 + 1280);
    t15 = xsi_create_subprogram_invocation(t13, 0, t1, t14, 0, t2);
    xsi_vlog_subprogram_pushinvocation(t14, t15);

LAB17:    t16 = (t2 + 64U);
    t17 = *((char **)t16);
    t18 = (t17 + 80U);
    t19 = *((char **)t18);
    t20 = (t19 + 272U);
    t21 = *((char **)t20);
    t23 = (t21 + 0U);
    t24 = *((char **)t23);
    t10 = ((int  (*)(char *, char *))t24)(t1, t17);
    if (t10 == -1)
        goto LAB18;

LAB19:    if (t10 != 0)
        goto LAB20;

LAB15:    t17 = (t1 + 1280);
    xsi_vlog_subprogram_popinvocation(t17);

LAB16:    t25 = (t2 + 64U);
    t26 = *((char **)t25);
    t25 = (t1 + 1280);
    t27 = (t2 + 56U);
    t28 = *((char **)t27);
    xsi_delete_subprogram_invocation(t25, t26, t1, t28, t2);
    goto LAB4;

LAB18:    t0 = -1;
    goto LAB1;

LAB20:    t16 = (t2 + 48U);
    *((char **)t16) = &&LAB17;
    goto LAB1;

}
void nf10_axis_sim_stim_v1_10_a_a_0907956521_1516540902_sub_16679151566995163314_5716404275827165329(char *t0, char *t1, int t2)
{
    char t3[128];
    char t4[8];
    char t8[8];
    char *t5;
    char *t6;
    char *t7;
    char *t9;
    char *t10;
    char *t11;
    char *t12;
    char *t13;
    int t14;
    unsigned char t15;
    char *t16;
    char *t17;
    char *t18;
    char *t19;
    char *t20;
    char *t21;
    char *t22;
    char *t23;
    char *t24;
    char *t25;
    unsigned int t26;
    char *t27;
    char *t28;
    char *t29;
    char *t30;
    unsigned char t31;
    int t32;

LAB0:    t5 = (t3 + 4U);
    t6 = ((STD_STANDARD) + 824);
    t7 = (t5 + 88U);
    *((char **)t7) = t6;
    t9 = (t5 + 56U);
    *((char **)t9) = t8;
    *((int *)t8) = t2;
    t10 = (t5 + 80U);
    *((unsigned int *)t10) = 4U;
    t11 = (t4 + 4U);
    *((int *)t11) = t2;

LAB2:    t12 = (t5 + 56U);
    t13 = *((char **)t12);
    t14 = *((int *)t13);
    t15 = (t14 != 0);
    if (t15 != 0)
        goto LAB3;

LAB5:
LAB1:    return;
LAB3:    t12 = (t0 + 992U);
    xsi_add_dynamic_wait(t1, t12, -1, -1);

LAB9:    t16 = (t1 + 224U);
    t16 = *((char **)t16);
    xsi_wp_set_status(t16, 1);
    t17 = (t1 + 88U);
    t18 = *((char **)t17);
    t19 = (t18 + 1888U);
    *((unsigned int *)t19) = 1U;
    t20 = (t1 + 88U);
    t21 = *((char **)t20);
    t22 = (t21 + 0U);
    getcontext(t22);
    t23 = (t1 + 88U);
    t24 = *((char **)t23);
    t25 = (t24 + 1888U);
    t26 = *((unsigned int *)t25);
    if (t26 == 1)
        goto LAB10;

LAB11:    t27 = (t1 + 88U);
    t28 = *((char **)t27);
    t29 = (t28 + 1888U);
    *((unsigned int *)t29) = 3U;

LAB7:
LAB8:    t30 = (t0 + 992U);
    t31 = ieee_p_2592010699_sub_2763492388968962707_503743352(IEEE_P_2592010699, t30, 0U, 0U);
    if (t31 == 1)
        goto LAB6;
    else
        goto LAB9;

LAB4:;
LAB6:    xsi_remove_dynamic_wait(t1, t12);
    t6 = (t5 + 56U);
    t7 = *((char **)t6);
    t14 = *((int *)t7);
    t32 = (t14 - 1);
    t6 = (t5 + 56U);
    t9 = *((char **)t6);
    t6 = (t9 + 0);
    *((int *)t6) = t32;
    goto LAB2;

LAB10:    xsi_saveStackAndSuspend(t1);
    goto LAB11;

}