// This file is part of the SV-Benchmarks collection of verification tasks: // https://gitlab.com/sosy-lab/benchmarking/sv-benchmarks // // SPDX-FileCopyrightText: 2013 Carnegie Mellon University // SPDX-FileCopyrightText: 2014-2021 The SV-Benchmarks Community // SPDX-FileCopyrightText: 2018 Marie-Christine Jakobs, LMU Munich // // SPDX-License-Identifier: LicenseRef-BSD-3-Clause-Attribution-CMU-LMU int __return_main; void abort(void); extern void __assert_fail(const char *, const char *, unsigned int, const char *) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__noreturn__)); void reach_error() { __assert_fail("0", "pals_lcr.4.1.ufo.UNBOUNDED.pals.c.v+lhb-reducer.c", 4, "reach_error"); } _Bool __VERIFIER_nondet_bool(); char __VERIFIER_nondet_char(); unsigned char __VERIFIER_nondet_uchar(); void assert(_Bool arg); void abort(void); void assume_abort_if_not(int cond) { if(!cond) {abort();} } typedef char msg_t; typedef int port_t; void read(port_t p, msg_t m); void write(port_t p, msg_t m); msg_t nomsg = (msg_t )-1; unsigned char r1 = '\x0'; port_t p1 = 0; char p1_old = '\x0'; char p1_new = '\x0'; char id1 = '\x0'; char st1 = '\x0'; msg_t send1 = '\x0'; _Bool mode1 = 0; port_t p2 = 0; char p2_old = '\x0'; char p2_new = '\x0'; char id2 = '\x0'; char st2 = '\x0'; msg_t send2 = '\x0'; _Bool mode2 = 0; port_t p3 = 0; char p3_old = '\x0'; char p3_new = '\x0'; char id3 = '\x0'; char st3 = '\x0'; msg_t send3 = '\x0'; _Bool mode3 = 0; port_t p4 = 0; char p4_old = '\x0'; char p4_new = '\x0'; char id4 = '\x0'; char st4 = '\x0'; msg_t send4 = '\x0'; _Bool mode4 = 0; void node1(); void node2(); void node3(); void node4(); void (*nodes[4])() = { &node1, &node2, &node3, &node4 }; int init(); int check(); int main(); int __return_2904; int __return_4524; int __return_3074; int __return_3157; int __return_3425; int __return_3610; int __return_3778; int __return_3983; int __return_4161; int __return_4335; int __return_4495; int __return_3338; int __return_3495; int __return_3692; int __return_3850; int __return_4077; int __return_4231; int __return_4417; int __return_4460; int __return_4370; int __return_4288; int __return_4196; int __return_4126; int __return_4018; int __return_3921; int __return_3815; int __return_3743; int __return_3645; int __return_3560; int __return_3460; int __return_3387; int __return_3263; int __return_2995; int main() { int main__c1; int main__i2; main__c1 = 0; r1 = __VERIFIER_nondet_uchar(); id1 = __VERIFIER_nondet_char(); st1 = __VERIFIER_nondet_char(); send1 = __VERIFIER_nondet_char(); mode1 = __VERIFIER_nondet_bool(); id2 = __VERIFIER_nondet_char(); st2 = __VERIFIER_nondet_char(); send2 = __VERIFIER_nondet_char(); mode2 = __VERIFIER_nondet_bool(); id3 = __VERIFIER_nondet_char(); st3 = __VERIFIER_nondet_char(); send3 = __VERIFIER_nondet_char(); mode3 = __VERIFIER_nondet_bool(); id4 = __VERIFIER_nondet_char(); st4 = __VERIFIER_nondet_char(); send4 = __VERIFIER_nondet_char(); mode4 = __VERIFIER_nondet_bool(); { int init__tmp; if (((int)r1) == 0) { if (((int)id1) >= 0) { if (((int)st1) == 0) { if (((int)send1) == ((int)id1)) { if (((int)mode1) == 0) { if (((int)id2) >= 0) { if (((int)st2) == 0) { if (((int)send2) == ((int)id2)) { if (((int)mode2) == 0) { if (((int)id3) >= 0) { if (((int)st3) == 0) { if (((int)send3) == ((int)id3)) { if (((int)mode3) == 0) { if (((int)id4) >= 0) { if (((int)st4) == 0) { if (((int)send4) == ((int)id4)) { if (((int)mode4) == 0) { if (((int)id1) != ((int)id2)) { if (((int)id1) != ((int)id3)) { if (((int)id1) != ((int)id4)) { if (((int)id2) != ((int)id3)) { if (((int)id2) != ((int)id4)) { if (((int)id3) != ((int)id4)) { init__tmp = 1; __return_2904 = init__tmp; main__i2 = __return_2904; if (main__i2 != 0) { p1_old = nomsg; p1_new = nomsg; p2_old = nomsg; p2_new = nomsg; p3_old = nomsg; p3_new = nomsg; p4_old = nomsg; p4_new = nomsg; main__i2 = 0; { msg_t node1__m1; node1__m1 = nomsg; if (!(mode1 == 0)) { return __return_main; } else { int node1____CPAchecker_TMP_0; if (send1 != nomsg) { if (p1_new == nomsg) { node1____CPAchecker_TMP_0 = send1; p1_new = node1____CPAchecker_TMP_0; mode1 = 1; { msg_t node2__m2; node2__m2 = nomsg; if (!(mode2 == 0)) { return __return_main; } else { int node2____CPAchecker_TMP_0; if (send2 != nomsg) { if (p2_new == nomsg) { node2____CPAchecker_TMP_0 = send2; p2_new = node2____CPAchecker_TMP_0; mode2 = 1; { msg_t node3__m3; node3__m3 = nomsg; if (!(mode3 == 0)) { return __return_main; } else { int node3____CPAchecker_TMP_0; if (send3 != nomsg) { if (p3_new == nomsg) { node3____CPAchecker_TMP_0 = send3; p3_new = node3____CPAchecker_TMP_0; mode3 = 1; { msg_t node4__m4; node4__m4 = nomsg; if (!(mode4 == 0)) { return __return_main; } else { int node4____CPAchecker_TMP_0; if (send4 != nomsg) { if (p4_new == nomsg) { node4____CPAchecker_TMP_0 = send4; p4_new = node4____CPAchecker_TMP_0; mode4 = 1; p1_old = p1_new; p1_new = nomsg; p2_old = p2_new; p2_new = nomsg; p3_old = p3_new; p3_new = nomsg; p4_old = p4_new; p4_new = nomsg; { int check__tmp; if ((((((int)st1) + ((int)st2)) + ((int)st3)) + ((int)st4)) <= 1) { if (((int)r1) >= 4) { return __return_main; } else { if ((((((int)st1) + ((int)st2)) + ((int)st3)) + ((int)st4)) == 0) { if (((int)r1) < 4) { check__tmp = 1; __return_4524 = check__tmp; main__c1 = __return_4524; { _Bool __tmp_1; __tmp_1 = main__c1; _Bool assert__arg; assert__arg = __tmp_1; if (assert__arg == 0) { return __return_main; } else { label_3002:; { msg_t node1__m1; node1__m1 = nomsg; if (!(mode1 == 0)) { if (r1 == 255) { return __return_main; } else { r1 = r1 + 1; node1__m1 = p4_old; p4_old = nomsg; if (((int)node1__m1) != ((int)nomsg)) { if (((int)node1__m1) > ((int)id1)) { send1 = node1__m1; label_3276:; mode1 = 0; label_3016:; { msg_t node2__m2; node2__m2 = nomsg; if (!(mode2 == 0)) { node2__m2 = p1_old; p1_old = nomsg; if (((int)node2__m2) != ((int)nomsg)) { if (((int)node2__m2) > ((int)id2)) { send2 = node2__m2; label_3933:; mode2 = 0; label_3028:; { msg_t node3__m3; node3__m3 = nomsg; if (!(mode3 == 0)) { node3__m3 = p2_old; p2_old = nomsg; if (((int)node3__m3) != ((int)nomsg)) { if (((int)node3__m3) > ((int)id3)) { send3 = node3__m3; label_3572:; mode3 = 0; label_3040:; { msg_t node4__m4; node4__m4 = nomsg; if (!(mode4 == 0)) { node4__m4 = p3_old; p3_old = nomsg; if (((int)node4__m4) != ((int)nomsg)) { if (((int)node4__m4) > ((int)id4)) { send4 = node4__m4; label_3399:; mode4 = 0; label_3052:; p1_old = p1_new; p1_new = nomsg; p2_old = p2_new; p2_new = nomsg; p3_old = p3_new; p3_new = nomsg; p4_old = p4_new; p4_new = nomsg; { int check__tmp; if ((((((int)st1) + ((int)st2)) + ((int)st3)) + ((int)st4)) <= 1) { if (((int)r1) >= 4) { return __return_main; } else { if ((((((int)st1) + ((int)st2)) + ((int)st3)) + ((int)st4)) == 0) { if (((int)r1) < 4) { check__tmp = 1; __return_3074 = check__tmp; main__c1 = __return_3074; { _Bool __tmp_2; __tmp_2 = main__c1; _Bool assert__arg; assert__arg = __tmp_2; if (assert__arg == 0) { return __return_main; } else { label_3081:; { msg_t node1__m1; node1__m1 = nomsg; if (!(mode1 == 0)) { if (r1 == 255) { r1 = 3; label_3090:; r1 = r1 + 1; node1__m1 = p4_old; p4_old = nomsg; if (((int)node1__m1) != ((int)nomsg)) { if (((int)node1__m1) > ((int)id1)) { send1 = node1__m1; label_3095:; mode1 = 0; label_3097:; { msg_t node2__m2; node2__m2 = nomsg; if (!(mode2 == 0)) { node2__m2 = p1_old; p1_old = nomsg; if (((int)node2__m2) != ((int)nomsg)) { if (((int)node2__m2) > ((int)id2)) { send2 = node2__m2; label_3109:; mode2 = 0; label_3111:; { msg_t node3__m3; node3__m3 = nomsg; if (!(mode3 == 0)) { node3__m3 = p2_old; p2_old = nomsg; if (((int)node3__m3) != ((int)nomsg)) { if (((int)node3__m3) > ((int)id3)) { send3 = node3__m3; label_3123:; mode3 = 0; label_3125:; { msg_t node4__m4; node4__m4 = nomsg; if (!(mode4 == 0)) { node4__m4 = p3_old; p3_old = nomsg; if (((int)node4__m4) != ((int)nomsg)) { if (((int)node4__m4) > ((int)id4)) { send4 = node4__m4; label_3137:; mode4 = 0; label_3139:; p1_old = p1_new; p1_new = nomsg; p2_old = p2_new; p2_new = nomsg; p3_old = p3_new; p3_new = nomsg; p4_old = p4_new; p4_new = nomsg; label_3149:; { int check__tmp; if ((((((int)st1) + ((int)st2)) + ((int)st3)) + ((int)st4)) <= 1) { if (((int)r1) >= 4) { label_3173:; if (((int)r1) < 4) { check__tmp = 1; label_3179:; label_3172:; label_3156:; __return_3157 = check__tmp; main__c1 = __return_3157; label_3158:; { _Bool __tmp_3; __tmp_3 = main__c1; _Bool assert__arg; assert__arg = __tmp_3; if (assert__arg == 0) { {reach_error();} return __return_main; } else { label_3164:; goto label_3081; } } } else { if ((((((int)st1) + ((int)st2)) + ((int)st3)) + ((int)st4)) == 1) { check__tmp = 1; goto label_3179; } else { check__tmp = 0; goto label_3179; } } } else { if ((((((int)st1) + ((int)st2)) + ((int)st3)) + ((int)st4)) == 0) { goto label_3173; } else { check__tmp = 0; goto label_3172; } } } else { check__tmp = 0; goto label_3156; } } } else { if (((int)node4__m4) == ((int)id4)) { st4 = 1; goto label_3137; } else { goto label_3137; } } } else { goto label_3137; } } else { int node4____CPAchecker_TMP_0; if (send4 != nomsg) { if (p4_new == nomsg) { node4____CPAchecker_TMP_0 = send4; label_3191:; p4_new = node4____CPAchecker_TMP_0; mode4 = 1; goto label_3139; } else { label_3190:; node4____CPAchecker_TMP_0 = p4_new; goto label_3191; } } else { goto label_3190; } } } } else { if (((int)node3__m3) == ((int)id3)) { st3 = 1; goto label_3123; } else { goto label_3123; } } } else { goto label_3123; } } else { int node3____CPAchecker_TMP_0; if (send3 != nomsg) { if (p3_new == nomsg) { node3____CPAchecker_TMP_0 = send3; label_3204:; p3_new = node3____CPAchecker_TMP_0; mode3 = 1; goto label_3125; } else { label_3203:; node3____CPAchecker_TMP_0 = p3_new; goto label_3204; } } else { goto label_3203; } } } } else { if (((int)node2__m2) == ((int)id2)) { st2 = 1; goto label_3109; } else { goto label_3109; } } } else { goto label_3109; } } else { int node2____CPAchecker_TMP_0; if (send2 != nomsg) { if (p2_new == nomsg) { node2____CPAchecker_TMP_0 = send2; label_3217:; p2_new = node2____CPAchecker_TMP_0; mode2 = 1; goto label_3111; } else { label_3216:; node2____CPAchecker_TMP_0 = p2_new; goto label_3217; } } else { goto label_3216; } } } } else { if (((int)node1__m1) == ((int)id1)) { st1 = 1; goto label_3095; } else { send1 = node1__m1; goto label_3095; } } } else { goto label_3095; } } else { goto label_3090; } } else { int node1____CPAchecker_TMP_0; if (send1 != nomsg) { if (p1_new == nomsg) { node1____CPAchecker_TMP_0 = send1; label_3232:; p1_new = node1____CPAchecker_TMP_0; mode1 = 1; goto label_3097; } else { label_3231:; node1____CPAchecker_TMP_0 = p1_new; goto label_3232; } } else { goto label_3231; } } } } } } else { return __return_main; } } else { return __return_main; } } } else { return __return_main; } } } else { if (((int)node4__m4) == ((int)id4)) { st4 = 1; mode4 = 0; p1_old = p1_new; p1_new = nomsg; p2_old = p2_new; p2_new = nomsg; p3_old = p3_new; p3_new = nomsg; p4_old = p4_new; p4_new = nomsg; { int check__tmp; if ((((((int)st1) + ((int)st2)) + ((int)st3)) + ((int)st4)) <= 1) { if (((int)r1) >= 4) { return __return_main; } else { if ((((((int)st1) + ((int)st2)) + ((int)st3)) + ((int)st4)) == 0) { return __return_main; } else { check__tmp = 0; __return_3425 = check__tmp; main__c1 = __return_3425; { _Bool __tmp_4; __tmp_4 = main__c1; _Bool assert__arg; assert__arg = __tmp_4; if (assert__arg == 0) { {reach_error();} return __return_main; } else { return __return_main; } } } } } else { return __return_main; } } } else { goto label_3399; } } } else { mode4 = 0; goto label_3052; } } else { return __return_main; } } } else { if (((int)node3__m3) == ((int)id3)) { st3 = 1; mode3 = 0; { msg_t node4__m4; node4__m4 = nomsg; if (!(mode4 == 0)) { node4__m4 = p3_old; p3_old = nomsg; if (((int)node4__m4) != ((int)nomsg)) { if (((int)node4__m4) > ((int)id4)) { send4 = node4__m4; label_3755:; mode4 = 0; label_3591:; p1_old = p1_new; p1_new = nomsg; p2_old = p2_new; p2_new = nomsg; p3_old = p3_new; p3_new = nomsg; p4_old = p4_new; p4_new = nomsg; { int check__tmp; if ((((((int)st1) + ((int)st2)) + ((int)st3)) + ((int)st4)) <= 1) { if (((int)r1) >= 4) { return __return_main; } else { if ((((((int)st1) + ((int)st2)) + ((int)st3)) + ((int)st4)) == 0) { return __return_main; } else { check__tmp = 0; __return_3610 = check__tmp; main__c1 = __return_3610; { _Bool __tmp_5; __tmp_5 = main__c1; _Bool assert__arg; assert__arg = __tmp_5; if (assert__arg == 0) { {reach_error();} return __return_main; } else { return __return_main; } } } } } else { return __return_main; } } } else { if (((int)node4__m4) == ((int)id4)) { st4 = 1; mode4 = 0; p1_old = p1_new; p1_new = nomsg; p2_old = p2_new; p2_new = nomsg; p3_old = p3_new; p3_new = nomsg; p4_old = p4_new; p4_new = nomsg; { int check__tmp; if ((((((int)st1) + ((int)st2)) + ((int)st3)) + ((int)st4)) <= 1) { return __return_main; } else { check__tmp = 0; __return_3778 = check__tmp; main__c1 = __return_3778; { _Bool __tmp_6; __tmp_6 = main__c1; _Bool assert__arg; assert__arg = __tmp_6; if (assert__arg == 0) { {reach_error();} return __return_main; } else { goto label_3164; } } } } } else { goto label_3755; } } } else { mode4 = 0; goto label_3591; } } else { return __return_main; } } } else { goto label_3572; } } } else { mode3 = 0; goto label_3040; } } else { return __return_main; } } } else { if (((int)node2__m2) == ((int)id2)) { st2 = 1; mode2 = 0; { msg_t node3__m3; node3__m3 = nomsg; if (!(mode3 == 0)) { node3__m3 = p2_old; p2_old = nomsg; if (((int)node3__m3) != ((int)nomsg)) { if (((int)node3__m3) > ((int)id3)) { send3 = node3__m3; label_4300:; mode3 = 0; label_3952:; { msg_t node4__m4; node4__m4 = nomsg; if (!(mode4 == 0)) { node4__m4 = p3_old; p3_old = nomsg; if (((int)node4__m4) != ((int)nomsg)) { if (((int)node4__m4) > ((int)id4)) { send4 = node4__m4; label_4138:; mode4 = 0; label_3964:; p1_old = p1_new; p1_new = nomsg; p2_old = p2_new; p2_new = nomsg; p3_old = p3_new; p3_new = nomsg; p4_old = p4_new; p4_new = nomsg; { int check__tmp; if ((((((int)st1) + ((int)st2)) + ((int)st3)) + ((int)st4)) <= 1) { if (((int)r1) >= 4) { return __return_main; } else { if ((((((int)st1) + ((int)st2)) + ((int)st3)) + ((int)st4)) == 0) { return __return_main; } else { check__tmp = 0; __return_3983 = check__tmp; main__c1 = __return_3983; { _Bool __tmp_7; __tmp_7 = main__c1; _Bool assert__arg; assert__arg = __tmp_7; if (assert__arg == 0) { {reach_error();} return __return_main; } else { return __return_main; } } } } } else { return __return_main; } } } else { if (((int)node4__m4) == ((int)id4)) { st4 = 1; mode4 = 0; p1_old = p1_new; p1_new = nomsg; p2_old = p2_new; p2_new = nomsg; p3_old = p3_new; p3_new = nomsg; p4_old = p4_new; p4_new = nomsg; { int check__tmp; if ((((((int)st1) + ((int)st2)) + ((int)st3)) + ((int)st4)) <= 1) { return __return_main; } else { check__tmp = 0; __return_4161 = check__tmp; main__c1 = __return_4161; { _Bool __tmp_8; __tmp_8 = main__c1; _Bool assert__arg; assert__arg = __tmp_8; if (assert__arg == 0) { {reach_error();} return __return_main; } else { return __return_main; } } } } } else { goto label_4138; } } } else { mode4 = 0; goto label_3964; } } else { return __return_main; } } } else { if (((int)node3__m3) == ((int)id3)) { st3 = 1; mode3 = 0; { msg_t node4__m4; node4__m4 = nomsg; if (!(mode4 == 0)) { node4__m4 = p3_old; p3_old = nomsg; if (((int)node4__m4) != ((int)nomsg)) { if (((int)node4__m4) > ((int)id4)) { send4 = node4__m4; label_4472:; mode4 = 0; label_4319:; p1_old = p1_new; p1_new = nomsg; p2_old = p2_new; p2_new = nomsg; p3_old = p3_new; p3_new = nomsg; p4_old = p4_new; p4_new = nomsg; { int check__tmp; if ((((((int)st1) + ((int)st2)) + ((int)st3)) + ((int)st4)) <= 1) { return __return_main; } else { check__tmp = 0; __return_4335 = check__tmp; main__c1 = __return_4335; { _Bool __tmp_9; __tmp_9 = main__c1; _Bool assert__arg; assert__arg = __tmp_9; if (assert__arg == 0) { {reach_error();} return __return_main; } else { return __return_main; } } } } } else { if (((int)node4__m4) == ((int)id4)) { st4 = 1; mode4 = 0; p1_old = p1_new; p1_new = nomsg; p2_old = p2_new; p2_new = nomsg; p3_old = p3_new; p3_new = nomsg; p4_old = p4_new; p4_new = nomsg; { int check__tmp; if ((((((int)st1) + ((int)st2)) + ((int)st3)) + ((int)st4)) <= 1) { return __return_main; } else { check__tmp = 0; __return_4495 = check__tmp; main__c1 = __return_4495; goto label_3158; } } } else { goto label_4472; } } } else { mode4 = 0; goto label_4319; } } else { return __return_main; } } } else { goto label_4300; } } } else { mode3 = 0; goto label_3952; } } else { return __return_main; } } } else { goto label_3933; } } } else { mode2 = 0; goto label_3028; } } else { return __return_main; } } } else { if (((int)node1__m1) == ((int)id1)) { st1 = 1; mode1 = 0; { msg_t node2__m2; node2__m2 = nomsg; if (!(mode2 == 0)) { node2__m2 = p1_old; p1_old = nomsg; if (((int)node2__m2) != ((int)nomsg)) { if (((int)node2__m2) > ((int)id2)) { send2 = node2__m2; label_4030:; mode2 = 0; label_3295:; { msg_t node3__m3; node3__m3 = nomsg; if (!(mode3 == 0)) { node3__m3 = p2_old; p2_old = nomsg; if (((int)node3__m3) != ((int)nomsg)) { if (((int)node3__m3) > ((int)id3)) { send3 = node3__m3; label_3657:; mode3 = 0; label_3307:; { msg_t node4__m4; node4__m4 = nomsg; if (!(mode4 == 0)) { node4__m4 = p3_old; p3_old = nomsg; if (((int)node4__m4) != ((int)nomsg)) { if (((int)node4__m4) > ((int)id4)) { send4 = node4__m4; label_3472:; mode4 = 0; label_3319:; p1_old = p1_new; p1_new = nomsg; p2_old = p2_new; p2_new = nomsg; p3_old = p3_new; p3_new = nomsg; p4_old = p4_new; p4_new = nomsg; { int check__tmp; if ((((((int)st1) + ((int)st2)) + ((int)st3)) + ((int)st4)) <= 1) { if (((int)r1) >= 4) { return __return_main; } else { if ((((((int)st1) + ((int)st2)) + ((int)st3)) + ((int)st4)) == 0) { return __return_main; } else { check__tmp = 0; __return_3338 = check__tmp; main__c1 = __return_3338; { _Bool __tmp_10; __tmp_10 = main__c1; _Bool assert__arg; assert__arg = __tmp_10; if (assert__arg == 0) { {reach_error();} return __return_main; } else { return __return_main; } } } } } else { return __return_main; } } } else { if (((int)node4__m4) == ((int)id4)) { st4 = 1; mode4 = 0; p1_old = p1_new; p1_new = nomsg; p2_old = p2_new; p2_new = nomsg; p3_old = p3_new; p3_new = nomsg; p4_old = p4_new; p4_new = nomsg; { int check__tmp; if ((((((int)st1) + ((int)st2)) + ((int)st3)) + ((int)st4)) <= 1) { return __return_main; } else { check__tmp = 0; __return_3495 = check__tmp; main__c1 = __return_3495; { _Bool __tmp_11; __tmp_11 = main__c1; _Bool assert__arg; assert__arg = __tmp_11; if (assert__arg == 0) { {reach_error();} return __return_main; } else { goto label_3164; } } } } } else { goto label_3472; } } } else { mode4 = 0; goto label_3319; } } else { return __return_main; } } } else { if (((int)node3__m3) == ((int)id3)) { st3 = 1; mode3 = 0; { msg_t node4__m4; node4__m4 = nomsg; if (!(mode4 == 0)) { node4__m4 = p3_old; p3_old = nomsg; if (((int)node4__m4) != ((int)nomsg)) { if (((int)node4__m4) > ((int)id4)) { send4 = node4__m4; label_3827:; mode4 = 0; label_3676:; p1_old = p1_new; p1_new = nomsg; p2_old = p2_new; p2_new = nomsg; p3_old = p3_new; p3_new = nomsg; p4_old = p4_new; p4_new = nomsg; { int check__tmp; if ((((((int)st1) + ((int)st2)) + ((int)st3)) + ((int)st4)) <= 1) { return __return_main; } else { check__tmp = 0; __return_3692 = check__tmp; main__c1 = __return_3692; { _Bool __tmp_12; __tmp_12 = main__c1; _Bool assert__arg; assert__arg = __tmp_12; if (assert__arg == 0) { {reach_error();} return __return_main; } else { goto label_3164; } } } } } else { if (((int)node4__m4) == ((int)id4)) { st4 = 1; mode4 = 0; p1_old = p1_new; p1_new = nomsg; p2_old = p2_new; p2_new = nomsg; p3_old = p3_new; p3_new = nomsg; p4_old = p4_new; p4_new = nomsg; { int check__tmp; if ((((((int)st1) + ((int)st2)) + ((int)st3)) + ((int)st4)) <= 1) { return __return_main; } else { check__tmp = 0; __return_3850 = check__tmp; main__c1 = __return_3850; goto label_3158; } } } else { goto label_3827; } } } else { mode4 = 0; goto label_3676; } } else { return __return_main; } } } else { goto label_3657; } } } else { mode3 = 0; goto label_3307; } } else { return __return_main; } } } else { if (((int)node2__m2) == ((int)id2)) { st2 = 1; mode2 = 0; { msg_t node3__m3; node3__m3 = nomsg; if (!(mode3 == 0)) { node3__m3 = p2_old; p2_old = nomsg; if (((int)node3__m3) != ((int)nomsg)) { if (((int)node3__m3) > ((int)id3)) { send3 = node3__m3; label_4382:; mode3 = 0; label_4049:; { msg_t node4__m4; node4__m4 = nomsg; if (!(mode4 == 0)) { node4__m4 = p3_old; p3_old = nomsg; if (((int)node4__m4) != ((int)nomsg)) { if (((int)node4__m4) > ((int)id4)) { send4 = node4__m4; label_4208:; mode4 = 0; label_4061:; p1_old = p1_new; p1_new = nomsg; p2_old = p2_new; p2_new = nomsg; p3_old = p3_new; p3_new = nomsg; p4_old = p4_new; p4_new = nomsg; { int check__tmp; if ((((((int)st1) + ((int)st2)) + ((int)st3)) + ((int)st4)) <= 1) { return __return_main; } else { check__tmp = 0; __return_4077 = check__tmp; main__c1 = __return_4077; { _Bool __tmp_13; __tmp_13 = main__c1; _Bool assert__arg; assert__arg = __tmp_13; if (assert__arg == 0) { {reach_error();} return __return_main; } else { return __return_main; } } } } } else { if (((int)node4__m4) == ((int)id4)) { st4 = 1; mode4 = 0; p1_old = p1_new; p1_new = nomsg; p2_old = p2_new; p2_new = nomsg; p3_old = p3_new; p3_new = nomsg; p4_old = p4_new; p4_new = nomsg; { int check__tmp; if ((((((int)st1) + ((int)st2)) + ((int)st3)) + ((int)st4)) <= 1) { return __return_main; } else { check__tmp = 0; __return_4231 = check__tmp; main__c1 = __return_4231; goto label_3158; } } } else { goto label_4208; } } } else { mode4 = 0; goto label_4061; } } else { return __return_main; } } } else { if (((int)node3__m3) == ((int)id3)) { st3 = 1; mode3 = 0; { msg_t node4__m4; node4__m4 = nomsg; if (!(mode4 == 0)) { node4__m4 = p3_old; p3_old = nomsg; if (((int)node4__m4) != ((int)nomsg)) { if (((int)node4__m4) > ((int)id4)) { send4 = node4__m4; label_4536:; mode4 = 0; label_4401:; p1_old = p1_new; p1_new = nomsg; p2_old = p2_new; p2_new = nomsg; p3_old = p3_new; p3_new = nomsg; p4_old = p4_new; p4_new = nomsg; { int check__tmp; if ((((((int)st1) + ((int)st2)) + ((int)st3)) + ((int)st4)) <= 1) { return __return_main; } else { check__tmp = 0; __return_4417 = check__tmp; main__c1 = __return_4417; goto label_3158; } } } else { if (((int)node4__m4) == ((int)id4)) { st4 = 1; mode4 = 0; p1_old = p1_new; p1_new = nomsg; p2_old = p2_new; p2_new = nomsg; p3_old = p3_new; p3_new = nomsg; p4_old = p4_new; p4_new = nomsg; goto label_3149; } else { goto label_4536; } } } else { mode4 = 0; goto label_4401; } } else { return __return_main; } } } else { goto label_4382; } } } else { mode3 = 0; goto label_4049; } } else { return __return_main; } } } else { goto label_4030; } } } else { mode2 = 0; goto label_3295; } } else { return __return_main; } } } else { send1 = node1__m1; goto label_3276; } } } else { mode1 = 0; goto label_3016; } } } else { return __return_main; } } } } } else { return __return_main; } } else { return __return_main; } } } else { return __return_main; } } } else { return __return_main; } } else { node4____CPAchecker_TMP_0 = p4_new; p4_new = node4____CPAchecker_TMP_0; mode4 = 1; p1_old = p1_new; p1_new = nomsg; p2_old = p2_new; p2_new = nomsg; p3_old = p3_new; p3_new = nomsg; p4_old = p4_new; p4_new = nomsg; { int check__tmp; if ((((((int)st1) + ((int)st2)) + ((int)st3)) + ((int)st4)) <= 1) { if (((int)r1) >= 4) { return __return_main; } else { if ((((((int)st1) + ((int)st2)) + ((int)st3)) + ((int)st4)) == 0) { if (((int)r1) < 4) { check__tmp = 1; __return_4460 = check__tmp; main__c1 = __return_4460; { _Bool __tmp_14; __tmp_14 = main__c1; _Bool assert__arg; assert__arg = __tmp_14; if (assert__arg == 0) { return __return_main; } else { goto label_3002; } } } else { return __return_main; } } else { return __return_main; } } } else { return __return_main; } } } } } } else { return __return_main; } } else { node3____CPAchecker_TMP_0 = p3_new; p3_new = node3____CPAchecker_TMP_0; mode3 = 1; { msg_t node4__m4; node4__m4 = nomsg; if (!(mode4 == 0)) { return __return_main; } else { int node4____CPAchecker_TMP_0; if (send4 != nomsg) { if (p4_new == nomsg) { node4____CPAchecker_TMP_0 = send4; p4_new = node4____CPAchecker_TMP_0; mode4 = 1; p1_old = p1_new; p1_new = nomsg; p2_old = p2_new; p2_new = nomsg; p3_old = p3_new; p3_new = nomsg; p4_old = p4_new; p4_new = nomsg; { int check__tmp; if ((((((int)st1) + ((int)st2)) + ((int)st3)) + ((int)st4)) <= 1) { if (((int)r1) >= 4) { return __return_main; } else { if ((((((int)st1) + ((int)st2)) + ((int)st3)) + ((int)st4)) == 0) { if (((int)r1) < 4) { check__tmp = 1; __return_4370 = check__tmp; main__c1 = __return_4370; { _Bool __tmp_15; __tmp_15 = main__c1; _Bool assert__arg; assert__arg = __tmp_15; if (assert__arg == 0) { return __return_main; } else { goto label_3002; } } } else { return __return_main; } } else { return __return_main; } } } else { return __return_main; } } } else { return __return_main; } } else { node4____CPAchecker_TMP_0 = p4_new; p4_new = node4____CPAchecker_TMP_0; mode4 = 1; p1_old = p1_new; p1_new = nomsg; p2_old = p2_new; p2_new = nomsg; p3_old = p3_new; p3_new = nomsg; p4_old = p4_new; p4_new = nomsg; { int check__tmp; if ((((((int)st1) + ((int)st2)) + ((int)st3)) + ((int)st4)) <= 1) { if (((int)r1) >= 4) { return __return_main; } else { if ((((((int)st1) + ((int)st2)) + ((int)st3)) + ((int)st4)) == 0) { if (((int)r1) < 4) { check__tmp = 1; __return_4288 = check__tmp; main__c1 = __return_4288; { _Bool __tmp_16; __tmp_16 = main__c1; _Bool assert__arg; assert__arg = __tmp_16; if (assert__arg == 0) { return __return_main; } else { goto label_3002; } } } else { return __return_main; } } else { return __return_main; } } } else { return __return_main; } } } } } } } } } else { return __return_main; } } else { node2____CPAchecker_TMP_0 = p2_new; p2_new = node2____CPAchecker_TMP_0; mode2 = 1; { msg_t node3__m3; node3__m3 = nomsg; if (!(mode3 == 0)) { return __return_main; } else { int node3____CPAchecker_TMP_0; if (send3 != nomsg) { if (p3_new == nomsg) { node3____CPAchecker_TMP_0 = send3; p3_new = node3____CPAchecker_TMP_0; mode3 = 1; { msg_t node4__m4; node4__m4 = nomsg; if (!(mode4 == 0)) { return __return_main; } else { int node4____CPAchecker_TMP_0; if (send4 != nomsg) { if (p4_new == nomsg) { node4____CPAchecker_TMP_0 = send4; p4_new = node4____CPAchecker_TMP_0; mode4 = 1; p1_old = p1_new; p1_new = nomsg; p2_old = p2_new; p2_new = nomsg; p3_old = p3_new; p3_new = nomsg; p4_old = p4_new; p4_new = nomsg; { int check__tmp; if ((((((int)st1) + ((int)st2)) + ((int)st3)) + ((int)st4)) <= 1) { if (((int)r1) >= 4) { return __return_main; } else { if ((((((int)st1) + ((int)st2)) + ((int)st3)) + ((int)st4)) == 0) { if (((int)r1) < 4) { check__tmp = 1; __return_4196 = check__tmp; main__c1 = __return_4196; { _Bool __tmp_17; __tmp_17 = main__c1; _Bool assert__arg; assert__arg = __tmp_17; if (assert__arg == 0) { return __return_main; } else { goto label_3002; } } } else { return __return_main; } } else { return __return_main; } } } else { return __return_main; } } } else { return __return_main; } } else { node4____CPAchecker_TMP_0 = p4_new; p4_new = node4____CPAchecker_TMP_0; mode4 = 1; p1_old = p1_new; p1_new = nomsg; p2_old = p2_new; p2_new = nomsg; p3_old = p3_new; p3_new = nomsg; p4_old = p4_new; p4_new = nomsg; { int check__tmp; if ((((((int)st1) + ((int)st2)) + ((int)st3)) + ((int)st4)) <= 1) { if (((int)r1) >= 4) { return __return_main; } else { if ((((((int)st1) + ((int)st2)) + ((int)st3)) + ((int)st4)) == 0) { if (((int)r1) < 4) { check__tmp = 1; __return_4126 = check__tmp; main__c1 = __return_4126; { _Bool __tmp_18; __tmp_18 = main__c1; _Bool assert__arg; assert__arg = __tmp_18; if (assert__arg == 0) { return __return_main; } else { goto label_3002; } } } else { return __return_main; } } else { return __return_main; } } } else { return __return_main; } } } } } } else { return __return_main; } } else { node3____CPAchecker_TMP_0 = p3_new; p3_new = node3____CPAchecker_TMP_0; mode3 = 1; { msg_t node4__m4; node4__m4 = nomsg; if (!(mode4 == 0)) { return __return_main; } else { int node4____CPAchecker_TMP_0; if (send4 != nomsg) { if (p4_new == nomsg) { node4____CPAchecker_TMP_0 = send4; p4_new = node4____CPAchecker_TMP_0; mode4 = 1; p1_old = p1_new; p1_new = nomsg; p2_old = p2_new; p2_new = nomsg; p3_old = p3_new; p3_new = nomsg; p4_old = p4_new; p4_new = nomsg; { int check__tmp; if ((((((int)st1) + ((int)st2)) + ((int)st3)) + ((int)st4)) <= 1) { if (((int)r1) >= 4) { return __return_main; } else { if ((((((int)st1) + ((int)st2)) + ((int)st3)) + ((int)st4)) == 0) { if (((int)r1) < 4) { check__tmp = 1; __return_4018 = check__tmp; main__c1 = __return_4018; { _Bool __tmp_19; __tmp_19 = main__c1; _Bool assert__arg; assert__arg = __tmp_19; if (assert__arg == 0) { return __return_main; } else { goto label_3002; } } } else { return __return_main; } } else { return __return_main; } } } else { return __return_main; } } } else { return __return_main; } } else { node4____CPAchecker_TMP_0 = p4_new; p4_new = node4____CPAchecker_TMP_0; mode4 = 1; p1_old = p1_new; p1_new = nomsg; p2_old = p2_new; p2_new = nomsg; p3_old = p3_new; p3_new = nomsg; p4_old = p4_new; p4_new = nomsg; { int check__tmp; if ((((((int)st1) + ((int)st2)) + ((int)st3)) + ((int)st4)) <= 1) { if (((int)r1) >= 4) { return __return_main; } else { if ((((((int)st1) + ((int)st2)) + ((int)st3)) + ((int)st4)) == 0) { if (((int)r1) < 4) { check__tmp = 1; __return_3921 = check__tmp; main__c1 = __return_3921; { _Bool __tmp_20; __tmp_20 = main__c1; _Bool assert__arg; assert__arg = __tmp_20; if (assert__arg == 0) { return __return_main; } else { goto label_3002; } } } else { return __return_main; } } else { return __return_main; } } } else { return __return_main; } } } } } } } } } } } } else { return __return_main; } } else { node1____CPAchecker_TMP_0 = p1_new; p1_new = node1____CPAchecker_TMP_0; mode1 = 1; { msg_t node2__m2; node2__m2 = nomsg; if (!(mode2 == 0)) { return __return_main; } else { int node2____CPAchecker_TMP_0; if (send2 != nomsg) { if (p2_new == nomsg) { node2____CPAchecker_TMP_0 = send2; p2_new = node2____CPAchecker_TMP_0; mode2 = 1; { msg_t node3__m3; node3__m3 = nomsg; if (!(mode3 == 0)) { return __return_main; } else { int node3____CPAchecker_TMP_0; if (send3 != nomsg) { if (p3_new == nomsg) { node3____CPAchecker_TMP_0 = send3; p3_new = node3____CPAchecker_TMP_0; mode3 = 1; { msg_t node4__m4; node4__m4 = nomsg; if (!(mode4 == 0)) { return __return_main; } else { int node4____CPAchecker_TMP_0; if (send4 != nomsg) { if (p4_new == nomsg) { node4____CPAchecker_TMP_0 = send4; p4_new = node4____CPAchecker_TMP_0; mode4 = 1; p1_old = p1_new; p1_new = nomsg; p2_old = p2_new; p2_new = nomsg; p3_old = p3_new; p3_new = nomsg; p4_old = p4_new; p4_new = nomsg; { int check__tmp; if ((((((int)st1) + ((int)st2)) + ((int)st3)) + ((int)st4)) <= 1) { if (((int)r1) >= 4) { return __return_main; } else { if ((((((int)st1) + ((int)st2)) + ((int)st3)) + ((int)st4)) == 0) { if (((int)r1) < 4) { check__tmp = 1; __return_3815 = check__tmp; main__c1 = __return_3815; { _Bool __tmp_21; __tmp_21 = main__c1; _Bool assert__arg; assert__arg = __tmp_21; if (assert__arg == 0) { return __return_main; } else { goto label_3002; } } } else { return __return_main; } } else { return __return_main; } } } else { return __return_main; } } } else { return __return_main; } } else { node4____CPAchecker_TMP_0 = p4_new; p4_new = node4____CPAchecker_TMP_0; mode4 = 1; p1_old = p1_new; p1_new = nomsg; p2_old = p2_new; p2_new = nomsg; p3_old = p3_new; p3_new = nomsg; p4_old = p4_new; p4_new = nomsg; { int check__tmp; if ((((((int)st1) + ((int)st2)) + ((int)st3)) + ((int)st4)) <= 1) { if (((int)r1) >= 4) { return __return_main; } else { if ((((((int)st1) + ((int)st2)) + ((int)st3)) + ((int)st4)) == 0) { if (((int)r1) < 4) { check__tmp = 1; __return_3743 = check__tmp; main__c1 = __return_3743; { _Bool __tmp_22; __tmp_22 = main__c1; _Bool assert__arg; assert__arg = __tmp_22; if (assert__arg == 0) { return __return_main; } else { goto label_3002; } } } else { return __return_main; } } else { return __return_main; } } } else { return __return_main; } } } } } } else { return __return_main; } } else { node3____CPAchecker_TMP_0 = p3_new; p3_new = node3____CPAchecker_TMP_0; mode3 = 1; { msg_t node4__m4; node4__m4 = nomsg; if (!(mode4 == 0)) { return __return_main; } else { int node4____CPAchecker_TMP_0; if (send4 != nomsg) { if (p4_new == nomsg) { node4____CPAchecker_TMP_0 = send4; p4_new = node4____CPAchecker_TMP_0; mode4 = 1; p1_old = p1_new; p1_new = nomsg; p2_old = p2_new; p2_new = nomsg; p3_old = p3_new; p3_new = nomsg; p4_old = p4_new; p4_new = nomsg; { int check__tmp; if ((((((int)st1) + ((int)st2)) + ((int)st3)) + ((int)st4)) <= 1) { if (((int)r1) >= 4) { return __return_main; } else { if ((((((int)st1) + ((int)st2)) + ((int)st3)) + ((int)st4)) == 0) { if (((int)r1) < 4) { check__tmp = 1; __return_3645 = check__tmp; main__c1 = __return_3645; { _Bool __tmp_23; __tmp_23 = main__c1; _Bool assert__arg; assert__arg = __tmp_23; if (assert__arg == 0) { return __return_main; } else { goto label_3002; } } } else { return __return_main; } } else { return __return_main; } } } else { return __return_main; } } } else { return __return_main; } } else { node4____CPAchecker_TMP_0 = p4_new; p4_new = node4____CPAchecker_TMP_0; mode4 = 1; p1_old = p1_new; p1_new = nomsg; p2_old = p2_new; p2_new = nomsg; p3_old = p3_new; p3_new = nomsg; p4_old = p4_new; p4_new = nomsg; { int check__tmp; if ((((((int)st1) + ((int)st2)) + ((int)st3)) + ((int)st4)) <= 1) { if (((int)r1) >= 4) { return __return_main; } else { if ((((((int)st1) + ((int)st2)) + ((int)st3)) + ((int)st4)) == 0) { if (((int)r1) < 4) { check__tmp = 1; __return_3560 = check__tmp; main__c1 = __return_3560; { _Bool __tmp_24; __tmp_24 = main__c1; _Bool assert__arg; assert__arg = __tmp_24; if (assert__arg == 0) { return __return_main; } else { goto label_3002; } } } else { return __return_main; } } else { return __return_main; } } } else { return __return_main; } } } } } } } } } else { return __return_main; } } else { node2____CPAchecker_TMP_0 = p2_new; p2_new = node2____CPAchecker_TMP_0; mode2 = 1; { msg_t node3__m3; node3__m3 = nomsg; if (!(mode3 == 0)) { return __return_main; } else { int node3____CPAchecker_TMP_0; if (send3 != nomsg) { if (p3_new == nomsg) { node3____CPAchecker_TMP_0 = send3; p3_new = node3____CPAchecker_TMP_0; mode3 = 1; { msg_t node4__m4; node4__m4 = nomsg; if (!(mode4 == 0)) { return __return_main; } else { int node4____CPAchecker_TMP_0; if (send4 != nomsg) { if (p4_new == nomsg) { node4____CPAchecker_TMP_0 = send4; p4_new = node4____CPAchecker_TMP_0; mode4 = 1; p1_old = p1_new; p1_new = nomsg; p2_old = p2_new; p2_new = nomsg; p3_old = p3_new; p3_new = nomsg; p4_old = p4_new; p4_new = nomsg; { int check__tmp; if ((((((int)st1) + ((int)st2)) + ((int)st3)) + ((int)st4)) <= 1) { if (((int)r1) >= 4) { return __return_main; } else { if ((((((int)st1) + ((int)st2)) + ((int)st3)) + ((int)st4)) == 0) { if (((int)r1) < 4) { check__tmp = 1; __return_3460 = check__tmp; main__c1 = __return_3460; { _Bool __tmp_25; __tmp_25 = main__c1; _Bool assert__arg; assert__arg = __tmp_25; if (assert__arg == 0) { return __return_main; } else { goto label_3002; } } } else { return __return_main; } } else { return __return_main; } } } else { return __return_main; } } } else { return __return_main; } } else { node4____CPAchecker_TMP_0 = p4_new; p4_new = node4____CPAchecker_TMP_0; mode4 = 1; p1_old = p1_new; p1_new = nomsg; p2_old = p2_new; p2_new = nomsg; p3_old = p3_new; p3_new = nomsg; p4_old = p4_new; p4_new = nomsg; { int check__tmp; if ((((((int)st1) + ((int)st2)) + ((int)st3)) + ((int)st4)) <= 1) { if (((int)r1) >= 4) { return __return_main; } else { if ((((((int)st1) + ((int)st2)) + ((int)st3)) + ((int)st4)) == 0) { if (((int)r1) < 4) { check__tmp = 1; __return_3387 = check__tmp; main__c1 = __return_3387; { _Bool __tmp_26; __tmp_26 = main__c1; _Bool assert__arg; assert__arg = __tmp_26; if (assert__arg == 0) { return __return_main; } else { goto label_3002; } } } else { return __return_main; } } else { return __return_main; } } } else { return __return_main; } } } } } } else { return __return_main; } } else { node3____CPAchecker_TMP_0 = p3_new; p3_new = node3____CPAchecker_TMP_0; mode3 = 1; { msg_t node4__m4; node4__m4 = nomsg; if (!(mode4 == 0)) { return __return_main; } else { int node4____CPAchecker_TMP_0; if (send4 != nomsg) { if (p4_new == nomsg) { node4____CPAchecker_TMP_0 = send4; p4_new = node4____CPAchecker_TMP_0; mode4 = 1; p1_old = p1_new; p1_new = nomsg; p2_old = p2_new; p2_new = nomsg; p3_old = p3_new; p3_new = nomsg; p4_old = p4_new; p4_new = nomsg; { int check__tmp; if ((((((int)st1) + ((int)st2)) + ((int)st3)) + ((int)st4)) <= 1) { if (((int)r1) >= 4) { return __return_main; } else { if ((((((int)st1) + ((int)st2)) + ((int)st3)) + ((int)st4)) == 0) { if (((int)r1) < 4) { check__tmp = 1; __return_3263 = check__tmp; main__c1 = __return_3263; { _Bool __tmp_27; __tmp_27 = main__c1; _Bool assert__arg; assert__arg = __tmp_27; if (assert__arg == 0) { return __return_main; } else { goto label_3002; } } } else { return __return_main; } } else { return __return_main; } } } else { return __return_main; } } } else { return __return_main; } } else { node4____CPAchecker_TMP_0 = p4_new; p4_new = node4____CPAchecker_TMP_0; mode4 = 1; p1_old = p1_new; p1_new = nomsg; p2_old = p2_new; p2_new = nomsg; p3_old = p3_new; p3_new = nomsg; p4_old = p4_new; p4_new = nomsg; { int check__tmp; if ((((((int)st1) + ((int)st2)) + ((int)st3)) + ((int)st4)) <= 1) { if (((int)r1) >= 4) { return __return_main; } else { if ((((((int)st1) + ((int)st2)) + ((int)st3)) + ((int)st4)) == 0) { if (((int)r1) < 4) { check__tmp = 1; __return_2995 = check__tmp; main__c1 = __return_2995; { _Bool __tmp_28; __tmp_28 = main__c1; _Bool assert__arg; assert__arg = __tmp_28; if (assert__arg == 0) { return __return_main; } else { goto label_3002; } } } else { return __return_main; } } else { return __return_main; } } } else { return __return_main; } } } } } } } } } } } } } } } else { return __return_main; } } else { return __return_main; } } else { return __return_main; } } else { return __return_main; } } else { return __return_main; } } else { return __return_main; } } else { return __return_main; } } else { return __return_main; } } else { return __return_main; } } else { return __return_main; } } else { return __return_main; } } else { return __return_main; } } else { return __return_main; } } else { return __return_main; } } else { return __return_main; } } else { return __return_main; } } else { return __return_main; } } else { return __return_main; } } else { return __return_main; } } else { return __return_main; } } else { return __return_main; } } else { return __return_main; } } else { return __return_main; } } else { return __return_main; } } }