// 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.3.1.ufo.BOUNDED-6.pals.c.v+sep-reducer.c", 4, "reach_error"); } _Bool __VERIFIER_nondet_bool(); char __VERIFIER_nondet_char(); 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; 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; void node1(); void node2(); void node3(); void (*nodes[3])() = { &node1, &node2, &node3 }; int init(); int check(); int main(); int __return_94; int __return_412; int __return_1167; int __tmp_1168_0; int __return_398; int __tmp_986_0; int __return_1057; int __return_384; int __tmp_952_0; int __return_965; int __return_370; int __tmp_815_0; int __tmp_856_0; int __return_872; int __return_356; int __tmp_746_0; int __return_788; int __tmp_797_0; int __return_342; int __tmp_638_0; int __tmp_650_0; int __return_695; int __return_328; int __tmp_589_0; int __tmp_601_0; int __return_617; int __return_314; int __tmp_492_0; int __tmp_504_0; int __tmp_516_0; int __return_535; int __tmp_544_0; int __return_1315; int __return_1180; int main() { int main__c1; int main__i2; main__c1 = 0; r1 = __VERIFIER_nondet_char(); 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(); { 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)id1) != ((int)id2)) { if (((int)id1) != ((int)id3)) { if (((int)id2) != ((int)id3)) { init__tmp = 1; __return_94 = init__tmp; main__i2 = __return_94; if (main__i2 != 0) { p1_old = nomsg; p1_new = nomsg; p2_old = nomsg; p2_new = nomsg; p3_old = nomsg; p3_new = nomsg; main__i2 = 0; if (main__i2 < 6) { { 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; p1_old = p1_new; p1_new = nomsg; p2_old = p2_new; p2_new = nomsg; p3_old = p3_new; p3_new = nomsg; { int check__tmp; if (((((int)st1) + ((int)st2)) + ((int)st3)) <= 1) { if (((int)r1) >= 3) { return __return_main; } else { if (((((int)st1) + ((int)st2)) + ((int)st3)) == 0) { if (((int)r1) < 3) { check__tmp = 1; __return_412 = check__tmp; main__c1 = __return_412; { _Bool __tmp_1; __tmp_1 = main__c1; _Bool assert__arg; assert__arg = __tmp_1; if (assert__arg == 0) { return __return_main; } else { int main____CPAchecker_TMP_0 = main__i2; main__i2 = main__i2 + 1; if (main__i2 < 6) { { msg_t node1__m1; node1__m1 = nomsg; if (!(mode1 == 0)) { r1 = (char)(((int)r1) + 1); node1__m1 = p3_old; p3_old = nomsg; if (((int)node1__m1) != ((int)nomsg)) { if (((int)node1__m1) > ((int)id1)) { send1 = node1__m1; goto label_1081; } 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; goto label_1110; } 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; goto label_1139; } else { if (((int)node3__m3) == ((int)id3)) { st3 = 1; mode3 = 0; p1_old = p1_new; p1_new = nomsg; p2_old = p2_new; p2_new = nomsg; p3_old = p3_new; p3_new = nomsg; { int check__tmp; if (((((int)st1) + ((int)st2)) + ((int)st3)) <= 1) { return __return_main; } else { check__tmp = 0; __return_1167 = check__tmp; main__c1 = __return_1167; __tmp_1168_0 = main____CPAchecker_TMP_0; label_1168:; main____CPAchecker_TMP_0 = __tmp_1168_0; { _Bool __tmp_2; __tmp_2 = main__c1; _Bool assert__arg; assert__arg = __tmp_2; if (assert__arg == 0) { {reach_error();} return __return_main; } else { __tmp_797_0 = main____CPAchecker_TMP_0; goto label_797; } } } } } else { label_1139:; mode3 = 0; goto label_1150; } } } else { mode3 = 0; label_1150:; __tmp_952_0 = main____CPAchecker_TMP_0; goto label_952; } } else { return __return_main; } } } else { label_1110:; mode2 = 0; goto label_1121; } } } else { mode2 = 0; label_1121:; __tmp_746_0 = main____CPAchecker_TMP_0; goto label_746; } } else { return __return_main; } } } else { send1 = node1__m1; label_1081:; mode1 = 0; goto label_1092; } } } else { mode1 = 0; label_1092:; __tmp_986_0 = main____CPAchecker_TMP_0; goto label_986; } } 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 { node3____CPAchecker_TMP_0 = p3_new; p3_new = node3____CPAchecker_TMP_0; mode3 = 1; p1_old = p1_new; p1_new = nomsg; p2_old = p2_new; p2_new = nomsg; p3_old = p3_new; p3_new = nomsg; { int check__tmp; if (((((int)st1) + ((int)st2)) + ((int)st3)) <= 1) { if (((int)r1) >= 3) { return __return_main; } else { if (((((int)st1) + ((int)st2)) + ((int)st3)) == 0) { if (((int)r1) < 3) { check__tmp = 1; __return_398 = check__tmp; main__c1 = __return_398; { _Bool __tmp_3; __tmp_3 = main__c1; _Bool assert__arg; assert__arg = __tmp_3; if (assert__arg == 0) { return __return_main; } else { int main____CPAchecker_TMP_0 = main__i2; main__i2 = main__i2 + 1; if (main__i2 < 6) { { msg_t node1__m1; node1__m1 = nomsg; if (!(mode1 == 0)) { r1 = (char)(((int)r1) + 1); node1__m1 = p3_old; p3_old = nomsg; if (((int)node1__m1) != ((int)nomsg)) { return __return_main; } else { mode1 = 0; __tmp_986_0 = main____CPAchecker_TMP_0; label_986:; main____CPAchecker_TMP_0 = __tmp_986_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; goto label_1000; } 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; goto label_1029; } else { if (((int)node3__m3) == ((int)id3)) { st3 = 1; mode3 = 0; p1_old = p1_new; p1_new = nomsg; p2_old = p2_new; p2_new = nomsg; p3_old = p3_new; p3_new = nomsg; { int check__tmp; if (((((int)st1) + ((int)st2)) + ((int)st3)) <= 1) { return __return_main; } else { check__tmp = 0; __return_1057 = check__tmp; main__c1 = __return_1057; { _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 { label_1029:; mode3 = 0; goto label_1040; } } } else { mode3 = 0; label_1040:; __tmp_856_0 = main____CPAchecker_TMP_0; goto label_856; } } else { return __return_main; } } } else { label_1000:; mode2 = 0; goto label_1011; } } } else { mode2 = 0; label_1011:; __tmp_650_0 = main____CPAchecker_TMP_0; goto label_650; } } 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 { 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; p1_old = p1_new; p1_new = nomsg; p2_old = p2_new; p2_new = nomsg; p3_old = p3_new; p3_new = nomsg; { int check__tmp; if (((((int)st1) + ((int)st2)) + ((int)st3)) <= 1) { if (((int)r1) >= 3) { return __return_main; } else { if (((((int)st1) + ((int)st2)) + ((int)st3)) == 0) { if (((int)r1) < 3) { check__tmp = 1; __return_384 = check__tmp; main__c1 = __return_384; { _Bool __tmp_5; __tmp_5 = main__c1; _Bool assert__arg; assert__arg = __tmp_5; if (assert__arg == 0) { return __return_main; } else { int main____CPAchecker_TMP_0 = main__i2; main__i2 = main__i2 + 1; if (main__i2 < 6) { { msg_t node1__m1; node1__m1 = nomsg; if (!(mode1 == 0)) { r1 = (char)(((int)r1) + 1); node1__m1 = p3_old; p3_old = nomsg; if (((int)node1__m1) != ((int)nomsg)) { if (((int)node1__m1) > ((int)id1)) { send1 = node1__m1; goto label_896; } 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; goto label_925; } 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)) { return __return_main; } else { mode3 = 0; __tmp_952_0 = main____CPAchecker_TMP_0; label_952:; main____CPAchecker_TMP_0 = __tmp_952_0; p1_old = p1_new; p1_new = nomsg; p2_old = p2_new; p2_new = nomsg; p3_old = p3_new; p3_new = nomsg; { int check__tmp; if (((((int)st1) + ((int)st2)) + ((int)st3)) <= 1) { return __return_main; } else { check__tmp = 0; __return_965 = check__tmp; main__c1 = __return_965; { _Bool __tmp_6; __tmp_6 = main__c1; _Bool assert__arg; assert__arg = __tmp_6; if (assert__arg == 0) { {reach_error();} return __return_main; } else { return __return_main; } } } } } } else { return __return_main; } } } else { label_925:; mode2 = 0; goto label_936; } } } else { mode2 = 0; label_936:; __tmp_589_0 = main____CPAchecker_TMP_0; goto label_589; } } else { return __return_main; } } } else { send1 = node1__m1; label_896:; mode1 = 0; goto label_907; } } } else { mode1 = 0; label_907:; __tmp_815_0 = main____CPAchecker_TMP_0; goto label_815; } } 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 { node3____CPAchecker_TMP_0 = p3_new; p3_new = node3____CPAchecker_TMP_0; mode3 = 1; p1_old = p1_new; p1_new = nomsg; p2_old = p2_new; p2_new = nomsg; p3_old = p3_new; p3_new = nomsg; { int check__tmp; if (((((int)st1) + ((int)st2)) + ((int)st3)) <= 1) { if (((int)r1) >= 3) { return __return_main; } else { if (((((int)st1) + ((int)st2)) + ((int)st3)) == 0) { if (((int)r1) < 3) { check__tmp = 1; __return_370 = check__tmp; main__c1 = __return_370; { _Bool __tmp_7; __tmp_7 = main__c1; _Bool assert__arg; assert__arg = __tmp_7; if (assert__arg == 0) { return __return_main; } else { int main____CPAchecker_TMP_0 = main__i2; main__i2 = main__i2 + 1; if (main__i2 < 6) { { msg_t node1__m1; node1__m1 = nomsg; if (!(mode1 == 0)) { r1 = (char)(((int)r1) + 1); node1__m1 = p3_old; p3_old = nomsg; if (((int)node1__m1) != ((int)nomsg)) { return __return_main; } else { mode1 = 0; __tmp_815_0 = main____CPAchecker_TMP_0; label_815:; main____CPAchecker_TMP_0 = __tmp_815_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; goto label_829; } 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)) { return __return_main; } else { mode3 = 0; __tmp_856_0 = main____CPAchecker_TMP_0; label_856:; main____CPAchecker_TMP_0 = __tmp_856_0; p1_old = p1_new; p1_new = nomsg; p2_old = p2_new; p2_new = nomsg; p3_old = p3_new; p3_new = nomsg; { int check__tmp; if (((((int)st1) + ((int)st2)) + ((int)st3)) <= 1) { if (((int)r1) >= 3) { return __return_main; } else { if (((((int)st1) + ((int)st2)) + ((int)st3)) == 0) { return __return_main; } else { check__tmp = 0; __return_872 = check__tmp; main__c1 = __return_872; { _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 { return __return_main; } } } } else { return __return_main; } } } else { label_829:; mode2 = 0; goto label_840; } } } else { mode2 = 0; label_840:; __tmp_504_0 = main____CPAchecker_TMP_0; goto label_504; } } 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 { 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; p1_old = p1_new; p1_new = nomsg; p2_old = p2_new; p2_new = nomsg; p3_old = p3_new; p3_new = nomsg; { int check__tmp; if (((((int)st1) + ((int)st2)) + ((int)st3)) <= 1) { if (((int)r1) >= 3) { return __return_main; } else { if (((((int)st1) + ((int)st2)) + ((int)st3)) == 0) { if (((int)r1) < 3) { check__tmp = 1; __return_356 = check__tmp; main__c1 = __return_356; { _Bool __tmp_9; __tmp_9 = main__c1; _Bool assert__arg; assert__arg = __tmp_9; if (assert__arg == 0) { return __return_main; } else { int main____CPAchecker_TMP_0 = main__i2; main__i2 = main__i2 + 1; if (main__i2 < 6) { { msg_t node1__m1; node1__m1 = nomsg; if (!(mode1 == 0)) { r1 = (char)(((int)r1) + 1); node1__m1 = p3_old; p3_old = nomsg; if (((int)node1__m1) != ((int)nomsg)) { if (((int)node1__m1) > ((int)id1)) { send1 = node1__m1; goto label_719; } 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)) { return __return_main; } else { mode2 = 0; __tmp_746_0 = main____CPAchecker_TMP_0; label_746:; main____CPAchecker_TMP_0 = __tmp_746_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; goto label_760; } else { if (((int)node3__m3) == ((int)id3)) { st3 = 1; mode3 = 0; p1_old = p1_new; p1_new = nomsg; p2_old = p2_new; p2_new = nomsg; p3_old = p3_new; p3_new = nomsg; { int check__tmp; if (((((int)st1) + ((int)st2)) + ((int)st3)) <= 1) { return __return_main; } else { check__tmp = 0; __return_788 = check__tmp; main__c1 = __return_788; { _Bool __tmp_10; __tmp_10 = main__c1; _Bool assert__arg; assert__arg = __tmp_10; if (assert__arg == 0) { {reach_error();} return __return_main; } else { __tmp_797_0 = main____CPAchecker_TMP_0; label_797:; main____CPAchecker_TMP_0 = __tmp_797_0; int main____CPAchecker_TMP_0 = main__i2; main__i2 = main__i2 + 1; __tmp_544_0 = main____CPAchecker_TMP_0; goto label_544; } } } } } else { label_760:; mode3 = 0; goto label_771; } } } else { mode3 = 0; label_771:; __tmp_601_0 = main____CPAchecker_TMP_0; goto label_601; } } else { return __return_main; } } } } else { return __return_main; } } } else { send1 = node1__m1; label_719:; mode1 = 0; goto label_730; } } } else { mode1 = 0; label_730:; __tmp_638_0 = main____CPAchecker_TMP_0; goto label_638; } } 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 { node3____CPAchecker_TMP_0 = p3_new; p3_new = node3____CPAchecker_TMP_0; mode3 = 1; p1_old = p1_new; p1_new = nomsg; p2_old = p2_new; p2_new = nomsg; p3_old = p3_new; p3_new = nomsg; { int check__tmp; if (((((int)st1) + ((int)st2)) + ((int)st3)) <= 1) { if (((int)r1) >= 3) { return __return_main; } else { if (((((int)st1) + ((int)st2)) + ((int)st3)) == 0) { if (((int)r1) < 3) { check__tmp = 1; __return_342 = check__tmp; main__c1 = __return_342; { _Bool __tmp_11; __tmp_11 = main__c1; _Bool assert__arg; assert__arg = __tmp_11; if (assert__arg == 0) { return __return_main; } else { int main____CPAchecker_TMP_0 = main__i2; main__i2 = main__i2 + 1; if (main__i2 < 6) { { msg_t node1__m1; node1__m1 = nomsg; if (!(mode1 == 0)) { r1 = (char)(((int)r1) + 1); node1__m1 = p3_old; p3_old = nomsg; if (((int)node1__m1) != ((int)nomsg)) { return __return_main; } else { mode1 = 0; __tmp_638_0 = main____CPAchecker_TMP_0; label_638:; main____CPAchecker_TMP_0 = __tmp_638_0; { msg_t node2__m2; node2__m2 = nomsg; if (!(mode2 == 0)) { node2__m2 = p1_old; p1_old = nomsg; if (((int)node2__m2) != ((int)nomsg)) { return __return_main; } else { mode2 = 0; __tmp_650_0 = main____CPAchecker_TMP_0; label_650:; main____CPAchecker_TMP_0 = __tmp_650_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; goto label_664; } else { if (((int)node3__m3) == ((int)id3)) { st3 = 1; mode3 = 0; p1_old = p1_new; p1_new = nomsg; p2_old = p2_new; p2_new = nomsg; p3_old = p3_new; p3_new = nomsg; { int check__tmp; if (((((int)st1) + ((int)st2)) + ((int)st3)) <= 1) { if (((int)r1) >= 3) { return __return_main; } else { if (((((int)st1) + ((int)st2)) + ((int)st3)) == 0) { return __return_main; } else { check__tmp = 0; __return_695 = check__tmp; main__c1 = __return_695; { _Bool __tmp_12; __tmp_12 = main__c1; _Bool assert__arg; assert__arg = __tmp_12; if (assert__arg == 0) { {reach_error();} return __return_main; } else { return __return_main; } } } } } else { return __return_main; } } } else { label_664:; mode3 = 0; goto label_675; } } } else { mode3 = 0; label_675:; __tmp_516_0 = main____CPAchecker_TMP_0; goto label_516; } } 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 { 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; p1_old = p1_new; p1_new = nomsg; p2_old = p2_new; p2_new = nomsg; p3_old = p3_new; p3_new = nomsg; { int check__tmp; if (((((int)st1) + ((int)st2)) + ((int)st3)) <= 1) { if (((int)r1) >= 3) { return __return_main; } else { if (((((int)st1) + ((int)st2)) + ((int)st3)) == 0) { if (((int)r1) < 3) { check__tmp = 1; __return_328 = check__tmp; main__c1 = __return_328; { _Bool __tmp_13; __tmp_13 = main__c1; _Bool assert__arg; assert__arg = __tmp_13; if (assert__arg == 0) { return __return_main; } else { int main____CPAchecker_TMP_0 = main__i2; main__i2 = main__i2 + 1; if (main__i2 < 6) { { msg_t node1__m1; node1__m1 = nomsg; if (!(mode1 == 0)) { r1 = (char)(((int)r1) + 1); node1__m1 = p3_old; p3_old = nomsg; if (((int)node1__m1) != ((int)nomsg)) { if (((int)node1__m1) > ((int)id1)) { send1 = node1__m1; goto label_562; } 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)) { return __return_main; } else { mode2 = 0; __tmp_589_0 = main____CPAchecker_TMP_0; label_589:; main____CPAchecker_TMP_0 = __tmp_589_0; { msg_t node3__m3; node3__m3 = nomsg; if (!(mode3 == 0)) { node3__m3 = p2_old; p2_old = nomsg; if (((int)node3__m3) != ((int)nomsg)) { return __return_main; } else { mode3 = 0; __tmp_601_0 = main____CPAchecker_TMP_0; label_601:; main____CPAchecker_TMP_0 = __tmp_601_0; p1_old = p1_new; p1_new = nomsg; p2_old = p2_new; p2_new = nomsg; p3_old = p3_new; p3_new = nomsg; { int check__tmp; if (((((int)st1) + ((int)st2)) + ((int)st3)) <= 1) { if (((int)r1) >= 3) { return __return_main; } else { if (((((int)st1) + ((int)st2)) + ((int)st3)) == 0) { return __return_main; } else { check__tmp = 0; __return_617 = check__tmp; main__c1 = __return_617; { _Bool __tmp_14; __tmp_14 = main__c1; _Bool assert__arg; assert__arg = __tmp_14; if (assert__arg == 0) { {reach_error();} return __return_main; } else { return __return_main; } } } } } else { return __return_main; } } } } else { return __return_main; } } } } else { return __return_main; } } } else { send1 = node1__m1; label_562:; mode1 = 0; goto label_573; } } } else { mode1 = 0; label_573:; __tmp_492_0 = main____CPAchecker_TMP_0; goto label_492; } } 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 { node3____CPAchecker_TMP_0 = p3_new; p3_new = node3____CPAchecker_TMP_0; mode3 = 1; p1_old = p1_new; p1_new = nomsg; p2_old = p2_new; p2_new = nomsg; p3_old = p3_new; p3_new = nomsg; { int check__tmp; if (((((int)st1) + ((int)st2)) + ((int)st3)) <= 1) { if (((int)r1) >= 3) { return __return_main; } else { if (((((int)st1) + ((int)st2)) + ((int)st3)) == 0) { if (((int)r1) < 3) { check__tmp = 1; __return_314 = check__tmp; main__c1 = __return_314; { _Bool __tmp_15; __tmp_15 = main__c1; _Bool assert__arg; assert__arg = __tmp_15; if (assert__arg == 0) { return __return_main; } else { int main____CPAchecker_TMP_0 = main__i2; main__i2 = main__i2 + 1; if (main__i2 < 6) { { msg_t node1__m1; node1__m1 = nomsg; if (!(mode1 == 0)) { r1 = (char)(((int)r1) + 1); node1__m1 = p3_old; p3_old = nomsg; if (((int)node1__m1) != ((int)nomsg)) { return __return_main; } else { mode1 = 0; __tmp_492_0 = main____CPAchecker_TMP_0; label_492:; main____CPAchecker_TMP_0 = __tmp_492_0; { msg_t node2__m2; node2__m2 = nomsg; if (!(mode2 == 0)) { node2__m2 = p1_old; p1_old = nomsg; if (((int)node2__m2) != ((int)nomsg)) { return __return_main; } else { mode2 = 0; __tmp_504_0 = main____CPAchecker_TMP_0; label_504:; main____CPAchecker_TMP_0 = __tmp_504_0; { msg_t node3__m3; node3__m3 = nomsg; if (!(mode3 == 0)) { node3__m3 = p2_old; p2_old = nomsg; if (((int)node3__m3) != ((int)nomsg)) { return __return_main; } else { mode3 = 0; __tmp_516_0 = main____CPAchecker_TMP_0; label_516:; main____CPAchecker_TMP_0 = __tmp_516_0; p1_old = p1_new; p1_new = nomsg; p2_old = p2_new; p2_new = nomsg; p3_old = p3_new; p3_new = nomsg; { int check__tmp; if (((((int)st1) + ((int)st2)) + ((int)st3)) <= 1) { if (((int)r1) >= 3) { return __return_main; } else { if (((((int)st1) + ((int)st2)) + ((int)st3)) == 0) { if (((int)r1) < 3) { check__tmp = 1; __return_535 = check__tmp; main__c1 = __return_535; { _Bool __tmp_16; __tmp_16 = main__c1; _Bool assert__arg; assert__arg = __tmp_16; if (assert__arg == 0) { return __return_main; } else { int main____CPAchecker_TMP_0 = main__i2; main__i2 = main__i2 + 1; __tmp_544_0 = main____CPAchecker_TMP_0; label_544:; main____CPAchecker_TMP_0 = __tmp_544_0; if (main__i2 < 6) { { msg_t node1__m1; node1__m1 = nomsg; if (!(mode1 == 0)) { r1 = (char)(((int)r1) + 1); node1__m1 = p3_old; p3_old = nomsg; if (((int)node1__m1) != ((int)nomsg)) { if (((int)node1__m1) > ((int)id1)) { send1 = node1__m1; goto label_1191; } else { if (((int)node1__m1) == ((int)id1)) { st1 = 1; goto label_1191; } else { send1 = node1__m1; goto label_1191; } } } else { label_1191:; mode1 = 0; label_1203:; { 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; goto label_1225; } else { if (((int)node2__m2) == ((int)id2)) { st2 = 1; goto label_1225; } else { goto label_1225; } } } else { label_1225:; mode2 = 0; label_1236:; { 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; goto label_1258; } else { if (((int)node3__m3) == ((int)id3)) { st3 = 1; goto label_1258; } else { goto label_1258; } } } else { label_1258:; mode3 = 0; label_1269:; p1_old = p1_new; p1_new = nomsg; p2_old = p2_new; p2_new = nomsg; p3_old = p3_new; p3_new = nomsg; { int check__tmp; if (((((int)st1) + ((int)st2)) + ((int)st3)) <= 1) { if (((int)r1) >= 3) { goto label_1301; } else { if (((((int)st1) + ((int)st2)) + ((int)st3)) == 0) { label_1301:; if (((int)r1) < 3) { check__tmp = 1; goto label_1308; } else { if (((((int)st1) + ((int)st2)) + ((int)st3)) == 1) { check__tmp = 1; goto label_1308; } else { check__tmp = 0; label_1308:; goto label_1300; } } } else { check__tmp = 0; label_1300:; goto label_1294; } } } else { check__tmp = 0; label_1294:; __return_1315 = check__tmp; main__c1 = __return_1315; __tmp_1168_0 = main____CPAchecker_TMP_0; goto label_1168; } } } } else { int node3____CPAchecker_TMP_0; if (send3 != nomsg) { if (p3_new == nomsg) { node3____CPAchecker_TMP_0 = send3; goto label_1275; } else { goto label_1272; } } else { label_1272:; node3____CPAchecker_TMP_0 = p3_new; label_1275:; p3_new = node3____CPAchecker_TMP_0; mode3 = 1; goto label_1269; } } } } } else { int node2____CPAchecker_TMP_0; if (send2 != nomsg) { if (p2_new == nomsg) { node2____CPAchecker_TMP_0 = send2; goto label_1242; } else { goto label_1239; } } else { label_1239:; node2____CPAchecker_TMP_0 = p2_new; label_1242:; p2_new = node2____CPAchecker_TMP_0; mode2 = 1; goto label_1236; } } } } } else { int node1____CPAchecker_TMP_0; if (send1 != nomsg) { if (p1_new == nomsg) { node1____CPAchecker_TMP_0 = send1; goto label_1209; } else { goto label_1206; } } else { label_1206:; node1____CPAchecker_TMP_0 = p1_new; label_1209:; p1_new = node1____CPAchecker_TMP_0; mode1 = 1; goto label_1203; } } } } else { __return_1180 = 0; return __return_1180; } } } } 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; } } else { return __return_main; } } }